This build out will serve the purpose of allowing an inmate to call into a conference line that other callers can call into and conference call with that inmate.
The inmate with call into a designated number. This number will never change. When that phone number is dialed into by the inmate, the system will need to auto-accept the inmate's call (this is called "Auto Call Acceptance" and is discussed below), and then forward the inmate's call into the conference call.
The conference call will be conducted within the Twilio framework. All non-inmate callers will call into a conference line number that will be separate from the number that the inmate dials to gain access to the conference line. This phone number that the non-inmate caller calls into will also be a phone number that does not change.
Once the inmate caller and non-inmate caller are inside of the conference line, they should be able to talk until they both hang up. In addition, other callers should be able to access the same conference call so that multiple people can be on the same call.
Auto Call Acceptance
Anytime that an inmate calls someone, their call must be actively accepted by the called party. In order for that to happen, when the called party answers the phone, the sound of their voice saying "Hello" prompts the jail's phone system to recite a script and audio file that says this: "You have a pre-paid call from [Audio File Of Inmate Saying Their Name Plays Here]. An inmate at the North Central Correctional Institution in Gardner. To accept the call, press zero."
Once the called party presses ZERO on their key pad, the jail's phone system identifies that the Dual Tone Multi-frequency (or DTMF) of ZERO has been selected, and then the inmate and the called party can begin to talk live to each other.
So what the developer would be putting in place for auto call acceptance, is code that will follow the three steps below whenever the inmate caller dials into their designated phone number:
1. Play an audio file that says "Hello," waits three seconds and says "Hello" again.
2. Wait until [x amount of] seconds pass, and then trigger the zero ("0") DTMF tone, wait three seconds and the trigger the zero ("0") DTMF tone again.
3. Then forward the inmate caller into the conference line to either join a conference call already in session, or to wait for other callers to join the inmate caller in the conference.
NOTE: No non-inmate conference caller will ever hear any of this call acceptance process. The inmate caller should only be brought into the conference call once all of the Auto Call Acceptance process has been completed.