Title: Using Presence Information to Develop Converged Telecom Services
1Using Presence Information to Develop Converged
Telecom Services
Parijat Garg Computer Science, IIT Bombay
2Outline
- Presence Overview
- Presence Data Model
- Filtering Presence Information
- Subscribing to Dynamic Presence
- Challenges
- Conclusions
3What is Presence Information
- Offline and online presence
- Multiple points of availability
- Status of availability on each medium
- Physical location
4Converged Telecom Services
- Communication meant for person-to-person contact
- Users should have a uniform interface facing
them, irrespective of differences in underlying
networks - Convergence is about moving from device-to-device
communication to person-to-person communication
5Using Presence Information
- Consider the life of Stephen Smith
- busy executive
- offices in multiple locations (hence needs to
commute often) - Commuting to office
- Barrista knows hes on the way keeps coffee
ready - During office hours
- Drives into office and logs into instant
messaging service - Service center redirects all calls to office
wire-line phone - Friends calls redirected to voice-mail
- When in meeting, status determined using
scheduler All calls diverted to voice-mail
6Using Presence Information (contd.)
- Traveling to another location during lunch
- Moving out of office, Instant Messenger status
set to away - While driving, phone status set to in-transit
- For lunch, nearby open restaurants displayed
automatically
7The Presence Architecture
Uses presence information (e.g., application)
Watcher
Watcher
Watcher
Presence Server
Aggregates presence information. One presence
doc. per user
Generates presence information (e.g., mobile
phone)
Presentity
Presentity
Presentity
8Outline
- Presence Overview
- Presence Data Model
- Filtering Presence Information
- Subscribing to Dynamic Presence
- Challenges
- Conclusions
9Conveying Presence
- Multiple protocols defined, each with associated
payload formats - SIP/SIMPLE, XMPP,
- SIP/SIMPLE being adopted in the telecom world
- SIP for Instant Messaging and Presence Leveraging
Extensions (IETF working group) - Defines SIP (with extensions) as the protocol
- PUBLISH, SUBSCRIBE, NOTIFY
- Notion of event packages
- Presence event package defined
- Base payload format defined
- Presence Information Data Format (PIDF)
- Several extensions available
- E.g., RPID, CIPID, Geopriv, etc.
10SIP/SIMPLE Presence Data Model
11Conveying Presence PIDF
- Limited information conveyed in PIDF
- For each service, it presents
- status tag for availability (open/close)
- contact tag for address (can be IM, tel, etc)
- note tag for human readable comment
- timestamp tag for time when presence information
was published - All SIP/SIMPLE compliant services must support
PIDF
12Sample PIDF Document
ltpresence entitypresbob_at_somewhere.comgt lttuple
iddevIM01gt ltstatusgt ltbasicgtopenlt/basicgt
lt/statusgt ltcontact priority0.76gt IMbob_at_s
omewhere.com lt/contactgt lt/tuplegt lt/presencegt
13Conveying Presence RPID
- Rich Presence Extensions to PIDF
- Adds a person and device tag
- activity, mood, sphere, place-type etc
information about person - relationship and privacy tag for tuples
14Conveying Presence GEOPRIV-LO
- Adds fine-grained location information to base
PIDF - Location specified using Geographic Markup
Language (GML) - Extends status tag to add geopriv tag
- location-info under geopriv
- usage-rules under geopriv
15Conveying Partial Presence
- Entire presence document may be large
- Facility to updates parts of the document
- Specially useful in low-bandwidth environments
(such as cellular networks)
16Outline
- Presence Overview
- Presence Data Model
- Filtering Presence Information
- Subscribing to Dynamic Presence
- Challenges
- Conclusions
17Filtering Presence Information
- User may not want everyone to see his presence
- Might want to conceal more or less information
from different users - XML-based language for fine-grained access control
18Filtering Presence Information
- Notion of ruleset and rules
- Each rule conditionally allows more and more
access to presence information - A rule has three parts
- Conditions
- Transformations
- Actions
19Filtering Presence Information
- Conditions specify situations in which rule is
applicable - Three basic conditions
- Identity the identity of the requestor
- Sphere the situation in which the user is in
(work/leisure/etc). - Validity A time duration during which rule will
be applicable - Extensions can be defined
20Filtering Presence Information
- Transformations specify the filtering operations
to be applied to presence document - Different parts of document can be made
available, based on device-id, etc - provide-person and provide-service allow
providing access to person and tuple elements of
presence document
21Filtering Presence Information
- GEOPRIV specifies transformations for obfuscating
location information - Civil location can be obfuscated to various
levels country, state, district, etc
22Filtering Presence Information
- Actions do not modify the presence document. They
specify actions to be taken by presence server. - Can be used to handle subscriptions like block,
allow, confirm with user, polite-block, etc
23Outline
- Presence Overview
- Presence Data Model
- Filtering Presence Information
- Subscribing to Dynamic Presence
- Challenges
- Conclusions
24Subscribing to Presence Information
- Continuous delivery of presence information not
desirable - Event-based subscription mechanism required
- Notion of filter-set is defined
- Each filter-set has several filter elements
25Subscribing to Presence Information
- Filter tag contains two elements
- What declares what element of presence
information is desired - Trigger declares the conditions under which a
notification is sent to the subscriber
26Subscribing to Presence Information
- The What element can either be used to include or
exclude some part of a presence document - The elements to include/exclude can be specified
using an XPath expression or using a namespace
specification
27Subscribing to Presence Information
- The trigger element can consist of one or more of
the following tags - Changed specifies that a notification should be
raised if value of a particular element changes - Added when a new element is added to presence
document - Removed when an element is removed from the
presence document
28Subscribing to Presence Information
- The changed element can have three attributes
- from specifies that a notification is triggered
if specific element in presence document changes
from a particular value to something else - to raises notification when value changes to
this value - by specifies the delta by which value should
change to trigger a notification
29Outline
- Presence Overview
- Presence Data Model
- Filtering Presence Information
- Subscribing to Dynamic Presence
- Challenges
- Conclusion
30Challenges
- Multiple documents involved in subscription
handling - e.g. notify me when my wife is within 5 miles
of me requires comparing two presence
documents - e.g. show me all my friends in leisure
requires several documents including a buddy list - Language required to specify documents to be
referred
31Challenges
- changed by triggers may require multiple copies
of same presence documents - Triggers are evaluated on filtered documents
may mean continuous filtering of documents per
user per subscriber - Scale of operation can be very large. 55 million
mobile phone subscribers in India. Similar figure
for land-lines. - Identity management
32Outline
- Presence Overview
- Presence Data Model
- Filtering Presence Information
- Subscribing to Dynamic Presence
- Challenges
- Conclusion
33Conclusion
- Telecom and communication networks are maturing
to the next level - Convergence is the next big thing
- Standards need to be developed and adopted
- Scales of operations are large and systems need
to be able to handle that
34Questions?
35Slides of the talk can be found
at http//www.cse.iitb.ac.in/parijat/comad2005b.
php
Errata Ref 14 RFC 3265 Session Initiation
Protocol (SIP) Specific Event Notification