(Page 3 of 12 in this chapter)


3.2 Telephone Network Events

When performing call control functions, AG Access must process the events that arrive from the telephone network, and in response to AG Access commands. AG Access translates the telephone network events into generic call control events. These telephone network events fall into two classes: informational and transitional. Actual event names for use in C programming are defined in uppercase letters with an ADIEVN_ prefix. Refer to Appendix B in the AG Access Function Reference Manual for a complete listing of events.

3.2.1 Informational Events

Informational events do not require any action by the application. For example, the protocol error event, ADIEVN_PROTOCOL_ERROR, provides information about abnormalities on the line including false seizure, too many incoming digits, or premature answer while dialing. Other informational events are generated only if you enable them by setting them in the eventmask in ADI_CALLCTL_PARMS.

The eventmask parameter in ADI_CALLCTL_PARMS dictates which optional informational call control events are generated. This parameter is discussed in detail in Section 3.4.1.

The informational telephone network events are:

AG Access Event

Description

ADIEVN_CALL_PROCEEDING

The destination address has been delivered (outbound only).

ADIEVN_REMOTE_ALERTING

Ring tone has been received from the telephone network (outbound only).

ADIEVN_REMOTE_ANSWERED

The call is connected to the telephone network (outbound only).

ADIEVEN_PROTOCOL_ERROR

Abnormalities present on the line.

ADIEVN_SEIZURE_DETECTED

The telephone network has seized the line (inbound only).

3.2.2 Transitional Events

Transitional events are generated when the call state changes. They are generated because AG Access needs the application to choose an action (e.g., incoming call response) or acknowledge that an application command is proceeding (e.g., placing call).

The following table summarizes the transitional events which comprise the majority of call control functionality:

AG Access Event

Description

ADIEVN_INCOMING_CALL

The telephone network is offering a call.

ADIEVN_ANSWERING_CALL

AG Access is answering the incoming call.

ADIEVN_REJECTING_CALL

AG Access is not answering the incoming call. This can occur for two reasons: either the application commanded it or the protocol forced it due to an application timeout once the remote side hangs up as a result, the reason in the disconnect event value field is set to rejected.

The application must still release the call via adiReleaseCall.

ADIEVN_PLACING_CALL

AG Access has seized an outbound line and is delivering the destination address.

For bidirectional lines, the placing call event guarantees that an incoming call event will not be generated until the call is released. This is called glare resolution.

ADIEVN_CALL_CONNECTED

Inbound: The telephone network connection is established.

Outbound: The telephone network connection is established and any other connection criteria have been satisfied (e.g., voice detected, modem tones detected).

ADIEVN_CALL_DISCONNECTED

The remote party has disconnected or the telephone network has rejected a placed call (e.g., busy tone detected). The application must still release the call by invoking adiReleaseCall.

ADIEVN_CALL_RELEASED

The telephone network connection and all the AG Access resources allocated to this call have been released.

ADIEVN_CALLS_BLOCKED

Call establishment is disabled. Inbound calls are rejected and outbound calls are prevented.

ADIEVN_CALLS_UNBLOCKED

Call establishment is re-enabled. Inbound calls may be received and outbound calls may be placed.

ADIEVN_PLACING_CALL2

The main call was placed on hold and a second call is being placed.

ADIEVN_CALL2_CONNECTED

The third party has answered the call.

ADIEVN_CALL2_DISCONNECTED

The third party is unavailable or has hung up.

ADIEVN_OUT_OF_SERVICE

The line is not available for use. Either the telephone network is blocking calls or the line and associated hardware are not configured properly.

ADIEVN_IN_SERVICE

The line has returned to normal after being out of service.



(Page 3 of 12 in this chapter)


tech_support@nmss.com
Copyright © 1997, Natural MicroSystems, Inc. All rights reserved.