(Page 10 of 12 in this chapter)


3.9 Comprehensive State Diagrams

This section presents two comprehensive state diagrams of call control functions. Figure 12 is a state diagram encompassing inbound, outbound, and service interruption control functions. Figure 13 adds call transfer functionality to Figure 12.

The AG Access call state machine is event-driven. The state does not change when a call control function is invoked.

To detect if a function is called twice in a row, the library stores the identity of the last call control command issued to the board in the pendingcommand field of the call status structure (ADI_CALL_STATUS).

The following table shows which functions are allowed in each state.

State

Pending Command

Functions Allowed

IDLE

(none)
Place call
Release

adiPlaceCall
adiReleaseCall
(none)

INCOMING_CALL

(none)
Answer
Reject

adiAnswerCall, adiRejectCall
adiAnswerCall
(none)

ANSWERING_CALL

(none)
Answer
Release

adiAnswerCall, adiReleaseCall
adiAnswerCall
, adiReleaseCall
(none)

PLACING_CALL

(none)
Release

adiReleaseCall
(none)

DISCONNECTED

(none)
Release

adiReleaseCall
(none)

CONNECTED

(none)

Release
Release 2nd
Transfer
Place 2nd call

adiReleaseCall, adiTransferCall, adiPlaceSecondCall
(none)
adiReleaseCall
adiReleaseCall
, adiReleaseSecondCall
adiReleaseCall
, adiReleaseSecondCall

REJECTING

(none)

(none)

PLACING_CALL2

(none)
Release
Release 2nd

adiReleaseCall, adiReleaseSecondCall
(none)
adiReleaseCall

CONNECTED2

(none)
Release
Release 2nd

adiReleaseCall, adiReleaseSecondCall
(none)
adiReleaseCall


 

Figure 12. Inbound, Outbound, and Service Interruption States


 

Figure 13. Inbound, Outbound, Service Interruption, and Call Transfer States



(Page 10 of 12 in this chapter)


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