API-based Phone Dialer Application

Closed - This job posting has been filled and work has been completed.
Web, Mobile & Software Dev Web Development Posted 2 years ago

Hourly Job

Hours to be determined
Less than 1 week

Details

We are hiring a developer to create only the beginning of a Rails application named PhoneFriend.  When this first milestone is complete, we will plan development of the rest of the application.  (Since the full application will be a small prototype application, we intend to complete development of a launchable version by the end of January.)

**Project Description**

PhoneFriend will allow a user to place phone calls using their iPhone via JSON requests to the rails application, which will then use the Plivo.com API to complete the call.  (The iOS application is being developed in parallel to the Rails project described here.)

This application should be written using Ruby on Rails (version 3.2).  It should be deployed to Heroku for demonstration purposes.  Finally, the app's code should be well-covered by automated unit and functional tests -- rSpec and Cucumber, respectively.

**Step-by-step description of milestone one**

1. This application will mainly consist of a RESTful application that communicates via JSON with the iOS application.
2. Create a Call model that will store the following information: 1) caller phone number, 2) recipient phone number, 3) call start time, 4) call end time, 5) API response
3. For a given JSON request to the calls endpoint (the calls#create action), use the Plivo.com API to initiate a telephone call between the caller phone number and recipient phone number, both of which will be provided by the JSON request.
4. Create a new call record that logs the call information as described above.
5. After the call has been picked up by the recipient, the application should wait 10 seconds and then disconnect the call (using the Plivo.com API).  (This requirement is arbitrary, but it lays the groundwork for a subsequent feature that will allow the application to interrupt calls is the caller lacks sufficient credit for a longer call.)

Since these five steps will serve as the basis for a more complicated application, they should be built in a way that will allow them to be expanded upon.  Please keep in mind that although the application will mainly be a bridge between the Plivo.com and the iOS APIs, it will later include web-based UIs for administration and the such.  Also note that although we are using Plivo.com right now, the final application should include a wrapper for the dialer API so that we can easily swap out a new dialer API when necessary.

**Additional Requirements**

VERY IMPORTANT: To separate you from the spammers, please write the word PHONEFRIEND as the first line of your bid.  We will delete all bids that do not start with this phrase, since most bidders never read the requirements.  Thank you for being one who does.

---
Skills: json


About the Client

(0.00) 0 reviews

United States
Washington 04:35 PM

4 Jobs Posted
25% Hire Rate, 1 Open Job

$315 Total Spent
1 Hire, 0 Active

$27.78/hr Avg Hourly Rate Paid
11 Hours

Member Since Aug 21, 2012