TwilioBot: Bringing Phone Conversations into Waves

Tuesday, June 16, 2009 | 9:37 PM

Evan is Co-Founder and CTO of Twilio and he shares his experience building twiliobot on the Google Wave API.

One of the powerful features of Google Wave is the ease with which developers can integrate it with existing APIs. Lars and Stephanie demonstrated several Wave extensions that leverage other APIs such as Mappy using the Google Maps API and Rosy using the Google Language API. At the Post-I/O hackathon, I used the Twilio API to extend Wave into the world of telephony.

The result was twiliobot, a robot written in Python that uses the Twilio Phone API to create "voice waves." When a user adds twiliobot to a wave, the robot automatically finds and transforms the phone numbers in that wave into click-to-call links. When a user clicks a link, a call is placed to the user's cell phone or landline and to the phone number in the link and the two are connected. The subsequent phone conversation can then be recorded, transcribed, and automatically inserted into the wave as text with a link to the audio of the conversation.

Phoning from a wave with twiliobot

Here is a video of twiliobot in action, and a quick look at the code:

You can view, download, and see instructions on using twiliobot here.

The twiliobot code in svn is still very much a work in progress. For example, there's currently no way to store your own phone number and the logic for recording and transcribing calls isn't checked in yet. We'll be working on improving twiliobot over the next several weeks. If you have patches or ideas please submit them to the issue tracker. Also, feel free to drop us a line at help at

Easy API Integration

If you are a developer and thinking about building something on top of Google Wave — do it! Google has provided an amazingly powerful API, and I bet you'll have real code running in Wave in under an hour. At Twilio, we appreciate what it takes to build a straightforward API. Check out our docs, demos, and sign up for 1000 free minutes you can use to experiment with phone integration for your Wave extension or web app.

A big thanks to the Google Wave team for the opportunity to attend the hackathon and experiment with the API.