Proposed Webservice - Proximity Web Control
Proximity is a linux-based daemon that performs commands or calls applications based on events from WIFI, Bluetooth, and GPS. These events are encoded in an XML file. I propose that a webservice and a web front-end be developed to edit this XML file online and allow for the client FE/OS to download this edited XML file.
More information about the Proximity app can be found here.
Proposed Client Functionality
The client must be able to download a full XML file from the server with no modifications needed.
Proposed Web Functionality
The web functionality will be split between two parts: web front-end and webservice.
- Web Front-End - Must be able to edit this XML file using an easy to use online GUI and be able to fully edit all parts of this XML file without lacking any features. This GUI should include dropdowns/options for easy to use instructions and commands that "normal" people may not understand. For instance, instead of calling rsync directly (bin="/usr/bin/rsync"), the selection would have the option for (copy and paste, sync, or some other easy to understand command).
- Webservice - The webservice must allow the web front-end to get at any part of the XML file required and also allow full updating of the document as well. It would be best if the webservice did the work of getting the right data and sending it on then rather sending the whole XML document for the web front-end for processing.
Proposed Plan of Action
- Use ASP.net as the web front-end
- use a mySQL table to hold the index of the XML file, the UID of the user, and using mySQL longtext format to store the entire XML doc inside a cell of the table
Current Process = Currently deciding on exact functions, return datatypes, and waiting on creation of SVN directory to upload to
Propose to write web piece for Tomcat
May I propose that we make the web piece/pieces a Tomcat deployable webapp/s?
Although I'm not a tomcat programmer I work with such apps frequently at work and its always a pleasure because:
* Tomcat is a breeze to install. Anybody can do it. This is handy for testing
* Tomcat webapps can be fully self-contained. Makes for easy backups, restores, re-installs, upgrades.
* Tomcat webapps scale well in a web service provider environment. One server, many servers, thus handling unlimited load.
* They're written in Java, so it's an open language that anybody can contribute to, unlike the Microsoft equivelant.