Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications
-
Upload
telestax -
Category
Technology
-
view
1.531 -
download
0
description
Transcript of Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications
Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications
Amit Bhayani
Agenda
l Demo
l What's HTML5 WebRTC anyway
l JBoss AS7 HTML5 WebRTC Support with Mobicents
Q&A
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
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
API to telephony network
l A User calls or sends an SMS/IM to your number
API to telephony network
l RestComm receives the call or SMS or IM and makes request to your application
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
API to telephony network
l RestComm follows the instruction and controls the flow of call
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
What's anyway ?
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
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)
Architecture
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)
What is ?
The Approach
Web / MobileApplicationDeveloper
From Legacy PSTN to Cloud Communications
HTML5 WebRTC Integration
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)
Server Side Awesomeness
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/
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
Client Side Coolness
SIP JavaScript Stack
l JavaScript Framework allowing HTML5 Applications to that handle Call Control (SIP) in the Browser
l Contributed by
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
Future Work
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 !