• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
East Bay Ruby Tropo presentation
 

East Bay Ruby Tropo presentation

on

  • 1,479 views

I talked at East Bay Ruby on March 15. These are the slides the audience saw.

I talked at East Bay Ruby on March 15. These are the slides the audience saw.

Statistics

Views

Total Views
1,479
Views on SlideShare
1,479
Embed Views
0

Actions

Likes
0
Downloads
6
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    East Bay Ruby Tropo presentation East Bay Ruby Tropo presentation Presentation Transcript

    • Tropo Adam Kalseywww.Tropo.com akalsey@tropo.com @tropo @akalsey
    • copper wireshttp://www.flickr.com/photos/anselmhook
    • expensive http://www.flickr.com/photos/amagill
    • GSMG722 TAPI JSR289 Telephony DevelopersSIP SS7 RTMP JSR309
    • Javascript HTML RESTWeb Developers Ruby URLs PHP JSON
    • 1,704 or 514,756?
    • menu welcome, for-spanish-press-8, main-ivr, :timeout => 8.seconds, :tries => 3 do |link| link.shipment_status 1 link.ordering 2 link.representative 4 link.spanish 8 link.employee 900..999 link.on_invalid { play invalid selection } end
    • voicexml<?xml version="1.0" encoding="UTF-8"?><vxml version = "2.1" > <form> <block> <prompt> Hello World. This is my first telephone application. </prompt> </block> </form></vxml>
    • http://tropo.com/http://github.com/tropo
    • • Call • Say• Answer • Ask• Transfer • Record• Reject • Conference• Hangup
    • answeroptions = { :choices => 1 (1,sales), 2 (2 support) }result = ask Hi. For sales, say Sales or press 1. For support, say Support or press 2., optionsif result.name == choice case result.value when 1 say Your money is important to us. when 2 say Your call will be ignored in the order received. endendhangup
    • PHP Javascript<?php answer();answer(); say("Hello World");say("Hello World"); hangup();hangup();?> Ruby JSON answer {"tropo":[{ say "Hello World" "say": "Hello World" hangup }]} Python Groovy answer() answer() say("Hello World") say("Hello World") hangup() hangup()
    • Mozilla RhinoQuercus JRuby Python Jython
    • event = call tel:+19166002497, { :recordURI => http://example.com/, :recordFormat => audio/mp3} function call($to, $options){ ... $_newCall_ = $callFactory->call( $options[callerID], $to, $options[recordURI], $options[recordFormat] ); ... }
    • TropoControl API Routing Sciprting WebAPI MohoState Machine Events Monitoring Plugins... JSR 289 JSR 309 JMX Clustering PRISM Application Server Speech Audio / VideoCall Recording Text to Speech Recognition Conference Plugin Signal WAV / MP3 MRCP Architecture Detection Prophecy Media Server
    • labs.voxeo.com/moho
    • Call or SMS: (510) 470-7863GTalk, XMPP: bartdemo@tropo.imhttp://github.com/tropo/tropo-samples/
    • require rubygemsrequire open-urirequire jsondefault_voice = envoices = { :es => { :lang => Spanish, :name => Carmen }, :de => { :lang => German, :name => Katrin }, :it => { :lang => Italian, :name => Paola }, :nl => { :lang => Dutch, :name => Saskia }, :fr => { :lang => French, :name => Florence }, :pl => { :lang => Polish, :name => zosia } }text = Berkeley is such a beautiful city!translate_uri = "http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=#{text}"say text, :voice => vanessavoices.each do |voice| url = URI.encode(translate_uri + "&langpair=#{default_voice}|#{voice[0].to_s}") translation = JSON.parse(open(url).read) say "Now in #{voice[1][:lang]}", :voice => victor log translation.inspect if translation[responseData][translatedText] say translation[responseData][translatedText], :voice => voice[1][:name] endendsay Thanks for listening! Goodbye., :voice => simon
    • babelverse
    • phono
    • $.phono({ onReady: function() { this.phone.dial("510-867-5309") }})
    • Tropo Adam Kalseywww.Tropo.com akalsey@tropo.com @tropo @akalsey