respond_to :voice
   The Convergence of Web and Voice
    Interfaces with Rails and Asterisk

                     or

An ...
VoIP Development Is NOT
about cheaper phone calls




Already done and telcos can do cheaper...
It’s about the
 applications.
Voice is Another Interface for Your
            Application
The Plan

• Voice as the next Killer Interface
• The Voice/Web Analogy
• Asterisk in 5 minutes
• Telegraph - Bridging Voic...
Why add voice? Why
      now?
   Only Recently Available

     Ripe for Innovation

         Ubiquitous
Lowered Barriers to Voice App
       Development


• DB Driven applications (Rails/etc.)
• Phone system (VoIP/OSS PBX)
Space To Innovate

• Existing Voice Design Thinking =   Phone
  Prompt Hell
• Few applications merge voice and web.
  Most...
Ubiquity
• 2.7 Billion mobile phones. 1.4 Billion fixed-
  lines.
• 1/3 of “Internet Users” access the internet
  from thei...
The Voice/Web Analogy: Technology
Technology           Web                   VoIP
                                       S...
Asterisk: The 5min
         Tutorial
• OSS Multipurpose PBX
• Very powerful/flexible
• Relatively Stable
• Very messy to de...
Asterisk: Key Concepts
Concept                       Explanation
 Channel     A “Channel” in Asterisk is what can setup/re...
Voice System Setup
                                  SIP/IAX
                     VoIP
                    Clients


     ...
Existing Ruby/Asterisk
         Integration Tools

                             Just for AGI.
  RAGI               Not wel...
Introducing Telegraph
• Extracted from Real Application (Idapted’s
  distributed voice system for oral language
  training...
Telegraph 1: Making Interfaces (AGI)

•   Setup Dialplan

       exten => 1, 1, AGI(agi://localhost/my_route?param1=value)...
respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk
respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk
respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk
respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk
respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk
respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk
respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk
respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk
respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk
respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk
respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk
Upcoming SlideShare
Loading in …5
×

respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk

5,718 views
5,451 views

Published on

Presented at RailsConf 2007, this presentation introduces the Telegraph plugin for briding Asterisk and Rails.
Telegraph brings the beauty of Rails programming to the VoIP world. It reshapes the mess of the Asterisk API into MVC cleanliness allowing the rapid development of Rails based voice and web applications.

Published in: Technology, Business
1 Comment
3 Likes
Statistics
Notes
  • take a good look here now
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
5,718
On SlideShare
0
From Embeds
0
Number of Embeds
38
Actions
Shares
0
Downloads
308
Comments
1
Likes
3
Embeds 0
No embeds

No notes for slide

respond_to :voice - the convergence of voice and web interfaces with Rails and Asterisk

  1. respond_to :voice The Convergence of Web and Voice Interfaces with Rails and Asterisk or An introduction to Telegraph - Voice done MVC Jonathan Palley Co-Founder, Idapted Inc. jpalley@idapted.com
  2. VoIP Development Is NOT about cheaper phone calls Already done and telcos can do cheaper...
  3. It’s about the applications.
  4. Voice is Another Interface for Your Application
  5. The Plan • Voice as the next Killer Interface • The Voice/Web Analogy • Asterisk in 5 minutes • Telegraph - Bridging Voice and Rails
  6. Why add voice? Why now? Only Recently Available Ripe for Innovation Ubiquitous
  7. Lowered Barriers to Voice App Development • DB Driven applications (Rails/etc.) • Phone system (VoIP/OSS PBX)
  8. Space To Innovate • Existing Voice Design Thinking = Phone Prompt Hell • Few applications merge voice and web. Most users do. • Underlying OSS Servers/Technology Available
  9. Ubiquity • 2.7 Billion mobile phones. 1.4 Billion fixed- lines. • 1/3 of “Internet Users” access the internet from their mobile phone. • Each of those 4.1 billion users can be uniquely identified by a standardized numerical system Source: http://communities-dominate.blogs.com/brands/2007/02/mobile_the_7th_.html
  10. The Voice/Web Analogy: Technology Technology Web VoIP SIP - Ind. Standard HTTP IAX - Asterisk only FTP Protocol H.323 - Obsolete RTP Jingle - Gtalk etc Skype - Proprietary g.711 - high bandwidth gzip gsm - medium bandwidth Codec jpg/gif/etc. g.729 - low bandwidth wmv/rm/etc iLBC - low bandwidth Server apache/lighttpd asterisk AGI Interactivity CGI AMI
  11. Asterisk: The 5min Tutorial • OSS Multipurpose PBX • Very powerful/flexible • Relatively Stable • Very messy to deal with
  12. Asterisk: Key Concepts Concept Explanation Channel A “Channel” in Asterisk is what can setup/receive calls Determines what to do with call. Given a call and a dialed number, what sounds should be played, input Dialplan received or connections made? Written in a “BASIC like language. Stdin/out or TCP method that allows external AGI applications to dynamically write dialplans Method to send commands to Asterisk (independent of AMI calls) and listen for stateful events
  13. Voice System Setup SIP/IAX VoIP Clients Rails/ Origination/ SIP/IAX AGI/AMI Asterisk PSTN Telegraph Termination Server Network Server Server Analog PSTN Zaptel/Other Interface Phones/ Cards Network
  14. Existing Ruby/Asterisk Integration Tools Just for AGI. RAGI Not well integrated into rails Not active. AMI. RAMI No Rails Integration. Not Active. Active. Real Apps? Good for writing pure voice apps Adhearsion Not tied to Rails or concept of shared voice/web interfaces.
  15. Introducing Telegraph • Extracted from Real Application (Idapted’s distributed voice system for oral language training - EnglishQuad) with input of others. • Started with RAGI/RAMI • Tightly Integrated with Rails/Web Interfaces. • Embraces the Voice/Web analogy.
  16. Telegraph 1: Making Interfaces (AGI) • Setup Dialplan exten => 1, 1, AGI(agi://localhost/my_route?param1=value) • Add respond_to and voice DSL. wants.voice do render_voice do |voice| voice.play “hello-world”

×