Twilio Gem
The Twilio gem provides two major pieces of functionality: (1) a Ruby wrapper for the Twilio REST API and (2) response handlers based on the Twilio Markup XML (TwiML).
See www.twilio.com/docs/index for Twilio’s API documentation.
For an overview of the Twilio Gem and a sample use case, check out our cached blog entry: webcache.googleusercontent.com/search?q=cache:AejgwBra3fMJ:www.webficient.com/2009/06/22/hello-this-is-your-rails-app-calling-you+site:http://www.webficient.com/2009/06/22/hello-this-is-your-rails-app-calling-you&hl=en&gl=us&strip=1
Calling the Twilio REST API
First set your credentials by calling the connect method:
Twilio.connect('my_twilio_sid', 'my_auth_token')
Now call any of the Twilio classes:
Twilio::Call.make('1234567890', '9876543210', 'http://mysite.com/connected_call')
Twilio::Recording.list
Responding to Twilio
When Twilio calls your application URL, your response must use the Twilio Markup XML (www.twilio.com/docs/api_reference/TwiML/). The Twilio gem makes this very easy by providing a Twilio Verb class.
For example, in a Ruby on Rails application, you could do the following inside a controller class:
Twilio::Verb.dial '415-123-4567'
and you can nest multiple verbs inside a block:
verb = Twilio::Verb.new { |v|
v.say "The time is #{Time.now}"
v.hangup
}
verb.response
Installation
sudo gem install twilio -s http://gemcutter.org
If you need to tweak the source code, clone this repository and do a rake build and rake install.
Copyright
Copyright © 2009-2010 Phil Misiowiec, Webficient LLC. See LICENSE for details.
Contributors
Kyle Daigle, Yuri Gadow, Jonathan Rudenberg, Jeff Wigal, Alex K Wolfe