Air traffic control simulator project for my Ruby class. Calculates X, Y coordinates and altitude for incoming flights; regulates descent speed and diversions; and tracks planes in flight with a web interface.
bundle update && bundle install
In one terminal window, start the webserver:
cd lib/controllers ruby server.rb
In another terminal window, start the flight simulator:
cd lib ruby simulator.rb realtime
- The flight simulator will submit flights at random in the format
entryendpoint is also exposed for ad hoc flight submission. The server will respond with JSON indicating your flight was accepted or diverted, based on current air traffic.
- The server reports tracking info upon request at
http://localhost:8080/tracking_info. Include the optional
?timeframeparam to specify how many seconds of history you want to see.
Browse to http://localhost:8080/ to view the web interface.
Build a web service that provides tracking service to subscribers.
- It contains a properly operating simulator that simulates flights entering SeaTac airspace;
- It has a method that takes requests for registration of an aircraft entering the airspace, and makes registration records in the application database;
- It has a method that responds to requests for traffic information, returning data on all registered flights as indicated in the design specification;
- Its responses should contain data on flight names, coordinates (X, Y as relative to the Final Approach start point), its speed and altitude;
- It has a Web server that responds to external HTTP GET requests with the specified data, and accepts HTTP GET calls to register aircrafts entering the airspace.
See the docs for further details.