Boost JBoss AS7 withHTML5 WebRTC for Real Time Communications       Jean Deruelle      November 2012
Agenda●    HTML5 WebRTC Demo●    Whats HTML5 WebRTC anyway ?● JBoss AS7 HTML5 WebRTC Support withMobicents●    Q&A
Your 5 minutes of fame !
Whats   anyway ?
Mission Statement●  WebRTC is a free, open project that enables web browserswith Real-Time Communications (RTC) capabiliti...
Developer Stance Defines a set of Media and Data JavaScript APIsto bring VoIP natively to the browser and crossplatforms :...
Architecture
HTML5 WebRTC     Signaling and Media• WebRTC is    independent of        Call Control   Call Control    WebSockets•   Can ...
Relation to VoIP
Browser Support Today ?●    Supported out of the box in Google Chrome 23,    support coming to Chrome Mobile in 2013      ...
What is   ?
The           Approach      Web / Mobile      Application      Developer
From Legacy PSTN toCloud Communications
HTML5 WebRTC  Integration
Goal ●   Since WebRTC = VoIP, makes sense to support in the largest Open Source Communication Platform, no ? ●     Handle ...
What is SIP ?●  Stands for Session Initiation Protocol, protocol of choice forVoIP and all IP based networks (LTE, 4G netw...
Call Flow
WebSockets
SIP Over WebSockets  Typical Flowhttp://tools.ietf.org/html/draft-ietf-sipcore-sip-websocket-06 : Still a draft           ...
Server SideAwesomeness
JBoss AS7 Adds-Ons• Automatically adds WebSocket support to any JAIN SIP based server (SIP Stack used by  Mobicents and Go...
Implemented on topof NIO• WebSockets phones need a TCP/TLS connection to be alive even when not in a call. This connection...
WebRTC SupportIn Java EE7 ?• No but next revision of SIP Servlets Specification (JSR 359) will support it.• Deliver suppor...
Client Side Coolness
SIP JavaScript Stack• JavaScript Framework allowing HTML5 Applications to that handle Call Control (SIP) in the Browser• C...
SIP JavaScript StackStill ugly (to web developers) Low Level SIP details for now but working on higher abstractions, ie 1 ...
Future Work
Its Only the Beginning                              Its Open Source... More Features to Add    ●      Chat                ...
http://www.mobicents.orgThank you !  http://telestax.com/
Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications
Upcoming SlideShare
Loading in …5
×

Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

2,263 views
2,114 views

Published on

HTML5 WebRTC, for Web Real Time Communications is free, open secifications to enable rich, high quality, Real Time Communications applications to be developed in the browser via simple Javascript APIs and HTML5. Major browsers already support or will support it soon natively. This talk will present an overview of WebRTC, how it is already revolutionizing the Web and changing the Telco industry. A couple of emblematic use cases will be also explored to show the potential of WebRTC in different enterprise markets and a live demo of a 1 to 1 WebRTC Video Conference will also be performed followed by a detailed explanation on how it was achieved as well as what JBoss AS7 additions were required to make it work

Published in: Technology
2 Comments
1 Like
Statistics
Notes
No Downloads
Views
Total views
2,263
On SlideShare
0
From Embeds
0
Number of Embeds
10
Actions
Shares
0
Downloads
99
Comments
2
Likes
1
Embeds 0
No embeds

No notes for slide

Boost JBoss AS7 with HTML5 WebRTC for Real Time Communications

  1. 1. Boost JBoss AS7 withHTML5 WebRTC for Real Time Communications Jean Deruelle November 2012
  2. 2. Agenda● HTML5 WebRTC Demo● Whats HTML5 WebRTC anyway ?● JBoss AS7 HTML5 WebRTC Support withMobicents● Q&A
  3. 3. Your 5 minutes of fame !
  4. 4. Whats anyway ?
  5. 5. Mission Statement● WebRTC is a free, open project that enables web browserswith Real-Time Communications (RTC) capabilities viasimple Javascript APIs.● Think rich, high quality, RTC applications in the browser viasimple Javascript APIs and HTML5 without plugin● The WebRTC initiative is a project supported by
  6. 6. Developer Stance Defines a set of Media and Data JavaScript APIsto bring VoIP natively to the browser and crossplatforms : ● GetUserMedia (camera and microphone access) ● PeerConnection (sending and receiving media) ● DataChannels (sending non-media direct between browsers)
  7. 7. Architecture
  8. 8. HTML5 WebRTC Signaling and Media• WebRTC is independent of Call Control Call Control 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)
  9. 9. Relation to VoIP
  10. 10. Browser Support Today ?● Supported out of the box in Google Chrome 23, support coming to Chrome Mobile in 2013 ?●● nightly builds support WebRTC, should be stable in● the next couple months● not supporting WebRTC but Microsoft made its own● WebRTC proposal “CU-RTC-Web” (Customizable, UbiquitousReal Time Communication over the Web) but available throughGoogle Frame not supporting WebRTC yet but Opera Mobile support access toVideo and Camera● launched a new Mobile Browser called Bowser withsupport for WebRTC, trying to push H.264 vs VP8 video codec● Support has more concerns : Browsers, SDK, Native APIs
  11. 11. What is ?
  12. 12. The Approach Web / Mobile Application Developer
  13. 13. From Legacy PSTN toCloud Communications
  14. 14. HTML5 WebRTC Integration
  15. 15. Goal ● Since WebRTC = VoIP, makes sense to support in the largest Open Source Communication Platform, no ? ● Handle large number of concurrent connections ● Allow Interop with existing VoIP or Telco Infrastructure ● Since WebRTC doesnt define the call control signaling, choice was to use SIP as signaling protocol (there is a draft for that)
  16. 16. What is SIP ?● Stands for Session Initiation Protocol, protocol of choice forVoIP and all IP based networks (LTE, 4G networks)● VoIP Call consists of 2 parts : ● Call Control (SIP) ● Negotiates RTP parameters (through SDP) ● Authentication ● Media (RTP) – carries audio stream in small packets
  17. 17. Call Flow
  18. 18. WebSockets
  19. 19. SIP Over WebSockets Typical Flowhttp://tools.ietf.org/html/draft-ietf-sipcore-sip-websocket-06 : Still a draft • Regular HTTP request with Upgrade header • Switch to normal mode o No HTTP any more, just plain subprotocol o ..except its masked so plaintext cant be misinterpreted and avoid security issues • SIP Messages carried in WebSocket Data • New SIP Transports : WS or WSS (for Secure using TLS) 200 OK SIP INVITE
  20. 20. Server SideAwesomeness
  21. 21. 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/
  22. 22. Implemented on topof NIO• WebSockets phones need a TCP/TLS connection to be alive even when not in a call. This connection cannot die otherwise the phone cant receive calls.• NIO is great for TCP/TLS o TCP/TLS SIP sockets do not require separate Threads as Threads are expensive (3K threads easily crash server machines just by themselves)• The architecture accommodates both NIO and Blocking IO nicely
  23. 23. WebRTC SupportIn 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
  24. 24. Client Side Coolness
  25. 25. SIP JavaScript Stack• JavaScript Framework allowing HTML5 Applications to that handle Call Control (SIP) in the Browser• Contributed by
  26. 26. SIP JavaScript StackStill ugly (to web developers) Low Level SIP details for now but working on higher abstractions, ie 1 linerimport and 1 liners to place call, reject, hangup etc
  27. 27. Future Work
  28. 28. Its Only the Beginning Its Open Source... More Features to Add ● Chat Help yourself, ● File Sharing Contribute ! ● Tab Sharing ● Music Sharing ● Screen Sharing ● Presence ● Location ● Social Network Integration ● …
  29. 29. http://www.mobicents.orgThank you ! http://telestax.com/

×