SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
SailFin: Adding Presence
and Voice to Web
applications
Binod PG
Senior Staff Engineer
Sun Microsystems



                        Sun Confidential: NDA Required       1
                                                         1
SIP and HTTP: Converged Environment

       HTTP
                                                     SIP

                    SailFin

        SIP
                                               SIP




              Sun Confidential: NDA Required               2
SIP Protocol
• Resembles HTTP (and SMTP)
  – Text based protocol
  – URL for addressing.
• Defined by RFC 3261
• Can be asynchronous and bi-directional
• Peer to Peer




                           Sun Confidential: NDA Required   3
An Example




             Sun Confidential: NDA Required   4
SIP Servlets
• Handle SIP message processing
  > Based on Generic Servlet model
  > SIP Applications, Sessions and Timers
• Defined by JSR-289
  > Converged Web and SIP applications.
  > Http and Sip Sessions can access each other.
  > Http Servlets can initiate calls
• SIP Application Servers
  > Stand-alone (pure SIP)
  > Integrated SIP and Java EE Application Servers
                                                               5
                     Sun Proprietary/Confidential: Under NDA
SIP Servlet Example Code.




                                                       6
             Sun Proprietary/Confidential: Under NDA
Converged SIP and HTTP Applications:
Basic Building Blocks



        Sun Confidential: NDA Required   7
SIP User Agents
             Software SIP Phones
         ➢


               X-Lite
             ➢


               Ekiga
             ➢


               SIP Communicator
             ➢


               Adium
             ➢


             Most of the support Audio, Video and Chat
         ➢


             Avoid port conflict with SailFin.
         ➢




                    Sun Confidential: NDA Required       8
SIP Phone Registration
• SIP Phone sends a REGISTER message.
  > Provides the Contact URI(host/port etc) of the SIP Phone.
  > Typically the first interaction between the phone and
    server (SIP Servlet)
• Make sure that your SIPServlet handles REGISTER
  messges.
  > Typically Authentication happens during this message.
  > You can use Java EE role based security.




                                                                9
                      Sun Proprietary/Confidential: Under NDA
SIP Application Session
• Common Space for Both HTTP and SIP Servlets.
• Accessible by an application specific key.
• Traverse to all SIP and HTTP sessions and access
  application data.
• Both HTTP Servlet and SIP Servlet can access the
  same SIP Application Session.
  > Eg: Foo user's HTTP and SIP Servlet access can obtain
    the same SIP Application Session.



                                                               10
                     Sun Proprietary/Confidential: Under NDA
SipFactory and SipSessionsUtil
• Injected to @Resource annotated element.
• Available to SIP Servlets, HTTP Servlets and also
  EJBs.
      Create SIP requests.
  >
      Create SIP Address.
  >
      Create SIP Application Session.
  >
      Lookup SIP Application Session.
  >




                                                                 11
                       Sun Proprietary/Confidential: Under NDA
Converged HttpServlet Example.




                                                       12
             Sun Proprietary/Confidential: Under NDA
Web based Presence



  Sun Confidential: NDA Required   13
Presence Agent
• SIP Phones publish the presence information to SIP
  Servers.
• SIP Servlets collect the presence information.
• SIP Servlets share the presence information to
  HTTP Servlets
  > SIP Application Session
  > ServletContext




                                                               14
                     Sun Proprietary/Confidential: Under NDA
Presence Agent

           SIP         SIP      HTTP
          Servlet   Applocation Servlet
                     Session


                                                               AJAX/Comet
                          SIP
    SIP




                                                                     15
                     Sun Proprietary/Confidential: Under NDA
SIP Message with Presence




                                                      16
            Sun Proprietary/Confidential: Under NDA
Example SIP Servlet Code




• HTTP Servlet Accesses the SIP Application Session
• Browser can be updated with new status.



                                                             17
                   Sun Proprietary/Confidential: Under NDA
How is Sailfin used
                     Examples of Converged Services
                          Mobile                       Fixed-Mobile
    Business                                                                     Home
                         Enterprise                    Convergence


                                                       - Private mobile     - IPTV, VoD
   - Conferencing       - Push-to-talk
                                                         numbering          - Games
   - Call-handling      - Chat
                                                       - Mobile workforce   - Ring-back tones
   - IP Centrex         - Messaging




     GLASSFISH COMMUNICATIONS SERVER
                                  Sun Confidential: NDA Required                                18
FUTURES
SAILFIN.NEXT


Sun Confidential: NDA Required   19
Next Generation Convergence
• Web based VOIP phone support.
  > Avoids the need to install a SIP phone
  > Integration with Java FX
  > Server Side Abstraction to Simplify Web based phones.
• SIP POJOs
  > Annotation based SIP framework
  > Handles common communication scenarios.
  > Simplify WEB-SIP convergence.



                                                               20
                     Sun Proprietary/Confidential: Under NDA
Next Generation Convergence
• SIP Content Management APIs
  > Presence API
  > SDP API
  > Instant Messaging API
• Media Server Integration.
  > Tighter integration with Media Server.
  > Making Conferences Easy.




                                                                 21
                       Sun Proprietary/Confidential: Under NDA
SailFin Communicator




Sun Confidential: NDA Required   22
http://blogs.sun.com/theaquarium/tags/sailfin

Thank you




                   Sun Confidential: NDA Required   23

Weitere ähnliche Inhalte

Was ist angesagt?

Server-side WebRTC Infrastructure
Server-side WebRTC InfrastructureServer-side WebRTC Infrastructure
Server-side WebRTC InfrastructureDialogic Inc.
 
Eyeball Messenger SDK V10.0 Developer Reference Guide
Eyeball Messenger SDK V10.0 Developer Reference GuideEyeball Messenger SDK V10.0 Developer Reference Guide
Eyeball Messenger SDK V10.0 Developer Reference GuideEyeball Networks
 
Departed Communications: Learn the ways to smash them!
Departed Communications: Learn the ways to smash them!Departed Communications: Learn the ways to smash them!
Departed Communications: Learn the ways to smash them!Fatih Ozavci
 
To Build or Not to Build Your WebRTC Infrastructure
To Build or Not to Build Your WebRTC InfrastructureTo Build or Not to Build Your WebRTC Infrastructure
To Build or Not to Build Your WebRTC InfrastructureTsahi Levent-levi
 
Monetizing the 4G Investment (Mobile Data, and VoLTE Roaming and Interworking)
Monetizing the 4G Investment (Mobile Data, and VoLTE Roaming and Interworking)Monetizing the 4G Investment (Mobile Data, and VoLTE Roaming and Interworking)
Monetizing the 4G Investment (Mobile Data, and VoLTE Roaming and Interworking)Dialogic Inc.
 
BlackHat Hacking - Hacking VoIP.
BlackHat Hacking - Hacking VoIP.BlackHat Hacking - Hacking VoIP.
BlackHat Hacking - Hacking VoIP.Sumutiu Marius
 
#CiscoLiveLA 2017 Presentacion de Miro Polakovic
#CiscoLiveLA 2017 Presentacion de Miro Polakovic #CiscoLiveLA 2017 Presentacion de Miro Polakovic
#CiscoLiveLA 2017 Presentacion de Miro Polakovic ITSitio.com
 
Web rtc infrastructure the hard parts v4
Web rtc infrastructure the hard parts v4Web rtc infrastructure the hard parts v4
Web rtc infrastructure the hard parts v4Dialogic Inc.
 
WebRTC - a quick introduction
WebRTC - a quick introductionWebRTC - a quick introduction
WebRTC - a quick introductionOlle E Johansson
 
Phone Communications in Javascript with Tropo Serverless
Phone Communications in Javascript with Tropo ServerlessPhone Communications in Javascript with Tropo Serverless
Phone Communications in Javascript with Tropo ServerlessCisco DevNet
 
WebRTC Infrastructure the Hard Parts: Media
WebRTC Infrastructure the Hard Parts: MediaWebRTC Infrastructure the Hard Parts: Media
WebRTC Infrastructure the Hard Parts: MediaDialogic Inc.
 
Deploying WebRTC successfully – A web developer perspective
Deploying WebRTC successfully – A web developer perspectiveDeploying WebRTC successfully – A web developer perspective
Deploying WebRTC successfully – A web developer perspectiveDialogic Inc.
 
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)Peer-to-Server Media in WebRTC (Enterprise Connect 2014)
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)Dialogic Inc.
 
How to Make WebRTC Useful for Business
How to Make WebRTC Useful for BusinessHow to Make WebRTC Useful for Business
How to Make WebRTC Useful for BusinessDialogic Inc.
 
Westhawk integration
Westhawk integrationWesthawk integration
Westhawk integrationTim Panton
 

Was ist angesagt? (20)

Beyond the MCU
Beyond the MCUBeyond the MCU
Beyond the MCU
 
Server-side WebRTC Infrastructure
Server-side WebRTC InfrastructureServer-side WebRTC Infrastructure
Server-side WebRTC Infrastructure
 
Eyeball Messenger SDK V10.0 Developer Reference Guide
Eyeball Messenger SDK V10.0 Developer Reference GuideEyeball Messenger SDK V10.0 Developer Reference Guide
Eyeball Messenger SDK V10.0 Developer Reference Guide
 
Departed Communications: Learn the ways to smash them!
Departed Communications: Learn the ways to smash them!Departed Communications: Learn the ways to smash them!
Departed Communications: Learn the ways to smash them!
 
To Build or Not to Build Your WebRTC Infrastructure
To Build or Not to Build Your WebRTC InfrastructureTo Build or Not to Build Your WebRTC Infrastructure
To Build or Not to Build Your WebRTC Infrastructure
 
Monetizing the 4G Investment (Mobile Data, and VoLTE Roaming and Interworking)
Monetizing the 4G Investment (Mobile Data, and VoLTE Roaming and Interworking)Monetizing the 4G Investment (Mobile Data, and VoLTE Roaming and Interworking)
Monetizing the 4G Investment (Mobile Data, and VoLTE Roaming and Interworking)
 
BlackHat Hacking - Hacking VoIP.
BlackHat Hacking - Hacking VoIP.BlackHat Hacking - Hacking VoIP.
BlackHat Hacking - Hacking VoIP.
 
#CiscoLiveLA 2017 Presentacion de Miro Polakovic
#CiscoLiveLA 2017 Presentacion de Miro Polakovic #CiscoLiveLA 2017 Presentacion de Miro Polakovic
#CiscoLiveLA 2017 Presentacion de Miro Polakovic
 
Web rtc infrastructure the hard parts v4
Web rtc infrastructure the hard parts v4Web rtc infrastructure the hard parts v4
Web rtc infrastructure the hard parts v4
 
VoIP – vulnerabilities and attacks
VoIP – vulnerabilities and attacksVoIP – vulnerabilities and attacks
VoIP – vulnerabilities and attacks
 
WebRTC - a quick introduction
WebRTC - a quick introductionWebRTC - a quick introduction
WebRTC - a quick introduction
 
Phone Communications in Javascript with Tropo Serverless
Phone Communications in Javascript with Tropo ServerlessPhone Communications in Javascript with Tropo Serverless
Phone Communications in Javascript with Tropo Serverless
 
WebRTC Infrastructure the Hard Parts: Media
WebRTC Infrastructure the Hard Parts: MediaWebRTC Infrastructure the Hard Parts: Media
WebRTC Infrastructure the Hard Parts: Media
 
Voip security
Voip securityVoip security
Voip security
 
Deploying WebRTC successfully – A web developer perspective
Deploying WebRTC successfully – A web developer perspectiveDeploying WebRTC successfully – A web developer perspective
Deploying WebRTC successfully – A web developer perspective
 
A jQuery for WebRTC
A jQuery for WebRTCA jQuery for WebRTC
A jQuery for WebRTC
 
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)Peer-to-Server Media in WebRTC (Enterprise Connect 2014)
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)
 
How to Make WebRTC Useful for Business
How to Make WebRTC Useful for BusinessHow to Make WebRTC Useful for Business
How to Make WebRTC Useful for Business
 
Silc
SilcSilc
Silc
 
Westhawk integration
Westhawk integrationWesthawk integration
Westhawk integration
 

Andere mochten auch

Electr Etg Overview 011608
Electr Etg Overview 011608Electr Etg Overview 011608
Electr Etg Overview 011608tabrown30
 
Information Session for Engineering Master Degrees
Information Session for Engineering Master DegreesInformation Session for Engineering Master Degrees
Information Session for Engineering Master Degreesrobertslaughter
 
Network Infrastructure for Cooperative Print Management
Network Infrastructure for Cooperative Print ManagementNetwork Infrastructure for Cooperative Print Management
Network Infrastructure for Cooperative Print ManagementOCLC Research
 
Kennismanagement in Bibliotheek Vlissingen
Kennismanagement in Bibliotheek VlissingenKennismanagement in Bibliotheek Vlissingen
Kennismanagement in Bibliotheek VlissingenKarolien Selhorst
 
เกษตรประณีต22มค
เกษตรประณีต22มคเกษตรประณีต22มค
เกษตรประณีต22มคTechno Polis
 
Tarea 2da semana -SINED
Tarea 2da semana -SINEDTarea 2da semana -SINED
Tarea 2da semana -SINEDisabella_t2
 
Post Umbra Ppp Thrs Jan 15 09
Post Umbra  Ppp  Thrs  Jan  15  09Post Umbra  Ppp  Thrs  Jan  15  09
Post Umbra Ppp Thrs Jan 15 09Ricky Lorenzana
 
ApresentaçãO Amplitude Net
ApresentaçãO Amplitude NetApresentaçãO Amplitude Net
ApresentaçãO Amplitude Netluismtavares
 
Moises Garcia Miguez
Moises Garcia MiguezMoises Garcia Miguez
Moises Garcia Miguezecursocig
 

Andere mochten auch (20)

Moody AFB Library
Moody AFB LibraryMoody AFB Library
Moody AFB Library
 
Sample timeline
Sample timelineSample timeline
Sample timeline
 
Somnatt brouchers (1)
Somnatt brouchers (1)Somnatt brouchers (1)
Somnatt brouchers (1)
 
Electr Etg Overview 011608
Electr Etg Overview 011608Electr Etg Overview 011608
Electr Etg Overview 011608
 
Copacabana
CopacabanaCopacabana
Copacabana
 
new fall 09
new fall 09new fall 09
new fall 09
 
Somnatt brouchers (1)
Somnatt brouchers (1)Somnatt brouchers (1)
Somnatt brouchers (1)
 
Information Session for Engineering Master Degrees
Information Session for Engineering Master DegreesInformation Session for Engineering Master Degrees
Information Session for Engineering Master Degrees
 
Água
ÁguaÁgua
Água
 
Network Infrastructure for Cooperative Print Management
Network Infrastructure for Cooperative Print ManagementNetwork Infrastructure for Cooperative Print Management
Network Infrastructure for Cooperative Print Management
 
Greg Cangialosi GBTC User Driven Experience
Greg Cangialosi GBTC User Driven ExperienceGreg Cangialosi GBTC User Driven Experience
Greg Cangialosi GBTC User Driven Experience
 
Kennismanagement in Bibliotheek Vlissingen
Kennismanagement in Bibliotheek VlissingenKennismanagement in Bibliotheek Vlissingen
Kennismanagement in Bibliotheek Vlissingen
 
PresentacióN De Finanzas
PresentacióN De FinanzasPresentacióN De Finanzas
PresentacióN De Finanzas
 
เกษตรประณีต22มค
เกษตรประณีต22มคเกษตรประณีต22มค
เกษตรประณีต22มค
 
Somnatt brouchers (1)
Somnatt brouchers (1)Somnatt brouchers (1)
Somnatt brouchers (1)
 
Tarea 2da semana -SINED
Tarea 2da semana -SINEDTarea 2da semana -SINED
Tarea 2da semana -SINED
 
Post Umbra Ppp Thrs Jan 15 09
Post Umbra  Ppp  Thrs  Jan  15  09Post Umbra  Ppp  Thrs  Jan  15  09
Post Umbra Ppp Thrs Jan 15 09
 
ApresentaçãO Amplitude Net
ApresentaçãO Amplitude NetApresentaçãO Amplitude Net
ApresentaçãO Amplitude Net
 
Practica
PracticaPractica
Practica
 
Moises Garcia Miguez
Moises Garcia MiguezMoises Garcia Miguez
Moises Garcia Miguez
 

Ähnlich wie SailFin - Adding Presence and Voice to WebApps

Asterisk WebRTC frontier: make client SIP Phone with sipML5 and Janus Gateway
Asterisk WebRTC frontier: make client SIP Phone with sipML5 and Janus GatewayAsterisk WebRTC frontier: make client SIP Phone with sipML5 and Janus Gateway
Asterisk WebRTC frontier: make client SIP Phone with sipML5 and Janus GatewayAlessandro Polidori
 
Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?Kundan Singh
 
Internet of Things Security & Privacy
Internet of Things Security & PrivacyInternet of Things Security & Privacy
Internet of Things Security & PrivacyChris Adriaensen
 
Introduction into SIP protocol
Introduction into SIP protocolIntroduction into SIP protocol
Introduction into SIP protocolMichal Hrncirik
 
Asterisk WebRTC frontier: realize client SIP Phone with sipML5 and Janus Gateway
Asterisk WebRTC frontier: realize client SIP Phone with sipML5 and Janus GatewayAsterisk WebRTC frontier: realize client SIP Phone with sipML5 and Janus Gateway
Asterisk WebRTC frontier: realize client SIP Phone with sipML5 and Janus GatewayAlessandro Polidori
 
Interop2018 contrail ContrailEnterpriseMulticloud
Interop2018 contrail ContrailEnterpriseMulticloudInterop2018 contrail ContrailEnterpriseMulticloud
Interop2018 contrail ContrailEnterpriseMulticloudDaisuke Nakajima
 
Carrier WiFi Architectures
Carrier WiFi ArchitecturesCarrier WiFi Architectures
Carrier WiFi ArchitecturesMarc Nader
 
1 Vo Ip Overview
1 Vo Ip Overview1 Vo Ip Overview
1 Vo Ip OverviewMayank Vora
 
1 Vo I P Overview
1  Vo I P  Overview1  Vo I P  Overview
1 Vo I P OverviewMayank Vora
 
OSS Tools: Creating a Reverse Engineering Plug-in for r2frida
OSS Tools: Creating a Reverse Engineering Plug-in for r2fridaOSS Tools: Creating a Reverse Engineering Plug-in for r2frida
OSS Tools: Creating a Reverse Engineering Plug-in for r2fridaNowSecure
 
Vo Ip Rajibdeka
Vo Ip RajibdekaVo Ip Rajibdeka
Vo Ip Rajibdekarajibdk
 
Past, Present and Future of WebSocket - HTML5DevConf May 2014
Past, Present and Future of WebSocket - HTML5DevConf May 2014Past, Present and Future of WebSocket - HTML5DevConf May 2014
Past, Present and Future of WebSocket - HTML5DevConf May 2014Frank Greco
 
An hour with WebRTC FIC UDC
An hour with WebRTC FIC UDCAn hour with WebRTC FIC UDC
An hour with WebRTC FIC UDCQuobis
 
Authenticated Identites in VoIP Call Control
Authenticated Identites in VoIP Call ControlAuthenticated Identites in VoIP Call Control
Authenticated Identites in VoIP Call ControlWarren Bent
 
Hacking Trust Relationships Between SIP Gateways
Hacking Trust Relationships Between SIP GatewaysHacking Trust Relationships Between SIP Gateways
Hacking Trust Relationships Between SIP GatewaysFatih Ozavci
 

Ähnlich wie SailFin - Adding Presence and Voice to WebApps (20)

Aarti Sip
Aarti SipAarti Sip
Aarti Sip
 
Aarti sip
Aarti sipAarti sip
Aarti sip
 
Asterisk WebRTC frontier: make client SIP Phone with sipML5 and Janus Gateway
Asterisk WebRTC frontier: make client SIP Phone with sipML5 and Janus GatewayAsterisk WebRTC frontier: make client SIP Phone with sipML5 and Janus Gateway
Asterisk WebRTC frontier: make client SIP Phone with sipML5 and Janus Gateway
 
Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?Hello 1 2 3, can you see me now?
Hello 1 2 3, can you see me now?
 
Kamailio World 2013 - SIP and MSRP over WebSocket
Kamailio World 2013 - SIP and MSRP over WebSocketKamailio World 2013 - SIP and MSRP over WebSocket
Kamailio World 2013 - SIP and MSRP over WebSocket
 
Internet of Things Security & Privacy
Internet of Things Security & PrivacyInternet of Things Security & Privacy
Internet of Things Security & Privacy
 
Introduction into SIP protocol
Introduction into SIP protocolIntroduction into SIP protocol
Introduction into SIP protocol
 
Asterisk WebRTC frontier: realize client SIP Phone with sipML5 and Janus Gateway
Asterisk WebRTC frontier: realize client SIP Phone with sipML5 and Janus GatewayAsterisk WebRTC frontier: realize client SIP Phone with sipML5 and Janus Gateway
Asterisk WebRTC frontier: realize client SIP Phone with sipML5 and Janus Gateway
 
Interop2018 contrail ContrailEnterpriseMulticloud
Interop2018 contrail ContrailEnterpriseMulticloudInterop2018 contrail ContrailEnterpriseMulticloud
Interop2018 contrail ContrailEnterpriseMulticloud
 
Carrier WiFi Architectures
Carrier WiFi ArchitecturesCarrier WiFi Architectures
Carrier WiFi Architectures
 
1 Vo Ip Overview
1 Vo Ip Overview1 Vo Ip Overview
1 Vo Ip Overview
 
1 Vo I P Overview
1  Vo I P  Overview1  Vo I P  Overview
1 Vo I P Overview
 
OSS Tools: Creating a Reverse Engineering Plug-in for r2frida
OSS Tools: Creating a Reverse Engineering Plug-in for r2fridaOSS Tools: Creating a Reverse Engineering Plug-in for r2frida
OSS Tools: Creating a Reverse Engineering Plug-in for r2frida
 
Vo Ip Rajibdeka
Vo Ip RajibdekaVo Ip Rajibdeka
Vo Ip Rajibdeka
 
VozDigital DevFest 31/10/14
VozDigital DevFest 31/10/14VozDigital DevFest 31/10/14
VozDigital DevFest 31/10/14
 
Past, Present and Future of WebSocket - HTML5DevConf May 2014
Past, Present and Future of WebSocket - HTML5DevConf May 2014Past, Present and Future of WebSocket - HTML5DevConf May 2014
Past, Present and Future of WebSocket - HTML5DevConf May 2014
 
An hour with WebRTC FIC UDC
An hour with WebRTC FIC UDCAn hour with WebRTC FIC UDC
An hour with WebRTC FIC UDC
 
Sip2012 :: outbound
Sip2012 :: outboundSip2012 :: outbound
Sip2012 :: outbound
 
Authenticated Identites in VoIP Call Control
Authenticated Identites in VoIP Call ControlAuthenticated Identites in VoIP Call Control
Authenticated Identites in VoIP Call Control
 
Hacking Trust Relationships Between SIP Gateways
Hacking Trust Relationships Between SIP GatewaysHacking Trust Relationships Between SIP Gateways
Hacking Trust Relationships Between SIP Gateways
 

Mehr von Eduardo Pelegri-Llopart

Pelegri Desarrollando en una nueva era de software
Pelegri   Desarrollando en una nueva era de software Pelegri   Desarrollando en una nueva era de software
Pelegri Desarrollando en una nueva era de software Eduardo Pelegri-Llopart
 
Market trends in IT - exchange cala - October 2015
Market trends in IT - exchange cala - October 2015Market trends in IT - exchange cala - October 2015
Market trends in IT - exchange cala - October 2015Eduardo Pelegri-Llopart
 
The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015Eduardo Pelegri-Llopart
 
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...Eduardo Pelegri-Llopart
 
What is the Internet of Things and How it Impacts You
What is the Internet of Things and How it Impacts YouWhat is the Internet of Things and How it Impacts You
What is the Internet of Things and How it Impacts YouEduardo Pelegri-Llopart
 
Ehcache Architecture, Features And Usage Patterns
Ehcache Architecture, Features And Usage PatternsEhcache Architecture, Features And Usage Patterns
Ehcache Architecture, Features And Usage PatternsEduardo Pelegri-Llopart
 

Mehr von Eduardo Pelegri-Llopart (20)

Juggling at freenome
Juggling   at freenomeJuggling   at freenome
Juggling at freenome
 
Csumb capstone-fall2016
Csumb capstone-fall2016Csumb capstone-fall2016
Csumb capstone-fall2016
 
Digital activitymanagement
Digital activitymanagementDigital activitymanagement
Digital activitymanagement
 
Progress next iot_pelegri
Progress next iot_pelegriProgress next iot_pelegri
Progress next iot_pelegri
 
Pelegri Desarrollando en una nueva era de software
Pelegri   Desarrollando en una nueva era de software Pelegri   Desarrollando en una nueva era de software
Pelegri Desarrollando en una nueva era de software
 
Market trends in IT - exchange cala - October 2015
Market trends in IT - exchange cala - October 2015Market trends in IT - exchange cala - October 2015
Market trends in IT - exchange cala - October 2015
 
The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015
 
IOT - Presentation to PEP @ Progress
IOT - Presentation to PEP @ ProgressIOT - Presentation to PEP @ Progress
IOT - Presentation to PEP @ Progress
 
Node.js as an IOT Bridge
Node.js as an IOT BridgeNode.js as an IOT Bridge
Node.js as an IOT Bridge
 
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...
 
What is the Internet of Things and How it Impacts You
What is the Internet of Things and How it Impacts YouWhat is the Internet of Things and How it Impacts You
What is the Internet of Things and How it Impacts You
 
Community Update 25 Mar2010 - English
Community Update 25 Mar2010 - EnglishCommunity Update 25 Mar2010 - English
Community Update 25 Mar2010 - English
 
GlassFish Community Update 25 Mar2010
GlassFish Community Update 25 Mar2010GlassFish Community Update 25 Mar2010
GlassFish Community Update 25 Mar2010
 
Glass Fish Portfolio C1 West V3.Mini
Glass Fish Portfolio C1 West V3.MiniGlass Fish Portfolio C1 West V3.Mini
Glass Fish Portfolio C1 West V3.Mini
 
Virtual Box Aquarium May09
Virtual Box Aquarium May09Virtual Box Aquarium May09
Virtual Box Aquarium May09
 
Introduction To Web Beans
Introduction To Web BeansIntroduction To Web Beans
Introduction To Web Beans
 
Ehcache Architecture, Features And Usage Patterns
Ehcache Architecture, Features And Usage PatternsEhcache Architecture, Features And Usage Patterns
Ehcache Architecture, Features And Usage Patterns
 
OpenDS Primer Aquarium
OpenDS Primer AquariumOpenDS Primer Aquarium
OpenDS Primer Aquarium
 
Fuji Overview
Fuji OverviewFuji Overview
Fuji Overview
 
Nuxeo 5.2 Glassfish
Nuxeo 5.2 GlassfishNuxeo 5.2 Glassfish
Nuxeo 5.2 Glassfish
 

Kürzlich hochgeladen

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 

Kürzlich hochgeladen (20)

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 

SailFin - Adding Presence and Voice to WebApps

  • 1. SailFin: Adding Presence and Voice to Web applications Binod PG Senior Staff Engineer Sun Microsystems Sun Confidential: NDA Required 1 1
  • 2. SIP and HTTP: Converged Environment HTTP SIP SailFin SIP SIP Sun Confidential: NDA Required 2
  • 3. SIP Protocol • Resembles HTTP (and SMTP) – Text based protocol – URL for addressing. • Defined by RFC 3261 • Can be asynchronous and bi-directional • Peer to Peer Sun Confidential: NDA Required 3
  • 4. An Example Sun Confidential: NDA Required 4
  • 5. SIP Servlets • Handle SIP message processing > Based on Generic Servlet model > SIP Applications, Sessions and Timers • Defined by JSR-289 > Converged Web and SIP applications. > Http and Sip Sessions can access each other. > Http Servlets can initiate calls • SIP Application Servers > Stand-alone (pure SIP) > Integrated SIP and Java EE Application Servers 5 Sun Proprietary/Confidential: Under NDA
  • 6. SIP Servlet Example Code. 6 Sun Proprietary/Confidential: Under NDA
  • 7. Converged SIP and HTTP Applications: Basic Building Blocks Sun Confidential: NDA Required 7
  • 8. SIP User Agents Software SIP Phones ➢ X-Lite ➢ Ekiga ➢ SIP Communicator ➢ Adium ➢ Most of the support Audio, Video and Chat ➢ Avoid port conflict with SailFin. ➢ Sun Confidential: NDA Required 8
  • 9. SIP Phone Registration • SIP Phone sends a REGISTER message. > Provides the Contact URI(host/port etc) of the SIP Phone. > Typically the first interaction between the phone and server (SIP Servlet) • Make sure that your SIPServlet handles REGISTER messges. > Typically Authentication happens during this message. > You can use Java EE role based security. 9 Sun Proprietary/Confidential: Under NDA
  • 10. SIP Application Session • Common Space for Both HTTP and SIP Servlets. • Accessible by an application specific key. • Traverse to all SIP and HTTP sessions and access application data. • Both HTTP Servlet and SIP Servlet can access the same SIP Application Session. > Eg: Foo user's HTTP and SIP Servlet access can obtain the same SIP Application Session. 10 Sun Proprietary/Confidential: Under NDA
  • 11. SipFactory and SipSessionsUtil • Injected to @Resource annotated element. • Available to SIP Servlets, HTTP Servlets and also EJBs. Create SIP requests. > Create SIP Address. > Create SIP Application Session. > Lookup SIP Application Session. > 11 Sun Proprietary/Confidential: Under NDA
  • 12. Converged HttpServlet Example. 12 Sun Proprietary/Confidential: Under NDA
  • 13. Web based Presence Sun Confidential: NDA Required 13
  • 14. Presence Agent • SIP Phones publish the presence information to SIP Servers. • SIP Servlets collect the presence information. • SIP Servlets share the presence information to HTTP Servlets > SIP Application Session > ServletContext 14 Sun Proprietary/Confidential: Under NDA
  • 15. Presence Agent SIP SIP HTTP Servlet Applocation Servlet Session AJAX/Comet SIP SIP 15 Sun Proprietary/Confidential: Under NDA
  • 16. SIP Message with Presence 16 Sun Proprietary/Confidential: Under NDA
  • 17. Example SIP Servlet Code • HTTP Servlet Accesses the SIP Application Session • Browser can be updated with new status. 17 Sun Proprietary/Confidential: Under NDA
  • 18. How is Sailfin used Examples of Converged Services Mobile Fixed-Mobile Business Home Enterprise Convergence - Private mobile - IPTV, VoD - Conferencing - Push-to-talk numbering - Games - Call-handling - Chat - Mobile workforce - Ring-back tones - IP Centrex - Messaging GLASSFISH COMMUNICATIONS SERVER Sun Confidential: NDA Required 18
  • 20. Next Generation Convergence • Web based VOIP phone support. > Avoids the need to install a SIP phone > Integration with Java FX > Server Side Abstraction to Simplify Web based phones. • SIP POJOs > Annotation based SIP framework > Handles common communication scenarios. > Simplify WEB-SIP convergence. 20 Sun Proprietary/Confidential: Under NDA
  • 21. Next Generation Convergence • SIP Content Management APIs > Presence API > SDP API > Instant Messaging API • Media Server Integration. > Tighter integration with Media Server. > Making Conferences Easy. 21 Sun Proprietary/Confidential: Under NDA
  • 23. http://blogs.sun.com/theaquarium/tags/sailfin Thank you Sun Confidential: NDA Required 23