Using Presence Information to Develop Converged Telecom Services Standards and Challenges Parijat Garg Computer Science, IIT Bombay
Dec Outline Presence Overview Presence Data Model Filtering Presence Information Subscribing to Dynamic Presence Challenges Conclusions
Dec What is Presence Information Offline and online presence Multiple points of availability Status of availability on each medium Physical location
Dec Converged 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
Dec Using Presence Information Consider the life of Stephen Smith busy executive offices in multiple locations (hence needs to commute often) Commuting to office Barrista knows he’s 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 voic When in meeting, status determined using scheduler; All calls diverted to voic
Dec Using 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
Dec The Presence Architecture Presence Server Presentity Watcher Generates presence information (e.g., mobile phone) Aggregates presence information. One presence doc. per user Uses presence information (e.g., application)
Dec Outline Presence Overview Presence Data Model Filtering Presence Information Subscribing to Dynamic Presence Challenges Conclusions
Dec Conveying 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.
Dec SIP/SIMPLE Presence Data Model
Dec Conveying 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
Dec Sample PIDF Document open
Dec Conveying 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
Dec Conveying 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
Dec Conveying 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)
Dec Outline Presence Overview Presence Data Model Filtering Presence Information Subscribing to Dynamic Presence Challenges Conclusions
Dec Filtering 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
Dec Filtering 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
Dec Filtering 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
Dec Filtering 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
Dec Filtering Presence Information GEOPRIV specifies transformations for obfuscating location information Civil location can be obfuscated to various levels – country, state, district, etc
Dec Filtering 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
Dec Outline Presence Overview Presence Data Model Filtering Presence Information Subscribing to Dynamic Presence Challenges Conclusions
Dec Subscribing 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
Dec Subscribing 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
Dec Subscribing 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
Dec Subscribing 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
Dec Subscribing 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
Dec Outline Presence Overview Presence Data Model Filtering Presence Information Subscribing to Dynamic Presence Challenges Conclusion
Dec Challenges 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
Dec Challenges “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
Dec Outline Presence Overview Presence Data Model Filtering Presence Information Subscribing to Dynamic Presence Challenges Conclusion
Dec Conclusion 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
Dec Questions?
Dec Slides of the talk can be found at: Errata: Ref 14 : RFC 3265: Session Initiation Protocol (SIP) – Specific Event Notification