SlideShare uma empresa Scribd logo
1 de 23
Baixar para ler offline
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

Mais conteúdo relacionado

Mais procurados

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
 

Mais procurados (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
 

Destaque

เกษตรประณีต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
 

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

Semelhante 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
 

Semelhante 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
 

Mais de Eduardo Pelegri-Llopart

Mais 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

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

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