|
The Default Session Application Enhancements feature provides support for Open Settlement Protocol (OSP), call transfer, and call forwarding. These features previously required use of a Tool Command Language interactive voice response (TCL IVR) application, such as app_session.tcl.
Use Cisco Feature Navigator to find information about platform support and Cisco IOS software image support. Access Cisco Feature Navigator at http://www.cisco.com/go/fn . You must have an account on Cisco.com. If you do not have an account or have forgotten your username or password, click Cancel at the login dialog box and follow the instructions that appear.
You must install Cisco IOS Release 12.2(15)ZJ before using the Default Session Application Enhancements feature.
To configure the Default Session Application Enhancements feature, you must understand the following concepts:
Note The generic term session application refers to any application that is invoked when a call is placed through a dial peer. This generic term should not be confused with the specific TCL IVR 2.0 application named session (app_session.tcl), which is an example of a session application. |
The new call application global command allows you to configure a default application for all dial peers with a single command. Prior to this feature, you could configure applications at the dial peer level only.
The new version of the default session application provides support for OSP that was previously available only when using a TCL IVR application, such as app_session.tcl. With the new version of the default session application, you need not configure a TCL IVR 2.0 application on the plain old telephone service (POTS) dial peer in order to use OSP.
OSP is an ETSI standard, and it is the standard Cisco settlement protocol. OSP is a protocol based on Secure Socket Layer (SSL), which authenticates an IP session and authorizes the usage of network resources. OSP uses a combination of HTTP, Extensible Markup Language (XML), and SSL 3.0 to perform transfer pricing and authorization, and to indicate usage information.
The OSP implementation allows two gateways to use OSP to authorize and bill Public Switched Telephone Network (PSTN) calls routed over an IP network. With the settlement feature, calls always originate in the PSTN network, are authorized on an incoming gateway, and carry secure token information to an outgoing gateway.
Note For more information on OSP, refer to the Cisco IOS Voice, Video, and Fax Configuration Guide, Release 12.2, "Configuring Settlement Applications" chapter. |
The new version of the default session application provides support for H.450 and Session Initiation Protocol (SIP) call transfer and call forwarding. These features were previously available only when using a TCL IVR 2.0 application, such as app_session.tcl. With the new version of the default session application, you need not configure a TCL IVR 2.0 application on each incoming dial peer that will be involved in call transfer or call forwarding.
H450.2 call transfer is a supplementary service that allows an endpoint to redirect an answered call to another endpoint. The ITU-T H.450.2 specification defines two variants of call transfer:
Prior to Cisco IOS Release 12.2(11)YT, Cisco gateways supported H.450.2 call transfer as the transferred and transferred-to endpoint for call transfers without consultation.
Starting with Cisco IOS Release 12.2(11)YT, Cisco gateways may also act as the transferring, transferred and transferred-to endpoint for call transfer without consultation when configured with a TCL IVR application that provides this functionality. One example is app-h450-transfer.2.0.0.1.zip (which can be found at http://www.cisco.com/cgi-bin/tablebuild.pl/ip-iostsp). This TCL IVR application allows the gateway to act as an H450.2 transferring endpoint for analog Foreign Exchange Station (FXS), T1 channel associated signaling (CAS), and Cisco IOS Telephony Service (ITS) IP phones.
Prior to Cisco IOS Release 12.2(11)YT, Cisco gateways did not support H.450.2 call transfer with consultation.
Starting with Cisco IOS Release 12.2(11)YT, Cisco gateways may act as the transferring, transferred, and transferred-to endpoint for call transfer with consultation when configured with a TCL IVR application that provides this functionality. One example is app-h450-transfer.2.0.0.1.zip (which can be found at http://www.cisco.com/cgi-bin/tablebuild.pl/ip-iostsp). This TCL IVR application allows the gateway to act as an H450.2 transferring endpoint for analog FXS and Cisco ITS IP phones.
Starting with Cisco IOS Release 12.2(11)YT, Cisco gateways support H.450 call transfer using gatekeeper routed signaling.
Starting with Cisco IOS Release 12.2(11)YT, Cisco gateways support H.450 gatekeeper controlled (gatekeeper initiated) call transfer. Note that this functionality has not been interoperability tested with Cisco or any third-party gatekeepers.
SIP supports transfer without consultation (blind transfer) and transfer with consultation (attended transfer) 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.
Release Line Trunking (RLT) functionality can be used to initiate blind transfers on Cisco IOS SIP gateways. The RLT functionality is used by SIP gateways to allow SIP call transfers to be triggered by CAS trunk signaling, which a 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. 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.
Cisco IOS SIP gateways can 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 number of the final recipient. 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.
H450.3 call diversion is a supplementary service used during call establishment that allows an H.323 endpoint to divert the unanswered call to another H.323 endpoint. Four types of call diversion are specified in H450.3:
Prior to Cisco IOS Release 12.2(11)YT, Cisco gateways supported CFU when acting as the diverted or diverted-to endpoint.
Starting with Cisco IOS Release 12.2(11)YT, Cisco gateways may act as the diverting endpoint for Cisco ITS IP phones when configured with a TCL IVR application that provides this functionality. One example is app-h450-transfer.2.0.0.1.zip (which can be found at http://www.cisco.com/cgi-bin/tablebuild.pl/ip-iostsp).
Prior to Cisco IOS Release 12.2(11)YT, Cisco gateways supported CFB when acting as the diverted or diverted-to endpoint.
Starting with Cisco IOS Release 12.2(11)YT, Cisco gateways may act as the diverting endpoint for Cisco ITS IP phones when configured with a TCL IVR application that provides this functionality. One example is app-h450-transfer.2.0.0.1.zip (which can be found at http://www.cisco.com/cgi-bin/tablebuild.pl/ip-iostsp).
Prior to Cisco IOS Release 12.2(11)YT, Cisco gateways supported CFNR when acting as the diverted or diverted-to endpoint.
Starting with Cisco IOS Release 12.2(11)YT, Cisco gateways may act as the diverting endpoint for Cisco ITS IP phones when configured with a TCL IVR application that provides this functionality. One example is app-h450-transfer.2.0.0.1.zip (which can be found at http://www.cisco.com/cgi-bin/tablebuild.pl/ip-iostsp).
Cisco gateways support H.450.3 call deflection as the diverting, diverted, and diverted-to endpoint. The Cisco gateway can act as the diverting endpoint upon receiving a QSIG reroute invoke request FACILITY message from the destination during call establishment. The deflecting gateway then uses the procedures outlined in the H.450.3 call deflection standard to transfer the call to another endpoint.
Note Call deflection cannot be invoked by using any other signaling type or switch type. The initiation of call deflection using QSIG reroute invoke is valid only on calls that arrived as H.323 calls at the deflecting gateway. In other words, for calls that arrive at the gateway through a telephony interface (such as a hairpin call) or by using a non-H.323 IP protocol, the QSIG reroute invoke is ignored. |
Starting with Cisco IOS Release 12.2(11)YT, Cisco gateways support call diversion using gatekeeper routed signaling.
Starting with Cisco IOS Release 12.2(11)YT, Cisco gateways support H.450 gatekeeper controlled (gatekeeper initiated) call transfer. Note that this functionality has not been interoperability tested with Cisco or any third-party gatekeepers.
SIP call forwarding is supported only on e-phonesIP phones that are registered with a Cisco IOS voice gateway operating in IOS Telepohony Service (ITS) mode. FXS, Foreign Exchange Office (FXO), T1, E1, and CAS phones are not supported.
With e-phones, four different types of SIP call forwarding are supported:
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 Voice over IP (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, dual tone multifrequency (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. |
Note For more information on call transfer and call forwarding, refer to the Voice Configuration Library, Cisco IOS Release 12.3, "Configuring H.323 Applications" chapter and "Configuring SIP for VoIP" chapter, and SIP Call Transfer and Call Forwarding Supplementary Services documentation. |
The default session application enhancements are in effect by default. The new version of the default session application is used automatically for incoming calls unless a different application is configured for specific dial peers using the application command or is globally configured for all inbound dial peers using the call application global command.
This section contains the following procedures.
Perform this task to configure the application to use for incoming calls whose incoming dial peer does not have an explicit application configured.
3. call application global application-name
Command or Action | Purpose | |
---|---|---|
Step 1 |
Example: |
Enables higher privilege levels, such as privileged EXEC mode. |
Step 2 |
Example: |
|
Step 3 |
Example: |
Configures an application to be executed by every inbound dial peer that does not have a specific application configured.
|
Step 4 |
Example: |
|
Step 5 |
Example: |
(Optional) Displays the contents of the currently running configuration file. |
Perform this task to verify that the new version of the default session application is executing.
2. debug voip application session
Command or Action | Purpose | |
---|---|---|
Step 1 |
Example: |
Enables higher privilege levels, such as privileged EXEC mode. |
Step 2 |
Example: |
The Default Session Application Enhancements feature introduces a new EXEC mode command to enable diagnostic output concerning various events relating to the operation of the default session application to be displayed on a console. The debug voip application command is intended only for troubleshooting purposes because the volume of output generated by the software can result in severe performance degradation on the router. Perform this task to minimize the impact of using the debug voip application command.
1. Attach a console directly to a router running the Cisco IOS Release 12.2(15)ZJ or a later release.
5. Use Telnet to access a router port and repeat Steps 2 and 3.
Command or Action | Purpose | |
---|---|---|
Step 1 | Attach a console directly to a router running the Cisco IOS Release 12.2(15)ZJ or a later release. |
|
Step 2 |
Example: |
Enables higher privilege levels, such as privileged EXEC mode. |
Step 3 |
Example: |
|
Step 4 |
Example: |
|
Step 5 | Use Telnet to access a router port and repeat Steps 2 and 3. |
Enters global configuration mode in a recursive Telnet session, which allows the output to be redirected away from the console port. |
Step 6 |
Example: |
|
Step 7 |
Example: |
|
Step 8 |
Example: |
Display debug messages for Application Framework Session application interactions.
|
Step 9 |
Example: |
|
Step 10 |
Example: |
|
Step 11 |
Example: |
This section provides configuration examples to match the identified configuration tasks in the previous section:
In the following example, clid_authen_collect is configured as the global application for all inbound dial peers that do not have a specific application configured. The default session application is configured on dial peer 111. This dial peer configuration overrides the global application configuration.
When a call comes into dial peer 110, the clid_authen_collect application handles the call because dial peer 110 has no application configured , and the clid_authen_collect application is the globally configured application.
When a call comes into dial peer 111, the new version of the default session application handles the call because it is configured on the dial peer, and the dial peer application configuration overrides the globally configured application.
In the following example, the output is displayed for each command in the task.
Sample Output for the debug voip application session Command
In the following example, the function names that begin with afs indicate that the default session application is executing:
The following sections provide additional references related to the Default Session Application Enhancements feature:
Related Topic | Document Title |
---|---|
|
|
Standards1 | Title |
---|---|
1Not all supported standards are listed. |
MIBs1 | MIBs Link |
---|---|
No new or modified MIBs are supported by this feature, and support for existing MIBs has not been modified by this feature. |
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 |
1Not all supported MIBs are listed. |
RFCs1 | Title |
---|---|
No new or modified RFCs are supported by this feature, and support for existing RFCs has not been modified by this feature. |
1Not all supported RFCs are listed. |
This section documents new and modified commands. All other commands used with this feature are documented in the Cisco IOS Release 12.2 T command reference publications.
To enable a specific interactive voice response (IVR) application on a dial peer, use the application command in dial peer voice configuration mode. To remove the application from the dial peer, use the no form of this command.
Syntax Description
Defaults
No default behavior or values.
Command Modes
Command History
Usage Guidelines
Use this command to associate a predefined session application with an incoming POTS dial peer or an outgoing MMoIP dial peer. Calls using this incoming POTS dial peer or this outgoing MMoIP dial peer will be handed to the predefined specified session application.
Note In Cisco IOS Release 12.2(15)ZJ and later releases, the application name default refers to the new version of the default session application that supports OSP, call transfer, and call forwarding. The default session application in Cisco IOS Release 12.2(13)T and earlier releases has been renamed default.old.c and can still be configure for specific dial peers through the application command or globally configured for all inbound dial peers through the call application global command. |
For SGCP networks, enter SGCPAPP in uppercase characters. This application can be applied only to POTS dial peers. Note that SGCP dial peers do not use dial peer hunting.
Note In Cisco IOS Release 12.2, you cannot mix SGCP and non-SGCP endpoints in the same T1 controller. You also cannot mix SGCP and non-SGCP endpoints in the same DS0 group. |
For MGCP networks, enter MGCPAPP in upper-case characters. This application can be applied only to POTS dial peers. Note that MGCP dial peers do not use dial peer hunting.
Examples
The following example shows how to define an application and how to apply it to an outbound MMoIP dial peer for the fax onramp operation:
The following example shows how to apply the MGCP application to a dial peer:
Related Commands
Command | Description |
Defines the name to be used for an application and indicates the location of the appropriate IVR script to be used with this application. |
|
To configure an application to use for incoming calls whose incoming dial peer does not have an explicit application configured, use the call application global command in global configuration mode. To remove the application, use the no form of this command.
Syntax Description
Defaults
The default application is default for all dial peers.
Command Modes
Command History
Usage Guidelines
The application defined in the dial peer always takes precedence over the global application configured with the call application global command. The application configured with this command executes only when a dial peer has no application configured.
The application you configure with this command can be an application other than the default session application, but it must be included with the Cisco IOS software or be loaded onto the gateway with the call application voice command before using this command. If the application does not exist in Cisco IOS software or has not been loaded onto the gateway, this command will have no effect.
Note In Cisco IOS Release 12.2(15)ZJ and later releases, the application name default refers to the new version of the default session application that supports Open Settlement Protocol (OSP), call transfer, and call forwarding. The default session application in Cisco IOS Release 12.2(13)T and earlier releases has been renamed default.old.c and can still be configured for specific dial peers through the application command or globally configured for all inbound dial peers through the call application global command. |
Examples
In the following example, the clid_authen_collect application is configured as the global application for all inbound dial peers that do not have a specific application configured:
Related Commands
Command | Description |
---|---|
Defines the name to be used for an application and indicates the location of the appropriate IVR script to be used with this application. |
To convert a DISCONNECT message with Progress Indicator set to PROG_INBAND (PI=8) to a regular DISCONNECT message when the call is in the active state, use the call application voice default disc-prog-ind-at-connect command in global configuration mode. To revert to a DISCONNECT message with Progress Indicator set to PROG_INBAND (PI=8) when the call is in the active state, use the no form of this command.
Syntax Description
Defaults
The DISCONNECT message has Progress Indicator set to PROG_INBAND (PI=8) when the call is in the active state.
Command Modes
Command History
Usage Guidelines
This command has no effect if the call is not in the active state.
This command is available for the default voice application. It may not be available when using some TCL IVR applications.
The Cisco IOS command-line interface command completion and help features do not work with this command. The command must be typed correctly and in its entirety.
Note This command may be replaced in future releases, or its syntax may change in a way that is not backward compatible. |
Examples
In the following example, a DISCONNECT message with Progress Indicator set to PROG_INBAND (PI=8) is converted to a regular DISCONNECT message when the call is in the active state:
To display all application library debug messages, use the debug voip application command in privileged EXEC mode. To disable the debug output, use the no form of this command.
Syntax Description
Displays debug messages for the Application Framework library |
|
Provides application layer tracing related to the processing of supplementary services requests. |
Defaults
Command Modes
Command History
Usage Guidelines
With no options specified, the debug voip application command displays application program interface (API) libraries being processed.
The debug voip application all command differs from the debug voip ivr all command in that the former enables all application framework debugs, and the latter enables both the Application Framework Session debugs and the interactive voice response (IVR) debugs.
Table 1 lists those commands that have been replaced in Cisco IOS Release 12.2(15)ZJ:
Table 1 Replaced debug voip ivr Commands
Command in Cisco IOS Release 12.2(13)T | Replacement Command in Cisco IOS Release 12.2(15)ZJ |
---|---|
Examples
The following examples are from the code for Cisco IOS Release 12.2(15)ZJ.
The following output is displayed when the debug voip application callsetup command is entered:
The following output is displayed when the debug voip application digitcollect command is entered:
The following output is displayed when the debug voip application session command is entered:
Table 2 describes the significant fields shown in the display.
Table 2 debug voip application Field Descriptions
Field | Description |
---|---|
Called # may not appear in the initial /AFS_CALLSETUPIND message, but it appears in later in the /afsSetupCall message. |
|
Related Commands
e-phoneIP phone that is registered with a Cisco IOS voice gateway operating in IOS Telephony Service mode.
H.323H.323 allows dissimilar communication devices to communicate with each other by using a standardized communication protocol. H.323 defines a common set of CODECs, call setup and negotiating procedures, and basic data transport methods.
H.450.2Call transfer supplementary service for H.323.
H.450.3Call diversion supplementary service for H.323.
IVRinteractive voice response. Term used to describe systems that provide information in the form of recorded messages over telephone lines in response to user input in the form of spoken words or, more commonly, DTMF signaling. Examples include banks that allow you to check your balance from any telephone and automated stock quote systems.
OSPOpen Settlement Protocol. Client/server protocol defined by the ETSI TIPHON to establish authenticated connections between gateways, and to allow gateways and servers to transfer accounting and routing information securely. OSP allows service providers to roll out VoIP services without establishing direct peering agreements with other ITSPs.
SIPSession Initiation Protocol. Protocol developed by the IETF MMUSIC Working Group as an alternative to H.323. SIP features are compliant with IETF RFC 2543, published in March 1999. SIP equips platforms to signal the setup of voice and multimedia calls over IP networks.
TCLTool Command Language. A scripting language used for gateway products both internally and externally to Cisco IOS software code.
Note Refer to the Internetworking Terms and Acronyms for terms not included in this glossary. |
Posted: Tue May 27 15:08:33 PDT 2003
All contents are Copyright © 1992--2003 Cisco Systems, Inc. All rights reserved.
Important Notices and Privacy Statement.