infiltrating telecoms using ruby
DESCRIPTION
Infiltrating Telecoms Using Ruby presented by Ben Klang and Ben Langfeld of Mojo Lingo at RubyConf Brazil 2012TRANSCRIPT
![Page 1: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/1.jpg)
Infiltrating Telecoms Using Ruby
Ben Klang@bklang
Ben Langfeld@benlangfeld
![Page 2: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/2.jpg)
![Page 3: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/3.jpg)
Why Telephony
![Page 4: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/4.jpg)
Why Telephony
What is a Voice Application
![Page 5: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/5.jpg)
Why Telephony
What is a Voice Application
Telecom Infiltration Options
![Page 6: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/6.jpg)
Why Telephony
What is a Voice Application
Telecom Infiltration Options
Adhearsion: The Ruby Approach
![Page 7: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/7.jpg)
Why Telephony
http://www.itu.int/ITU-D/ict/newslog/Brazil+Has+More+Mobile+Phones+Than+People.aspx
http://www.internetworldstats.com/sa/br.htm
![Page 8: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/8.jpg)
Why Telephony
Brasil
http://www.itu.int/ITU-D/ict/newslog/Brazil+Has+More+Mobile+Phones+Than+People.aspx
http://www.internetworldstats.com/sa/br.htm
![Page 9: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/9.jpg)
Why Telephony
Brasil
20MM home computers for 194MM people
http://www.itu.int/ITU-D/ict/newslog/Brazil+Has+More+Mobile+Phones+Than+People.aspx
http://www.internetworldstats.com/sa/br.htm
![Page 10: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/10.jpg)
Why Telephony
Brasil
20MM home computers for 194MM people
194,439,250 mobile phones
http://www.itu.int/ITU-D/ict/newslog/Brazil+Has+More+Mobile+Phones+Than+People.aspx
http://www.internetworldstats.com/sa/br.htm
![Page 11: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/11.jpg)
Why Telephony
Brasil
20MM home computers for 194MM people
194,439,250 mobile phones
That is slightly more than one phone per person
http://www.itu.int/ITU-D/ict/newslog/Brazil+Has+More+Mobile+Phones+Than+People.aspx
http://www.internetworldstats.com/sa/br.htm
![Page 12: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/12.jpg)
The Dark Ages
State of Voice Technology:
![Page 13: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/13.jpg)
The Dark Ages
State of Voice Technology:
< AD 2000
![Page 14: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/14.jpg)
TDM PBXThe Dark Ages: < AD 2000
http://www.flickr.com/photos/dannyman/320310144/
![Page 15: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/15.jpg)
TDM PBXThe Dark Ages: < AD 2000
$$$ - £££ - €€€http://www.flickr.com/photos/dannyman/320310144/
![Page 16: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/16.jpg)
ProprietaryThe Dark Ages: < AD 2000
$$$ - £££ - €€€http://www.flickr.com/photos/dannyman/320310144/
![Page 17: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/17.jpg)
Islands of Functionality
The Dark Ages: < AD 2000
![Page 18: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/18.jpg)
Minimal/Non-Existent API
The Dark Ages: < AD 2000
![Page 19: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/19.jpg)
Limited Management Tools
The Dark Ages: < AD 2000
![Page 20: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/20.jpg)
Limited Management Tools
The Dark Ages: < AD 2000
Automation? What Automation?
![Page 21: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/21.jpg)
Limited Management Tools
The Dark Ages: < AD 2000
Automation? What Automation?
![Page 22: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/22.jpg)
The Last Ten Years
State of Voice Technology:
![Page 23: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/23.jpg)
Emergence of VoIP
The Last Ten Years
![Page 24: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/24.jpg)
Emergence of VoIP
The Last Ten Years
![Page 25: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/25.jpg)
Emergence of VoIP
The Last Ten Years
![Page 26: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/26.jpg)
Emergence of VoIP
The Last Ten Years
![Page 27: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/27.jpg)
Smarter EndpointsThe Last Ten Years
![Page 28: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/28.jpg)
Smarter EndpointsThe Last Ten Years
![Page 29: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/29.jpg)
Smarter EndpointsThe Last Ten Years
![Page 30: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/30.jpg)
Smarter EndpointsThe Last Ten Years
![Page 31: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/31.jpg)
Convergence
The Last Ten Years
![Page 32: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/32.jpg)
Convergence
The Last Ten Years
Instant Messaging - Presence
![Page 33: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/33.jpg)
Beginnings ofTruly Unified
Communications
The Last Ten Years
![Page 34: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/34.jpg)
The Next Ten Years
State of Voice Technology:
![Page 35: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/35.jpg)
Further Decentralization
The Next Ten Years
![Page 36: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/36.jpg)
Open Architecture
The Next Ten Years
![Page 37: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/37.jpg)
Federation
The Next Ten Years
![Page 38: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/38.jpg)
Multi-Modal Integration
The Next Ten Years
![Page 39: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/39.jpg)
Multi-Modal Integration
The Next Ten Years
Voice - Text - Video - Presence
![Page 40: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/40.jpg)
Collaboration
The Next Ten Years
![Page 41: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/41.jpg)
Collaboration
The Next Ten Years
Desktops - Documents
![Page 42: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/42.jpg)
Nowis an exciting time
to be working with Voice
The Next Ten Years
![Page 43: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/43.jpg)
What is a Voice Application?
![Page 44: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/44.jpg)
Interacts with Audio Stream
A Voice Application...
![Page 45: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/45.jpg)
Integrates Communication Channels
A Voice Application...
![Page 46: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/46.jpg)
Goes Beyond a Phone Call
A Voice Application...
![Page 47: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/47.jpg)
Voice Application Examples
![Page 48: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/48.jpg)
LiveTranslation
Service
Voice Application Examples
![Page 49: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/49.jpg)
Automated Reminder Calls
Voice Application Examples
![Page 50: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/50.jpg)
Mid-Call Assistive ServicesVoice Application Examples
http://books.google.com.br/books?id=ekYEAAAAMBAJ&printsec=frontcover&dq=7+july+1948+life+magazine&source=bl&ots=nV3HS1HwEk&sig=iHzNtgI-gJ7bnlAoEUX0q4BBZn4&hl=pt-BR&sa=X&ei=32k_UKXeEumx0AHaoYGYAg&ved=0CDQQ6AEwAQ#v=onepage&q=7%20july%201948%20life%20magazine&f=false
![Page 51: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/51.jpg)
CRM Integration
Voice Application Examples
![Page 52: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/52.jpg)
Over-the-Top Services
Voice Application Examples
![Page 53: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/53.jpg)
![Page 54: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/54.jpg)
But wait...
![Page 55: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/55.jpg)
telephony is HARD right??Photo by Joseph A. Carr from http://en.wikipedia.org/wiki/File:JT_Switchboard_770x540.jpg
But wait...
![Page 56: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/56.jpg)
Code Sample (comfort zone)
Don’t Panic
![Page 57: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/57.jpg)
Code Sample (comfort zone)
Don’t Panic
![Page 58: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/58.jpg)
Code Sample (comfort zone)
Don’t Panic
![Page 59: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/59.jpg)
Demo
+55 (11) 3958-8592
![Page 60: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/60.jpg)
Demo
![Page 61: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/61.jpg)
Demo
![Page 62: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/62.jpg)
Ruby & Telephony: The Options
![Page 63: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/63.jpg)
Simple Voice Apps
Tropo Scripting
![Page 64: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/64.jpg)
Multiple LanguagesRuby, JavaScript, Python...
Tropo Scripting
![Page 65: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/65.jpg)
Awesome TTS & ASRMany languages
Tropo Scripting
![Page 66: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/66.jpg)
Hosted
Tropo Scripting
![Page 67: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/67.jpg)
Reduced Control
Tropo Scripting
![Page 68: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/68.jpg)
Debugging Difficult
Tropo Scripting
![Page 69: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/69.jpg)
Integration points limited
Tropo Scripting
![Page 70: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/70.jpg)
Ruby & Telephony: The Options
![Page 71: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/71.jpg)
Hosted platform
Twilio
![Page 72: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/72.jpg)
Self-host Applications
Twilio
![Page 73: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/73.jpg)
HTTP API
Twilio
![Page 74: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/74.jpg)
Application FlexibilityAny language, any framework
Twilio
![Page 75: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/75.jpg)
Mostly fire-and-forget
Twilio
![Page 76: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/76.jpg)
Few opportunitiesto interrupt
Twilio
![Page 77: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/77.jpg)
Enforced stateless
Twilio
![Page 78: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/78.jpg)
Ruby & Telephony: The Options
![Page 79: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/79.jpg)
The Ruby Approach
![Page 80: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/80.jpg)
The Ruby Approach
![Page 81: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/81.jpg)
Voice ApplicationFramework
Adhearsion: The Ruby Approach
![Page 82: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/82.jpg)
Adhearsion: The Ruby Approach
![Page 83: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/83.jpg)
Hosting flexibility(VM, PaaS, anywhere)
Adhearsion: The Ruby Approach
![Page 84: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/84.jpg)
Many integration points
Adhearsion: The Ruby Approach
![Page 85: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/85.jpg)
Platform Agnostic
Adhearsion: The Ruby Approach
![Page 86: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/86.jpg)
Just Ruby
Adhearsion: The Ruby Approach
![Page 87: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/87.jpg)
Ability to interactbetween calls
Adhearsion: The Ruby Approach
![Page 88: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/88.jpg)
Simple, Extensible API
Adhearsion: The Ruby Approach
![Page 89: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/89.jpg)
Get Involved
Adhearsion: The Ruby Approach
github.com/adhearsion/adhearsionadhearsion.com
![Page 91: Infiltrating Telecoms Using Ruby](https://reader034.vdocuments.site/reader034/viewer/2022051514/54939b5eb479593d4d8b4889/html5/thumbnails/91.jpg)
Replay the Demo:+55 (11) 3958-8592
Thanks! Questions?
Ben Klang@bklang
Ben Langfeld@benlangfeld