Sei sulla pagina 1di 27

Presence with OpenSER

Anca­Maria Vamanu
Senior Developer at Voice System
 Presence designer for OpenSER Project
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 End­to­End Presence

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

    W1 Wa
tes nt to
t's   se
sta e  w1 request
tus

Want to see  w2 request
     W2
SIP server
test's' status
w3 request
e e 
s
t   to  atus
an ' st
W t's
     W3 tes

O
March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US
Old End­to­End Presence

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

    W1
tes
t is
 bu I'm busy
sy
I'm busy
    W2 test is busy SIP server
I'm busy
b usy
t   is 
tes
    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)

    W1 Re
 pr ques
es
en t tes
ce t's 

SIP server
Request test's 
    W2
presence
 with 
Presence Server
s t's 
s t te
e
e qu ce
    W3 R sen
pre

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 

    W1
tes
t is
 b usy

test is busy SIP server I'm busy


    W2
 with 
sy
t i s b
u Presence Server
t e s
    W3

O
March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US
Presence Server vs. End­to­end Presence

• Presence with a central Server better than old end­
to­end 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, presence­rules) 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

presence­ OpenXCAP OpenSER


server Database
rules Presence Server

O
watcher status
March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US
Features of OpenSER Presence Server

• Independent entity, can be used in any sip 
architecture
OpenSER
SUBSCRIBE/  Presence Server
PUBLISH

other SIP services
Local domain SIP Proxy

other custom 
services

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 
OpenSER
Presence Server
1
SIP Proxy
Database

OpenSER
Presence Server
N
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: e­mail, 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:
'presence', 'presence.winfo'
'dialog;sla'  presence_xml
event specific processing module
SUBSCRIBE/
PUBLISH
presence
Sip entity
NOTIFY module
'message­summary' presence_mwi
specific processing
module

other event
specific 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

Register
Publish'online'
OpenSER registrar  Presence Server
with pua_usrloc
Publish 'offline'

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 sub­status also 
• Transparent for users
• The contacts from the other domain must be transformed to 
as shown bellow:
• At the SIP client:
• sip:username<delim>jabber_server@gateway_domain
• At the jabber client:
• sip_username<delim>openser_domain@xmpp_domain
• <delim> 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
Notify about ben

Subscribe to nicole
Presence Server
Notify about nicole

Subscribe to sam
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

my buddy list XCAP 
server
test's 
buddy list
Subscribe
to my list    Subscribe
OpenSER PRESENCE 
SERVER
Notify
RLS Notify
about your list

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
FUTURE
PLANS

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

•  XCAP­DIFF feature
• method to synchronize clients registered for the same account 
with a SIP event notification mechanism 
• in collaboration with OpenXCAP 

O
March 17                                             OpenSER Summit – VoN 2008                                            San Jose, US

Potrebbero piacerti anche