In this guide, we'll show you how to use Programmable Voice to make outbound phone calls from your Ruby applications. It's pretty easy - all you'll need is the Twilio Ruby Helper Library, a voice-capable Twilio phone number, your account credentials, and five minutes to have a boatload of fun at your keyboard. Let's get started!
Now we're ready to make an outbound voice call using the Twilio Ruby gem.
There are a few key parameters to drill into when making the outbound call.
- "From" - the voice-enabled Twilio phone number you added to your account earlier
- "To" - the person you'd like to call
- "Twiml" - Instructions in the form TwiML that explains what should happen when the other party picks up the phone
- "Url" - Optionally, instead of passing the
Twimlparameter, you can provide a Url that returns TwiML Voice instructions.
<?xml version="1.0" encoding="UTF-8"?> <Response> <Say>Thanks for calling!</Say> </Response>
And here's some TwiML you might use to respond to an incoming SMS message:
<?xml version="1.0" encoding="UTF-8"?> <Response> <Message>We got your message, thank you!</Message> </Response>
Every TwiML document will have the root <Response> element and within that can contain one or more verbs. Verbs are actions you'd like Twilio to take, such as <Say> a greeting to a caller, or send an SMS <Message> in reply to an incoming message. For a full reference on everything you can do with TwiML, refer to our TwiML API Reference.
Of course, the TwiML you use to make the outbound call doesn't need to be a static file like in this example. Server-side code that you control can dynamically render TwiML to use for the outbound call. Check out our inbound call guide to see an example of a Ruby app which generates TwiML.
Great work! In a few lines of code, you've placed an outbound phone call from your Ruby code. If you're using Programmable Voice with Ruby, you might enjoy these other guides as well.
- Record Phone Calls in Ruby
- Gather User Input via Keypad (DTMF Tones) in Ruby
- Create Conference Calls in Ruby