SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Downloaden Sie, um offline zu lesen
Evented Telephony Application Design
                  with


Ben Klang
Founder, Mojo Lingo
bklang@mojolingo.com
Twitter/Github: @bklang
What is Adhearsion?
• Adhesion you can hear – glueing the voice layer to the rest of
  the world.
• Voice Application Development Framework
• Open Source
• Ruby – integrates easily with Rails, but not dependent
• Platform agnostic – runs anywhere Ruby or Java (JRuby) does
• Runs small, scales large
• Cloud-Ready
Adhearsion Applied
• Call center workflow optimization and integration
• Sales force automation
• Conferencing applications
• Translation services
• IVR
• Polling
• Robo-calling
Adhearsion Platforms

                       2008


                       2010



                       2011
Adhearsion Architecture
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
Why evented design?
Why evented design?
• Telephony needs are well served by evented design
Why evented design?
• Telephony needs are well served by evented design
  • DTMF key presses
Why evented design?
• Telephony needs are well served by evented design
  • DTMF key presses
  • New call setup/call state transition
Why evented design?
• Telephony needs are well served by evented design
  • DTMF key presses
  • New call setup/call state transition
  • Conference or Queue join/leave
Why evented design?
• Telephony needs are well served by evented design
  • DTMF key presses
  • New call setup/call state transition
  • Conference or Queue join/leave
• Allows extra logic to execute without interrupting flow
Why evented design?
• Telephony needs are well served by evented design
  • DTMF key presses
  • New call setup/call state transition
  • Conference or Queue join/leave
• Allows extra logic to execute without interrupting flow
  • Process keypresses while on a long blocking call
Why evented design?
• Telephony needs are well served by evented design
  • DTMF key presses
  • New call setup/call state transition
  • Conference or Queue join/leave
• Allows extra logic to execute without interrupting flow
  • Process keypresses while on a long blocking call
  • React to external events (timer expired, agent available)
Code Demo

            Code from this demo:
https://github.com/mojolingo/RubyConf2011
adhearsion.com/ahnconf2011
Questions...



adhearsion.com   http://mojolingo.com
@Adhearsion      @bklang
                 bklang@mojolingo.com

Weitere ähnliche Inhalte

Ähnlich wie Evented Telephony Application Design with Adhearsion

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
 
Call Control Power Tools with Adhearsion
Call Control Power Tools with AdhearsionCall Control Power Tools with Adhearsion
Call Control Power Tools with AdhearsionAdhearsion Foundation
 
Talking To Rails
Talking To RailsTalking To Rails
Talking To RailsMojo Lingo
 
Voice Applications with Adhearsion
Voice Applications with AdhearsionVoice Applications with Adhearsion
Voice Applications with AdhearsionMojo Lingo
 
QA Fest 2018. Александр Хотемский. Использование голосовых помощников для раз...
QA Fest 2018. Александр Хотемский. Использование голосовых помощников для раз...QA Fest 2018. Александр Хотемский. Использование голосовых помощников для раз...
QA Fest 2018. Александр Хотемский. Использование голосовых помощников для раз...QAFest
 
Skype for business understanding what is new, preview or unchanged
Skype for business understanding what is new, preview or unchangedSkype for business understanding what is new, preview or unchanged
Skype for business understanding what is new, preview or unchangedFabrizio Volpe
 
Whats New in Microsoft Teams Hybrid Meetings November 2021
Whats New in Microsoft Teams Hybrid Meetings November 2021Whats New in Microsoft Teams Hybrid Meetings November 2021
Whats New in Microsoft Teams Hybrid Meetings November 2021David J Rosenthal
 
Avaya lync integration 6 16
Avaya lync integration 6 16Avaya lync integration 6 16
Avaya lync integration 6 16Chris Stegh
 
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 AdhearsionMojo Lingo
 
Alfresco Digital Business Platform - Why, How, What
Alfresco Digital Business Platform - Why, How, WhatAlfresco Digital Business Platform - Why, How, What
Alfresco Digital Business Platform - Why, How, WhatMario Romano
 
Dpa microsoft lync server 2010
Dpa   microsoft lync server 2010Dpa   microsoft lync server 2010
Dpa microsoft lync server 2010ebuc
 
Offre revendeurs UC
Offre  revendeurs   UCOffre  revendeurs   UC
Offre revendeurs UCRachid ZINE
 
“Comparing ML-Based Audio with ML-Based Vision: An Introduction to ML Audio f...
“Comparing ML-Based Audio with ML-Based Vision: An Introduction to ML Audio f...“Comparing ML-Based Audio with ML-Based Vision: An Introduction to ML Audio f...
“Comparing ML-Based Audio with ML-Based Vision: An Introduction to ML Audio f...Edge AI and Vision Alliance
 
Justin Morris - Enhancing your lync 2013 rollout to make it a killer success ...
Justin Morris - Enhancing your lync 2013 rollout to make it a killer success ...Justin Morris - Enhancing your lync 2013 rollout to make it a killer success ...
Justin Morris - Enhancing your lync 2013 rollout to make it a killer success ...Nordic Infrastructure Conference
 
Conversational commerce: emerging architectures for smart & useful chatbots -...
Conversational commerce: emerging architectures for smart & useful chatbots -...Conversational commerce: emerging architectures for smart & useful chatbots -...
Conversational commerce: emerging architectures for smart & useful chatbots -...Grid Dynamics
 
Conversational commerce: emerging architectures for smart & useful chatbots. ...
Conversational commerce: emerging architectures for smart & useful chatbots. ...Conversational commerce: emerging architectures for smart & useful chatbots. ...
Conversational commerce: emerging architectures for smart & useful chatbots. ...Grid Dynamics
 
Conversational commerce: emerging architectures for smart & useful chatbots -...
Conversational commerce: emerging architectures for smart & useful chatbots -...Conversational commerce: emerging architectures for smart & useful chatbots -...
Conversational commerce: emerging architectures for smart & useful chatbots -...Grid Dynamics
 
Conversational commerce: emerging architectures for smart & useful chatbots. ...
Conversational commerce: emerging architectures for smart & useful chatbots. ...Conversational commerce: emerging architectures for smart & useful chatbots. ...
Conversational commerce: emerging architectures for smart & useful chatbots. ...Grid Dynamics
 

Ähnlich wie Evented Telephony Application Design with Adhearsion (20)

Call Control Power Tools with Adhearsion
Call Control Power Tools with Adhearsion Call Control Power Tools with Adhearsion
Call Control Power Tools with Adhearsion
 
Call Control Power Tools with Adhearsion
Call Control Power Tools with AdhearsionCall Control Power Tools with Adhearsion
Call Control Power Tools with Adhearsion
 
Talking To Rails
Talking To RailsTalking To Rails
Talking To Rails
 
Webinar | Cloud PBX and Skype
Webinar | Cloud PBX and Skype Webinar | Cloud PBX and Skype
Webinar | Cloud PBX and Skype
 
Voice Applications with Adhearsion
Voice Applications with AdhearsionVoice Applications with Adhearsion
Voice Applications with Adhearsion
 
QA Fest 2018. Александр Хотемский. Использование голосовых помощников для раз...
QA Fest 2018. Александр Хотемский. Использование голосовых помощников для раз...QA Fest 2018. Александр Хотемский. Использование голосовых помощников для раз...
QA Fest 2018. Александр Хотемский. Использование голосовых помощников для раз...
 
Skype for business understanding what is new, preview or unchanged
Skype for business understanding what is new, preview or unchangedSkype for business understanding what is new, preview or unchanged
Skype for business understanding what is new, preview or unchanged
 
Whats New in Microsoft Teams Hybrid Meetings November 2021
Whats New in Microsoft Teams Hybrid Meetings November 2021Whats New in Microsoft Teams Hybrid Meetings November 2021
Whats New in Microsoft Teams Hybrid Meetings November 2021
 
Avaya lync integration 6 16
Avaya lync integration 6 16Avaya lync integration 6 16
Avaya lync integration 6 16
 
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
 
Alfresco Digital Business Platform - Why, How, What
Alfresco Digital Business Platform - Why, How, WhatAlfresco Digital Business Platform - Why, How, What
Alfresco Digital Business Platform - Why, How, What
 
Dpa microsoft lync server 2010
Dpa   microsoft lync server 2010Dpa   microsoft lync server 2010
Dpa microsoft lync server 2010
 
Offre revendeurs UC
Offre  revendeurs   UCOffre  revendeurs   UC
Offre revendeurs UC
 
A Tale of Two Toolkits
A Tale of Two ToolkitsA Tale of Two Toolkits
A Tale of Two Toolkits
 
“Comparing ML-Based Audio with ML-Based Vision: An Introduction to ML Audio f...
“Comparing ML-Based Audio with ML-Based Vision: An Introduction to ML Audio f...“Comparing ML-Based Audio with ML-Based Vision: An Introduction to ML Audio f...
“Comparing ML-Based Audio with ML-Based Vision: An Introduction to ML Audio f...
 
Justin Morris - Enhancing your lync 2013 rollout to make it a killer success ...
Justin Morris - Enhancing your lync 2013 rollout to make it a killer success ...Justin Morris - Enhancing your lync 2013 rollout to make it a killer success ...
Justin Morris - Enhancing your lync 2013 rollout to make it a killer success ...
 
Conversational commerce: emerging architectures for smart & useful chatbots -...
Conversational commerce: emerging architectures for smart & useful chatbots -...Conversational commerce: emerging architectures for smart & useful chatbots -...
Conversational commerce: emerging architectures for smart & useful chatbots -...
 
Conversational commerce: emerging architectures for smart & useful chatbots. ...
Conversational commerce: emerging architectures for smart & useful chatbots. ...Conversational commerce: emerging architectures for smart & useful chatbots. ...
Conversational commerce: emerging architectures for smart & useful chatbots. ...
 
Conversational commerce: emerging architectures for smart & useful chatbots -...
Conversational commerce: emerging architectures for smart & useful chatbots -...Conversational commerce: emerging architectures for smart & useful chatbots -...
Conversational commerce: emerging architectures for smart & useful chatbots -...
 
Conversational commerce: emerging architectures for smart & useful chatbots. ...
Conversational commerce: emerging architectures for smart & useful chatbots. ...Conversational commerce: emerging architectures for smart & useful chatbots. ...
Conversational commerce: emerging architectures for smart & useful chatbots. ...
 

Mehr von 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 StarMojo 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 BreaksMojo 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 SightMojo 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 RailsMojo 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 AsteriskMojo Lingo
 
WebRTC Overview by Dan Burnett
WebRTC Overview by Dan BurnettWebRTC Overview by Dan Burnett
WebRTC Overview by Dan BurnettMojo Lingo
 
AdhearsionConf 2013 Keynote
AdhearsionConf 2013 KeynoteAdhearsionConf 2013 Keynote
AdhearsionConf 2013 KeynoteMojo Lingo
 
Speech-Enabling Web Apps
Speech-Enabling Web AppsSpeech-Enabling Web Apps
Speech-Enabling Web AppsMojo Lingo
 
WebRTC: What? How? Why? - ClueCon 2013
WebRTC: What? How? Why? - ClueCon 2013WebRTC: What? How? Why? - ClueCon 2013
WebRTC: What? How? Why? - ClueCon 2013Mojo Lingo
 
Infiltrando Telecoms Usando Ruby
Infiltrando Telecoms Usando RubyInfiltrando Telecoms Usando Ruby
Infiltrando Telecoms Usando RubyMojo Lingo
 
Enhancing FreePBX with Adhearsion
Enhancing FreePBX with AdhearsionEnhancing FreePBX with Adhearsion
Enhancing FreePBX with AdhearsionMojo Lingo
 
Connecting Adhearsion
Connecting AdhearsionConnecting Adhearsion
Connecting AdhearsionMojo Lingo
 
Testing Adhearsion Applications
Testing Adhearsion ApplicationsTesting Adhearsion Applications
Testing Adhearsion ApplicationsMojo 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 TerribleMojo Lingo
 
Rayo for XMPP Folks
Rayo for XMPP FolksRayo for XMPP Folks
Rayo for XMPP FolksMojo Lingo
 
Building Real Life Applications with Adhearsion
Building Real Life Applications with AdhearsionBuilding Real Life Applications with Adhearsion
Building Real Life Applications with AdhearsionMojo 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 AdhearsionMojo Lingo
 
Infiltrating Telecoms Using Ruby
Infiltrating Telecoms Using RubyInfiltrating Telecoms Using Ruby
Infiltrating Telecoms Using RubyMojo Lingo
 

Mehr von 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
 

Kürzlich hochgeladen

Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 

Kürzlich hochgeladen (20)

Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

Evented Telephony Application Design with Adhearsion

  • 1. Evented Telephony Application Design with Ben Klang Founder, Mojo Lingo bklang@mojolingo.com Twitter/Github: @bklang
  • 2. What is Adhearsion? • Adhesion you can hear – glueing the voice layer to the rest of the world. • Voice Application Development Framework • Open Source • Ruby – integrates easily with Rails, but not dependent • Platform agnostic – runs anywhere Ruby or Java (JRuby) does • Runs small, scales large • Cloud-Ready
  • 3. Adhearsion Applied • Call center workflow optimization and integration • Sales force automation • Conferencing applications • Translation services • IVR • Polling • Robo-calling
  • 4. Adhearsion Platforms 2008 2010 2011
  • 6. But wait... telephony is HARD right?? Photo by Joseph A. Carr from http://en.wikipedia.org/wiki/File:JT_Switchboard_770x540.jpg
  • 7. Code Sample (comfort zone) Don’t Panic
  • 9. Why evented design? • Telephony needs are well served by evented design
  • 10. Why evented design? • Telephony needs are well served by evented design • DTMF key presses
  • 11. Why evented design? • Telephony needs are well served by evented design • DTMF key presses • New call setup/call state transition
  • 12. Why evented design? • Telephony needs are well served by evented design • DTMF key presses • New call setup/call state transition • Conference or Queue join/leave
  • 13. Why evented design? • Telephony needs are well served by evented design • DTMF key presses • New call setup/call state transition • Conference or Queue join/leave • Allows extra logic to execute without interrupting flow
  • 14. Why evented design? • Telephony needs are well served by evented design • DTMF key presses • New call setup/call state transition • Conference or Queue join/leave • Allows extra logic to execute without interrupting flow • Process keypresses while on a long blocking call
  • 15. Why evented design? • Telephony needs are well served by evented design • DTMF key presses • New call setup/call state transition • Conference or Queue join/leave • Allows extra logic to execute without interrupting flow • Process keypresses while on a long blocking call • React to external events (timer expired, agent available)
  • 16. Code Demo Code from this demo: https://github.com/mojolingo/RubyConf2011
  • 18. Questions... adhearsion.com http://mojolingo.com @Adhearsion @bklang bklang@mojolingo.com