SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
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

Más contenido relacionado

La actualidad más candente

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
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 Business
Dialogic Inc.
 
Westhawk integration
Westhawk integrationWesthawk integration
Westhawk integration
Tim Panton
 

La actualidad más candente (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
 

Destacado

เกษตรประณีต22มค
เกษตรประณีต22มคเกษตรประณีต22มค
เกษตรประณีต22มค
Techno Polis
 
Tarea 2da semana -SINED
Tarea 2da semana -SINEDTarea 2da semana -SINED
Tarea 2da semana -SINED
isabella_t2
 
Moises Garcia Miguez
Moises Garcia MiguezMoises Garcia Miguez
Moises Garcia Miguez
ecursocig
 

Destacado (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
 

Similar a SailFin - Adding Presence and Voice to WebApps

1 Vo Ip Overview
1 Vo Ip Overview1 Vo Ip Overview
1 Vo Ip Overview
Mayank Vora
 
1 Vo I P Overview
1  Vo I P  Overview1  Vo I P  Overview
1 Vo I P Overview
Mayank Vora
 
An hour with WebRTC FIC UDC
An hour with WebRTC FIC UDCAn hour with WebRTC FIC UDC
An hour with WebRTC FIC UDC
Quobis
 
Hacking Trust Relationships Between SIP Gateways
Hacking Trust Relationships Between SIP GatewaysHacking Trust Relationships Between SIP Gateways
Hacking Trust Relationships Between SIP Gateways
Fatih Ozavci
 

Similar a 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
 

Más de Eduardo Pelegri-Llopart

Más de 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
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

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