Table Of Contents
SIP Call Transfer and Call Forwarding Supplementary Services
Prerequisites for SIP Call Transfer and Call Forwarding Supplementary Services
Restrictions for SIP Call Transfer and Call Forwarding Supplementary Services
Information About SIP Call Transfer and Call Forwarding Supplementary Services
SIP Blind Call Transfer and Call Forwarding TCL IVR Script
Release Link Trunking on SIP Gateways
SIP and TEL URLs in Call Transfers
SIP Gateway Initiation of Call Transfers
How to Configure SIP Call Transfer and Call Forwarding Supplementary Services
Loading the TCL IVR Application on the Gateway
Configuring SIP Call Transfer and Call Forwarding on a POTS Dial Peer
Configuring SIP Call Transfer and Call Forwarding on a VoIP Dial Peer
Configuring the SIP Call Transfer and Call Forwarding Session Target
Configuring SIP Refer and Notify Message Settings
Configuration Examples for SIP Call Transfer and Call Forwarding Supplementary Services
Blind Call Transfer Illustration Example
Blind Call Transfer Scenario Example
Originating Gateway Configuration Example
Recipient Gateway Configuration Example
Final-Recipient Configuration Example
SIP Call Transfer and Call Forwarding Supplementary Services
The SIP Call Transfer and Call Forwarding Supplementary Services feature introduces the ability of Session Initiation Protocol (SIP) gateways to initiate blind, or attended, call transfers. Release Link Trunking (RLT) functionality is also added with this feature. With RLT, SIP blind call transfers can now be triggered by channel-associated signaling (CAS) trunk signaling. Finally, the SIP Call Transfer and Call Forwarding Supplementary Services feature implements SIP support of call forwarding requests from a Cisco IOS gateway.
Call transfer and call forwarding capabilities enable application service providers (ASPs) to provide call transfer and call forwarding services in accordance with emerging SIP standards.
Feature Specifications for the SIP Call Transfer and Call Forwarding Supplementary Services
Determining Platform Support Through Cisco Feature Navigator
Cisco IOS software is packaged in feature sets that are supported on specific platforms. To get updated information regarding platform support for this feature, access Cisco Feature Navigator. Cisco Feature Navigator dynamically updates the list of supported platforms as new platform support is added for the feature.
Cisco Feature Navigator is a web-based tool that enables you to determine which Cisco IOS software images support a specific set of features and which features are supported in a specific Cisco IOS image. You can search by feature or release. Under the release section, you can compare releases side by side to display both the features unique to each software release and the features in common.
To access Cisco Feature Navigator, you must have an account on Cisco.com. If you have forgotten or lost your account information, send a blank e-mail to cco-locksmith@cisco.com. An automatic check will verify that your e-mail address is registered with Cisco.com. If the check is successful, account details with a new random password will be e-mailed to you. Qualified users can establish an account on Cisco.com by following the directions found at this URL:
Cisco Feature Navigator is updated regularly when major Cisco IOS software releases and technology releases occur. For the most current information, go to the Cisco Feature Navigator home page at the following URL:
Availability of Cisco IOS Software Images
Platform support for particular Cisco IOS software releases is dependent on the availability of the software images for those platforms. Software images for some platforms may be deferred, delayed, or changed without prior notice. For updated information about platform support and availability of software images for each Cisco IOS software release, refer to the online release notes or, if supported, Cisco Feature Navigator.
Contents
•Prerequisites for SIP Call Transfer and Call Forwarding Supplementary Services
•Restrictions for SIP Call Transfer and Call Forwarding Supplementary Services
•Information About SIP Call Transfer and Call Forwarding Supplementary Services
•How to Configure SIP Call Transfer and Call Forwarding Supplementary Services
•Configuration Examples for SIP Call Transfer and Call Forwarding Supplementary Services
Prerequisites for SIP Call Transfer and Call Forwarding Supplementary Services
The following are general prerequisites for SIP deployment:
•Ensure that your Cisco router has the minimum memory requirements.
•Ensure that the gateway has voice functionality that is configurable for SIP.
•As with all SIP call transfer methods, the dial peers must be configured for correct functioning of the Refer method. See the "Configuring SIP Call Transfer and Call Forwarding on a POTS Dial Peer" section for the complete configuration steps.
Load Cisco IOS Release 12.2(11)YT or a later release.
Configure hookflash signaling.
Write a Tool Command Language (TCL) Interactive Voice Response (IVR) 2.0 script that implements Cisco IOS call transfer and forward supplementary services functionality.
Restrictions for SIP Call Transfer and Call Forwarding Supplementary Services
•The SIP Call Transfer and Call Forwarding Supplementary Services feature is supported only through TCL IVR 2.0 and VoiceXML applications; it is not supported for TCL IVR 1.0 applications or the DEFAULT session application.
•Although SIP Cisco IOS gateways currently support SIP URLs and TEL URLs, the Refer-To header and the Also header must be in SIP URL format to be valid. The TEL URL format cannot be used because it does not provide a host portion, and without one, the triggered Invite request cannot be routed.
•Cisco SIP customer premise equipment (CPE) such as 79xx and Analog Telephone Adaptors (ATAs) do not currently support TEL URLs.
•The Refer-To and Contact headers are required in the Refer request. The absence of either header results in a 4xx class response to the Refer request. Also, the Refer request must contain exactly one Refer-To header. Multiple Refer-To headers result in a 4xx class response.
•The Referred-By header is required in a Refer request. The absence of this header results in a 4xx class response to the Refer request. Also, the Refer request must contain exactly one Referred-By header. Multiple Referred-By headers result in a 4xx class response.
•Only RLT on CAS or analog (FXS) ports is supported with SIP call transfers.
•The Cisco AS5xxx platforms do not support hookflash detection for T1 CAS.
•SIP call forwarding is supported only on e-phones—IP phones that are not configured on the gateway. FXS, FXO, T1, E1, and CAS phones are not supported.
•In Cisco IOS Release 12.2(11)YT, when SIP with e-phones is used, DTMF is not supported. Voice can be established, but DTMF cannot be relayed in- or out-of-band. Custom scripting is also necessary for e-phones to initiate call forwarding. The standard configurations listed in this document work only when an e-phone is the recipient or final-recipient.
Information About SIP Call Transfer and Call Forwarding Supplementary Services
To configure the SIP Call Transfer and Call Forwarding Supplementary Services feature, you must understand the following concepts:
•SIP Blind Call Transfer and Call Forwarding TCL IVR Script
•Release Link Trunking on SIP Gateways
•SIP Gateway Initiation of Call Transfers
SIP Blind Call Transfer and Call Forwarding TCL IVR Script
The SIP Call Transfer and Call Forwarding Supplementary Services feature implements SIP support of blind, or attended, call transfers and call forwarding requests from a Cisco IOS gateway. A blind transfer is one in which the transferring phone connects the caller to a destination line before ringback begins. This is different from a consultative transfer in which one of the transferring parties either connects the caller to a ringing phone (ringback heard) or speaks with the third party before connecting the caller to the third party. Blind transfers are often preferred by automated devices that do not have the capability to make consultation calls.
When the TCL IVR script runs on the Cisco gateway, it can respond to requests to initiate blind call transfer (transfer without consultation) on a SIP call leg. SIP call forwarding on e-phones (IP phones that are not configured on the gateway) is also supported.
Release Link Trunking on SIP Gateways
RLT functionality has been added to Cisco IOS SIP gateways. With RLT functionality, SIP call transfer can now be triggered by CAS trunk signaling, which the custom TCL IVR application can monitor. After a SIP call transfer has transpired and the CAS interface is no longer required, the CAS interface can be released.
The RLT functionality can be used to initiate blind transfers on SIP gateways. Blind call transfer uses the Refer method. A full description of blind transfer and the refer Method can be found in
Call Transfer Capabilities Using the Refer Method documentation.
RLT and SIP Call Transfers
With the Cisco IOS SIP Call Transfer and Call Forwarding Supplementary Services feature, call transfer can be triggered by CAS trunk signaling and then captured by the custom TCL IVR script on a gateway. The process begins with the originator (the SIP user agent that initiates the transfer or Refer request) responding with a dial tone once it receives the signal or hookflash from the PSTN call leg. The originator then prepares to receive dual-tone multifrequency (DTMF) digits that identify the final- recipient (the user agent introduced into a call with the recipient).
Once the first DTMF digit is received, the dial tone is discontinued. DTMF-digit collection is not completed until a 4-second interdigit timeout occurs or an on-hook is received on that specific CAS time slot. Call transfer starts when DTMF-digit collection is successful. If digit collection fails, for example if not enough DTMF digits or invalid digits are collected, the initial call is reestablished.
Once the DTMF digits are successfully collected, the custom TCL IVR script can initiate call transfer. SIP messaging begins when the transfer is initiated with the Refer method. The originator sends an Invite to the recipient (the user agent that receives the Refer request and is transferred to the final-recipient) to hold the call and request that the recipient not return Real-Time Transport Protocol (RTP) packets to the originator. The originator then sends a SIP Refer request to the recipient to start the transfer process. When the recipient receives the request, it returns a 202 Accepted acknowledgement to the originator. The TCL IVR script run by the originator can then release the CAS trunk and close the primary call. See Figure 1.
If the recipient does not support the Refer method, a 501 Not implemented message is returned. However, for backward compatibility purposes, the call transfer is automatically continued with the Bye/Also method. The originator sends a Bye/Also request to the recipient and releases the CAS trunk with the PSTN call leg. The primary call between the originator and the recipient is closed when a 200 OK response is received.
In all other cases of call transfer failures, the primary call between the originator and the recipient is immediately shut down.
Figure 1 Call Transfer Using the Refer Method
SIP and TEL URLs in Call Transfers
When the SIP call transfer originator collects DTMF digits from the CAS trunk, it attempts to find a dial peer. If a dial peer is found, the session target in the dial peer is used to formulate a Session Initiation Protocol Uniform Resource Locator (SIP URL). This URL can be used with both the Refer method and the Bye/Also method. A SIP URL is in the following form:
sip:JohnSmith@somewhere.comIf a valid dial peer is not found, a Telephone Uniform Resource Locator (TEL URL) is formulated in the Refer-To header. A TEL URL is in the following form:
tel:+11231234567The choice of which URL to use is critical when correctly routing SIP calls. For example, the originating gateway can send out a Bye with an Also header, but the Also header can carry only a SIP URL. It cannot carry a TEL URL. That is, if the gateway decides to send a Bye/Also but cannot find a matched dial peer, the gateway reports an error on the transfer gateway and sends a Bye without the Also header.
If the recipient of a SIP call transfer is a SIP phone, the phone must have the capability to interpret either the Refer method or the Bye/Also method for the call transfer to work. If the recipient is a Cisco IOS gateway, there needs to be a matching dial peer for the Refer-To user. User, looking at the previous example, can be either JohnSmith or 11231234567. The dial peer also needs to have an application session defined, where session can be the name of a TCL IVR application. If there's no match, a 4xx error is sent back and no transfer occurs. If there's a POTS dial peer match, a call is made to that POTS phone. Before the 12.2(11)YT release, if there's a VoIP match, the Refer-To URL is used to initiate a SIP call. In release 12.2(11)YT and later, the application session target in the dial peer is used for the SIP call. See "Configuring SIP Call Transfer and Call Forwarding on a POTS Dial Peer" section for information on the application session target.
SIP Gateway Initiation of Call Transfers
The SIP Call Transfer and Call Forwarding Supplementary Services feature introduces the ability of SIP gateways to initiate, or originate, attended call transfers. The process begins when the originator establishes a call with the recipient. When the user on the PSTN call leg wants to transfer the call, the user uses hookflash to get a second dial tone and then enters the final-recipients number. The TCL IVR script can then put the original call on hold and set up the call to the final-recipient, making the originator active with the final-recipient. The Refer request is sent out when the user hangs up to transfer the call. The Refer request contains a Replaces header that contains three tags: SIP CallID, from, and to. The tags are passed along in the Invite from the recipient to the final-recipient, giving the final-recipient adequate information to replace the call leg. The host portion of the Refer request is built from the established initial call. The following is an example of a Refer request that contains a Replaces header:
Note IP addresses and host names in examples are fictitious.
Refer sip:3100801@172.16.190.100:5060;user=phone SIP/2.0Via: SIP/2.0/UDP 172.16.190.99:5060From: "5555555" <sip:5555555@172.16.190.187>To: <sip:3100801@172.16.190.187>;tag=A7C2C-1E8CDate: Sat, 01 Jan 2000 05:15:06 GMTCall-ID: c2943000-106ae5-1c5f-3428@172.16.197.182User-Agent: Cisco-SIPGateway/IOS-12.xMax-Forwards: 6Timestamp: 946685709CSeq: 103 ReferRefer-To: sip:3100802@10.102.17.217?Replaces=DD713380-339C11CC-80BCF308-92BA812C@172.16.195.77;to-ta g=A5438-23E4;from-tag=C9122EDB-2408Referred-By: <sip:3100802@172.16.190.99>Content-Length: 0Once the NOTIFY is received by the originator, the TCL IVR script can disconnect the call between originator and recipient. The call between the originator and final-recipient is disconnected by the recipient sending a BYE to the originator. See Figure 2 for a call flow of a successful call transfer.
Figure 2 Successful Attended Call Transfer Initiated by the Originator
If the recipient does not support the Refer method, a 501 Not implemented message is returned.
In all other cases of call transfer failures, the primary call between the originator and the recipient is immediately shut down. Figure 3 shows the recipient hanging up the call before the transfer completes. The item to notice is that the NOTIFY message is never sent.
Figure 3 Unsuccessful Call Transfer—Recipient Hangs Up Before Transfer Completes
SIP Call Forwarding
SIP call forwarding is supported only on e-phones—IP phones that are not configured on the gateway. FXS, FXO, T1, E1, and CAS phones are not supported.
With e-phones, there are four different types of SIP call forwarding supported:
•Call Forward Unavailable
•Call Forward No Answer
•Call Forward Busy
•Call Forward Unconditional
In all four of these call forwarding types, a 302 Moved Temporarily response is sent to the user agent client. A Diversion header included in the 302 response indicates the type of forward.
The 302 response also includes a Contact header. The Contact header is generated by the calling number that is provided by the custom TCL IVR script. The 302 response also includes the host portion found in the dial peer for that calling number. If the calling number cannot match a VoIP dial-peer or POTS dial-peer number, a 503 Service Unavailable message is sent, except in the case of the Call Forward No Answer. With Call Forward No Answer, call forwarding is ignored, the phone rings, and the expires timer clears the call if there is no answer.
Note In Cisco IOS Release 12.2(11)YT, when SIP with e-phones is used, DTMF is not supported. Voice can be established, but DTMF cannot be relayed in- or out-of-band. Custom scripting is also necessary for e-phones to initiate call forwarding. The standard configurations listed in this document work only when an e-phone is the recipient or final-recipient.
How to Configure SIP Call Transfer and Call Forwarding Supplementary Services
This section contains the following procedures. Each procedure is identified as either required or optional.
•Loading the TCL IVR Application on the Gateway (required)
•Configuring SIP Call Transfer and Call Forwarding on a POTS Dial Peer (required)
•Configuring SIP Call Transfer and Call Forwarding on a VoIP Dial Peer (required)
•Configuring the SIP Call Transfer and Call Forwarding Session Target (optional)
•Configuring SIP Refer and Notify Message Settings (required)
Loading the TCL IVR Application on the Gateway
The SIP Call Transfer and Call Forwarding Supplementary Services feature implements SIP support of blind, or attended, call transfers and call forwarding requests from a Cisco IOS gateway. Before these features are implemented, a custom TCL IVR 2.0 script must be loaded on the gateway.
Prerequisites
Restrictions
The SIP Call Transfer and Call Forwarding Supplementary Services feature is supported only through TCL IVR 2.0 and VoiceXML applications; it is not supported for TCL IVR 1.0 applications or the DEFAULT session application.
SUMMARY STEPS
1. enable
2. configure {terminal | memory | network}
3. call application voice application-name location
4. call application voice application-name language number language
5. call application voice application-name set-location language category location
6. exit
7. call application voice load application-name
DETAILED STEPS
Configuring SIP Call Transfer and Call Forwarding on a POTS Dial Peer
To handle all call transfer and call forwarding situations, you should configure both POTS and VoIP dial peers. This task configures SIP call transfer and call forwarding for a POTS dial peer.
To configure SIP call transfer and forwarding on a Cisco IOS gateway using the CAS trunk refer to the "Configuring CAS" section of the Cisco IOS Dial Technologies Configuration Guide, Release 12.2.
Restrictions
•The SIP Call Transfer and Call Forwarding Supplementary Services feature is supported only through TCL IVR 2.0 and VoiceXML applications; it is not supported for TCL IVR 1.0 applications or the DEFAULT session application.
•Only RLT on CAS or analog (FXS) ports is supported with SIP call transfers.
•The Cisco AS5xxx platforms do not support hookflash detection for T1 CAS.
•SIP call forwarding is supported only on e-phones—IP phones that are not configured on the gateway. FXS and CAS phones are not supported.
•In Cisco IOS Release 12.2(11)YT, when SIP with e-phones is used, DTMF is not supported. Voice can be established, but DTMF cannot be relayed in- or out-of-band. Custom scripting is also necessary for e-phones to initiate call forwarding. The standard configurations listed in this document work only when an e-phone is the recipient or final-recipient.
SUMMARY STEPS
1. enable
2. configure {terminal | memory | network}
3. dial-peer voice tag {pots | voip | mmoip | vofr | voatm}
4. application application-name
5. destination-pattern [+]string[T]
6. port port
DETAILED STEPS
Command or Action PurposeStep 1
enable
Example:Router> enable
Enables higher privilege levels, such as privileged EXEC mode.
Enter your password if prompted.
Step 2
configure {terminal | memory | network}
Example:Router# configure terminal
Enters global configuration mode.
Step 3
dial-peer voice tag {pots | voip | mmoip
|
vofr | voatm}Example:Router(config)# dial-peer voice 25 pots
Enters dial-peer configuration mode. The tag value is a tag that uniquely identifies the dial peer. (This number has local significance only.)
The following keyword can be used for configuring call transfer:
•pots—Indicates that this is a VoIP peer using voice encapsulation on the plain old telephone service (POTS) network.
Step 4
application application-name
Example:Router(config-dial-peer)# application transfer_app
Loads the TCL IVR script specified in the section: "Loading the TCL IVR Application on the Gateway" section.
Step 5
destination-pattern [+]string[T]
Example:Router(config-dial-peer)# destination-pattern 7777
Defines the prefix or the telephone number associated with this POTS dial peer.
•+—(Optional) Character indicating an E.164 standard number.
•string—Series of digits that specify the E.164 or private dialing plan telephone number. Valid entries are the digits 0 through 9, the letters A through D, and any special character.
•T—(Optional) Control character indicating that the destination-pattern value is a variable length dial string.
Step 6
port port
Example:Router (config-dial-peer)# port 1/1/0
Specifies the voice slot number and local voice port through which incoming VoIP calls are received. To find the correct definition of the port argument for your router, refer to the Cisco IOS Voice, Video, and Fax Command Reference, Release 12.2 T.
Configuring SIP Call Transfer and Call Forwarding on a VoIP Dial Peer
To handle all call transfer and call forwarding situations, you should configure both POTS and VoIP dial peers. This task configures SIP call transfer and call forwarding for a VoIP dial peer.
To configure SIP call transfer and forwarding on a Cisco IOS gateway using the CAS trunk refer to the "Configuring CAS" section of the Cisco IOS Dial Technologies Configuration Guide, Release 12.2.
Restrictions
•The SIP Call Transfer and Call Forwarding Supplementary Services feature is supported only through TCL IVR 2.0 and VoiceXML applications; it is not supported for TCL IVR 1.0 applications or the DEFAULT session application.
•Only RLT on CAS or analog (FXS) ports is supported with SIP call transfers.
•The Cisco AS5xxx platforms do not support hookflash detection for T1 CAS.
•SIP call forwarding is supported only on e-phones—IP phones that are not configured on the gateway. FXS and CAS phones are not supported.
•In Cisco IOS Release 12.2(11)YT, when SIP with e-phones is used, DTMF is not supported. Voice can be established, but DTMF cannot be relayed in- or out-of-band. Custom scripting is also necessary for e-phones to initiate call forwarding. The standard configurations listed in this document work only when an e-phone is the recipient or final-recipient.
SUMMARY STEPS
1. enable
2. configure {terminal | memory | network}
3. dial-peer voice tag {pots | voip | mmoip | vofr | voatm}
4. application application-name
5. destination-pattern [+]string[T]
6. session target ipv4: destination-address
DETAILED STEPS
Command or Action PurposeStep 1
enable
Example:Router> enable
Enables higher privilege levels, such as privileged EXEC mode.
Enter your password if prompted.
Step 2
configure {terminal | memory | network}
Example:Router# configure terminal
Enters global configuration mode.
Step 3
dial-peer voice tag {pots | voip | mmoip
|
vofr | voatm}Example:Router(config)# dial-peer voice 29 voip
Enters dial-peer configuration mode. The tag value is a tag that uniquely identifies the dial peer. (This number has local significance only.)
The following keyword can be used for configuring call transfer:
•voip—Indicates that this is a VoIP peer using voice encapsulation on the plain old telephone service (POTS) network.
Step 4
application application-name
Example:Router(config-dial-peer)# application transfer_app
Loads the TCL IVR script specified in the section: "Loading the TCL IVR Application on the Gateway" section.
Step 5
destination-pattern [+]string[T]
Example:Router(config-dial-peer)# destination-pattern 7777
Defines the prefix or the telephone number associated with this VoIP dial peer.
•+—(Optional) Character that indicates an E.164 standard number.
•string—Series of digits that specify the E.164 or private dialing plan telephone number. Valid entries are the digits 0 through 9, the letters A through D, and any special character.
•T—(Optional) Control character indicating that the destination-pattern value is a variable length dial string.
Step 6
session target ipv4:destination-address
Example:Router(config-dial-peer)# session target ipv4:172.18.200.21
Specifies a network-specific address for a dial peer.
ipv4:destination address: Sets the IP address of the dial peer. A valid IP address is in this format: xxx.xxx.xxx.xxx
Configuring the SIP Call Transfer and Call Forwarding Session Target
This task configures a SIP server as a session target. Although it is not required, configuring a SIP server as a session target is useful if there is a Cisco SIP proxy server (CSPS) present in the network. With a CSPS, you can configure the SIP server option and have the interested dial peers use the CSPS by default.
To determine the call transfer destination on the originator, check if there is a matching dial peer. If there is a matching dial peer, check the session target for the dial peer. If the session target is a SIP server, configure the SIP server as described in the task below. If the session target is not a SIP server, the session target configured in the VoIP dial peer is used.
If there is no dial peer that matches the destination pattern, a TEL URL is sent.
To configure SIP call transfer and forwarding on a Cisco IOS gateway using the CAS trunk refer to the "Configuring CAS" section of the Cisco IOS Dial Technologies Configuration Guide, Release 12.2.
SUMMARY STEPS
1. enable
2. configure {terminal | memory | network}
3. sip-ua
4. sip-server dns: host-name
5. exit
6. dial-peer voice number voip
7. destination-pattern [+]string[T]
8. session target sip-server
DETAILED STEPS
Troubleshooting Tips
To troubleshoot the SIP Call Transfer and Call Forwarding Supplementary Services feature, use the following commands.
Configuring SIP Refer and Notify Message Settings
The Refer request is initiated by the originating gateway and signals the start of call transfer. Once the outcome of the SIP Refer transaction is known, the recipient of the Refer request notifies the originating gateway of the outcome of the Refer transaction—whether the final-recipient was successfully or unsuccessfully contacted. The notification is accomplished using the Notify method.
Complete these steps to configure the Refer request settings and to configure the Notify method.
Prerequisites
Custom scripting is necessary for e-phones to initiate call forwarding. The standard configurations listed in this document work only when an e-phone is the recipient or final-recipient.
Restrictions
•The SIP Call Transfer and Call Forwarding Supplementary Services feature is supported only through TCL IVR 2.0 and VoiceXML applications; it is not supported for TCL IVR 1.0 applications or the DEFAULT session application.
•Only RLT on CAS or analog (FXS) ports is supported with SIP call transfers.
•The Cisco AS5xxx platforms do not support hookflash detection for T1 CAS.
•SIP call forwarding is supported only on e-phones—IP phones that are not configured on the gateway. FXS and CAS phones are not supported.
•In Cisco IOS Release 12.2(11)YT, when SIP with e-phones is used, DTMF is not supported. Voice can be established, but DTMF cannot be relayed in- or out-of-band. Custom scripting is also necessary for e-phones to initiate call forwarding. The standard configurations listed in this document work only when an e-phone is the recipient or final-recipient.
•As with all SIP call transfer methods, the dial peers must be configured for correct functioning of the Refer method. See the "Configuring SIP Call Transfer and Call Forwarding on a POTS Dial Peer" section for the complete configuration steps.
Note Custom scripting is necessary for e-phones to initiate call forwarding. The standard configurations listed in this document work only when an e-phone is the recipient or final-recipient.
SUMMARY STEPS
1. enable
2. configure {terminal | memory | network}
3. sip-ua
4. timers refer number
5. retry refer number
6. timers notify number
7. retry notify number
8. exit
DETAILED STEPS
Troubleshooting Tips
To verify Refer or Notify messages, use the following commands
:
Configuration Examples for SIP Call Transfer and Call Forwarding Supplementary Services
This section provides an end-to-end call transfer configuration example.
•Blind Call Transfer Illustration Example
•Blind Call Transfer Scenario Example
•Originating Gateway Configuration Example
•Recipient Gateway Configuration Example
•Final-Recipient Configuration Example
Note IP addresses and host names in examples are fictitious.
Blind Call Transfer Illustration Example
Blind Call Transfer Scenario Example
1. The user at (818) 382-1111 calls the user at (717) 372-1111, and they are in a conversation.
2. The user at (717) 372-1111 decides to transfer the user at (818) 382-1111 to the user at (616)362-1111.
The transfer takes place by the user at (717) 372-1111 going on-hook over the CAS trunk and dialing (616) 362-1111.
3. A call transfer is initiated from the originating gateway to the recipient gateway, and the originator releases the CAS trunk to (717) 372-1111.
4. The recipient gateway releases the call leg to the originator and initiates a new call to the final-recipient—the user at (616) 362-1111.
5. The call transfer is complete, and the user at (818) 382-1111 and the user at (616) 362-1111 are in a conversation.
Originating Gateway Configuration Example
Router# show running-configBuilding configuration...Current configuration : 4192 bytes!version 12.2service configno service single-slot-reload-enableno service padservice timestamps debug uptimeservice timestamps log uptimeno service password-encryptionservice internalservice udp-small-servers!voice-card 2!ip subnet-zero!controller T1 2/0framing esflinecode b8zsds0-group 0 timeslots 1-24 type e&m-wink-start!interface FastEthernet3/0ip address 172.18.200.36 255.255.255.0speed 10half-duplexno shutip rsvp bandwidth 7500 7500!voice-port 2/0:0timing hookflash-in 1500!call application voice sample_RLT tftp://rtplab-tftp1/liszt/dec18/sample_RLT.tclcall application voice sample_RLT uid-len 4call application voice sample_RLT language 1 encall application voice sample_RLT set-location en 0 tftp://rtplab-tftp1/liszt/TCLware_1_2_2/prompts/en/!dial-peer voice 2 voipapplication sample_rltdestination-pattern 8183821111session protocol sipv2session target ipv4:172.18.200.24codec g711ulaw!dial-peer voice 3 potsdestination-pattern 7173721111direct-inward-dialport 2/0:0prefix 7173721111!dial-peer voice 3621111 voipapplication sample_rltdestination-pattern 6163621111session protocol sipv2session target sip-servercodec g711ulaw!sip-uaretry bye 1retry refer 3timers notify 400timers refer 567no olisip-server ipv4:172.18.200.21!line con 0line aux 0line vty 0 4login!endRecipient Gateway Configuration Example
Router# show running-configBuilding configuration...Current configuration : 2791 bytes!version 12.2service configno service single-slot-reload-enableno service padservice timestamps debug uptimeservice timestamps log uptimeno service password-encryptionservice internalservice udp-small-servers!interface FastEthernet2/0ip address 172.18.200.24 255.255.255.0duplex autono shutspeed 10ip rsvp bandwidth 7500 7500!voice-port 1/1/1no supervisory disconnect lcfo!dial-peer voice 1 potsapplication sessiondestination-pattern 8183821111port 1/1/1!dial-peer voice 3 voipapplication sessiondestination-pattern 7173721111session protocol sipv2session target ipv4:172.18.200.36codec g711ulaw!dial-peer voice 4 voipapplication sessiondestination-pattern 6163621111session protocol sipv2session target ipv4:172.18.200.33codec g711ulaw!gateway!sip-ua!line con 0line aux 0line vty 0 4login!endFinal-Recipient Configuration Example
Router# show running-config!version 12.2no parser cacheservice timestamps debug uptimeservice timestamps log uptimeno service password-encryptionservice internal!no logging buffered!clock timezone GMT 0aaa new-model!!aaa authentication login h323 group radiusaaa authorization exec h323 group radiusaaa accounting connection h323 start-stop group radiusaaa session-id commonip subnet-zeroip tcp path-mtu-discovery!!ip domain name cisco.comip dhcp smart-relay!!voice class codec 1codec preference 2 g711alawcodec preference 3 g711ulawcodec preference 5 g726r16codec preference 6 g726r24codec preference 7 g726r32codec preference 8 g723ar53codec preference 9 g723ar63codec preference 10 g729r8!!interface Ethernet0/0ip address 172.18.200.33 255.255.255.0no shuthalf-duplexip rsvp bandwidth 7500 7500!voice-port 1/1/1no supervisory disconnect lcfo!voice-port 1/0/1!voice-port 1/1/0!voice-port 1/1/1!dial-peer voice 1 potsapplication sessiondestination-pattern 6163621111port 1/1/1!ip classlessno ip http serverip pim bidir-enable!!gateway!sip-ua!rtr responder!line con 0exec-timeout 0 0line aux 0line vty 0 4password wwline vty 5 15!!endAdditional References
For additional information related to the SIP Call Transfer and Call Forwarding Supplementary Services feature, refer to the following references:
•MIBs
•RFCs
Related Documents
Related Topic Document TitleCisco SIP Functionality
Cisco IOS Voice, Video, and Fax Configuration Guide, Release 12.2
Cisco IOS Voice, Video, and Fax Command Reference, Release 12.2 T
Session Initiation Protocol (SIP) for VoIP, Release 12.2(8)T
Session Initiation Protocol Gateway Call Flows, Release 12.2(4)T
Call Transfer Capabilities Using the Refer Method, Release 12.2(8)T
Cisco IOS References
Cisco IOS Debug Command Reference, Release 12.2
Cisco IOS IP Configuration Guide, Release 12.2
Cisco IOS IP Command Reference, Volume 1 of 3: Addressing and Services, Release 12.2
Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2
Cisco IOS IP Command Reference, Volume 3 of 3: Multicast, Release 12.2
Cisco IOS Dial Technologies Configuration Guide, Release 12.2
Cisco IOS Telephony
Cisco IOS Telephony Service V2.1: New Features for Cisco IOS Release 12.2(11)YT
Cisco VoiceXML
Cisco TCL IVR API
Standards
Standards 1 TitleITU-T H.450.2
Call transfer supplementary service for H.323
ITU-T H.450.3
Call diversion supplementary service for H.323
1 Not all supported standards are listed.
MIBs
MIBs 1 MIBs Link•CISCO-SIP-UA-MIB
To obtain lists of supported MIBs by platform and Cisco IOS release, and to download MIB modules, go to the Cisco MIB website on Cisco.com at the following URL:
http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml
1 Not all supported MIBs are listed.
To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL:
http://tools.cisco.com/ITDIT/MIBS/servlet/index
If Cisco MIB Locator does not support the MIB information that you need, you can also obtain a list of supported MIBs and download MIBs from the Cisco MIBs page at the following URL:
http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml
To access Cisco MIB Locator, you must have an account on Cisco.com. If you have forgotten or lost your account information, send a blank e-mail to cco-locksmith@cisco.com. An automatic check will verify that your e-mail address is registered with Cisco.com. If the check is successful, account details with a new random password will be e-mailed to you. Qualified users can establish an account on Cisco.com by following the directions found at this URL:
RFCs
Technical Assistance
Command Reference
This section documents new and modified commands. All other commands used with this feature are documented in the Cisco IOS Release 12.2 command reference publications.
New Commands
Modified Commands
retry refer
To configure the number of times that the Refer request is retransmitted, use the retry refer command in SIP user-agent configuration mode. To reset to the default, use the no form of this command.
retry refer number
no retry refer
Syntax Description
Defaults
10 retries
Command Modes
SIP user-agent configuration
Command History
Usage Guidelines
A Session Initiation Protocol (SIP) Refer request is sent by the originating gateway to the receiving gateway and initiates call forward and call transfer capabilities.
When configuring the retry refer command, use the default number of 10 when possible. Lower values such as 1 can lead to an increased chance of the message not being received by the receiving gateway.
Examples
The following example configures a Refer request to be retransmitted 10 times:
Router(config)# sip-uaRouter(config-sip-ua)# retry refer 10Related Commands
Command DescriptionDisplays the SIP retry attempts.
Displays response, traffic, timer, and retry statistics.
show sip-ua retry
To display retry statistics for the Session Initiation Protocol (SIP) user agent (UA), use the show sip-ua retry command in privileged EXEC mode.
show sip-ua retry
Syntax Description
This command has no arguments or keywords.
Command Modes
Privileged EXEC
Command History
Usage Guidelines
Use this command to verify SIP configurations.
Examples
The following is sample output from the show sip-ua retry command.
Router# show sip-ua retrySIP UA Retry Valuesinvite retry count = 6 response retry count = 1bye retry count = 1 cancel retry count = 1prack retry count = 10 comet retry count = 10reliable 1xx count = 6 notify retry count = 10refer retry count = 10Table 1 describes significant fields in this output, in alphabetical order.
Related Commands
show sip-ua statistics
To display response, traffic, and retry statistics for the Session Initiation Protocol (SIP) user agent (UA), use the show sip-ua statistics command in privileged EXEC mode.
show sip-ua statistics
Syntax Description
This command has no arguments or keywords.
Command Modes
Privileged EXEC
Command History
Usage Guidelines
Use this command to verify SIP configurations.
Examples
The following is sample output from the show sip-ua statistics command:
Router# show sip-ua statisticsSIP Response Statistics (Inbound/Outbound)Informational:Trying 0/0, Ringing 0/0,Forwarded 0/0, Queued 0/0,Success:OkInvite 0/0, OkBye 0/0,OkCancel 0/0, OkOptions 0/0,OkPrack 0/0, OkPreconditionMet 0/0OkNotify 0/0, 202Accepted 0/0OkInfo 0/0, OkSubscribe 0/0OKRefer 1/0Redirection (Inbound only):MultipleChoice 0, MovedPermanently 0,MovedTemporarily 0, SeeOther 0,UseProxy 0, AlternateService 0Client Error:BadRequest 0/0, Unauthorized 0/0,PaymentRequired 0/0, Forbidden 0/0,NotFound 0/0, MethodNotAllowed 0/0,NotAcceptable 0/0, ProxyAuthReqd 0/0,ReqTimeout 0/0, Conflict 0/0, Gone 0/0,LengthRequired 0/0, ReqEntityTooLarge 0/0,ReqURITooLarge 0/0, UnsupportedMediaType 0/0,BadExtension 0/0, TempNotAvailable 0/0,CallLegNonExistent 0/0, LoopDetected 0/0,TooManyHops 0/0, AddrIncomplete 0/0,Ambiguous 0/0, BusyHere 0/0,RequestCancel 0/0, NotAcceptableMedia 0/0BadEvent 0/0Server Error:InternalError 0/0, NotImplemented 0/0,BadGateway 0/0, ServiceUnavail 0/0,GatewayTimeout 0/0, BadSipVer 0/0,PreCondFailure 0/0Global Failure:BusyEverywhere 0/0, Decline 0/0,NotExistAnywhere 0/0, NotAcceptable 0/0SIP Total Traffic Statistics (Inbound/Outbound)Invite 0/0, Ack 0/0, Bye 0/0,Cancel 0/0, Options 0/0,Prack 0/0, Comet 0/0Notify 0/0, Refer 0/0Info 0/0Retry StatisticsInvite 0, Bye 0, Cancel 0, Response 0,Prack 0, Comet 0, Reliable1xx 0, Notify 0Refer 0SDP application statistics:Parses:4, Builds 2Invalid token order:0, Invalid param:0Not SDP desc:0, No resource:0The show sip-ua statistics command generates output, listed in Table 2, that includes a reason phrase and a count describing the SIP messages received and sent. When x/x is included in the reason phrase field, the first number is an inbound count, and the second number is an outbound count. The description field headings are based onthe SIP response code xxx, which the SIP protocol uses in determining behavior. SIP response codes are classified into one of the following six categories:
•1xx: Informational, indicates call progress.
•2xx: Success, indicates successful receipt or completion of a request.
•3xx: Redirection, that a redirect server has returned possible locations.
•4xx: Client error, indicates that a request cannot be fulfilled as it was submitted.
•5xx: Server error, indicates that a request has failed due to an error by the server. It may be retried at another server.
•6xx: Global failure, indicates that a request has failed and should not be tried again at any server.
Table 2 describes significant fields in this output, in alphabetical order.
Related Commands
show sip-ua timers
To display the current settings for the Session Initiation Protocol (SIP) user-agent (UA) timers, use the show sip-ua timers command in privileged EXEC mode.
show sip-ua timers
Syntax Description
This command has no arguments or keywords.
Command Modes
Privileged EXEC
Command History
Usage Guidelines
Use this command to verify SIP configurations.
Examples
The following is sample output from the show sip-ua timers command:
Router# show sip-ua timersSIP UA Timer Values (millisecs)trying 500, expires 150000, connect 500, disconnect 500comet 500, prack 500, rel1xx 500, notify 500
refer 300Table 3 describes significant fields in this output.
Related Commands
timers refer
To set how long the Session Initiation Protocol (SIP) user agent (UA) waits before retransmitting a Refer request, use the timers refer command in SIP user-agent configuration mode. To reset to the default, use the no form of this command.
timers refer time
no timers refer
Syntax Description
Defaults
500 milliseconds
Command Modes
SIP user-agent configuration
Command History
Usage Guidelines
A SIP Refer request is sent by the originating gateway to the receiving gateway and initiates call forward and call transfer capabilities.
Examples
The following example sets retransmission time to 500 milliseconds:
Router(config)# sip-uaRouter(config-sip-ua)# timers refer 500Related Commands
Command Descriptionshow sip-ua statistics
Displays response, traffic, timer, and retry statistics.
show sip-ua timers
Displays the current settings for SIP UA timers.
Glossary
Call-ID—A general header field that uniquely identifies a particular invitation or all registrations of a particular client.
call leg— A logical connection between the router and another endpoint.
CAS—channel-associated signaling.
CSPS—Cisco SIP proxy server.
e-phones—IP phones that are not configured on the gateway.
final-recipient—The user agent introduced into a call with the recipient.
gateway—A gateway allows SIP or H.323 terminals to communicate with terminals configured to other protocols by converting protocols. A gateway is the point where a circuit-switched call is encoded and repackaged into IP packets.
Invite—A SIP message that initiates a SIP session. It indicates that a user is invited to participate, provides a session description, indicates the type of media, and provides insight regarding the capabilities of the called and calling parties.
originator—The user agent that initiates the transfer or Refer request with the recipient.
proxy—A SIP UAC or UAS that forwards requests and responses on behalf of another SIP UAC or UAS.
PSTN—public switched telephone network. PSTN refers to the local telephone company.
recipient—The user agent that receives the Refer request from the originator and is transferred to the final-recipient.
RLT—Release Link Trunking. The traditional PSTN signaling used by PSTN applications to initiate call transfer over a CAS trunk.
RTP—Real-Time Transport Protocol. The protocol provides end-to-end network transport functions for applications that transmit real-time data and services such as payload type identification, sequence numbering, time-stamping, and delivery monitoring. A network protocol used to carry packetized audio and video traffic over an IP network.
SIP—Session Initiation Protocol. An application-layer protocol originally developed by the Multiparty Multimedia Session Control (MMUSIC) working group of the Internet Engineering Task Force (IETF). Their goal was to equip platforms to signal the setup of voice and multimedia calls over IP networks. SIP features are compliant with IETF RFC 2543, published in March 1999.
SIP URL—Session Initiation Protocol Uniform Resource Locator. Used in SIP messages to indicate the originator, recipient, and destination of the SIP request. Takes the basic form of user@host, where user is a name or telephone number, and host is a domain name or network address.
TCL IVR— Tool Command Language (TCL) Interactive Voice Response (IVR).
TEL URL—Telephone Uniform Resource Locator. Describes voice call connections to a terminal. Can also be any connection through a voice messaging system or a service that can be operated using DTMF tones. Takes the basic form of tel:telephone-subscriber-number, where tel indicates a URL and requests the local entity to place a voice call, and telephone-subscriber-number is the number to receive the call.
UA—user agent.
UAC—user agent client. A client application that initiates a SIP request.
UAS—user agent server (or user agent). A server application that contacts the user when a SIP request is received then returns a response on behalf of the user. The response accepts, rejects, or redirects the request.