SIPPING Ranjit Avasarala Internet Draft Subir Saha Expires: 17 March 2006 Motorola September 17, 2005 A Session Initiation Protocol (SIP) Missed calls and Messages Event Package for Missed call draft-ranjit-missed-callsmsgs-00 Status of this Memo This document is an Internet-Draft and is subject to all provisions of Section 3 of RFC 3667. By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she become aware will be disclosed, in accordance with RFC 3668. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsolete by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on March 08, 2006. Copyright Notice Copyright (C) The Internet Society (2005). Abstract This document describes a XML based missed calls-msgs event package for the Session Initiation Protocol (SIP) Events framework, It also defines the data format to be used in notifications of this package. The Missed calls and messages Package allows users to get notificati ons. for missed calls and messages when the mobile was switched off. Ranjit Expires March 17, 2006 [Page 1] Internet Draft Missed Calls and Messages Package September 2005 Table Of Contents 1. Introduction.................................................... 2 2. Terminology..................................................... 3 3. Problem Statement............................................... 3 4. Missed call and message feature................................. 3 4.1 Usage Scenarios............................................. 3 5. Package Definition.............................................. 3 5.1 Event Package Name.......................................... 3 5.2 Event Package Parameters.................................... 4 5.3 SUBSCRIBE bodies............................................ 5 5.4 Subsription Duration........................................ 5 5.5 NOTIFY bodies............................................... 5 5.6 Server processing of SUBSCRIBE requests..................... 5 5.7 Server generation of notifications and actions.............. 5 5.8 Subscriber processing of NOTIFY requests.................... 6 6. Missed calls and messages Package information................... 6 6.1 Structure of information.................................... 6 6.2 Examples.................................................... 7 6.3 XML Schema.................................................. 8 7. Call Flow....................................................... 9 8. Security Considerations ........................................10 9. IANA Considerations.............................................13 9.1 SIP Event Package Registration .............................13 9.2 application/missedcallsmsg+xml MIME Registration ...........13 9.3 URN Sub-Namespace Registration for urn:ietf:params:xml:ns:missedcallsmsg ...................14 10. References.....................................................14 10.1 Normative References ......................................14 10.2 Informative References ....................................15 11.Author's address ...............................................15 12.Contributors ............................................... ...16 13.Acknowledgements ...............................................16 14.Intellectual Property and Copyright Statements..................16 1. Introduction The Session Initiation Protocol (SIP) [7] provides the necessary framework for initiating, maintenance and teardown of communication sessions between users. It also provides an Events framework [8] which defines general mechanisms for subscribing to, and receiving notifications of, events within SIP networks. It introduces the notion of a package, which is a specific "instantiation" of the events framework for a well-defined set of events This document defines an event package for missed calls and messages info. Ranjit Expires March 17, 2006 [Page 2] Internet Draft Missed calls and messages Package September 2005 2. Terminology In this document, the key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as described in RFC 2119 [1] and indicate requirement levels for compliant implementations. 3. Problem Statement As of now there is no way a user can get notifications of missed calls or messages when the user is out of network or the device is switched off. 4. Missed calls and messages Feature This feature helps the user get notification of missed calls and messages when the user's mobile was switched off or when the mobile device was out of network. 5. Package Definition Here Missed calls and messages Package details are explained in detail. 5.1 Event Package Name The SIP Events specification requires package definitions to specify the name of their package or template-package. The name of this package is "missed-calls-msgs-info" As specified in [2], this value appears in the Event header present in SUBSCRIBE and NOTIFY requests. E.g Event: missed-callmsg 5.2 Event Package Parameters The SIP Events specification requires package and template-package definitions to specify any package specific parameters of the Event header that are used by it. No package specific Event header parameters are defined for this event package. The SIP Events specification requires package or template-package definitions to define the usage, if any, of bodies in SUBSCRIBE requests. Ranjit Expires March 17, 2006 [Page 3] Internet Draft Missed calls and messages Package September 2005 5.3 SUBSCRIBE bodies The SIP Events specification requires package or template-package definitions to define the usage, if any, of bodies in SUBSCRIBE requests. A SUBSCRIBE for a Missed calls and messages Package MUST contain a body.This body defines the device state and retrieve method desired. At the time of subscription state of device is ON and service starts when the state changes to OFF. Notifications are sent when state changes to ON again. 5.4 Subscription Duration The SIP Events specification requires package definitions to define a default value for subscription durations, and to discuss reasonable choices for durations when they are explicitly specified. The subscription duration for this package is by default for ever until the user cancels the subscription. 5.5 NOTIFY bodies The SIP Events specification requires package definitions to describe the allowed set of body types in NOTIFY requests, and to specify the default value to be used when there is no Accept header in the SUBSCRIBE request. The notification body consists of the change in state of the device.. This could indicate that mobile came into service and the missed call and message list is to be sent. The subscribe request MAY contain an Accept header field. If no such header field is present, it has a default value of application/missedcallsmsg+xml. If the header field is present, it MUST include "application/missedcallmsg+xml", and MAY include any other types capable of representing registration information. The notifications generated by the server MUST be in one of the formats specified in the Accept header field in the SUBSCRIBE request. 5.6 Server processing of SUBSCRIBE requests The SIP Events framework specifies that packages should define any package-specific processing of SUBSCRIBE requests at a notifier, specifically with regards to authentication and authorization. Ranjit Expires March 17, 2006 [Page 4] Internet Draft Missed calls and messages Package September 2005 The missed calls and message info information could be a premium service offered by the service provider to the user. Therefore the user needs to be authenticated and authorized before registering his or her request. 5.7 Server generation on NOTIFY requests The SIP Event framework requests that packages specify the conditions under which notifications are sent for that package, and how such notifications are constructed. The notifier sends notifications to the requestor when the requested service is executed. Once the server starts the missed calls and message service, it constantly monitors the user device state. Once the state changes to ON i.e. user is in service or the device is switched ON, the server stops the service and generates the information. It prepares for sending depending on the type of retrieval scheme desired by user.SIP server could use the services of underlying netwrok to monitor the state of the device. Viz: GPRS cell updates. 5.8 Subscriber processing of NOTIFY requests The SIP Events framework expects packages to specify how a subscriber processes NOTIFY requests in any package specific way and in particular how it uses the NOTIFY requests. Here in case of the Missed calls and messages Package, the subscriber on receiving the NOTIFY for the subscribed service, ges to list of calls he or she missed while the device was switched off or out of network. 6. Missed calls and messages Package information 6.1 Structure of Information Information in the missed call msgs info is conveyed using an XML document [4] that MUST be well-formed and SHOULD be valid.The XML documents MUST be based on XML 1.0 and MUST be encoded using UTF-8. This specification makes use of XML namespaces for identifying the device info and missed calls and messages service information documents and document fragments. The namespace URI for elements defined by this specification is a URN [5], using the namespace device info and missed calls and messages service information documents and document fragments. The namespace URI for elements device info and missed calls and messages service information documents and document fragments. The namespace URI for elements Ranjit Expires March 17, 2006 [Page 5] Internet Draft Missed calls and messages Package September 2005 device info and missed calls and messages service information documents and document fragments. The namespace URI for elements defined by this specification is a URN [5], using the namespace identifier 'ietf' defined by [6] and extended by [7]. This URN is: urn:ietf:params:xml:ns:missed-callmsg. The Missed calls and messages Package begins with the root element tag "missed-callsmsg". The details of a device and missed calls and messages for a particular duration MUST be contained in a single missed call and message element and cannot be spread across multiple missed call and message service elements. root element tag: device-info element name: device element name: state: values: ON and OFF : used by server element name: missed-info-type: values: AUTO and USER root element tag: missed-callmsg element name: call-msg attribute name : numCalls : Number of missed calls attribute name : numMsgs : Number of missed messages element name: call-record element name: caller element name: callDate element name: msg-record element name: sender element name: message element name: callDate 6 XMl Schema and DTDs 6.1 XML schema definition for SIP device information 6.2 XML schema for data transfer Ranjit Expires March 17, 2006 [Page 7] Internet Draft Missed calls and messages Package September 2005 The following is the schema definition for storing the call and message information 6.3 DTD for processing GET request Ranjit Expires March 17, 2006 [Page 8] Internet Draft Missed calls and messages Package September 2005 7. Examples Following are examples of Missed calls and messages Package: a) XML document for SIP device info ON sip:xyz@domain.com SIP b) XML document with one call and one msg Bob 25-Jul-05:13:50 Alice 2005-08-06T12:00:00 c) XML document with two calls and three msgs. Bob 2005-08-06T12:00:00 Alice 2005-08-06T12:00:00 sip:abc@domain.com Ranjit Expires March 17, 2006 [Page 9] Internet Draft Missed calls and messages Package September 2005 2005-08-06T12:00:00 Rob 2005-08-06T12:00:00 John 2005-08-06T12:00:00 Alice 2005-08-06T12:00:00 7. Call Flow User Server + + | +--------------------------+ | | | USER REGISTRATION | | | +--------------------------+ | | | | SUBSCRIBE (F1) | | ---------------------------->| | NOTIFY (F2) | | <--------------------------- | | | | ONCE SERVICE IS STOPPED | | CHECK FOR RETRIEVAL SCHEME | | | | IF AUTO, SEND NOTIFY | | | | NOTIFY (F3) | | <--------------------------- | | 200 OK (F4) | | ---------------------------->| | | | IF MANUAL, User sends HTTP | | GET | | | | HTTP GET (F5) | | ---------------------------->| | 200 OK (xml document) (F6)| | <--------------------------- | Ranjit Expires March 17, 2006 [Page 10] Internet Draft Missed calls and messages Package September 2005 SUBSCRIBE sip:userA@example.com SIP/2.0 [F1] Via: SIP/2.0/UDP app.example.com;branch=z9hG4bKnashds7 From: sip:app.example.com;tag=123aa9 To: sip:userA@example.com Call-ID: 9987@app.example.com CSeq: 1 SUBSCRIBE Contact: sip:app.example.com Event: missed-call-msg Max-Forwards: 70 Accept: application/missedcallsmsg+xml < ON SIP NOTIFY sip:app.example.com SIP/2.0 [F2] Via: SIP/2.0/UDP server19.example.com;branch=z9hG4bKnasaii From: sip:userA@example.com;tag=xyzygg To: sip:app.example.com;tag=123aa9 Call-ID: 9999@app.example.com CSeq: 1288 NOTIFY Contact: sip:server.example.com Event: missed-call-msg Max-Forwards: 70 Content-Type: application/missedcallsmsg+xml Content-Length: ... ON sip:alice@domain.com SIP NOTIFY sip:app.example.com SIP/2.0 [F2] Via: SIP/2.0/UDP server19.example.com;branch=z9hG4bKnasaii From: sip:userA@example.com;tag=xyzygg To: sip:app.example.com;tag=123aa9 Call-ID: 9999@app.example.com Ranjit Expires March 17, 2006 [Page 11] Internet Draft Missed calls and messages Package September 2005 CSeq: 1288 NOTIFY Contact: sip:server.example.com Event: missed-call-msg Max-Forwards: 70 Content-Type: application/missedcallsmsg+xml Content-Length: ... Bob 2005-08-06T12:00:00 Alice 2005-08-06T12:00:00 GET http://sip-server.operator.com/script?action=get_missed-callmsg &owner=sip%user.domain%com HTTP/1.1 [F5] (there could be authentication header) HTTP/1.1 200 OK [F6] Content-Type: application/missed-call-msg+xml;charset=UTF-8 Bob 2005-08-06T12:00:00 Alice 2005-08-06T12:00:00 8. Security Considerations Security considerations for SIP event packages are discussed in RFC 3265 [2], and those considerations apply here missed call and message service information is sensitive, potentially private. Subscriptions to this event package SHOULD be authenticated and authorized according to local policy. In addition notifications Ranjit Expires March 17,2006 [Page 12] Internet Draft Missed calls and messages Package September 2005 SHOULD be sent in such a way to ensure confidentiality, message integrity and verification of subscriber identity, such as sending subscriptions and notifications using a SIPS URL or protecting the notification bodies with S/MIME. The subscriptions and notifications could be treated as private using the privacy procedures described in 9. IANA Considerations This document registers a new SIP Event Package, a new MIME type (application/missedcallsmsg+xml), and a new XML namespace. 9.1 SIP Event Package Registration Package Name: missedcallsmsg Type: package Contact: Ranjit Avasarala: ranjit@motorola.com Published Specification: RFCXXXX 9.2 application/missedcallsmsg+xml MIME Registration MIME media type name: application MIME subtype name: missedcallsmsg+xml Mandatory parameters: none Optional parameters: Same as charset parameter application/xml as specified in RFC 3023 [8]. Encoding considerations: Same as encoding considerations of application/xml as specified in RFC 3023 [8]. Security considerations: See Section 10 of RFC 3023 [8] and Section 8 of this specification. Interoperability considerations: none. Published specification: This document. Applications which use this media type: This document type is being used to send missed call and message data, Additional Information: Magic Number: None File Extension: .rif or .xml Ranjit Expires January 26, 2006 [Page 13] Internet Draft Missed calls and messages Package September 2005 Macintosh file type code: "TEXT" Personal and email address for further information: Ranjit Avasarala Intended usage: COMMON Author/Change controller: The IETF. 9.3 URN Sub-Namespace Registration for urn:ietf:params:xml:ns:reginfo This section registers a new XML namespace, as per the guidelines in [7]. URI: The URI for this namespace is urn:ietf:params:xml:ns:missed-calls-msg. Registrant Contact: IETF, SIPPING working group, , Ranjit Avasala . XML: BEGIN Registration Information Namespace

Namespace for Registration Information

urn:ietf:params:xml:ns:missedcallsmsg

See RFCXXXX.

END 10. References 10.1 Normative References [1] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M. and E. Schooler, "SIP: Session Initiation Protocol", RFC 3261, June 2002. Ranjit Expires March 17,2006 [Page 14] Internet Draft Missed calls and messages Package September 2005 [2] Roach, A., "Session Initiation Protocol (SIP)-Specific Event Notification", RFC 3265, June 2002. [3] Bradner, S., "Key words for use in RFCs to indicate requirement levels", BCP 14, RFC 2119, July 1997. [4] W. W. W. C. (W3C), "Extensible markup language (xml) 1.0." The XML 1.0 spec can be found at http://www.w3.org/TR/1998/REC-xml-19980210. [5] Moats, R., "URN Syntax", RFC 2141, May 1997. [6] Moats, R., "A URN Namespace for IETF Documents", RFC 2648, August 1999. [7] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, January 2004. [8] Murata, M., St. Laurent, S. and D. Kohn, "XML media types", RFC 3023, January 2001. 10.2 Informative References [9] C. Jennings., "Private extensions to SIP ", RFC 3325 Ranjit Expires March 17, 2006 [Page 15] Internet Draft Missed calls and messages Package September 2005 [10] Levin, O., "H.323 Uniform Resource Locator (URL) Scheme Registration", RFC 3508, April 2003. 11. Author's Address Ranjit Avasarala and Subir Saha Motorola Bangalore, India 12. Contributors None 13. Acknowledgements The authors would like to thank Stein Robert for his valuable comments. Intellectual Property Statement The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such Ranjit Expires March 17,2006 [Page 15] Internet Draft Missed calls and messages Package September 2005 rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Disclaimer of Validity This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Copyright Statement Copyright (C) The Internet Society (2005). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. Acknowledgment Funding for the RFC Editor function is currently provided by the Internet Society. Ranjit Expires March 17, 2006 [Page 16] Internet Draft Missed calls and messages Package September 2005