VoIP (outbound calls, IVR, Voice Recording) application in PHP (repost)
$500-5000 USD
已取消
已发布超过 15 年前
$500-5000 USD
货到付款
Creating a VoIP library/class that can be integrated with PHP based application. This library/class should be able to call an international number, play pre-recorded messages, get responses from the receiver (IVR), call a second number connect the two receivers, and record their conference.
## Deliverables
We need a library/class that can control a SIP server. This library/class should be easily integrable in our LAMP application so that we can create objects of this class and call functions as in any normal class case. Following are the functions that we need in a library/class: Connect (Number, Time-Duration, TimeOfBeep, Binary Record) - places an outgoing call to the provided number - creates a call handle - slow 3 beeps when the time left is TimeOfBeep - captures all possible associated error codes - records the call depending on the Record parameter value IVR (CallHandle, Array MessageToBePlayed[] ) - places return user’s response - captures all possible associated error codes Hold (CallHandle, MaxDurationOfHold) - places a hold on the call - plays music - captures all possible associated error codes Resume (CallHandle, MaxDurationOfHold, Record) - places a hold on the call - plays music - captures all possible associated error codes - resumes recording if recording earlier Disconnect (CallHandle) - disconnects the call - plays music - captures all possible associated error codes Monitor (CallHandle) - reports call-status - captures all possible associated error codes - captures user’s response during the call ConnectConference (CallHandle1, CallHandle2, Time-Duration, TimeOfBeep, Binary Record) - connects the two calls on hold - creates a conference call handle - slow 3 beeps when the time left is TimeOfBeep - captures all possible associated error codes - records the call depending on the Record parameter value Disconnect (ConferenceCallHandle, CallHandle1, CallHandle2) - disconnects the conference call and put both calls on hold - captures all possible associated error codes MonitorConference (ConferenceCallHandle, CallHandle1, CallHandle2) - reports call-status - captures all possible associated error codes - captures users’ responses during the call ----------------------------------------------------------------------------------- Following is what we intend to do using the above functions: There is a database with three fields- Receiver1 (any international landline or mobile number), Receiver2 (any international landline or mobile number), and the time-duration. For any record of Receiver1 there can be multiple records of Receiver2. Preparing a module in PHP with the following requirements: 1) Software should be able to call Reciever1 from the database. If Receiver1 doesn’t pick up then software should call again. If the receiver still doesn’t pick then mark absent for that record and end the program, otherwise move to next step. 2) Interactive Voice response: Software should be able to play some pre-recorded messages and get response from Receiver1. Based on a pre-defined phone keys, software should either end the program or move to the next step. 3) Software should put the Receiver1 on hold and call Receiver2. If Receiver2 doesn’t pick up then software should call again. If the receiver still doesn’t pick then mark absent for that record and call the next number in Receiver2 field from the database. When Receiver2 picks up then software should move to the next step. 4) Software should play a pre-recorded message to the Receiver2 and connect the Receiver2 with theReceiver1 who is on hold. Software should record their conversation. If the call drops before the elapse of time-duration then the software should connect both the receivers again. On the elapse of time-duration, software should drop the call to Receiver2 but not from Receiver1. 5) Step 2 continues.