presence with openser - opensips | main / homepage · 2009. 3. 1. · o march 17 openser summit –...

27
Presence with OpenSER Anca-Maria Vamanu Senior Developer at Voice System  Presence designer for OpenSER Project

Upload: others

Post on 15-Feb-2021

6 views

Category:

Documents


0 download

TRANSCRIPT

  • Presence with OpenSER

    AncaMaria Vamanu

    Senior Developer at Voice System

     Presence designer for OpenSER Project

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Outline

    • Presence Server • Centralized presence info exchange• XCAP based watcher permission rules• Pidf manipulation possibility

    • Presence extensions• Implemented as presence user agents

    • Get presence status from Register• Gateway to xmpp presence• Publish info from non SIP devices• Bridge Line Appearance (BLA)

    • Resource List Server (RLS)• List subscriptions with an XCAP server

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    PRESENCE SERVER

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Old EndtoEnd Presence

    • A client receives requests from all other devices that want to see its status

    SIP server

    Want to see 

    test's status

    Want to see test's' status

    Want 

    to see

     

    test's'

     status

        W1

         W2

         W3

    w1 request

    w2 request

    w3 request

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Old EndtoEnd Presence

    • When availability status changes the client has to send one notification for each watcher

    I'm busytest is busy

    test is busy

    test is

     busy

    SIP server

    I'm busy

    I'm busy

    I'm busy

        W1

        W2

        W3

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Presence with a Central Server

    • If central presence server is used, all presence requests are handled by the presence server (PS)

    Request test's 

     presence

    Request test's presence

    Reques

    t test's

     

    presen

    ce

    SIP server with 

    Presence Server

        W1

        W2

        W3

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Presence with a Central Server

    • When a status change occurs the client need to send only one notification to the server and the server deals with distributing the information 

    test is busy

    test is busy

    test is

     busy

    I'm busySIP server with 

    Presence Server

        W1

        W2

        W3

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Presence Server vs. Endtoend Presence

    • Presence with a central Server better than old endtoend presence• Fewer SIP messages• Less processing overhead at the client • Possibility to manipulate presence information ( like 

    publish miscellaneous information from virtual user agents) • Get basic presence status from client registration status • Gateway to other presence protocols• Centralized storage (buddy list, presencerules) that allows 

    service configuration sharing between devices ( using the same account)

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Features of OpenSER Presence Server

    • Can be integrated with end to end presence

    • Privacy/permission rules (define who can see the presence status)• Based on XCAP server• OpenXCAP integrated with OpenSER – high speed 

    communication

    OpenXCAPserver

    presencerules

    DatabaseOpenSER

    Presence Server

    watcher status

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Features of OpenSER Presence Server

    • Independent entity, can be used in any sip architecture

    SIP Proxy

    OpenSER Presence Server

    other SIP services

    SUBSCRIBE/PUBLISH

    other custom services

    Local domain

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Features of OpenSER Presence Server

    • Scalability possibility •  Use more presence servers •  Infinite number of users 

    OpenSERPresence Server

    1

    OpenSERPresence Server

    N

    SIP ProxyDatabase

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Features of OpenSER Presence Server

    • Pidf manipulation possibility (RFC 4827)• Setting of permanent presence state that is independent of 

    activeness of any particular device

    • Use cases:• Publishing presence state for periods when there are no active 

    devices capable of publishing available;    Ex: traveling, vacations.• Advertising services that are open for communication;    Ex: email, MMS and SMS• Setting the default state of any person, service, or device 

    • The communication is through an XCAP server • OpenXCAP has support for pidf manipulation

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Extensibility possibility

    • The current modules architecture:

    presencemoduleSip entity

    SUBSCRIBE/PUBLISH

    NOTIFY

    presence_xmlmodule

    presence_mwimodule

    'presence', 'presence.winfo''dialog;sla' 

    event specific processing

    'messagesummary'specific processing

    other eventspecific processing

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Extensibility possibility

    • The implementation 

    • General event independent core – 'presence' module

    • 'Client' modules that define events• At this time: presence_xml and presence_mwi (Event:message

    summary)

    • New events can be easily added

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    PRESENCE EXTENSIONS

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Registration status to presence status

    Publish'online'

    Presence Server

    Publish 'offline'

    OpenSER registrar with pua_usrloc

    Register

    unRegister

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Registration status to presence status

    • Features• Get presence information from Register• Publish presence status in behalf of clients with no 

    presence support• Limited to online/offline presence status• Implemented in pua_usrloc module (used with pua module)

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Presence Extensions in OpenSER

    • Publish information from non SIP devices• Useful for monitoring or advertising• Uses Management Interface to push presence information• Implemented in pua_mi module (uses pua module)• Ex: a store publishing news through the presence of a virtual user

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Gateway to XMPP presence

    • Presence gateway to XMPP (jabber)• Possibility to see from SIP side the status(presence) of jabber 

    buddies and vice versa

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Gateway to XMPP presence

    • Features• Translates substatus also • Transparent for users• The contacts from the other domain must be transformed to 

    as shown bellow:• At the SIP client:

    • sip:usernamejabber_server@gateway_domain• At the jabber client:

    • sip_usernameopenser_domain@xmpp_domain•  defaults to '*'

    • Implemented in pua_xmpp modules (uses pua and xmpp modules)

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Presence Extensions in OpenSER

    • Bridge Line Appearance (BLA)• Shared line with exclusive use – only one inbound or 

    outbound call at a time 

    • Notification mechanisms 

    • Standard implemented in OpenSER : draft anil sipping bla 03 txt; Event:dialogl;sla

    • Known to work with Polycom and Snom phones

    • Implemented in pua_bla module (uses pua module)

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    RESOURCE LIST SERVER

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Resource List Server (RLS)

    • In a presence server architecture, a client has to send presence requests for all the buddies in its contact list

    Subscribe to ben

    Presence ServerSubscribe to nicole

    Subscribe to sam

    Notify about ben

    Notify about nicole

    Notify about sam

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Resource List Server (RLS)

    • A Resource List Server reduces the presence requests sent by the client and notifies received to only one

    OpenSER

    RLS

    XCAP server

    my buddy list

    test's buddy list

    Subscribeto my list

    PRESENCE SERVER

    Notifyabout your list

       Subscribe

    Notify

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Resource List Server(RLS)Features

    • Independent – can be used in any sip architecture with any SIP presence server

    • Uses an external XCAP server• Integrated with OpenXCAP – high speed

    • Still under testing • Not many clients that have support for RLS

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    FUTUREPLANS

  • O

    March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

    Future

    • RLS testing and integration with clients 

    • Optimize rules handling• change the storing method: one rule per line

    • easier access and manipulation• 'validity' feature real time efficient

    •  XCAPDIFF feature• method to synchronize clients registered for the same account 

    with a SIP event notification mechanism • in collaboration with OpenXCAP