For maximum flexibility the IVR.VC service offers an HTTP/XML based API through which DTMF input can be communicated to an external HTTP server and commands can be issued back to play back movie sequences, enter a new IVR menu or transfer the call using SIP REFER.
Upon receiving a collection of DTMF digits, matching a pre-defined pattern, the HTTP client on the IVR.VC side will POST an HTTP request with the collected DTMF digits embedded in its XML body. This body is formatted according to the below example.
<?xml version=“1.0”?>
<iventry>
<digits>1234#</digits>
</iventry>
The collected digits are communicated within the digits field.
Upon receiving the HTTP POST request, the HTTP server script will extract and examine the collected DTMF digits, execute one or more instructions based on this input and issue a command back to the IVR.VC service in the form of an XML-formatted HTTP reply. The XML body is formatted according to the below example.
<?xml version=“1.0”?>
<ivcmd>
<action>refer</action>
<target>sip:myroom@example.com</target>
<media>room-enter.mp4</media>
<ivcmd>
Using this XML response, the HTTP server-side script can instruct the IVR.VC service to execute different commands. Which type of command to execute is included in the action field. The target field serves as a command argument, and its content depends on the type of action to execute. The media field contains an optional movie sequence to be played back before the action is executed. This field may be empty if the action is to be executed directly, without an initial announcement. The following commands are supported in the action field: