SlideShare une entreprise Scribd logo
1  sur  18
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...


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

Contenu connexe

Tendances

How to maintain a perfect product architecture in a non-stop start-up
How to maintain a perfect product architecture in a non-stop start-upHow to maintain a perfect product architecture in a non-stop start-up
How to maintain a perfect product architecture in a non-stop start-upAdam Kariv
 
Mark Spencer’s Presentation at eComm 2009
Mark Spencer’s Presentation at eComm 2009Mark Spencer’s Presentation at eComm 2009
Mark Spencer’s Presentation at eComm 2009eCommConf
 
What is New in Sage X3 Financials
What is New in Sage X3 FinancialsWhat is New in Sage X3 Financials
What is New in Sage X3 FinancialsNet at Work
 

Tendances (7)

Victory Home Base
Victory Home BaseVictory Home Base
Victory Home Base
 
How to maintain a perfect product architecture in a non-stop start-up
How to maintain a perfect product architecture in a non-stop start-upHow to maintain a perfect product architecture in a non-stop start-up
How to maintain a perfect product architecture in a non-stop start-up
 
Mark Spencer’s Presentation at eComm 2009
Mark Spencer’s Presentation at eComm 2009Mark Spencer’s Presentation at eComm 2009
Mark Spencer’s Presentation at eComm 2009
 
Victory Cloud
Victory CloudVictory Cloud
Victory Cloud
 
What is New in Sage X3 Financials
What is New in Sage X3 FinancialsWhat is New in Sage X3 Financials
What is New in Sage X3 Financials
 
EVOLVE'14 | Maximize | Robinson Kelly | Multilingual Localization
EVOLVE'14 | Maximize | Robinson Kelly | Multilingual LocalizationEVOLVE'14 | Maximize | Robinson Kelly | Multilingual Localization
EVOLVE'14 | Maximize | Robinson Kelly | Multilingual Localization
 
Virtual receptionist
Virtual receptionistVirtual receptionist
Virtual receptionist
 

En vedette

En vedette (7)

N2Y4 Mobile Challenge May 2009 San Jose
N2Y4 Mobile Challenge May 2009   San JoseN2Y4 Mobile Challenge May 2009   San Jose
N2Y4 Mobile Challenge May 2009 San Jose
 
Adhearsion Overview February 2009
Adhearsion Overview February 2009Adhearsion Overview February 2009
Adhearsion Overview February 2009
 
Adhearsion Astricon October 2010
Adhearsion Astricon October 2010Adhearsion Astricon October 2010
Adhearsion Astricon October 2010
 
Amoocon May 2009 Germany
Amoocon May 2009   GermanyAmoocon May 2009   Germany
Amoocon May 2009 Germany
 
Ahn Conf 2011 - Day 2 Keynote
Ahn Conf 2011 - Day 2 KeynoteAhn Conf 2011 - Day 2 Keynote
Ahn Conf 2011 - Day 2 Keynote
 
Ruby Kaigi July 2009 Tokyo (Japanese)
Ruby Kaigi July 2009 Tokyo (Japanese)Ruby Kaigi July 2009 Tokyo (Japanese)
Ruby Kaigi July 2009 Tokyo (Japanese)
 
Adhearsion conf 2011 keynote
Adhearsion conf 2011 keynoteAdhearsion conf 2011 keynote
Adhearsion conf 2011 keynote
 

Similaire à Ruby Conf 2011

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
 
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
 
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
 
Avaya lync integration 6 16
Avaya lync integration 6 16Avaya lync integration 6 16
Avaya lync integration 6 16Chris Stegh
 
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
 
Voice Applications with Adhearsion @ ATLAUG 2012
Voice Applications with Adhearsion @ ATLAUG 2012Voice Applications with Adhearsion @ ATLAUG 2012
Voice Applications with Adhearsion @ ATLAUG 2012Adhearsion Foundation
 
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
 
Copilot to Cover: Why AI can't replace developers with robots, but can make l...
Copilot to Cover: Why AI can't replace developers with robots, but can make l...Copilot to Cover: Why AI can't replace developers with robots, but can make l...
Copilot to Cover: Why AI can't replace developers with robots, but can make l...Andy Piper
 
Offre revendeurs UC
Offre  revendeurs   UCOffre  revendeurs   UC
Offre revendeurs UCRachid ZINE
 
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
 
Six Signs You Need Platform Engineering
Six Signs You Need Platform EngineeringSix Signs You Need Platform Engineering
Six Signs You Need Platform EngineeringWeaveworks
 

Similaire à Ruby Conf 2011 (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
 
Voice Applications with Adhearsion
Voice Applications with AdhearsionVoice Applications with Adhearsion
Voice Applications with Adhearsion
 
Webinar | Cloud PBX and Skype
Webinar | Cloud PBX and Skype Webinar | Cloud PBX and Skype
Webinar | Cloud PBX and Skype
 
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
 
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
 
Avaya lync integration 6 16
Avaya lync integration 6 16Avaya lync integration 6 16
Avaya lync integration 6 16
 
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
 
A Tale of Two Toolkits
A Tale of Two ToolkitsA Tale of Two Toolkits
A Tale of Two Toolkits
 
Voice Applications with Adhearsion @ ATLAUG 2012
Voice Applications with Adhearsion @ ATLAUG 2012Voice Applications with Adhearsion @ ATLAUG 2012
Voice Applications with Adhearsion @ ATLAUG 2012
 
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
 
Copilot to Cover: Why AI can't replace developers with robots, but can make l...
Copilot to Cover: Why AI can't replace developers with robots, but can make l...Copilot to Cover: Why AI can't replace developers with robots, but can make l...
Copilot to Cover: Why AI can't replace developers with robots, but can make l...
 
Offre revendeurs UC
Offre  revendeurs   UCOffre  revendeurs   UC
Offre revendeurs UC
 
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. ...
 
Six Signs You Need Platform Engineering
Six Signs You Need Platform EngineeringSix Signs You Need Platform Engineering
Six Signs You Need Platform Engineering
 

Plus de Adhearsion Foundation

Plus de Adhearsion Foundation (7)

Can You Hear Me Now? Tackling Telephony Testing
Can You Hear Me Now? Tackling Telephony TestingCan You Hear Me Now? Tackling Telephony Testing
Can You Hear Me Now? Tackling Telephony Testing
 
ClueCon 2012
ClueCon 2012ClueCon 2012
ClueCon 2012
 
State of the Art Telephony with Ruby
State of the Art Telephony with RubyState of the Art Telephony with Ruby
State of the Art Telephony with Ruby
 
Adhearsion for Devs - CloudComm 2011
Adhearsion for Devs  - CloudComm 2011Adhearsion for Devs  - CloudComm 2011
Adhearsion for Devs - CloudComm 2011
 
Eu Ru Ko Tutorial May 2009 Barcelona
Eu Ru Ko Tutorial May 2009   BarcelonaEu Ru Ko Tutorial May 2009   Barcelona
Eu Ru Ko Tutorial May 2009 Barcelona
 
Amoocon Tutorial May 2009 Germany
Amoocon Tutorial May 2009   GermanyAmoocon Tutorial May 2009   Germany
Amoocon Tutorial May 2009 Germany
 
Adhearsion @ eComm 2009 Final
Adhearsion @ eComm 2009   FinalAdhearsion @ eComm 2009   Final
Adhearsion @ eComm 2009 Final
 

Dernier

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 

Dernier (20)

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 

Ruby Conf 2011

  • 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... http:// mojolingo.com adhearsion.com @bklang @Adhearsion bklang@mojolingo.co m

Notes de l'éditeur

  1. \n
  2. Predictable progress and safer deployments thanks to Ruby best practices like TDD, Capistrano, Agile; eminently readable code\nTell stories about our successes with startups and MVP\n
  3. \n
  4. ?? Mean\n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n