In the previous blog post ‘Auto-Launch triggered by an incoming call’ and ‘Receiving Phone calls on the Browser’, I have made an inquiry phone call to be connected to the representative personnel, then the conversation to be recorded. This time, I would like to consider to receive an inquiry on a scheme like an answering machine assuming the Customer Support is out of business hour.
Overall Mechanism is the same as ‘Touch-tone Entry to Trigger the Order Process‘.
== 1. A User Places a Phone Call to the Customer Support ==
Getting one phone number from Twilio in advance, and use it for the Customer Support. This scenario starts with a user placing a phone call to the number, but it is out of business hour.
== 2. HTTP Request from Twilio to Google Apps Engine ==
Twilio will transmit an HTTP request to the URL of Google Apps Engine on receiving a phone call. The URL has been registered associated with the phone number.
== 3. Google Apps Engine Responses TwiML ==
Configure in the Google Apps Engine to let it respond an XML (TwiML) as follows at receiving an HTTP Request from Twilio.
The URL that Twilio transmits the HTTP Request to, is the one configured in step 2.
<Response> <Say voice="woman" language="en">We are very sorry, we are out of business hours.Please leave your message so we could call you back later.</Say> <Record action="http://questetra-twilio.appspot.com/callend" method="post"/> </Response>
The <Record> tag works like an answering machine. When the call ends, the recording finishes. When the recording finished, it transmits an HTTP Request to the URL that has been specified in the <action> attribute.
== 4. User leaves a message of inquiry ==
Receiving the TwiML from the Google Apps Engine, Twilio processes according to its content. First, it answers automatically telling ‘We are very sorry…’ Then starts recording whatever the user speaks.
== 5. HTTP Request from Twilio to Google Apps Engine ==
When the call ends, Twilio transmits an HTTP request to the Google Apps Engine. The HTTP request will be sent to the URL that has been specified by the action attribute of the record tag in the TwiML above. At this time, the URL where the recorded contents to be downloaded will be sent being set in the RecordUrl parameter of the request.
== 6. HTTP Request from the Google Apps Engine to Questetra BPM Suite ==
Parsing the contents of the HTTP request from Twilio, the Google Apps Engine will transmit an HTTP request to Questetra BPM Suite. I attach a Servlet Program here, which is exactly the same as I have attached in “Auto-Launch triggered by an incoming call”. Please see that article for the descriptions about the program.
How was this article to you?
I heard that Twilio is providing a function of analyzing speech data and saving it in a text file. But currently, it does not support for Japanese language. I am longing for them to do so.
Incidentally, I tried this function in English, it analyzed my speech as totally different. They even did not understand me speaking ‘Hello’. Which was not good enough? The engine or my pronunciation?
== Related Blog post ==
- Call Center with Twilio, without Telephone Machine (Auto-Launch triggered by an incoming call) (2013-2-21)
- Call Center with Twilio, without Telephone Machine (Receiving Phone calls on the Browser) (2013-3-8)
- Call Center with Twilio, without Telephone Machine (‘Please wait for a few seconds.’ in Japanese) (2013-4-17)
- Call Center with Twilio, without Telephone Machine (Touch-tone Entry to Trigger the Order Process) (2013-5-10)
|Prev article - 15. Ambitions||Call Center with Twilio, without Telephone Machine (Touch-tone Entry to Trigger the Order Process)|
|Next article - 15. Ambitions||Three 'Talents' Neededed in a Person to Improve Business|
|Another article - Hatanaka Akihiro||Application via Enterprise Portal (part 2)|