This project is for the development of a simple front end app for smartphones - iPhone and Android.
The frontend to be developed should be very simmilar to PennyTalk - [url removed, login to view]
The application should have a local config file that pulls from a url the phone number(s) that are to be dialed. These are the "access numbers". The attempt to pull the numbers should happen when the app starts, but not more than once daily. The request for "access numbers" list through the web should include the authentication code (explained below). If unsuccessful, then use the previously pulled numbers.
The local config file should also have a 32-character authentication code that will be stored upon first starting the app. When the app is first started, it should send a web request to a certain url passing the phone number (pulled automatically from the phone). In response the url will generate the authentication code. This authentication code will be used in the info pages (described below).
The user can "dial" any number on the app. What will happen is that when the user hits the button to call, the app will always call the "access number" previously pulled, wait to answer, then pass all digits that user entered as DTMF.
The selection of which "access number" to use should be a "rotation". Basically each time the user calls it would add one to an internal counter of calls per access number, and the system will try to use the access number with less calls done. This is to "balance" the calls between access numbers available.
The other "screens" of the app are just pulled directly from the web, and the only thing that needs inside of the app is the icon / button at the bottom that pulls the information and shows on the screen. When requesting the URL, only thing the app needs to add is the authentication code. Anything received back from the url should be directly shown on the screen as HTML page. There will be some navigation, payment screen, etc but you don't need to worry or work on it because this is all going to be done at browser level. You're calling the first URL link with the button at the bottom and that's it.
Nothing else is stored locally. Call logs, balance, rates, everything comes directly from the web. All the app is doing is show HTML in a browser component. You are not responsible to create the web content, only the app pulling a URL that will be given.
Very simple app as you can see. Something to be done probably in a few hours.
Must submit compiled version ready for deployment and complete documented source code upon delivery with all needed libraries.
It should be created two versions, one for iPhone and another for Android, with the same look.