TADS Developer Summit Apidaze Philippe Sultan
Upcoming SlideShare
Loading in...5
×
 

TADS Developer Summit Apidaze Philippe Sultan

on

  • 3,536 views

Philippe Sultan from Apidaze presentation in the TADS Developer Summit on 'When Javascript meets Telco: helping web developers build telco apps"

Philippe Sultan from Apidaze presentation in the TADS Developer Summit on 'When Javascript meets Telco: helping web developers build telco apps"

Statistics

Views

Total Views
3,536
Views on SlideShare
2,790
Embed Views
746

Actions

Likes
0
Downloads
12
Comments
0

5 Embeds 746

http://www.scoop.it 485
http://tadsummit.com 247
http://www.linkedin.com 12
https://hootsuite.scoop.it 1
https://www.linkedin.com 1

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

TADS Developer Summit Apidaze Philippe Sultan TADS Developer Summit Apidaze Philippe Sultan Presentation Transcript

  • Apidaze telecom API What is it ? Who can use it ? How does it work ? Telecom Application Developer Summit
  • What is it ? ● Components to manage things telecom relate – ● calls to DID numbers and from SIP accounts or the Web (WebRTC/Flash UDP) SIP domains – vm.yourdomain.apidaze.voip ● DID numbers ● And soon, mobile applications Telecom Application Developer Summit
  • From cloud PBX to API managed telephony ● ● ● A web interface to manage you PBX is fine Now VoIP engineers can build their own cloud PBX using an API And web developers can easily integrate telco applications Telecom Application Developer Summit
  • API components ● HTTP/REST ● HTTP/XML ● JavaScript ● … and developer programs Telecom Application Developer Summit
  • Who can use it ? ● VoIP engineers – ● call transfer, line supervision, voicemails, fax to email, etc. Developers – – Who want to stay away from SIP And even more from : ● E1/T1, PRI, BRI, codecs Telecom Application Developer Summit
  • HTTP/REST ● A set of commands to – ● Place calls, send SMS and faxes And list and Create/Read/Update/Delete (CRUD) – – – – DID numbers SIP accounts Voicemails boxes Billing accounts Telecom Application Developer Summit
  • HTTP/REST example curl -v -X GET "https://api.apidaze.io/4561sd03/sipaccounts?api_secret=99f140425ed7ert4clgt19d9c0105283" [ { "id": "8", "name": "testsipaccount", "sip": { "username": "testsipaccount", "password": "FEtg5qZuyx0hoLYx" }, "callerid": { "internal_name": "testsipaccount", "internal_number": "", "external_name": "testsipaccount", "external_number": "" }, "created_at": "2012-07-24 22:38:25", "updated_at": "2012-10-05 17:08:36" } ] Telecom Application Developer Summit
  • HTTP/XML scripting ● ● ● XML documents written by the developer Stored in an web server controlled by the developer Downloaded via HTTP and executed when – – – A DID is called A call is placed from a SIP account, or from the WebRTC/Flash UDP JavaScript API Each call has his own context defined by the parameters sent within the HTTP request Telecom Application Developer Summit
  • HTTP/XML script example <document> <work> <speak lang='en-US'>Please wait while we're connecting your call</speak> <dial> <number>0033123456789</number> <sipaccount>bob</sipaccount> </dial> <hangup/> </work> </document> Telecom Application Developer Summit
  • Call example from the PSTN to a DID 1. Call comes in to a DID 2. URL of the External Script is fetched • • URL : http://yourdomain.com/yourscript.php Parameters include : Caller ID and Called number (DID), channel identifier 3. XML instructions from the previous URL are run • e.g. : <dial><sipaccount>bob</sipaccount></dial> 4. Call ends, URL of the External Script is fetched again • Parameters include : channel identifier, exiting=true Telecom Application Developer Summit
  • Call from a SIP account 1. Call comes in from a SIP account bob@vm.youdomain.apidaze.voip 2. URL of the External Script is fetched • • URL : http://yourdomain.com/yourscript.php Parameters include : SIP from URI sip:bob@vm.yourdomain.apidaze.voip, desitnation, channel identifier 3. XML instructions from the previous URL are run • e.g. : <dial><number>0033123456789</number></dial> 4. Call ends, URL of the External Script is fetched again • Parameters include : channel identifier, exiting=true Telecom Application Developer Summit
  • JavaScript ● What web developers love – – ● jQuery, Prototype/Scriptaculous Now even on the server side with Node.js Being extended to realtime voice/video with WebRTC – – getUserMedia function PeerConnection object Telecom Application Developer Summit
  • JavaScript parameters ● Context : a call is placed from a web page – ● The developer adds JavaScript parameters – ● WebRTC or Flash UDP User identifier, number to call, etc. Those parameters are sent over HTTP to get the XML instructions – The call is processed by the developer's script Telecom Application Developer Summit
  • Call example from JavaScript 1. Call comes in from an HTML/JavaScript page 2. URL of the External Script is fetched • • From the apiKey parameter Parameters include : anything from the web page 3. XML instructions from the previous URL are run • e.g. : <dial><sipaccount>bob</sipaccount></dial> 4. Call ends, URL of the External Script is fetched again • Parameters include : channel identifier, exiting=true Telecom Application Developer Summit
  • JavaScript Events ● Often called « event driven programming » ● Events retrieved from the telco side – – Call management events : Call Ringing, Call Answered, Call Hangup In-call events : Text message, Who is talking (in a conference room) Telecom Application Developer Summit
  • Things to come, things to work on ● Mobile SDK – ● WebRTC, Flash, SIP Video MCU (Multipoint Conference Unit) – – H.264, VP8 ? Transcoding, relaying ? Telecom Application Developer Summit