|
Project Information
Links
|
Gets APRS-IS data and sticks it in a datastore. Makes it queryable via a simple web client and JSON. You need to know a callsign to search for. You can try mine, N1YWB. Searching for mobile stations is more interesting. You can get a list of current mobile stations from: http://aprs.fi/moving/ The Automatic Packet Reporting System was designed to support rapid, reliable exchange of information for local, tactical real-time information, events or nets. It's an amateur radio and Internet distributed mesh network for the real time dissemination of GIS and other data. Position reports are sent to the application in chunks via HTTP from a small daemon running on my workstation at work. GAE doesn't allow access to sockets, so this was the only way to feed it a data stream. It's updated every few seconds. Right now it's only receiving the USA stream. Eventually I would like to feed it the global stream, but Google set some fairly low resources quotas. When App Engine goes production, it will be possible to purchase additional resources. Reports are stored using the GAE Datastore, which is based on Google's Bigtable DBMS. This is supposed to scale up into the petabyte zone with good performance, although currently Google limits GAE apps to 500MB. Again, when GAE goes production, it will be possible to buy more storage. I wrote a horribly simple query function that returns an ugly static google map with the stations track-line (if any) and a table of all the position reports in the DB. I have also written a simple JSON API to allow remote programattic database queries. This is what really sets this system apart from the other web APRS offerings. Anybody anywhere can efficiently query the database using HTTP and JSON from any programming language they like. Google App Engine will automatically scale the application accross as many servers as necessary to handle this load. Future plans include storing APRS data beyond just positions, additional search API functions, and expanding to the global feed. I suppose a prettier web GUI would be nice but I'm not really much of a JavaScript programmer. Maybe if I provide the database API, somebody else will work on the GUI. Please check it out and report any issues you find. Remember, not only is my application in testing, but Google App Engine is in testing, so anything might happen. Don't rely on this for production use. |