Talking to Rails

     Ben Langfeld
 Adhearsion Core Team
      Mojo Lingo

       @benlangfeld
blangfeld@adhearsion.com
Why voice?
Why voice?
•Many more people have access to a telephone than
 have access to the internet
Why voice?
•Many more people have access to a telephone than
 have access to the internet

•Many people still prefer voice-based interactions
Why voice?
•Many more people have access to a telephone than
 have access to the internet

•Many people still prefer voice-based interactions

•Voice enables a multitude of interesting use-cases
 which text and images cannot
Why voice?
•Many more people have access to a telephone than
 have access to the internet

•Many people still prefer voice-based interactions

•Voice enables a multitude of interesting use-cases
 which text and images cannot

•Because having a computer make a phone ring is
 still cool
But wait...
telephony is HARD right??
  Photo by Joseph A. Carr from http://en.wikipedia.org/wiki/File:JT_Switchboard_770x540.jpg
Code Sample (comfort zone)
Code Sample (comfort zone)
Code Sample (comfort zone)
Talking To Rails
A voice application development
          framework
A voice application development
          framework

Independent from, but compatible
          with, Rails
A voice application development
             framework

   Independent from, but compatible
             with, Rails


Voice applications the Ruby Way
Talking To Rails
Features

    Not just compiled down to some kind of crazy configuration, but we have full access
    to both the ruby environment and the call at all times




         Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc




                                 Third largest mobile carrier in the world
Features
•Easy-to-use DSL
                       Not just compiled down to some kind of crazy configuration, but we have full access
                       to both the ruby environment and the call at all times




                            Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc




                                                    Third largest mobile carrier in the world
Features
•Easy-to-use DSL
•Idiomatic Ruby code
                       Not just compiled down to some kind of crazy configuration, but we have full access
                       to both the ruby environment and the call at all times




                            Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc




                                                    Third largest mobile carrier in the world
Features
•Easy-to-use DSL
•Idiomatic Ruby code
                        Not just compiled down to some kind of crazy configuration, but we have full access
                        to both the ruby environment and the call at all times




•Powerful Eventing System    Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc




                                                     Third largest mobile carrier in the world
Features
•Easy-to-use DSL
•Idiomatic Ruby code
                        Not just compiled down to some kind of crazy configuration, but we have full access
                        to both the ruby environment and the call at all times




•Powerful Eventing System    Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc




•Plugins to solve common problems




                                                     Third largest mobile carrier in the world
Features
•Easy-to-use DSL
•Idiomatic Ruby code
                        Not just compiled down to some kind of crazy configuration, but we have full access
                        to both the ruby environment and the call at all times




•Powerful Eventing System    Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc




•Plugins to solve common problems
•A very helpful community


                                                     Third largest mobile carrier in the world
Features
•Easy-to-use DSL
•Idiomatic Ruby code
                        Not just compiled down to some kind of crazy configuration, but we have full access
                        to both the ruby environment and the call at all times




•Powerful Eventing System    Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc




•Plugins to solve common problems
•A very helpful community
•Sponsorship from       and
                                                     Third largest mobile carrier in the world
Advanced Voice Features
Advanced Voice Features

High-level constructs
(Menus, Queues,
Conferences)
Advanced Voice Features

High-level constructs
(Menus, Queues,         DTMF gathering &
Conferences)            voice recognition
Advanced Voice Features

High-level constructs
(Menus, Queues,             DTMF gathering &
Conferences)                voice recognition


           Text-to-Speech
Advanced Voice Features

High-level constructs
(Menus, Queues,             DTMF gathering &
Conferences)                voice recognition


           Text-to-Speech
                            Answering
                            Machine Detection
Advanced Voice Features

High-level constructs
(Menus, Queues,             DTMF gathering &
Conferences)                voice recognition


           Text-to-Speech
                            Answering
                            Machine Detection
  Call Progress
Adhearsion Applied
Adhearsion Applied
 Call centre workflow
  optimisation and
      integration
Adhearsion Applied
 Call centre workflow
  optimisation and     Sales force automation
      integration
Adhearsion Applied
 Call centre workflow
  optimisation and     Sales force automation
      integration




 Conferencing
 applications
Adhearsion Applied
 Call centre workflow
  optimisation and     Sales force automation
      integration


                            Translation
                             services


 Conferencing
 applications
Adhearsion Applied
 Call centre workflow
  optimisation and     Sales force automation
      integration


                            Translation
                             services


 Conferencing
 applications               Robo-calling
Adhearsion Applied
 Call centre workflow
  optimisation and     Sales force automation
      integration


     Polling                Translation
                             services


 Conferencing
 applications               Robo-calling
Adhearsion Applied
 Call centre workflow
  optimisation and           Sales force automation
      integration


     Polling                      Translation
                       IVR         services


 Conferencing
 applications                     Robo-calling
Adhearsion Platforms

                       2008


                       2010



                       2011
Adhearsion Platforms

                       2008


                       2010



                       2011
Adhearsion Platforms

                       2008


                       2010



                       2011
Adhearsion Platforms

                       2008


                       2010



                       2011
Adhearsion Architecture   Tropo Pros:
                           * Easy to set up
                           * Awesome TTS/ASR
                           * SMS & International

                           Cons:
Asterisk Pros:             * No manager events
* Run on your server       * No built-in recordings
* Widely Deployed
* Eventing System          Note: AGItate first written 1
                               year ago
Cons:
* Tricky to set up/
Requires hardware
* No TTS/ASR
Adhearsion Architecture   Tropo Pros:
                           * Easy to set up
                           * Awesome TTS/ASR
                           * SMS & International

                           Cons:
Asterisk Pros:             * No manager events
* Run on your server       * No built-in recordings
* Widely Deployed
* Eventing System          Note: AGItate first written 1
                               year ago
Cons:
* Tricky to set up/
Requires hardware
* No TTS/ASR
Adhearsion Architecture   Tropo Pros:
                           * Easy to set up
                           * Awesome TTS/ASR
                           * SMS & International

                           Cons:
Asterisk Pros:             * No manager events
* Run on your server       * No built-in recordings
* Widely Deployed
* Eventing System          Note: AGItate first written 1
                               year ago
Cons:
* Tricky to set up/
Requires hardware
* No TTS/ASR
Adhearsion Architecture   Tropo Pros:
                           * Easy to set up
                           * Awesome TTS/ASR
                           * SMS & International

                           Cons:
Asterisk Pros:             * No manager events
* Run on your server       * No built-in recordings
* Widely Deployed
* Eventing System          Note: AGItate first written 1
                               year ago
Cons:
* Tricky to set up/
Requires hardware
* No TTS/ASR
Adhearsion Architecture   Tropo Pros:
                           * Easy to set up
                           * Awesome TTS/ASR
                           * SMS & International

                           Cons:
Asterisk Pros:             * No manager events
* Run on your server       * No built-in recordings
* Widely Deployed
* Eventing System          Note: AGItate first written 1
                               year ago
Cons:
* Tricky to set up/
Requires hardware
* No TTS/ASR
Adhearsion Architecture   Tropo Pros:
                           * Easy to set up
                           * Awesome TTS/ASR
                           * SMS & International

                           Cons:
Asterisk Pros:             * No manager events
* Run on your server       * No built-in recordings
* Widely Deployed
* Eventing System          Note: AGItate first written 1
                               year ago
Cons:
* Tricky to set up/
Requires hardware
* No TTS/ASR




                 SQL
Adhearsion Architecture      Tropo Pros:
                              * Easy to set up
                              * Awesome TTS/ASR
                              * SMS & International

                              Cons:
Asterisk Pros:                * No manager events
* Run on your server          * No built-in recordings
* Widely Deployed
* Eventing System             Note: AGItate first written 1
                                  year ago
Cons:
* Tricky to set up/
Requires hardware
* No TTS/ASR




                 SQL   LDAP
Adhearsion Architecture                    Tropo Pros:
                                            * Easy to set up
                                            * Awesome TTS/ASR
                                            * SMS & International

                                            Cons:
Asterisk Pros:                              * No manager events
* Run on your server                        * No built-in recordings
* Widely Deployed
* Eventing System                           Note: AGItate first written 1
                                                year ago
Cons:
* Tricky to set up/
Requires hardware
* No TTS/ASR




                 SQL   LDAP   XMPP/Jabber
Adhearsion Architecture                    Tropo Pros:
                                            * Easy to set up
                                            * Awesome TTS/ASR
                                            * SMS & International

                                            Cons:
Asterisk Pros:                              * No manager events
* Run on your server                        * No built-in recordings
* Widely Deployed
* Eventing System                           Note: AGItate first written 1
                                                year ago
Cons:
* Tricky to set up/
Requires hardware
* No TTS/ASR




                              XMPP/Jabber           Web
                 SQL   LDAP                     REST/JSON/XML
Why Adhearsion?
Why Adhearsion?
•Easy code reuse
Why Adhearsion?
•Easy code reuse
•A natural DSL which is easy to write to
Why Adhearsion?
•Easy code reuse
•A natural DSL which is easy to write to
•Rich inter-call operation within the process
Why Adhearsion?
•Easy code reuse
•A natural DSL which is easy to write to
•Rich inter-call operation within the process
•Brings modern development practices to telephony
Why Adhearsion?
•Easy code reuse
•A natural DSL which is easy to write to
•Rich inter-call operation within the process
•Brings modern development practices to telephony
•No need for complex state-machines and constant
 load on your Rails app from an HTTP-based API
Why Adhearsion?
•Easy code reuse
•A natural DSL which is easy to write to
•Rich inter-call operation within the process
•Brings modern development practices to telephony
•No need for complex state-machines and constant
 load on your Rails app from an HTTP-based API
•Runs on Asterisk, so can integrate with an existing
 PBX
Why Adhearsion?
•Easy code reuse
•A natural DSL which is easy to write to
•Rich inter-call operation within the process
•Brings modern development practices to telephony
•No need for complex state-machines and constant
 load on your Rails app from an HTTP-based API
•Runs on Asterisk, so can integrate with an existing
 PBX
•Adhearsion democratises telephony development
A (contrived) example problem
A (contrived) example problem
•Everyone loves a spontaneous conference call
A (contrived) example problem
•Everyone loves a spontaneous conference call

•Getting people in is tricky
A (contrived) example problem
•Everyone loves a spontaneous conference call

•Getting people in is tricky

•Not everyone likes the phone ringing
A (contrived) example problem
•Everyone loves a spontaneous conference call

•Getting people in is tricky

•Not everyone likes the phone ringing

•Not everyone is available
A solution
A solution
•Simple rails app for managing contacts
A solution
•Simple rails app for managing contacts

•Select contacts to call
A solution
•Simple rails app for managing contacts

•Select contacts to call

•System asks contacts via Jabber if they are available
A solution
•Simple rails app for managing contacts

•Select contacts to call

•System asks contacts via Jabber if they are available

•Will read apologies via Jabber into the conference
Code Demo
Talking To Rails
Talking To Rails
Talking To Rails
Adhearsion 2.0
Adhearsion 2.0
• The next major evolution of Adhearsion
Adhearsion 2.0
• The next major evolution of Adhearsion

• Many improvements including:
Adhearsion 2.0
• The next major evolution of Adhearsion

• Many improvements including:

  • Truly cross-platform (Asterisk, Tropo & Rayo)
Adhearsion 2.0
• The next major evolution of Adhearsion

• Many improvements including:

  • Truly cross-platform (Asterisk, Tropo & Rayo)

  • Core architecture overhaul
Adhearsion 2.0
• The next major evolution of Adhearsion

• Many improvements including:

  • Truly cross-platform (Asterisk, Tropo & Rayo)

  • Core architecture overhaul

  • A reduction in internal complexity and line-count
Adhearsion 2.0
• The next major evolution of Adhearsion

• Many improvements including:

  • Truly cross-platform (Asterisk, Tropo & Rayo)

  • Core architecture overhaul

  • A reduction in internal complexity and line-count

  • Scope reduction
Adhearsion 2.0
• The next major evolution of Adhearsion

• Many improvements including:

  • Truly cross-platform (Asterisk, Tropo & Rayo)

  • Core architecture overhaul

  • A reduction in internal complexity and line-count

  • Scope reduction

  • Overhaul of the plugin system
Adhearsion 2.0
• The next major evolution of Adhearsion

• Many improvements including:

  • Truly cross-platform (Asterisk, Tropo & Rayo)

  • Core architecture overhaul

  • A reduction in internal complexity and line-count

  • Scope reduction

  • Overhaul of the plugin system

  • Modular application constructs (voicemail, queueing, etc) as plugins
Adhearsion really far out
Adhearsion really far out


•Adhearsion 1.x - Asterisk applications
Adhearsion really far out


•Adhearsion 1.x - Asterisk applications

•Adhearsion 2.x - Voice applications
Adhearsion really far out


•Adhearsion 1.x - Asterisk applications

•Adhearsion 2.x - Voice applications

•Adhearsion 3.x - Real-time communications
Questions?

   adhearsion.com
    @Adhearsion

http://spkr8.com/t/8602

More Related Content

PDF
Sounds Like Botnet
PDF
State of the Art Telephony with Ruby
KEY
State of the Art Telephony with Ruby
KEY
Fun with Linux Telephony
PDF
InMotion Web Conferencing
PPT
Asterisk PBX Presentation, 2006
PPTX
PPTX
Web casting
Sounds Like Botnet
State of the Art Telephony with Ruby
State of the Art Telephony with Ruby
Fun with Linux Telephony
InMotion Web Conferencing
Asterisk PBX Presentation, 2006
Web casting

What's hot (12)

PDF
Genband Avaya 1120 datasheet
PDF
Polycom sound station ip5000 data sheet
PDF
SMPTE Toronto Presentation - Multi Camera High Definition TV Studio and Roger...
PDF
Glitch-Free A/V Encoding (CocoaConf Boston, October 2013)
PDF
Cloud video Conferencing and calling, StarLeaf overview june 2013 eur
PDF
respond_to :voice - the convergence of voice and web interfaces with Rails an...
PDF
VoIP Monitoring and Troubleshooting
PDF
Maior Technical Profile
PPT
Audio and Video streaming.ppt
PPT
Streaming Overview Final.ppt
PPTX
Voip over eoip
Genband Avaya 1120 datasheet
Polycom sound station ip5000 data sheet
SMPTE Toronto Presentation - Multi Camera High Definition TV Studio and Roger...
Glitch-Free A/V Encoding (CocoaConf Boston, October 2013)
Cloud video Conferencing and calling, StarLeaf overview june 2013 eur
respond_to :voice - the convergence of voice and web interfaces with Rails an...
VoIP Monitoring and Troubleshooting
Maior Technical Profile
Audio and Video streaming.ppt
Streaming Overview Final.ppt
Voip over eoip
Ad

Similar to Talking To Rails (20)

PDF
Talking to Rails - MagRails 2011
PDF
Infiltrating Telecoms Using Ruby
PDF
Make ruby talk to your users - literally
PDF
Open Source Telephony Disruptive Solutions
PDF
PDF
Adhearsion and Telegraph Framework Presentation
PDF
Astricon 2008
PPT
Stuff we noticed while building "Asterisk in the cloud"
PDF
Telephony Through Ruby Colored Lenses
PDF
Developer Jam Session - What is new in Prophecy 9 / VoiceObjects 9?
KEY
Voice Applications with Adhearsion @ ATLAUG 2012
PDF
Ridhwana Mohammad (071403056)
KEY
Building future SIP platforms
PDF
Voice Applications with Adhearsion
PPT
200706 kathmann shared by voip.com.vn
PDF
"Reinventing the Dialplan" slides from Twilio's Astricon 2009 talk
PPT
deploymentofvoipserviceswithasteriskandfreepbx-150730234131-lva1-app6892
KEY
Testing Adhearsion Applications
PPTX
Are Open Source Phone Systems Possible? educause (1)
KEY
Jay Phillips's Presentation at Emerging Communication Conference & Awards 200...
Talking to Rails - MagRails 2011
Infiltrating Telecoms Using Ruby
Make ruby talk to your users - literally
Open Source Telephony Disruptive Solutions
Adhearsion and Telegraph Framework Presentation
Astricon 2008
Stuff we noticed while building "Asterisk in the cloud"
Telephony Through Ruby Colored Lenses
Developer Jam Session - What is new in Prophecy 9 / VoiceObjects 9?
Voice Applications with Adhearsion @ ATLAUG 2012
Ridhwana Mohammad (071403056)
Building future SIP platforms
Voice Applications with Adhearsion
200706 kathmann shared by voip.com.vn
"Reinventing the Dialplan" slides from Twilio's Astricon 2009 talk
deploymentofvoipserviceswithasteriskandfreepbx-150730234131-lva1-app6892
Testing Adhearsion Applications
Are Open Source Phone Systems Possible? educause (1)
Jay Phillips's Presentation at Emerging Communication Conference & Awards 200...
Ad

More from Mojo Lingo (20)

PDF
ConnectJS 2015: Video Killed the Telephone Star
PDF
AstriCon 2015: WebRTC: How it Works, and How it Breaks
PDF
FreeSWITCH, FreeSWITCH Everywhere, and Not A Phone In Sight
PDF
Now Hear This! Putting Voice, Video, and Text into Ruby on Rails
PDF
Using Asterisk to Create "Her"
PDF
Tipping the Scales: Measuring and Scaling Asterisk
PDF
WebRTC Overview by Dan Burnett
PDF
AdhearsionConf 2013 Keynote
PDF
Speech-Enabling Web Apps
PDF
WebRTC: What? How? Why? - ClueCon 2013
PDF
Infiltrando Telecoms Usando Ruby
PDF
Enhancing FreePBX with Adhearsion
PDF
Connecting Adhearsion
PDF
Testing Adhearsion Applications
PDF
Testing Telephony: It's Not All Terrible
PDF
Rayo for XMPP Folks
PDF
Building Real Life Applications with Adhearsion
PDF
Keeping It Realtime!
PDF
Integrating Voice Through Adhearsion
PDF
Voice Applications for the Modern Open Source Hacker
ConnectJS 2015: Video Killed the Telephone Star
AstriCon 2015: WebRTC: How it Works, and How it Breaks
FreeSWITCH, FreeSWITCH Everywhere, and Not A Phone In Sight
Now Hear This! Putting Voice, Video, and Text into Ruby on Rails
Using Asterisk to Create "Her"
Tipping the Scales: Measuring and Scaling Asterisk
WebRTC Overview by Dan Burnett
AdhearsionConf 2013 Keynote
Speech-Enabling Web Apps
WebRTC: What? How? Why? - ClueCon 2013
Infiltrando Telecoms Usando Ruby
Enhancing FreePBX with Adhearsion
Connecting Adhearsion
Testing Adhearsion Applications
Testing Telephony: It's Not All Terrible
Rayo for XMPP Folks
Building Real Life Applications with Adhearsion
Keeping It Realtime!
Integrating Voice Through Adhearsion
Voice Applications for the Modern Open Source Hacker

Recently uploaded (20)

PPTX
MuleSoft-Compete-Deck for midddleware integrations
PDF
A hybrid framework for wild animal classification using fine-tuned DenseNet12...
PDF
Human Computer Interaction Miterm Lesson
PDF
“The Future of Visual AI: Efficient Multimodal Intelligence,” a Keynote Prese...
PPTX
Microsoft User Copilot Training Slide Deck
PDF
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
PDF
A symptom-driven medical diagnosis support model based on machine learning te...
PDF
Co-training pseudo-labeling for text classification with support vector machi...
PDF
Ensemble model-based arrhythmia classification with local interpretable model...
PDF
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
PDF
Dell Pro Micro: Speed customer interactions, patient processing, and learning...
DOCX
Basics of Cloud Computing - Cloud Ecosystem
PDF
MENA-ECEONOMIC-CONTEXT-VC MENA-ECEONOMIC
PDF
Introduction to MCP and A2A Protocols: Enabling Agent Communication
PDF
Electrocardiogram sequences data analytics and classification using unsupervi...
PDF
Advancing precision in air quality forecasting through machine learning integ...
PDF
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
PPTX
Training Program for knowledge in solar cell and solar industry
PDF
EIS-Webinar-Regulated-Industries-2025-08.pdf
PDF
Aug23rd - Mulesoft Community Workshop - Hyd, India.pdf
MuleSoft-Compete-Deck for midddleware integrations
A hybrid framework for wild animal classification using fine-tuned DenseNet12...
Human Computer Interaction Miterm Lesson
“The Future of Visual AI: Efficient Multimodal Intelligence,” a Keynote Prese...
Microsoft User Copilot Training Slide Deck
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
A symptom-driven medical diagnosis support model based on machine learning te...
Co-training pseudo-labeling for text classification with support vector machi...
Ensemble model-based arrhythmia classification with local interpretable model...
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
Dell Pro Micro: Speed customer interactions, patient processing, and learning...
Basics of Cloud Computing - Cloud Ecosystem
MENA-ECEONOMIC-CONTEXT-VC MENA-ECEONOMIC
Introduction to MCP and A2A Protocols: Enabling Agent Communication
Electrocardiogram sequences data analytics and classification using unsupervi...
Advancing precision in air quality forecasting through machine learning integ...
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
Training Program for knowledge in solar cell and solar industry
EIS-Webinar-Regulated-Industries-2025-08.pdf
Aug23rd - Mulesoft Community Workshop - Hyd, India.pdf

Talking To Rails

  • 1. Talking to Rails Ben Langfeld Adhearsion Core Team Mojo Lingo @benlangfeld [email protected]
  • 3. Why voice? •Many more people have access to a telephone than have access to the internet
  • 4. Why voice? •Many more people have access to a telephone than have access to the internet •Many people still prefer voice-based interactions
  • 5. Why voice? •Many more people have access to a telephone than have access to the internet •Many people still prefer voice-based interactions •Voice enables a multitude of interesting use-cases which text and images cannot
  • 6. Why voice? •Many more people have access to a telephone than have access to the internet •Many people still prefer voice-based interactions •Voice enables a multitude of interesting use-cases which text and images cannot •Because having a computer make a phone ring is still cool
  • 7. But wait... telephony is HARD right?? Photo by Joseph A. Carr from http://en.wikipedia.org/wiki/File:JT_Switchboard_770x540.jpg
  • 12. A voice application development framework
  • 13. A voice application development framework Independent from, but compatible with, Rails
  • 14. A voice application development framework Independent from, but compatible with, Rails Voice applications the Ruby Way
  • 16. Features Not just compiled down to some kind of crazy configuration, but we have full access to both the ruby environment and the call at all times Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc Third largest mobile carrier in the world
  • 17. Features •Easy-to-use DSL Not just compiled down to some kind of crazy configuration, but we have full access to both the ruby environment and the call at all times Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc Third largest mobile carrier in the world
  • 18. Features •Easy-to-use DSL •Idiomatic Ruby code Not just compiled down to some kind of crazy configuration, but we have full access to both the ruby environment and the call at all times Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc Third largest mobile carrier in the world
  • 19. Features •Easy-to-use DSL •Idiomatic Ruby code Not just compiled down to some kind of crazy configuration, but we have full access to both the ruby environment and the call at all times •Powerful Eventing System Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc Third largest mobile carrier in the world
  • 20. Features •Easy-to-use DSL •Idiomatic Ruby code Not just compiled down to some kind of crazy configuration, but we have full access to both the ruby environment and the call at all times •Powerful Eventing System Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc •Plugins to solve common problems Third largest mobile carrier in the world
  • 21. Features •Easy-to-use DSL •Idiomatic Ruby code Not just compiled down to some kind of crazy configuration, but we have full access to both the ruby environment and the call at all times •Powerful Eventing System Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc •Plugins to solve common problems •A very helpful community Third largest mobile carrier in the world
  • 22. Features •Easy-to-use DSL •Idiomatic Ruby code Not just compiled down to some kind of crazy configuration, but we have full access to both the ruby environment and the call at all times •Powerful Eventing System Call setup/teardown events, DTMF events, conference join/leave, active speaker, etc •Plugins to solve common problems •A very helpful community •Sponsorship from and Third largest mobile carrier in the world
  • 24. Advanced Voice Features High-level constructs (Menus, Queues, Conferences)
  • 25. Advanced Voice Features High-level constructs (Menus, Queues, DTMF gathering & Conferences) voice recognition
  • 26. Advanced Voice Features High-level constructs (Menus, Queues, DTMF gathering & Conferences) voice recognition Text-to-Speech
  • 27. Advanced Voice Features High-level constructs (Menus, Queues, DTMF gathering & Conferences) voice recognition Text-to-Speech Answering Machine Detection
  • 28. Advanced Voice Features High-level constructs (Menus, Queues, DTMF gathering & Conferences) voice recognition Text-to-Speech Answering Machine Detection Call Progress
  • 30. Adhearsion Applied Call centre workflow optimisation and integration
  • 31. Adhearsion Applied Call centre workflow optimisation and Sales force automation integration
  • 32. Adhearsion Applied Call centre workflow optimisation and Sales force automation integration Conferencing applications
  • 33. Adhearsion Applied Call centre workflow optimisation and Sales force automation integration Translation services Conferencing applications
  • 34. Adhearsion Applied Call centre workflow optimisation and Sales force automation integration Translation services Conferencing applications Robo-calling
  • 35. Adhearsion Applied Call centre workflow optimisation and Sales force automation integration Polling Translation services Conferencing applications Robo-calling
  • 36. Adhearsion Applied Call centre workflow optimisation and Sales force automation integration Polling Translation IVR services Conferencing applications Robo-calling
  • 37. Adhearsion Platforms 2008 2010 2011
  • 38. Adhearsion Platforms 2008 2010 2011
  • 39. Adhearsion Platforms 2008 2010 2011
  • 40. Adhearsion Platforms 2008 2010 2011
  • 41. Adhearsion Architecture Tropo Pros: * Easy to set up * Awesome TTS/ASR * SMS & International Cons: Asterisk Pros: * No manager events * Run on your server * No built-in recordings * Widely Deployed * Eventing System Note: AGItate first written 1 year ago Cons: * Tricky to set up/ Requires hardware * No TTS/ASR
  • 42. Adhearsion Architecture Tropo Pros: * Easy to set up * Awesome TTS/ASR * SMS & International Cons: Asterisk Pros: * No manager events * Run on your server * No built-in recordings * Widely Deployed * Eventing System Note: AGItate first written 1 year ago Cons: * Tricky to set up/ Requires hardware * No TTS/ASR
  • 43. Adhearsion Architecture Tropo Pros: * Easy to set up * Awesome TTS/ASR * SMS & International Cons: Asterisk Pros: * No manager events * Run on your server * No built-in recordings * Widely Deployed * Eventing System Note: AGItate first written 1 year ago Cons: * Tricky to set up/ Requires hardware * No TTS/ASR
  • 44. Adhearsion Architecture Tropo Pros: * Easy to set up * Awesome TTS/ASR * SMS & International Cons: Asterisk Pros: * No manager events * Run on your server * No built-in recordings * Widely Deployed * Eventing System Note: AGItate first written 1 year ago Cons: * Tricky to set up/ Requires hardware * No TTS/ASR
  • 45. Adhearsion Architecture Tropo Pros: * Easy to set up * Awesome TTS/ASR * SMS & International Cons: Asterisk Pros: * No manager events * Run on your server * No built-in recordings * Widely Deployed * Eventing System Note: AGItate first written 1 year ago Cons: * Tricky to set up/ Requires hardware * No TTS/ASR
  • 46. Adhearsion Architecture Tropo Pros: * Easy to set up * Awesome TTS/ASR * SMS & International Cons: Asterisk Pros: * No manager events * Run on your server * No built-in recordings * Widely Deployed * Eventing System Note: AGItate first written 1 year ago Cons: * Tricky to set up/ Requires hardware * No TTS/ASR SQL
  • 47. Adhearsion Architecture Tropo Pros: * Easy to set up * Awesome TTS/ASR * SMS & International Cons: Asterisk Pros: * No manager events * Run on your server * No built-in recordings * Widely Deployed * Eventing System Note: AGItate first written 1 year ago Cons: * Tricky to set up/ Requires hardware * No TTS/ASR SQL LDAP
  • 48. Adhearsion Architecture Tropo Pros: * Easy to set up * Awesome TTS/ASR * SMS & International Cons: Asterisk Pros: * No manager events * Run on your server * No built-in recordings * Widely Deployed * Eventing System Note: AGItate first written 1 year ago Cons: * Tricky to set up/ Requires hardware * No TTS/ASR SQL LDAP XMPP/Jabber
  • 49. Adhearsion Architecture Tropo Pros: * Easy to set up * Awesome TTS/ASR * SMS & International Cons: Asterisk Pros: * No manager events * Run on your server * No built-in recordings * Widely Deployed * Eventing System Note: AGItate first written 1 year ago Cons: * Tricky to set up/ Requires hardware * No TTS/ASR XMPP/Jabber Web SQL LDAP REST/JSON/XML
  • 52. Why Adhearsion? •Easy code reuse •A natural DSL which is easy to write to
  • 53. Why Adhearsion? •Easy code reuse •A natural DSL which is easy to write to •Rich inter-call operation within the process
  • 54. Why Adhearsion? •Easy code reuse •A natural DSL which is easy to write to •Rich inter-call operation within the process •Brings modern development practices to telephony
  • 55. Why Adhearsion? •Easy code reuse •A natural DSL which is easy to write to •Rich inter-call operation within the process •Brings modern development practices to telephony •No need for complex state-machines and constant load on your Rails app from an HTTP-based API
  • 56. Why Adhearsion? •Easy code reuse •A natural DSL which is easy to write to •Rich inter-call operation within the process •Brings modern development practices to telephony •No need for complex state-machines and constant load on your Rails app from an HTTP-based API •Runs on Asterisk, so can integrate with an existing PBX
  • 57. Why Adhearsion? •Easy code reuse •A natural DSL which is easy to write to •Rich inter-call operation within the process •Brings modern development practices to telephony •No need for complex state-machines and constant load on your Rails app from an HTTP-based API •Runs on Asterisk, so can integrate with an existing PBX •Adhearsion democratises telephony development
  • 59. A (contrived) example problem •Everyone loves a spontaneous conference call
  • 60. A (contrived) example problem •Everyone loves a spontaneous conference call •Getting people in is tricky
  • 61. A (contrived) example problem •Everyone loves a spontaneous conference call •Getting people in is tricky •Not everyone likes the phone ringing
  • 62. A (contrived) example problem •Everyone loves a spontaneous conference call •Getting people in is tricky •Not everyone likes the phone ringing •Not everyone is available
  • 64. A solution •Simple rails app for managing contacts
  • 65. A solution •Simple rails app for managing contacts •Select contacts to call
  • 66. A solution •Simple rails app for managing contacts •Select contacts to call •System asks contacts via Jabber if they are available
  • 67. A solution •Simple rails app for managing contacts •Select contacts to call •System asks contacts via Jabber if they are available •Will read apologies via Jabber into the conference
  • 73. Adhearsion 2.0 • The next major evolution of Adhearsion
  • 74. Adhearsion 2.0 • The next major evolution of Adhearsion • Many improvements including:
  • 75. Adhearsion 2.0 • The next major evolution of Adhearsion • Many improvements including: • Truly cross-platform (Asterisk, Tropo & Rayo)
  • 76. Adhearsion 2.0 • The next major evolution of Adhearsion • Many improvements including: • Truly cross-platform (Asterisk, Tropo & Rayo) • Core architecture overhaul
  • 77. Adhearsion 2.0 • The next major evolution of Adhearsion • Many improvements including: • Truly cross-platform (Asterisk, Tropo & Rayo) • Core architecture overhaul • A reduction in internal complexity and line-count
  • 78. Adhearsion 2.0 • The next major evolution of Adhearsion • Many improvements including: • Truly cross-platform (Asterisk, Tropo & Rayo) • Core architecture overhaul • A reduction in internal complexity and line-count • Scope reduction
  • 79. Adhearsion 2.0 • The next major evolution of Adhearsion • Many improvements including: • Truly cross-platform (Asterisk, Tropo & Rayo) • Core architecture overhaul • A reduction in internal complexity and line-count • Scope reduction • Overhaul of the plugin system
  • 80. Adhearsion 2.0 • The next major evolution of Adhearsion • Many improvements including: • Truly cross-platform (Asterisk, Tropo & Rayo) • Core architecture overhaul • A reduction in internal complexity and line-count • Scope reduction • Overhaul of the plugin system • Modular application constructs (voicemail, queueing, etc) as plugins
  • 82. Adhearsion really far out •Adhearsion 1.x - Asterisk applications
  • 83. Adhearsion really far out •Adhearsion 1.x - Asterisk applications •Adhearsion 2.x - Voice applications
  • 84. Adhearsion really far out •Adhearsion 1.x - Asterisk applications •Adhearsion 2.x - Voice applications •Adhearsion 3.x - Real-time communications
  • 85. Questions? adhearsion.com @Adhearsion http://spkr8.com/t/8602