Ruby Call Center

1.18.10 by Gregg Pollack

One of our clients recently started to get frustrated with VOIP/Telco companies that wanted to charge him an arm and a leg to configure his phones to do something customized. Luckily there are some new cloud-based communication web services with killer APIs like Twillio and Tropo.  With these tools any developer can code call functionality into their application, or perhaps even mirror the functionality of a call system with a little Ruby Sinatra Application.

The following video is exactly that Ruby Sinatra App, developed by our own Jacob Swanner:

View On Viddler

Sorry, I can’t show you the code how we did it (this is client work).  However, let me show you an example of the API code.    When someone calls in to the number your service gives you, the cloud service makes a call to your Ruby app and your Ruby app tells Twillio / Tropo what to do. Here’s a quick example from Twillio:

As you can see, the user will be played a Greeting and then asked for their zipcode. Once that zipcode has been captured the cloud service calls back to your Ruby app with the entered information, your Ruby app would retrieve the weather information (inside your controller), then perhaps render this XML View:

There are prettier ways to write XML in Ruby, but you get the picture. The response gets read back to the caller. Both the Twillio documentation and the Tropo documentation are quite useful, especially the examples and both services are reasonably cheap.

If you need any help implementing a call center / voice interface to your app, feel free to give us a ring. We love this stuff.

Related posts:

  1. Scaling Rails – On The Edge – Part 3
  2. Ruby Tracker, the Ruby Dependency Manager
  3. Garbage Collection & the Ruby Heap

27 Responses to “Ruby Call Center”

Comments

  1. Eric Berry says:

    Love the screencast, especially the harmonizing ringtones. Great job! I wish I could see the source ;)

  2. You guys couldn’t at least use something like blueprint to made it a little easier on the eyes?

  3. Sean says:

    Have a look at http://warvox.org/gallery.html , a parallel VoIP wardialer written in Ruby.

  4. [...] Ruby Call Center, funny video featuring one of Envy Lab’s client jobs [...]

  5. Jeff Lawson says:

    Hi Gregg,

    Great demo, I love the “dialing strategy” design. You should start a barber shop quartet with Twilio, guaranteed to win a contest or two.

    If you’d need any help or would like to chat, feel free to drop me an email.

    Cheers,

    -jeff
    Twilio.com

  6. Hexorx says:

    I have a project in private beta that also provides an XML API to take control of voip services. Any one interested in helping polish it can request an invite at beta.teliax.com.

  7. CROISSANCE SYSTEMS says:

    Hey,this is peter. Its really Great demo, I love the “dialing strategy” design. You should start a barber shop quartet with Twilio, guaranteed to win a contest or two.
    ==================
    peter011
    http://in.linkedin.com/in/croissancesystems1rishiagarwal

  8. Hey,this peter.Great demo, I love the “dialing strategy” design. You should start a barber shop quartet with Twilio, guaranteed to win a contest or two.
    =================
    peter011

Leave a Reply

* Required Fields

Additional comments powered by BackType