NCAS allows users to communicate by means of user-to-user signaling without setting up a circuit-switched connection (it does not occupy B channel bandwidth). A temporary signaling connection is established and cleared in a manner similar to the control of a circuit-switch connection.
Since NCAS calls are not associated with any B channel, applications should receive and transmit NCAS calls on the D channel line device. Once the NCAS connection is established successfully, the application can transmit user-to-user messages using the CRN associated with the NCAS call. The Dialogic software and firmware support 16 simultaneous NCAS calls per D channel.
The following figures provide line diagrams that illustrate the operation of the NCAS feature.
Figure 9. User-Accepted Network-Initiated NCAS Request

Figure 10. User-Rejected Network-Initiated NCAS Request

Figure 11. User-Disconnected NCAS Call

The following scenarios demonstrate the procedures for a user-initiated and a network-initiated NCAS call.
User-initiated callIn the following scenario, the user initiates and disconnects the NCAS call for dtiB1.
Synchronous Programming
Application |
Device Driver |
State |
Firmware |
Network |
cc_Open( ) |
NULL |
|||
Return with line device <-- |
||||
Set up NCAS call parameter in MAKECALL_BLK |
||||
Return <-- |
||||
cc_MakeCall( ) |
||||
CALL_OUTGOING --> |
Setup --> |
|||
CCEV_CONNECTED <-- |
CONNECTED |
Connect <-- | ||
NCAS call connected | ||||
cc_SetInfoElem( ) |
||||
cc_SndMsg( ) |
CALL_UUI --> |
UUI --> |
||
CCEV_USRINFO <-- |
CALL_UUI <-- |
UUI <-- | ||
cc_GetCallInfo( ) |
||||
cc_DropCall( ) |
CALL_DISCONNECTED --> |
IDLE |
Release --> |
|
CCEV_DROPCALL <-- |
CALL_CLEARED <-- |
|||
cc_ReleaseCall( ) |
CALL_DEALLOC --> |
Rel_Comp <-- | ||
Driver releases CRN return |
NULL |
CALL_DEALLOC_ACK <-- |
||
The following code samples demonstrate the use of the Dialogic API at various stages of the NCAS call scenario.
1. Opening a D channel line level device:
LINEDEV D_chan_dev1_hdl;
.
.
rc = cc_Open( &D_chan_dev1_hdl, "dtiB24", 0);
.
2. Setting up the MAKECALL_BLK for an NCAS call:
MAKECALL_BLK *makecallp;
.
.
// initialize makecall block
makecallp->isdn.BC_xfer_cap = BEAR_CAP_UNREST_DIG;
makecallp->isdn.BC_xfer_mode = ISDN_ITM_PACKET;
makecallp->isdn.BC_xfer_rate = PACKET_TRANSPORT_MODE;
makecallp->isdn.usrinfo_layer1_protocol = NOT_USED;
makecallp->isdn.usr_rate = NOT_USED;
makecallp->isdn.destination_number_type = NAT_NUMBER;
makecallp->isdn.destination_number_plan = ISDN_NUMB_PLAN;
makecallp->isdn.destination_sub_number_type = OSI_SUB_ADDR;
makecallp->isdn.destination_sub_phone_number[0] = '1234'
makecallp->isdn.origination_number_type = NAT_NUMBER;
makecallp->isdn.origination_number_plan = ISDN_NUMB_PLAN;
makecallp->isdn.origination_phone_number[0] = '19739903000'
makecallp->isdn.origination_sub_number_type = OSI_SUB_ADDR;
makecallp->isdn.origination_sub_phone_number[0] = '5678'
makecallp->isdn.facility_feature_service = ISDN_SERVICE;
makecallp->isdn.facility_coding_value = ISDN_SDN;
// or ISDN_ACCUNET, please check with your service provider
makecallp->isdn.usrinfo_bufp = NULL;
makecallp->isdn.nsfc_bufp = NULL;
.
.
Network-initiated callIn the following scenario, the network initiates and disconnects the NCAS call for dtiB1.
Synchronous Programming
Application |
Device Driver |
State |
Firmware |
Network |
cc_Open( ) |
NULL |
|||
Return with line device <-- |
||||
cc_WaitCall( ) |
||||
CCEV_OFFERED D-channel line devices (dtiB1T24) <-- |
OFFERED |
CALL_INCOMING <-- |
Setup <-- | |
cc_AnswerCall( ) |
Call_Connect --> |
CONNECTED |
Connect --> |
|
NCAS call connected | ||||
cc_SetInfoElem( ) |
||||
cc_SndMsg( ) |
CALL_UUI --> |
UUI --> |
||
CCEV_USRINFO <-- |
CALL_UUI <-- |
UUI <-- | ||
cc_GetCallInfo( ) |
||||
IDLE |
Release <-- | |||
Release Comp --> |
||||
CCEV_DISCONNECT <-- |
CALL_DISC <-- |
|||
cc_DropCall( ) |
CALL_DISCONNECTED --> |
|||
CCEV_DROPCALL <-- |
CALL_CLEARED <-- |
|||
cc_ReleaseCall( ) |
CALL_DEALLOC --> |
|||
Driver releases CRN return |
NULL |
CALL_DEALLOC_ ACK <-- |
||
Click here to contact Dialogic Customer Engineering
Copyright 2001, Dialogic Corporation