SlideShare a Scribd company logo
State of the Art Telephony
                                           with Ruby
Who has tried to build a voice app?

Who wants to build a voice app?            Ben Klang
                                       Founder, Mojo Lingo
Anyone running voice apps in production?

                                      bklang@mojolingo.com
                                      Twitter/Github: @bklang
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)



                      Don’t Panic
Code Sample (comfort zone)



                      Don’t Panic
Code Sample (comfort zone)



                      Don’t Panic
More than a library

* Threads
* Events
* Plugins
* Daemonization
✴   A voice application development
              framework


                               More than a library

                               * Threads
                               * Events
                               * Plugins
                               * Daemonization
✴   A voice application development
              framework

✴   Independent from, but compatible
              with, Rails     More than a library

                                     * Threads
                                     * Events
                                     * Plugins
                                     * Daemonization
✴   A voice application development
               framework

 ✴   Independent from, but compatible
               with, Rails     More than a library

                                      * Threads
                                      * Events
                                      * Plugins
                                      * Daemonization
Voice applications the Ruby Way
Adhearsion Features
Adhearsion Features

• Easy-to-use DSL
Adhearsion Features

• Easy-to-use DSL
• Native Ruby Code
Adhearsion Features

• Easy-to-use DSL
• Native Ruby Code
• Powerful Eventing System
Advanced Voice Features
Advanced Voice Features

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

• High-level Constructs (Menus, Queues, Conferences)
• Text-to-Speech
Advanced Voice Features

• High-level Constructs (Menus, Queues, Conferences)
• Text-to-Speech
• Voice Recognition
Advanced Voice Features

• High-level Constructs (Menus, Queues, Conferences)
• Text-to-Speech
• Voice Recognition
• Call Progress/Answering Machine Detection
Adhearsion Architecture
Asterisk Pros:
* Run on your server          Tropo Pros:
* Widely Deployed             * Easy to set up
* Eventing System             * Awesome TTS/ASR
                              * SMS & International
Cons:
* Tricky to set up/Requires   Cons:
hardware                      * No manager events
* No TTS/ASR                  * No built-in recordings

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

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

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

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

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

                              Note: AGItate first written 1
                              year ago




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

                                     Note: AGItate first written 1
                                     year ago




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

                                                   Note: AGItate first written 1
                                                   year ago




                   SQL        LDAP   XMPP/Jabber
Adhearsion Architecture
Asterisk Pros:
* Run on your server                               Tropo Pros:
* Widely Deployed                                  * Easy to set up
* Eventing System                                  * Awesome TTS/ASR
                                                   * SMS & International
Cons:
* Tricky to set up/Requires                        Cons:
hardware                                           * No manager events
* No TTS/ASR                                       * No built-in recordings

                                                   Note: AGItate first written 1
                                                   year ago




                                     XMPP/Jabber             Web
                   SQL        LDAP                       REST/JSON/XML
Announcing...

Adhearsion 1.2.0
Quick Start
The Dialplan
Adhearsion Console
Components
Components
      AhnHub
http://ahnhub.com
Event Handling
Event Handling

 770.873.8900
adhearsion.com/ahnconf2011
http://adhearsion.com
     Twitter/Github: @adhearsion


              Ben Klang
bklang@mojolingo.com   Twitter/Github: @bklang

            spkr8.com/t/7816

More Related Content

Viewers also liked

Evented Telephony Application Design with Adhearsion
Evented Telephony Application Design with AdhearsionEvented Telephony Application Design with Adhearsion
Evented Telephony Application Design with Adhearsion
Mojo Lingo
 
Supergluing Asterisk to the Web with Adhearsion
Supergluing Asterisk to the Web with AdhearsionSupergluing Asterisk to the Web with Adhearsion
Supergluing Asterisk to the Web with Adhearsion
Mojo Lingo
 
Adhearsion and the cloud
Adhearsion and the cloudAdhearsion and the cloud
Adhearsion and the cloud
Mojo Lingo
 
Can You Speak Magic? with Adhearsion
Can You Speak Magic? with AdhearsionCan You Speak Magic? with Adhearsion
Can You Speak Magic? with Adhearsion
Mojo Lingo
 
Multidextrous Voice Application Framework
Multidextrous Voice Application FrameworkMultidextrous Voice Application Framework
Multidextrous Voice Application Framework
Mojo Lingo
 
Call Control Power Tools with Adhearsion
Call Control Power Tools with Adhearsion Call Control Power Tools with Adhearsion
Call Control Power Tools with Adhearsion
Mojo Lingo
 

Viewers also liked (6)

Evented Telephony Application Design with Adhearsion
Evented Telephony Application Design with AdhearsionEvented Telephony Application Design with Adhearsion
Evented Telephony Application Design with Adhearsion
 
Supergluing Asterisk to the Web with Adhearsion
Supergluing Asterisk to the Web with AdhearsionSupergluing Asterisk to the Web with Adhearsion
Supergluing Asterisk to the Web with Adhearsion
 
Adhearsion and the cloud
Adhearsion and the cloudAdhearsion and the cloud
Adhearsion and the cloud
 
Can You Speak Magic? with Adhearsion
Can You Speak Magic? with AdhearsionCan You Speak Magic? with Adhearsion
Can You Speak Magic? with Adhearsion
 
Multidextrous Voice Application Framework
Multidextrous Voice Application FrameworkMultidextrous Voice Application Framework
Multidextrous Voice Application Framework
 
Call Control Power Tools with Adhearsion
Call Control Power Tools with Adhearsion Call Control Power Tools with Adhearsion
Call Control Power Tools with Adhearsion
 

Similar to State of the Art Telephony with Ruby

Talking To Rails
Talking To RailsTalking To Rails
Talking To Rails
Mojo Lingo
 
Jonny_Martin-Asterisk
Jonny_Martin-AsteriskJonny_Martin-Asterisk
Jonny_Martin-Asterisk
tutorialsruby
 
Jonny_Martin-Asterisk
Jonny_Martin-AsteriskJonny_Martin-Asterisk
Jonny_Martin-Asterisk
tutorialsruby
 
Jonny_Martin-Asterisk
Jonny_Martin-AsteriskJonny_Martin-Asterisk
Jonny_Martin-Asterisk
tutorialsruby
 
Jonny_Martin-Asterisk
Jonny_Martin-AsteriskJonny_Martin-Asterisk
Jonny_Martin-Asterisk
tutorialsruby
 
Getting the best out of WebRTC
Getting the best out of WebRTCGetting the best out of WebRTC
Getting the best out of WebRTC
Digium
 
Getting the Best Out Of WebRTC - Astricon 2014
Getting the Best Out Of WebRTC - Astricon 2014Getting the Best Out Of WebRTC - Astricon 2014
Getting the Best Out Of WebRTC - Astricon 2014
Dan Jenkins
 
IDNOG 4 Lightning Talks - Documenting your Network in 3 Simple Steps
IDNOG 4 Lightning Talks - Documenting your Network in 3 Simple StepsIDNOG 4 Lightning Talks - Documenting your Network in 3 Simple Steps
IDNOG 4 Lightning Talks - Documenting your Network in 3 Simple Steps
Affan Basalamah
 
LT04 IDNOG04 - Affan Basalamah (ITB) - Documenting your network
LT04 IDNOG04 - Affan Basalamah (ITB) - Documenting your networkLT04 IDNOG04 - Affan Basalamah (ITB) - Documenting your network
LT04 IDNOG04 - Affan Basalamah (ITB) - Documenting your network
Indonesia Network Operators Group
 
Introducing resinOS: An Operating System Tailored for Containers and Built fo...
Introducing resinOS: An Operating System Tailored for Containers and Built fo...Introducing resinOS: An Operating System Tailored for Containers and Built fo...
Introducing resinOS: An Operating System Tailored for Containers and Built fo...
Balena
 
High Availability Asterisk and FreePBX on Microsoft Azure
High Availability Asterisk and FreePBX on Microsoft AzureHigh Availability Asterisk and FreePBX on Microsoft Azure
High Availability Asterisk and FreePBX on Microsoft Azure
Sanjay Willie
 
AEO Training - 2023.pdf
AEO Training - 2023.pdfAEO Training - 2023.pdf
AEO Training - 2023.pdf
Mohamed Taoufik TEKAYA
 
Japanese input environment on Tizen 2.0 Alpha
Japanese input environment on Tizen 2.0 AlphaJapanese input environment on Tizen 2.0 Alpha
Japanese input environment on Tizen 2.0 Alpha
Naruto TAKAHASHI
 
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
ITCamp
 
QNAP for IoT
QNAP for IoTQNAP for IoT
QNAP for IoT
qnapivan
 
Platform - Technical architecture
Platform - Technical architecturePlatform - Technical architecture
Platform - Technical architecture
David Rundle
 
Chef on SmartOS
Chef on SmartOSChef on SmartOS
Chef on SmartOS
Eric Saxby
 
The internet of $h1t
The internet of $h1tThe internet of $h1t
The internet of $h1t
Amit Serper
 
opensource Monitoring Tool , an overview
opensource Monitoring Tool , an overviewopensource Monitoring Tool , an overview
opensource Monitoring Tool , an overview
Kris Buytaert
 
Astricon2006_matt_florell_PDF.pdf
Astricon2006_matt_florell_PDF.pdfAstricon2006_matt_florell_PDF.pdf
Astricon2006_matt_florell_PDF.pdf
IjoBapuk
 

Similar to State of the Art Telephony with Ruby (20)

Talking To Rails
Talking To RailsTalking To Rails
Talking To Rails
 
Jonny_Martin-Asterisk
Jonny_Martin-AsteriskJonny_Martin-Asterisk
Jonny_Martin-Asterisk
 
Jonny_Martin-Asterisk
Jonny_Martin-AsteriskJonny_Martin-Asterisk
Jonny_Martin-Asterisk
 
Jonny_Martin-Asterisk
Jonny_Martin-AsteriskJonny_Martin-Asterisk
Jonny_Martin-Asterisk
 
Jonny_Martin-Asterisk
Jonny_Martin-AsteriskJonny_Martin-Asterisk
Jonny_Martin-Asterisk
 
Getting the best out of WebRTC
Getting the best out of WebRTCGetting the best out of WebRTC
Getting the best out of WebRTC
 
Getting the Best Out Of WebRTC - Astricon 2014
Getting the Best Out Of WebRTC - Astricon 2014Getting the Best Out Of WebRTC - Astricon 2014
Getting the Best Out Of WebRTC - Astricon 2014
 
IDNOG 4 Lightning Talks - Documenting your Network in 3 Simple Steps
IDNOG 4 Lightning Talks - Documenting your Network in 3 Simple StepsIDNOG 4 Lightning Talks - Documenting your Network in 3 Simple Steps
IDNOG 4 Lightning Talks - Documenting your Network in 3 Simple Steps
 
LT04 IDNOG04 - Affan Basalamah (ITB) - Documenting your network
LT04 IDNOG04 - Affan Basalamah (ITB) - Documenting your networkLT04 IDNOG04 - Affan Basalamah (ITB) - Documenting your network
LT04 IDNOG04 - Affan Basalamah (ITB) - Documenting your network
 
Introducing resinOS: An Operating System Tailored for Containers and Built fo...
Introducing resinOS: An Operating System Tailored for Containers and Built fo...Introducing resinOS: An Operating System Tailored for Containers and Built fo...
Introducing resinOS: An Operating System Tailored for Containers and Built fo...
 
High Availability Asterisk and FreePBX on Microsoft Azure
High Availability Asterisk and FreePBX on Microsoft AzureHigh Availability Asterisk and FreePBX on Microsoft Azure
High Availability Asterisk and FreePBX on Microsoft Azure
 
AEO Training - 2023.pdf
AEO Training - 2023.pdfAEO Training - 2023.pdf
AEO Training - 2023.pdf
 
Japanese input environment on Tizen 2.0 Alpha
Japanese input environment on Tizen 2.0 AlphaJapanese input environment on Tizen 2.0 Alpha
Japanese input environment on Tizen 2.0 Alpha
 
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
 
QNAP for IoT
QNAP for IoTQNAP for IoT
QNAP for IoT
 
Platform - Technical architecture
Platform - Technical architecturePlatform - Technical architecture
Platform - Technical architecture
 
Chef on SmartOS
Chef on SmartOSChef on SmartOS
Chef on SmartOS
 
The internet of $h1t
The internet of $h1tThe internet of $h1t
The internet of $h1t
 
opensource Monitoring Tool , an overview
opensource Monitoring Tool , an overviewopensource Monitoring Tool , an overview
opensource Monitoring Tool , an overview
 
Astricon2006_matt_florell_PDF.pdf
Astricon2006_matt_florell_PDF.pdfAstricon2006_matt_florell_PDF.pdf
Astricon2006_matt_florell_PDF.pdf
 

More from Mojo Lingo

ConnectJS 2015: Video Killed the Telephone Star
ConnectJS 2015: Video Killed the Telephone StarConnectJS 2015: Video Killed the Telephone Star
ConnectJS 2015: Video Killed the Telephone Star
Mojo Lingo
 
AstriCon 2015: WebRTC: How it Works, and How it Breaks
AstriCon 2015: WebRTC: How it Works, and How it BreaksAstriCon 2015: WebRTC: How it Works, and How it Breaks
AstriCon 2015: WebRTC: How it Works, and How it Breaks
Mojo Lingo
 
FreeSWITCH, FreeSWITCH Everywhere, and Not A Phone In Sight
FreeSWITCH, FreeSWITCH Everywhere, and Not A Phone In SightFreeSWITCH, FreeSWITCH Everywhere, and Not A Phone In Sight
FreeSWITCH, FreeSWITCH Everywhere, and Not A Phone In Sight
Mojo Lingo
 
Now Hear This! Putting Voice, Video, and Text into Ruby on Rails
Now Hear This! Putting Voice, Video, and Text into Ruby on RailsNow Hear This! Putting Voice, Video, and Text into Ruby on Rails
Now Hear This! Putting Voice, Video, and Text into Ruby on Rails
Mojo Lingo
 
Using Asterisk to Create "Her"
Using Asterisk to Create "Her"Using Asterisk to Create "Her"
Using Asterisk to Create "Her"
Mojo Lingo
 
Tipping the Scales: Measuring and Scaling Asterisk
Tipping the Scales: Measuring and Scaling AsteriskTipping the Scales: Measuring and Scaling Asterisk
Tipping the Scales: Measuring and Scaling Asterisk
Mojo Lingo
 
WebRTC Overview by Dan Burnett
WebRTC Overview by Dan BurnettWebRTC Overview by Dan Burnett
WebRTC Overview by Dan Burnett
Mojo Lingo
 
AdhearsionConf 2013 Keynote
AdhearsionConf 2013 KeynoteAdhearsionConf 2013 Keynote
AdhearsionConf 2013 Keynote
Mojo Lingo
 
Speech-Enabling Web Apps
Speech-Enabling Web AppsSpeech-Enabling Web Apps
Speech-Enabling Web Apps
Mojo Lingo
 
WebRTC: What? How? Why? - ClueCon 2013
WebRTC: What? How? Why? - ClueCon 2013WebRTC: What? How? Why? - ClueCon 2013
WebRTC: What? How? Why? - ClueCon 2013
Mojo Lingo
 
Infiltrando Telecoms Usando Ruby
Infiltrando Telecoms Usando RubyInfiltrando Telecoms Usando Ruby
Infiltrando Telecoms Usando Ruby
Mojo Lingo
 
Enhancing FreePBX with Adhearsion
Enhancing FreePBX with AdhearsionEnhancing FreePBX with Adhearsion
Enhancing FreePBX with Adhearsion
Mojo Lingo
 
Connecting Adhearsion
Connecting AdhearsionConnecting Adhearsion
Connecting Adhearsion
Mojo Lingo
 
Testing Adhearsion Applications
Testing Adhearsion ApplicationsTesting Adhearsion Applications
Testing Adhearsion Applications
Mojo Lingo
 
Testing Telephony: It's Not All Terrible
Testing Telephony: It's Not All TerribleTesting Telephony: It's Not All Terrible
Testing Telephony: It's Not All Terrible
Mojo Lingo
 
Rayo for XMPP Folks
Rayo for XMPP FolksRayo for XMPP Folks
Rayo for XMPP Folks
Mojo Lingo
 
Building Real Life Applications with Adhearsion
Building Real Life Applications with AdhearsionBuilding Real Life Applications with Adhearsion
Building Real Life Applications with Adhearsion
Mojo Lingo
 
Keeping It Realtime!
Keeping It Realtime!Keeping It Realtime!
Keeping It Realtime!
Mojo Lingo
 
Integrating Voice Through Adhearsion
Integrating Voice Through AdhearsionIntegrating Voice Through Adhearsion
Integrating Voice Through Adhearsion
Mojo Lingo
 
Infiltrating Telecoms Using Ruby
Infiltrating Telecoms Using RubyInfiltrating Telecoms Using Ruby
Infiltrating Telecoms Using Ruby
Mojo Lingo
 

More from Mojo Lingo (20)

ConnectJS 2015: Video Killed the Telephone Star
ConnectJS 2015: Video Killed the Telephone StarConnectJS 2015: Video Killed the Telephone Star
ConnectJS 2015: Video Killed the Telephone Star
 
AstriCon 2015: WebRTC: How it Works, and How it Breaks
AstriCon 2015: WebRTC: How it Works, and How it BreaksAstriCon 2015: WebRTC: How it Works, and How it Breaks
AstriCon 2015: WebRTC: How it Works, and How it Breaks
 
FreeSWITCH, FreeSWITCH Everywhere, and Not A Phone In Sight
FreeSWITCH, FreeSWITCH Everywhere, and Not A Phone In SightFreeSWITCH, FreeSWITCH Everywhere, and Not A Phone In Sight
FreeSWITCH, FreeSWITCH Everywhere, and Not A Phone In Sight
 
Now Hear This! Putting Voice, Video, and Text into Ruby on Rails
Now Hear This! Putting Voice, Video, and Text into Ruby on RailsNow Hear This! Putting Voice, Video, and Text into Ruby on Rails
Now Hear This! Putting Voice, Video, and Text into Ruby on Rails
 
Using Asterisk to Create "Her"
Using Asterisk to Create "Her"Using Asterisk to Create "Her"
Using Asterisk to Create "Her"
 
Tipping the Scales: Measuring and Scaling Asterisk
Tipping the Scales: Measuring and Scaling AsteriskTipping the Scales: Measuring and Scaling Asterisk
Tipping the Scales: Measuring and Scaling Asterisk
 
WebRTC Overview by Dan Burnett
WebRTC Overview by Dan BurnettWebRTC Overview by Dan Burnett
WebRTC Overview by Dan Burnett
 
AdhearsionConf 2013 Keynote
AdhearsionConf 2013 KeynoteAdhearsionConf 2013 Keynote
AdhearsionConf 2013 Keynote
 
Speech-Enabling Web Apps
Speech-Enabling Web AppsSpeech-Enabling Web Apps
Speech-Enabling Web Apps
 
WebRTC: What? How? Why? - ClueCon 2013
WebRTC: What? How? Why? - ClueCon 2013WebRTC: What? How? Why? - ClueCon 2013
WebRTC: What? How? Why? - ClueCon 2013
 
Infiltrando Telecoms Usando Ruby
Infiltrando Telecoms Usando RubyInfiltrando Telecoms Usando Ruby
Infiltrando Telecoms Usando Ruby
 
Enhancing FreePBX with Adhearsion
Enhancing FreePBX with AdhearsionEnhancing FreePBX with Adhearsion
Enhancing FreePBX with Adhearsion
 
Connecting Adhearsion
Connecting AdhearsionConnecting Adhearsion
Connecting Adhearsion
 
Testing Adhearsion Applications
Testing Adhearsion ApplicationsTesting Adhearsion Applications
Testing Adhearsion Applications
 
Testing Telephony: It's Not All Terrible
Testing Telephony: It's Not All TerribleTesting Telephony: It's Not All Terrible
Testing Telephony: It's Not All Terrible
 
Rayo for XMPP Folks
Rayo for XMPP FolksRayo for XMPP Folks
Rayo for XMPP Folks
 
Building Real Life Applications with Adhearsion
Building Real Life Applications with AdhearsionBuilding Real Life Applications with Adhearsion
Building Real Life Applications with Adhearsion
 
Keeping It Realtime!
Keeping It Realtime!Keeping It Realtime!
Keeping It Realtime!
 
Integrating Voice Through Adhearsion
Integrating Voice Through AdhearsionIntegrating Voice Through Adhearsion
Integrating Voice Through Adhearsion
 
Infiltrating Telecoms Using Ruby
Infiltrating Telecoms Using RubyInfiltrating Telecoms Using Ruby
Infiltrating Telecoms Using Ruby
 

Recently uploaded

Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
GDSC PJATK
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
saastr
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Tatiana Kojar
 

Recently uploaded (20)

Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
 

State of the Art Telephony with Ruby

  • 1. State of the Art Telephony with Ruby Who has tried to build a voice app? Who wants to build a voice app? Ben Klang Founder, Mojo Lingo Anyone running voice apps in production? bklang@mojolingo.com Twitter/Github: @bklang
  • 2. But wait... telephony is HARD right?? Photo by Joseph A. Carr from http://en.wikipedia.org/wiki/File:JT_Switchboard_770x540.jpg
  • 3. Code Sample (comfort zone) Don’t Panic
  • 4. Code Sample (comfort zone) Don’t Panic
  • 5. Code Sample (comfort zone) Don’t Panic
  • 6. More than a library * Threads * Events * Plugins * Daemonization
  • 7. A voice application development framework More than a library * Threads * Events * Plugins * Daemonization
  • 8. A voice application development framework ✴ Independent from, but compatible with, Rails More than a library * Threads * Events * Plugins * Daemonization
  • 9. A voice application development framework ✴ Independent from, but compatible with, Rails More than a library * Threads * Events * Plugins * Daemonization Voice applications the Ruby Way
  • 12. Adhearsion Features • Easy-to-use DSL • Native Ruby Code
  • 13. Adhearsion Features • Easy-to-use DSL • Native Ruby Code • Powerful Eventing System
  • 15. Advanced Voice Features • High-level Constructs (Menus, Queues, Conferences)
  • 16. Advanced Voice Features • High-level Constructs (Menus, Queues, Conferences) • Text-to-Speech
  • 17. Advanced Voice Features • High-level Constructs (Menus, Queues, Conferences) • Text-to-Speech • Voice Recognition
  • 18. Advanced Voice Features • High-level Constructs (Menus, Queues, Conferences) • Text-to-Speech • Voice Recognition • Call Progress/Answering Machine Detection
  • 19. Adhearsion Architecture Asterisk Pros: * Run on your server Tropo Pros: * Widely Deployed * Easy to set up * Eventing System * Awesome TTS/ASR * SMS & International Cons: * Tricky to set up/Requires Cons: hardware * No manager events * No TTS/ASR * No built-in recordings Note: AGItate first written 1 year ago
  • 20. Adhearsion Architecture Asterisk Pros: * Run on your server Tropo Pros: * Widely Deployed * Easy to set up * Eventing System * Awesome TTS/ASR * SMS & International Cons: * Tricky to set up/Requires Cons: hardware * No manager events * No TTS/ASR * No built-in recordings Note: AGItate first written 1 year ago
  • 21. Adhearsion Architecture Asterisk Pros: * Run on your server Tropo Pros: * Widely Deployed * Easy to set up * Eventing System * Awesome TTS/ASR * SMS & International Cons: * Tricky to set up/Requires Cons: hardware * No manager events * No TTS/ASR * No built-in recordings Note: AGItate first written 1 year ago
  • 22. Adhearsion Architecture Asterisk Pros: * Run on your server Tropo Pros: * Widely Deployed * Easy to set up * Eventing System * Awesome TTS/ASR * SMS & International Cons: * Tricky to set up/Requires Cons: hardware * No manager events * No TTS/ASR * No built-in recordings Note: AGItate first written 1 year ago
  • 23. Adhearsion Architecture Asterisk Pros: * Run on your server Tropo Pros: * Widely Deployed * Easy to set up * Eventing System * Awesome TTS/ASR * SMS & International Cons: * Tricky to set up/Requires Cons: hardware * No manager events * No TTS/ASR * No built-in recordings Note: AGItate first written 1 year ago
  • 24. Adhearsion Architecture Asterisk Pros: * Run on your server Tropo Pros: * Widely Deployed * Easy to set up * Eventing System * Awesome TTS/ASR * SMS & International Cons: * Tricky to set up/Requires Cons: hardware * No manager events * No TTS/ASR * No built-in recordings Note: AGItate first written 1 year ago SQL
  • 25. Adhearsion Architecture Asterisk Pros: * Run on your server Tropo Pros: * Widely Deployed * Easy to set up * Eventing System * Awesome TTS/ASR * SMS & International Cons: * Tricky to set up/Requires Cons: hardware * No manager events * No TTS/ASR * No built-in recordings Note: AGItate first written 1 year ago SQL LDAP
  • 26. Adhearsion Architecture Asterisk Pros: * Run on your server Tropo Pros: * Widely Deployed * Easy to set up * Eventing System * Awesome TTS/ASR * SMS & International Cons: * Tricky to set up/Requires Cons: hardware * No manager events * No TTS/ASR * No built-in recordings Note: AGItate first written 1 year ago SQL LDAP XMPP/Jabber
  • 27. Adhearsion Architecture Asterisk Pros: * Run on your server Tropo Pros: * Widely Deployed * Easy to set up * Eventing System * Awesome TTS/ASR * SMS & International Cons: * Tricky to set up/Requires Cons: hardware * No manager events * No TTS/ASR * No built-in recordings Note: AGItate first written 1 year ago XMPP/Jabber Web SQL LDAP REST/JSON/XML
  • 33. Components AhnHub http://ahnhub.com
  • 37. http://adhearsion.com Twitter/Github: @adhearsion Ben Klang bklang@mojolingo.com Twitter/Github: @bklang spkr8.com/t/7816