Download - Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Transcript
Page 1: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications
Page 2: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Amit Bhayani

Page 3: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Agenda

l Demo

l What's HTML5 WebRTC anyway

l JBoss AS7 HTML5 WebRTC Support with Mobicents

Q&A

Page 4: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Real Time Communication in your Web Application

l Ever felt of adding voice, video, IM ….. Real Time Communication to your Web Application?

l How did you solve it?

l Lets have Demo

Page 5: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Real Time Communication in your Web Application

l Historically Web and Telecom were different

l Telecom technologies are inaccessible to most developers

l Not any more

l Web technologies are open & ubiquitous

l Millions of web developers world wide

RestComm

Page 6: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

API to telephony network

l A User calls or sends an SMS/IM to your number

Page 7: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

API to telephony network

l RestComm receives the call or SMS or IM and makes request to your application

Page 8: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

API to telephony network

l Your app receives all the information regarding call like called party number, calling party number etc etc

l Process the informationl Sends XML back

Page 9: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

API to telephony network

l RestComm follows the instruction and controls the flow of call

Page 10: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

RestComm enables WebRTC

WebRTC Use Cases

■Browser to Browser or PSTN Audio Calls■Browser to Browser Video Calls■Video Conferencing■Messaging (Chat) for Remote Support Widgets or M2M Communications■ScreenSharing for Remote Support or Collaboration■File Sharing■Video VoiceMail

Page 11: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

What's anyway ?

Page 12: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Mission Statement

l WebRTC is a free, open project that enables web browsers with Real-Time Communications (RTC) capabilities via simple Javascript APIs.

l Think rich, high quality, RTC applications in the browser via simple Javascript APIs and HTML5 without plugin

l The WebRTC initiative is a project supported by

Page 13: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Developer Stance

Defines a set of Media and Data JavaScript APIs to bring VoIP natively to the browser and cross platforms :

l GetUserMedia l (camera and microphone access)

l PeerConnectionl (sending and receiving media)

l DataChannels l (sending non-media direct between browsers)

Page 14: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Architecture

Page 15: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

HTML5 WebRTC Signaling and Media

• WebRTC is independent of WebSockets

• Can use anything for call control signaling including Ajax, server push or plain HTTP

• Media is peer to peer and can handle both audio and video (RTCWeb)

Page 16: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications
Page 17: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

What is ?

Page 18: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

The Approach

Web / MobileApplicationDeveloper

Page 19: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

From Legacy PSTN to Cloud Communications

Page 20: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

HTML5 WebRTC Integration

Page 21: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Goal

l Since WebRTC = VoIP, makes sense to support in the largest Open Source Communication Platform, no ?

l Handle large number of concurrent connections

l Allow Interop with existing VoIP or Telco Infrastructurel Since WebRTC doesn't define the call control signaling, choice

was to use SIP as signaling protocol (there is a draft for that)

Page 22: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Server Side Awesomeness

Page 23: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

JBoss AS7 Adds-Ons• Automatically adds WebSocket support to any JAIN SIP based server (SIP Stack used by

Mobicents and Google Android 2.3+)o SIP Servlets http://dev.telestax.com/sipservlets/o SIP Stack http://dev.telestax.com/jain-sip/

Page 24: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

WebRTC Support In Java EE7 ?• No but next revision of SIP Servlets Specification (JSR 359)

will support it.

• Deliver support for reusable Converged Web and Real Time Communications Applications

• RTC Applications can leverage Java EE6 Technologies and Standards all the way

• Existing Applications can adds RTC Capabilities easily

Page 25: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Client Side Coolness

Page 26: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

SIP JavaScript Stack

l JavaScript Framework allowing HTML5 Applications to that handle Call Control (SIP) in the Browser

l Contributed by

Page 27: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

SIP JavaScript StackStill ugly (to web developers) Low Level SIP details for now but working on higher abstractions, ie 1 liner import and 1 liners to place call, reject, hangup etc

Page 28: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Future Work

Page 29: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

It's Only the Beginning

•More Features to Add l Chatl File Sharingl Tab Sharingl Music Sharingl Screen Sharingl Presencel Locationl Social Network Integrationl …

It's Open Source... Help yourself, Contribute !

Page 30: Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

Thank you !

http://telestax.com/

http://www.mobicents.org