You are here: CSP Developer’s Guide: Overview > 4 EXS API Application Development > Call Processing Module

Call Processing Module

Important Note

Only one call processing message can be outstanding per channel at a time. The host must wait for the call processing message ACK before sending the next message for a given channel. The response status should also be checked to determine if the host-initiated message was processed successfully or not. These messages typically:

• Report incoming calls

• Pass address digit information

• Make connections and re-connections

• Manage DSP resources per call

Introduction

The call processing module contains the high level call management of the application. The logic within this module is determined by the call model required by the host application.

Implementation of a host-level call model involves sending/receiving a series of EXS API call control messages on a per channel basis. These messages are typically used to report incoming calls, pass address digit information, make connections/re-connections, and so on.

One way to implement the call processing module is with a software finite state machine. Upon sending a call control message to the CSP, a channel enters a "response wait" state. Upon receiving a positive ACK, the next operation is performed (that is, send another message, wait to receive a message). Each channel should be treated separately, allowing for channels to be in different call management states simultaneously.

DS0 Status Change message

The DS0 Status Change message is vital to the call processing module. The DS0 Status Change message should be handled in any state that the channel may be in. This message reports channel In/Out of Service as well as error information.

Channel State Queries

You may also want to provide support for channel state queries in the event of a failure at the Call Processing Module. To accomplish this, use the following messages:

• Channel Connection Status Query

• Channel Parameter Query

• B Channel Query

• SS7 CIC Query

• Generic Report

Incoming Call Setup

When the CSP receives an incoming call, it sends a Request for Service message to the host by default. To have the CSP perform internal routing without host intervention, please refer to Chapters 1 and 2 of the Developer’s Guide: Line Cards.

When an incoming call is detected, the Signaling layer begins to execute the channel’s preprogrammed instructions for inseize control. You can configure Signaling to send a single report with all collected address information, or intermediate setup events such as dialtone detection and digit strings.

The Signaling layer receives several stages of digit strings during incoming call setup.

First, configure each stage for the following with the Inpulsing Parameters Configure message:

• Address signaling type

• The number of strings in the stage

• The digit collection method per string

You can configure call processing with a variety of requirements for line signaling and address data exchange, including multiple stages of inpulsing and outpulsing digits.

Allow the CSP to perform as much of the setup on its own as possible. This helps to optimize call processing and simplify application development. When sending call processing messages, the host must wait for the acknowledgment of one message before sending the next call processing message for that channel.

Outgoing Call Setup

With a single command to the CSP, the host initiates an outseizure with outpulsing digit strings. The command includes preprogrammed instructions for completing outbound call setup.

The CSP accommodates multi-wink/stage signaling interfaces for Feature Group D by detecting multiple start dial signals, and by outpulsing multiple stages of address digits.

As part of the outbound instruction sequence, you can activate call progress analysis for each call or for all outbound calls over a specified channel.

The Route Control message with a seize instruction initiates the outseizure (a seize instruction cannot be preprogrammed). When the CSP receives a positive acknowledgment for the outseizure, it executes the outseize instructions that have been configured for that channel. You can also initiate an outseize using the Outseize Control message.

You can use the internal router in the CSP to find a terminating channel.

Positive acknowledgment to a message
Digital Signal Processor
The condition of a component at a given instant. The current "context" of a PPL object, such as Idle, Seizing, Answered. In PPL files, a State is represented by a circle.
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.
Bearer channel, 64Kbps (ISDN) The channel that carries the actual payload (as opposed to D-channels, which carry signaling data that helps route the payload).
See Signaling System Number Seven.
See Circuit Identification Codes.
Incoming call setup during real time call processing on a specific channel.
Outgoing call setup during real-time call processing on a specific channel.