Transcript Slide 1

Web 2.0: The Future of Web

Service Delivery (SP-01)

Mike Chapman Director of Product Management Dialogic

Analysts Size Web 2.0 Market Opportunity • • • • • Enterprise Web 2.0 spending to reach $4.6 billion by 2013 (Source: Forrester Research) Enterprise Social Networking Market Expected to Reach billion by 2013 (Source: Wainhouse Research) $2 Web 2.0 mobile market is (Source: Juniper Research) $20 billion Worldwide by 2013 Mobile social networking (Source: Informa) reaches $29 billion by 2012 Mobile social networking will rise to (Source: Strategy Analytics) $17.1 billion in 2013

What Kind of Web Services Require Media Processing?

• • • • • • • • Social networking click-to-call or click-to-video Voice or video-enabling real-time communications from text “tweets” Integration of audio and video for Web-based call center access Web-accessible network-based messaging Video portals Adult entertainment Mobile advertising Location-based services

Defining Some Terms • • • • Application Programming Interface (API) Web 2.0

Web Services Telephony and Media Processing

Application Programming Interface (API) • • An application programming interface – API – is an interface implemented by a software program which enables it to interact with other software components The API represents an abstraction of functions/capabilities that are invoked by other components – Software components can be on the same computer or connected via a remote connection in a network using remote procedure calls (RPC) – Usage can be interactive user program accessing functions of a component or machine-to-machine (M2M) – API can represent a generalized set of functions or address a need in an application specific domain

Web 2.0

• • • • • The second generation of the World Wide Web, especially the movement away from static web pages to dynamic and shareable content and social networking A Web 2.0 site allows its users to interact with each other as contributors to the website's content, in contrast to websites where users are limited to the passive viewing of information that is provided to them One of the most significant differences between Web 2.0 and the traditional World Wide Web (now referred to as Web 1.0) is greater collaboration among Internet users and other users, content providers, and enterprises Representative Web 2.0 technology – Ajax, RSS-generated syndication, wikis Examples of Web 2.0 usage include: – Blogging, social bookmarking, mash-ups

Web Services • • • • • Web Services are Application Programming Interfaces (API) or Web APIs that are issued to a remote server using the Hypertext Transfer Protocol (HTTP) A Web API is typically a defined set of HTTP request messages along with a definition of the structure of response messages – Typically expressed in EXtensible Markup Language (XML) or JavaScript Object Notation (JSON) Web APIs – Web 1.0 & 2.0 – SOAP (RPC)messages embedded in XML documents – Web 2.0 – REST (Representational State Transfer) style communications relying on HTTP APIs conforming to the REST constraints are referred to as being ‘RESTful’ REST constraints are “properties” of the REST software architecture adhered to by the Web

Telephony and Media Processing • • Telephony – The process of establishing real-time audio or video communications between two callers – Technology components of a call • Call signaling for call set-up, etc.

• Establishing real-time audio & video connections, i.e., media processing Media Processing – Streaming of real-time audio & video for 2-way communications between callers – Processing phone key pad numbers (DTMF) if necessary – Manipulating the stream’s encoded format to bridge different media types on different call legs – Adding information to video media

Audio Media Processing

Video Media Processing

Market Requirements for Web Media Processing • • • • Very fast time-to-develop – Leverage existing Web development tools – Easily integrate with existing Web 2.0 applications Familiarity with API design model – Stick with proven Web API approaches Eliminate complexity of traditional telephony programming – Developer may not be familiar with network-centric telephony model – Need to take a Web technology point-of-view Leverage a media processing technology that is purpose built for integrating telephony with Web applications – Targeted for Web development and usage

Network-centric versus Web-centric Media Processing 

Initiating voice calls from the Web using network-centric call processing approach SIP Call Control App Server Internet Media Gateway PSTN Or Mobile Network Media Server SIP Media Control Voice Calls Cell phone Voice phone

Network-centric versus Web-centric Media Processing 

Initiating voice calls from the Web using Web-centric call processing approach HTTP /RESTful API Call & Media Control Internet Media Server Media Gateway PSTN Or Mobile Network Cell phone Voice phone Voice Calls

SOLUTION DEPLOYMENT

Traditional Deployment • Traditionally – An application uses SIP, VoiceXML, NetAnn, MSCML, or MSML to control an IP Media Server and initiate the specific media processing functionality desired – An active SIP call is required between an IP Media Server and the application server for each remote telephony endpoint that will be transmitting or receiving media to/from an IP Media Server – This required SIP session serves a dual role • Used by an IP Media Server to create the media stream directly between an IP Media Server and the remote endpoint • Used by the SIP session as a transport mechanism between the application server and an IP Media Server for the media control XML language content

Application Server SIP

Traditional Deployment

Media Gateway PSTN SIP XML RTP IP Media Server

Web 2.0 Centric Deployment • • • Web Media Server provides a Web 2.0 (RESTful) interface for control – Media control interface utilizes HTTP requests and responses to perform media and call control operations Web Media Server uses HTTP event streaming technologies to enable the client to receive asynchronous event notifications The Web application does not use SIP call control – Application is not involved in call control signaling – Easier for web developers to use even if they are not familiar with telephony development

Web Server HTTP

Web-centric Deployment

Media Gateway PSTN SIP RTP Web Media Server

RESTful APIs • • • REST - REpresentational State Transfer Requests and responses are built around the transfer of "representations" of “resources.” Resources accessed through

URIs

REST-style architectures consist of clients and servers – – Clients initiate requests to servers Servers process requests and return appropriate responses

RESTful APIs • • A RESTful web service (also called a RESTful web API) is a simple web service implemented using HTTP and the principles of REST Contains following 3 aspects: – Base URI for the web service (Ex: http://example.com/resources/ ) – MIME type of the data supported by the web service (Ex: JSON , XML) – Set of operations supported by the web service using HTTP methods • GET - retrieve info about resource(s) • • • POST - Create a new resource PUT - Modify existing resource DELETE - Delete existing resource

RESTful APIs • • • But……telephony applications must handle unsolicited events – DTMF digit detection – – Play completion events Conference events Unsolicited events or client notifications do not fit well into the HTTP request / response model Web Media Server supports event streaming – HTTP event streaming is a mechanism that enables unsolicited events to be supported • In a normal HTTP interaction, the client sends a request to the server, which performs its processing actions and send the HTTP response, then the connection between the client and server is closed • With HTTP event/data streaming, the TCP connection remains open after the response is sent from the server, allowing the server to continue to send raw data to the client without notice

RESTful Event Handling

Client Application Thread

HTTP POST with API specific URI and HTTP body HTTP 201 Created, with API response details in HTTP body

WMS

HTTP Get to retrieve future asynchronous events 200 OK Response, No HTTP Body, TCP connection remains open for supplying future events Event Data Event Data DTMF(s) from caller DTMF(s) from caller

RESTful Client Side Technologies • Any language or OS • • Must support HTTP and XML processing Sample development platforms: – Java – PHP – .NET

– – Perl Ruby – etc.  Flexibility to select appropriate client-side platform, based on application needs and developer skill set

Use Case: Click2Conference • • • Social Media Site Click2Conference Usage Model: – Click2Conference application uses HTTP Post with list of phone numbers – Web Media Server handles incoming HTTP post requests to make outbound calls Call Flow: – Web Media Server makes outbound SIP calls, based on phone numbers in HTTP request – Participants in the HTTP post request are placed into same conference

Use Case: Click2Conference http 1 http Social Media Site Servers http Web Server (Social Media Application ) 2 http Voice or Video Calls 3 Voice Calls

Video Gateway

SIP RTP

Web Media Server

Click2Conference • • • User clicks on Social Media site link – Example: http://apps.socialmediasite.com/ User’s Social Media contacts are retrieved (with permission) into a list User selects the friends to be called

Click2Conference (cont’d) • • • Social Media Site does not provide phone numbers through their API. So… User is asked for phone numbers of selected contacts – Phone numbers are stored in a database – Subsequent requests use stored phone numbers User presses continue button to create conference

Click2Conference (cont’d) • • • The “Continue” button (prev. slide) results in an http POST, with phone numbers submitted to Web Media Server Web Media Server initiates outbound SIP calls Under the direction of the application, the Web Media Server places the SIP calls’ RTP streams into a conference

Use Case: Click2Call • Mapping Software Click2Call – Customer provides mapping software for many uses • Telecommunications: location of new service availability • Government/Military: location of nearest recruiting office • Commercial: store location – Basic Click2Call application works for any use • • Easy to deploy Increases customer satisfaction and retention

Use Case: Click2Call • • Usage Model: – Click2Call application uses HTTP Post with phone numbers stored in database and supplied by subscriber – Web Media Server handles incoming HTTP post requests to make outbound calls Call Flow: – Web Media Server makes outbound SIP calls, based on phone numbers in HTTP request – Participants in the HTTP post request are placed into same conference

Use Case: Click2Call Web Server (Mapping Software, Customer Application) http 1 http Voice or Video Call 3 Voice Call

Video Gateway

SIP RTP 2 http

Web Media Server

Click2Call • • User navigates through the customer maps Drills down to the desired location

Click2Call (cont’d) • • • User enters phone number to be called Clicks on “Submit” to initiate call The agency contact information is retrieved and put into a list along with user’s phone number

Click2Call (cont’d) • • • • The “Submit” button (prev. slide) results in an http POST, with phone numbers submitted to the Web Media Server The Web Media Server initiates outbound SIP calls Under the direction of the application, Web Media Server bridges the SIP calls’ RTP streams User and agency contact are connected – Possible for agency contact to add a subject matter expert for additional information or immediate inquiry resolution

Summary • • • Software-based Web Media Servers enable high value Web-based services This market is growing very fast based on industry analyst forecasts RESTful API based media processing is the most appropriate for Web application developers – Familiar to developers – Can use existing development platforms to develop apps – Reduces programming complexity

Contact Information

• • • • Mike Chapman – Director of Product Management – Dialogic [email protected]

Address – 16 Keewaydin Drive – Salem, NH 03079 www.dialogic.com