Recently we did an upgrade to the Tropo platform that included the requirement to include a ‘+’ whenever making an outbound call from the Tropo cloud. This means that when dialing a number, even in the US, you must now format as ‘+14155551212’ when using the call or transfer method.
While Tropo supports RESTful Web Services as a form of moving data to and from the communication cloud, it may not always be fast enough for all applications. There are apps that require the lowest possible latency, for example, when mobile devices become input devices. The unique approach of Tropo, allowing developers to host scripts in our cloud, allows you the ability to write applications that take direct advantage of persistent sockets. This means that you may open the socket once and then stream data to your remote application in realtime without having to establish HTTP connections each time.
I recently created an example of this using Ruby to serve a socket using EventMachine, and then writing a script on Tropo that opens a socket and sends touch-tones (DTMF) down the socket immediately as they come in. Here it is in action:
The code examples may be found here.
We are continuing to evolve Tropo, by releasing a new upgrade to the Tropo cloud. This upgrade includes the following:
- Support for fetching Java Speech Grammar Format (JSGF) and Speech Recognition Grammar Specification (SRGS) files from an external HTTP or FTP server, in addition to the built in support for Simple Grammar. We are working on a couple of follow up posts for how-tos on using these enhanced speech grammar capabilities.
- When placing an outbound call, you must now include the ‘+’ and country code. To dial in the US would then need to be ‘+1415551212’ for every outbound call.
- The ‘#’ symbol on the telephone keypad may now be used to terminate a recording in a Tropo application.
- Addition of MP3 as an audio file playback format.
- You may now play touch-tones (DTMF) after a call has connected. You may now issue a call with these additional parameters: “+14155551212;postd=1234;pause=22000ms”. Where ‘postd’ is the digits to be dialed and ‘pause’ is the amount of time to wait after connecting the call to issue the digits.
- New accounts will now need to request outbound dialing access from email@example.com. All existing accounts have outbound enabled and will continue to do so.
We continue to work on many new features and will roll them out as they become available. Enjoy the new features!