You are here: CSP Developer’s Guide: Internet Protocol > 5 Session-Initiation Protocol (SIP) Software > Refer-To Header Parameter Access

Refer-To Header Parameter Access

Overview

This feature allows access to the Refer-To parameters for both inbound and outbound calls where they are supplied in raw format.

Pertinent Specification

RFC 3515

Description

REFER is a SIP method defined by RFC 3261. The REFER method indicates that the recipient (identified by the Request -URI) should contact a third party using the contact information provided in the request.

The Refer-To is a request header field (request header) as defined by RFC 3515. It appears only in a REFER request. It provides a URL to reference.

The SIP stack in the CSP has the capability for inbound and outbound refer requests.

In addition to the Refer-To Parameters, the username, host name, and passwords are reported in a PPL Event Indication message for a Consultative REFER.

Prior to this feature, the SIP stack already supported the reporting of the username, host name, and passwords for a Blind REFER.

Refer-To Parameter Write Access

The Refer-To Parameters write access is within the context of SIP Refer message. The Excel SIP Stack allows the host to fill the Refer-To Parameters using the NPDI TLV, SIP Refer-To Header Parameter (0x2922) in the PPL Event Request (0x0044), SIP UA 0x00A7 with event ID 0x0027.

This functionality will work for data only up to 250 bytes (including the null). If the TLV (0x2922) is sent with data greater than 250 bytes then the PPL Event Request with be nacked with status 0x1304 (Invalid data).

API Messages

The following messages are used by this feature. Refer to the API Reference for the formats.

• PPL Event Request (0x0044)
PPL Event Indication (0x0043)

PPL Information

Component 0x00A7 - PPL Event Indications:

• 0x0021 - Blind Refer PPL Event Indication

• 0x0022 - Consultative Refer PPL Event Indication

Configuring

You configure the Refer-To Parameters feature in the SIP stack. It is disabled by default.

The SIP Message Information Mask TLV (0x027F) is used in the VoIP Protocol Configure (0x00EE) message. Set bit 12 to enable this feature.

Call Flows

In the following diagram, the Referrer and Referee are in the answered state.

Example:

Parameters supplied in the form of TLVs by the user:

Username (0x291E): bob

Hostname (0x2920): biloxi.example.net

Parameter (0x2922):?Accept-Contact=sip:bobsdesk.biloxi.example.net&Call-ID%3D55432%40alicepc.atlanta.example.com1>;method=SUBSCRIBE

The final Header will look as follows:

Refer-To: <sip:bob@biloxi.example.net:5060?Accept-Contact=sip:bobsdesk.biloxi.example.net&Call-ID%3D55432%40alicepc.atlanta.example.com1>;method=SUBSCRIBE

Refer-To Parameters read access

The SIP Stack will report the Refer-To Parameter, if it is present in the inbound Refer message, in raw, null-terminated ASCII format.

The reporting of the Refer-To Parameters is within the context of SIP Refer message. With the Refer-To Parameter reporting turned on, when the CSP receives a SIP REFER message, the Refer-To Parameters are reported as a null terminated string using NPDI TLV, SIP REFER-To Header Param (0x2922), in PPL Event Indication message (0x0043) with event id 0x0021 in case of Blind Refer or 0x0022 in case of consultative REFER.

This functionality will work for data only up to 250 bytes (including the null). If the received REFER message has Parameter greater than 250 bytes then the TLV will not be reported.

In the following diagram, the Referrer and Referee are in answered state.

Example

The inbound REFER message to has a Refer-To header as follows:

Refer-To:<sip:bob@biloxi.example.net:5060?Accept-Contact=sip:bobsdesk.biloxi.example.net&Call-ID%3D55432%40alicepc.atlanta.example.com1>;method=SUBSCRIBE

Then the PPL Event Indication will report the Refer-To header as

"?Accept-Contact=sip:bobsdesk.biloxi.example.net&Call-ID%3D55432%40alicepc.atlanta.example.com1>;method=SUBSCRIBE"

(Any data after the port number will be reported in this TLV.)

Session-Initiation Protocol. A signaling protocol used for establishing sessions in an IP network. A session could be a simple, two-way telephone call, or it could be a collaborative multi-media conference session.
See Programmable Protocol Language.
Network Protocol Data Intelligence. Also called “Interworking,” it is a software product that operates within Excel’s Call Control (Layer 4) and Services (Layer 5) call processing layers. NPDI is meant to enhance Excel’s call processing product offering by allowing call processing layers (specifically Layers 4 and 5) to perform advanced analysis, generation, and conversion of Network Signaling (NS) Layer 3 information.
Tag-Length-Value block. A standardized block that allows data to inserted in a standard way into API messages.
A condition that, when met, drives a state machine from one state to another. A condition that drives a Component out of its current state by invoking an associated primitive.
In PPL, a condition that, when met, drives a state machine (PPL Component) from one state to another, by invoking an associated Primitive. In PPL files, an Event is marked by an arrow and text.
Voice over Internet Protocol. The delivery of voice information in digital form in discrete packets rather than in the traditional circuit-committed protocols of the public-switched telephone network (PSTN).
American Standard Code for Information Interchange