Our company needs client software applications written for Windows Mobile and Palm Treo mobile platforms that perform the following actions:
- Wake up anytime a call is completed
- Post and HTTP URL+query to a central web server with data about the call
- Pop the platform browser to allow the user to enter information about the call
- Handle network outages and other anomalies
The bidder can bid on either or both of the platforms.
## Deliverables
This application has already been deployed on the Blackberry and we are just trying to port it to Windows Mobile and Palm Treo; as such, the requirements and interfaces are well developed and simply need to be adjusted for the new platforms.
This request is for the client (mobile) side of the application only. The server side already exists.
We will share the details of the POST data, query strings, and interfaces with the coder(s) to whom we award the work, but here are some additional details/flows to assist in bid development.
Primary sequence of events:
1) Call arrives
2) Call completes
3) APPLICATION pops browser and POSTS call details to a remote web server using a specific URL + query string
4) Browser displays the results page (HTML form)
5) User enters data on form and submits
Call details include:
- Called/calling number
- Local number
- call start time
- call duration
- call direction (in/out)
In cases where the network is not available or a non-200 response is received on the original POST, the application should retry every X minutes to POST the data until the data is successfully posted. On a retry event, the user will not be presented with the browser interaction.
The application should gracefully handle call waiting calls by ensuring all calls are POSTed, but only one call (the last) is popped into the browser.
The application will ignore some calls based on the following criteria: < 10 seconds, unanswered. The "ignore" filter should be flexible and extensible to handle future criteria.
The application will provide a configuration screen that allows for 5-10 fields of information to be entered and stored on the device (e.g. username, password, server, etc). This information will be used to contact and authenticate with the server. The configuration screen will also allow the user to temporarily disable the application.
The application will provide device-appropriate access to the configuration screen (e.g. desktop icon, menu entry, etc).
As noted above, the bid can be for the Windows Mobile version, the Palm Treo version, or both. The bidder should explicitly state which platform(s) they are bidding on.