Internet Engineering Task Force Adam Roach Internet Draft Ericsson Inc. Category: Informational March 2000 Expires September 2000 Automatic Call Back Service in SIP Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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 obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or cite them other than as "work in progress". The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/lid-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html This document is an individual submission to the IETF. Comments should be directed to the authors. Abstract This document describes a proposed implementation of an Automatic Call Back (ACB) service using SIP. This service is somtimes refered to as "camp on extension," "call again," "automatic redial," and "automatic recall." 1. Introduction Most services that exist in the public switched telephony network (PSTN) can be implemented trivially using SIP [1] , either by itself or with currently proposed extensions. An effiicient implementation of the ACB service, however, cannot be accomplished without a mechanism for notification when a called party has become free. This document proposes a method of implementing this functionality using the SUBSCRIBE and NOTIFY methods defined in "Call Event Notification in SIP" [2] . 2. Service Description Roach [Page 1] Internet Draft Automatic Call Back Service in SIP March 2000 Typically, the caller initiates a call in the normal fashion for their access device (e.g. dialing a number, selecting an entry from an address book application). When the user receives indication of "ringing" or "busy," they may choose to activate the ACB service. The method of activation will vary depending on the access device. For a hardware phone, there will typically be a dedicated "callback" button; PC-based clients may have a menu option and/or a hot key; and PSTN bridges may play a series of prompts to guide the user in activating the service. The user receives confirmation of service activation. Once the callee's device becomes available, the caller's phone will indicate that the ACB service has been triggered. For hardware phones and PSTN bridges, this will typically be a distinctive ring; for PC-based clients, it may be an audio alert accompanied by a dialogue box. The user responds to this alerting as if he were answering an incoming call. Upon doing so, he receives indication of the far end alerting, and the call proceeds as normal. At any time before the ACB service is triggered by the callee's device becoming available, the caller may cancel outstanding ACM requests. 3. "Event" header value This service uses an event type of "terminal-free" in its SUBSCRIBE and NOTIFY messages. This event is defined to occur whenever a logical terminal transitions to an idle state (i.e. has no ongoing calls). 4. Example Messages The following sections give example messages for various ACB-related scenarios. Some details, such as SDP bodies and "Via:" headers, have been omitted for the sake of clarity. 4.1. Requesting notification with SUBSCRIBE (callee busy) INVITE sip:exuadam@ws592.ericsson.com SIP/2.0 To: Adam Roach From: Joe Public ;tag=38bec5a6-0000000a Call-Id: 34a6-38bec5a6-61103dd1-3@terminal17.isp.net CSeq: 5231 INVITE Contact: sip:jpublic@terminal17.isp.net Content-Type: application/sdp Roach [Page 2] Internet Draft Automatic Call Back Service in SIP March 2000 SIP/2.0 486 Busy To: Adam Roach ;tag=638bec5a6758941 From: Joe Public ;tag=38bec5a6-0000000a Call-Id: 34a6-38bec5a6-61103dd1-3@terminal17.isp.net CSeq: 5231 INVITE Content-Length: 0 ACK sip:exuadam@ws592.ericsson.com SIP/2.0 To: Adam Roach ;tag=638bec5a67589416288 From: Joe Public ;tag=38bec5a6-0000000a Call-Id: 34a6-38bec5a6-61103dd1-3@terminal17.isp.net CSeq: 5231 ACK Content-Length: 0 Notice that, since this is a non-call-related subscription, the Call-ID is unique and does not match the previous INVITE request. SUBSCRIBE sip:exuadam@ws592.ericsson.com SIP/2.0 To: Adam Roach From: Joe Public ;tag=8a553c7c-38bebcb1 Call-Id: 3465-38bebcb1-5e86e396-6@terminal17.isp.net CSeq: 16939 SUBSCRIBE Contact: sip:jpublic@terminal17.isp.net Expires: 14400 Event: terminal-free Content-Length: 0 SIP/2.0 200 OK To: Adam Roach ;tag=346538bebcb150e From: Joe Public ;tag=8a553c7c-38bebcb1 Call-Id: 3465-38bebcb1-5e86e396-6@terminal17.isp.net CSeq: 16939 SUBSCRIBE Expires: 3600 Content-Length: 0 4.2. Requesting notification with SUBSCRIBE (no answer) This call flow demonstrates the flow of messages if a user decides to activate the ACB service after the callee's terminal has started alerting, but before the callee answers. Roach [Page 3] Internet Draft Automatic Call Back Service in SIP March 2000 INVITE sip:exuadam@ws592.ericsson.com SIP/2.0 To: Adam Roach From: Joe Public ;tag=38bec5a6-0000000a Call-Id: 34a6-38bec5a6-61103dd1-3@terminal17.isp.net CSeq: 5231 INVITE Contact: sip:jpublic@terminal17.isp.net Content-Type: application/sdp SIP/2.0 180 Ringing To: Adam Roach ;tag=638bec5a6758941 From: Joe Public ;tag=38bec5a6-0000000a Call-Id: 34a6-38bec5a6-61103dd1-3@terminal17.isp.net CSeq: 5231 INVITE Content-Length: 0 Notice that, since this is a non-call-related subscription, the Call-ID is unique and does not match the previous INVITE request. SUBSCRIBE sip:exuadam@ws592.ericsson.com SIP/2.0 To: Adam Roach From: Joe Public ;tag=8a553c7c-38bebcb Call-Id: 3465-38bebcb1-5e86e396-6@terminal17.isp.net CSeq: 16939 SUBSCRIBE Contact: sip:jpublic@terminal17.isp.net Expires: 14400 Event: terminal-free Content-Length: 0 SIP/2.0 200 OK To: Adam Roach ;tag=346538bebcb150e From: Joe Public ;tag=8a553c7c-38bebcb Call-Id: 3465-38bebcb1-5e86e396-6@terminal17.isp.net CSeq: 16939 SUBSCRIBE Expires: 3600 Content-Length: 0 Now that the service is activated, the client can cancel the INVITE transaction. CANCEL sip:exuadam@ws592.ericsson.com SIP/2.0 To: Adam Roach From: Joe Public ;tag=38bec5a6-0000000a Call-Id: 34a6-38bec5a6-61103dd1-3@terminal17.isp.net CSeq: 5231 CANCEL Content-Length: 0 Roach [Page 4] Internet Draft Automatic Call Back Service in SIP March 2000 SIP/2.0 200 OK To: Adam Roach From: Joe Public ;tag=38bec5a6-0000000a Call-Id: 34a6-38bec5a6-61103dd1-3@terminal17.isp.net CSeq: 5231 CANCEL Content-Length: 0 SIP/2.0 487 Call Canceled To: Adam Roach ;tag=638bec5a6758941 From: Joe Public ;tag=38bec5a6-0000000a Call-Id: 34a6-38bec5a6-61103dd1-3@terminal17.isp.net CSeq: 5231 INVITE Content-Length: 0 ACK sip:exuadam@ws592.ericsson.com SIP/2.0 To: Adam Roach ;tag=638bec5a6758941 From: Joe Public ;tag=38bec5a6-0000000a Call-Id: 34a6-38bec5a6-61103dd1-3@terminal17.isp.net CSeq: 5231 ACK Content-Length: 0 4.3. Conveying terminal-free status using NOTIFY The NOTIFY request contains the same Call-ID as the SUBSCRIBE that asked for it. NOTIFY sip:jpublic@terminal17.isp.net SIP/2.0 To: Joe Public From: Adam Roach ;tag=38bebe1c-4953 Call-Id: 3465-38bebcb1-5e86e396-6@terminal17.isp.net CSeq: 15739 NOTIFY Contact: sip:exuadam@ws592.ericsson.com Event: terminal-free Content-Length: 0 SIP/2.0 200 OK To: Joe Public ;tag=346e38bebe434931fb51f33 From: Adam Roach ;tag=38bebe1c-4953 Call-Id: 3465-38bebcb1-5e86e396-6@terminal17.isp.net CSeq: 15739 NOTIFY Content-Length: 0 Now, a brand new INVITE is issued to begin a call to the newly-freed terminal. Roach [Page 5] Internet Draft Automatic Call Back Service in SIP March 2000 INVITE sip:exuadam@ws592.ericsson.com SIP/2.0 To: Adam Roach From: Joe Public ;tag=38bec5a6-7265482 Call-Id: 355e-38bed457-269136c2-6@terminal17.isp.net CSeq: 17960 INVITE Contact: sip:jpublic@terminal17.isp.net Content-Type: application/sdp SIP/2.0 180 Ringing To: Adam Roach ;tag=55e38bed45700ca From: Joe Public ;tag=38bec5a6-7265482 Call-Id: 355e-38bed457-269136c2-63@terminal17.isp.net CSeq: 17960 INVITE Content-Length: 0 The call now continues as normal 4.4. Cancelling a previous ACB request SUBSCRIBE sip:exuadam@ws592.ericsson.com SIP/2.0 To: Adam Roach From: Joe Public ;tag=8f21337c-38a8191 Call-Id: 3465-38bebcb1-5e86e396-6@terminal17.isp.net CSeq: 7837 SUBSCRIBE Contact: sip:jpublic@terminal17.isp.net Expires: 0 Event: terminal-free Content-Length: 0 SIP/2.0 200 OK To: Adam Roach ;tag=213985987f9872a From: Joe Public ;tag=8f21337c-38a8191 Call-Id: 3465-38bebcb1-5e86e396-6@terminal17.isp.net CSeq: 7837 SUBSCRIBE Expires: 0 Content-Length: 0 5. References [1] M. Handley/H. Schulzrinne/E. Schooler/J. Rosenberg, "SIP: Session Initiation Protocol", RFC 2543, IETF; March 1999. [2] Adam Roach, "Event Notification in SIP", Internet Draft , IETF; March 2000. Work in progress. Roach [Page 6] Internet Draft Automatic Call Back Service in SIP March 2000 6. Security Considerations This draft intoduces no security considerations beyond those discussed in the referenced documents. 7. Author's Address Adam Roach Ericsson Inc. Mailstop L-04 851 International Pkwy. Richardson, TX 75081 USA Phone: 972-583-7594 Fax: 972-669-0154 E-Mail: adam.roach@ericsson.com Roach [Page 7]