Main
COPYRIGHT NOTICE
Table of Contents
Page
Page
Page
Page
Page
List of Tables
Page
List of Figures
Page
1. How To Use This Guide
1.1. Products Covered by this Guide
1.2. Organization of this Guide
Page
2. Introduction to Dialogic ISDN Products
2.1. The Basic Rate Interface
Page
Page
Page
2.2. The Primary Rate Interface
Page
Page
Page
2.3. Dialogic ISDN Protocol Support
Page
3. ISDN Technology Overview
3.1. Signaling
3.2. Framing
3.3. ISDN Call Control States
Page
Page
LEGEND
Inbound Outbound
Page
Page
Page
Page
Page
Page
Page
Page
Page
Page
4. ISDN Function Overview
4.1. ISDN Library Function Categories
Page
Page
Page
Page
Page
Page
Page
Page
Page
Page
4.2. API Functions and Supported ISDN Technologies
Page
Page
Page
Page
5. ISDN Function Reference
5.1. Function Description Format
Page
5.2. Programming Conventions
5.3. Function References: CRNs, CRVs, and Line Device Handles
5.4. Interpreting Function Call Failures
Page
Page
responds to an incoming call request cc_AcceptCall( )
51
None
Page
Page
cc_AnswerCall( ) accepts a connection request from the remote end
54
This function is called only after an inbound call has been detected.
Page
Page
Page
cc_CallAck( ) send the first response to an incoming call
58
If the function returns a value < 0 to indicate failure, use the cc_CauseValue( )
ccerr.h, isdnerr.h and isdncmd.h.
Page
Page
sends a PROGRESS message to the network cc_CallProgress( )
61
Page
Page
Page
retrieves the state of a call cc_CallState( )
65
If the function returns < 0 to indicate failure, use the cc_CauseValue( ) function
isdnerr.h and isdncmd.h. Error codes from the cc_CallState( ) function include the following:
Page
Page
cc_CauseValue( ) retrieves the error/cause code of a failure
68
Page
Page
closes a previously opened line device cc_Close( )
71
If the function returns < 0 to indicate failure, use the cc_CauseValue( ) function
Page
Page
cc_CRN2LineDev( ) matches a CRN to its line device handle
74
If the function returns < 0 to indicate failure, use the cc_CauseValue( ) function
Page
Page
Page
cc_DropCall( ) allows the application to disconnect a call
78
Page
Page
retrieves Automatic Number Identification (ANI) information cc_GetANI( )
81
If the function returns < 0 to indicate failure, use the cc_CauseValue( ) function
Error codes from the cc_GetANI( ) function include the following:
Page
Page
cc_GetBChanState( ) retrieves the status of the B channel
84
Page
Page
gets the call charge information cc_GetBilling( )
87
Page
Page
Page
gets the information elements associated with the CRN cc_GetCallInfo( )
91
Page
Page
cc_GetCES( ) retrieves the connection endpoint suffix
94
Page
Page
gets the last channel information cc_GetChanId( )
97
cc_GetChanId( ) gets the last channel information
98
Page
Page
Page
cc_GetCRN( ) retrieves the call reference number for the event
102
Page
Page
retrieves the status of the D channel cc_GetDChanState( )
105
If the function returns a value < 0 to indicate failure, use the cc_CauseValue( )
Error codes from the cc_GetDChanState( ) function include the following:
Page
Page
Page
Page
cc_GetDLinkState( ) retrieves the logical data link state
110
If the function returns a value < 0 to indicate failure, use the cc_CauseValue( )
Error codes from the cc_GetDLinkState( ) function include the following:
Page
Page
gets the dialed number information string cc_GetDNIS( )
113
Page
Page
Bitmask Type Action Default Setting
retrieves the current ISDN event mask cc_GetEvtMsk( )
117
Page
Page
cc_GetFrame( ) retrieves the frame
120
Page
Page
gets information elements associated with a line device cc_GetInfoElem( )
123
Network Facility IE using the cc_GetCallInfo( ) function is no longer supported.
Page
Page
Page
Page
Page
collects more digits via overlap receiving cc_GetMoreDigits( )
129
Page
Page
cc_GetNetCRV( ) retrieves the network call reference value
132
Page
Page
Page
cc_GetNonCallMsg( ) retrieves call data for a GLOBAL or NULL CRN event
136
Page
Page
Table 21. cc_GetParm( ) Parameter ID Definitions Define Description Possible return values
Page
Page
Page
Page
Page
Page
cc_GetParmEx( ) retrieve parameters containing variable data
146
If the function returns < 0 to indicate failure, use the cc_CauseValue( ) function
Error codes from the cc_GetParmEx( ) function include the following:
Page
Page
retrieves the service access point ID cc_GetSAPI( )
149
Page
Page
Page
gets the signaling information of an incoming message cc_GetSigInfo( )
153
Network Facility IE using the cc_GetCallInfo( ) function is no longer supported.
cc_GetSigInfo( ) gets the signaling information of an incoming message
154
Page
Page
gets the established attribute for the line device cc_GetUsrAttr( )
157
Page
Page
cc_GetVer( ) retrieves the firmware version number
160
If the function returns < 0 to indicate failure, use the cc_CauseValue( ) function
See Also None
Page
cc_HoldAck( ) accept a hold request from remote equipment
162
Page
Page
place an active call on hold cc_HoldCall( )
165
Page
Page
cc_HoldRej( ) reject a hold request from remote equipment
168
Page
Page
Page
cc_MakeCall( ) request a connection to make an outgoing call
172
request a connection to make an outgoing call cc_MakeCall( )
173
Call Waiting Example (Windows Only):
cc_MakeCall( ) request a connection to make an outgoing call
174
Page
Page
Page
Page
Page
Page
Page
Page
Page
cc_ReleaseCall( ) release all internal resources
184
Page
Page
release all Dialogic ISDN resources cc_ReleaseCallEx( )
187
The cc_ReleaseCallEx( ) function is not supported for LINUX applications.
cc_ReleaseCallEx( ) release all Dialogic ISDN resources
188
Page
Page
Page
cc_ReqANI( ) returns the caller ID
192
If the function returns < 0 to indicate failure, use the cc_CauseValue( ) function
Error codes from the cc_ReqANI( ) function include the following:
Page
Page
Page
cc_Restart( ) resets the channel to Null state
196
Page
Page
interprets the function return code cc_ResultMsg( )
199
Page
Page
cc_ResultValue( ) gets an error/cause code
202
Page
Page
accept a request to retrieve a call from hold cc_RetrieveAck( )
205
Page
Page
cc_RetrieveCall( ) retrieve a call from the Hold state
208
Page
Page
reject a request to retrieve a held call cc_RetrieveRej( )
211
Page
Page
Page
Page
cc_SetBilling( ) Vari-A-Bill services
Possible error codes from the cc_SetBilling( ) function include the following:
216
Page
Page
sets the default calling party number cc_SetCallingNum( )
219
Page
Page
Page
Page
Page
Page
cc_SetDChanCfg( ) sets the configuration of the Digital Subscriber Loop
226
If the function returns a value < 0 to indicate failure, use the cc_CauseValue( )
Error codes from the cc_SetDChanCfg( ) function include the following:
Page
Page
Page
Page
Page
Page
Page
Bitmask Type Action Default
Page
Page
Page
Page
sets additional information elements cc_SetInfoElem( )
239
Page
Page
cc_SetMinDigits( ) sets the minimum number of digits to be collected
242
Page
Page
Table 26. cc_SetParm( ) Parameter ID Definitions Define Description Possible return values
Page
Page
cc_SetParm( ) sets the default channel parameters
248
If the function returns < 0 to indicate failure, use the cc_CauseValue( ) function
Error codes from the cc_SetParm( ) function include the following:
Page
Page
Page
cc_SetParmEx( ) set parameters requiring variable data to be passed
252
Page
Page
sets the user attribute cc_SetUsrAttr( )
255
Page
Page
cc_SndFrame( ) sends a frame to the data link layer
258
Page
Page
Page
cc_SndMsg( ) sends a non-Call State related ISDN message to the network
262
Page
Page
Page
cc_SndNonCallMsg( ) sends a non-call related ISDN message
266
If the function returns a value < 0 to indicate failure, use the cc_CauseValue( )
Possible error codes from the cc_SndNonCallMsg( ) function include the following:
Page
Page
start the capture of all D channel information cc_StartTrace( )
269
Page
Page
Page
Page
Page
Page
cc_StopTrace( ) stops the trace
276
Page
Page
Page
cc_TermRegisterResponse( ) sends a response for CCEV_TERM_REGISTER
280
sends a response for CCEV_TERM_REGISTER cc_TermRegisterResponse( )
281
If the function returns a value < 0 to indicate failure, use the cc_CauseValue( )
Error codes from the cc_TermRegisterResponse( ) function include the following:
Page
Page
Page
redefines a call progress tones attributes cc_ToneRedefine( )
285
This function is not supported for the BRI/2 board or for PRI protocols.
cc_ToneRedefine( ) redefines a call progress tones attributes
286
Page
Page
Page
Page
Page
Page
6. Data Structure Reference
6.1. CC_RATE_U
6.2. channel_id
6.3. DCHAN_CFG
296
NOTE:
Page
Page
Page
= Fixed TEI assigning Term
NOTE:
cc_SetParmEx( )
6.4. DLINK
6.5. DLINK_CFG
6.6. IE_BLK
6.7. L2_BLK
6.8. MAKECALL_BLK
Page
Table 37. MAKECALL_BLK Parameter ID Definitions
Page
Page
Page
Page
Page
Section 6.2. channel_id
Page
6.9. NONCRN_BLK
6.10. PARM_INFO
6.11. SPID_BLK
6.12. TERM_BLK
Page
6.13. TERM_NACK_BLK
6.14. ToneParm
6.15. USPID_BLK
6.16. USRINFO_ELEM
6.17. WAITCALL_BLK
Page
7. ISDN Events and Errors
7.1. Event Categories
Table 47. Termination Events
cc_ReleaseCallEx( )
Page
Page
Page
Page
Page
Page
Page
Page
Page
Page
7.2. Error Handling
Page
Page
Page
Page
Page
Page
Page
Page
Page
Page
8. Application Guidelines
8.1. General Guidelines
8.2. Handling Errors, Events and Alarms
Page
8.3. Programming Considerations - PRI and BRI
Page
Page
Page
Page
8.4. Programming Considerations - BRI/SC Only
Page
Page
8.5. Diagnostic Tools (The DialView Suite)
Page
Page
8. Application Guidelines
363
Table 59. ISDTRACE Example File
Page
8. Application Guidelines
365
Page
Appendix A - Call Control Scenarios
BRI Channel Initialization and Start Up (User Side)
369
BRI Channel Initialization and Start Up (Network Side)
Application Device Driver State Firmware User to- Network
PRI Channel Initialization and Start Up
Normal Call Establishment and Termination
Page
Page
Page
Page
Host-controlled disconnect: Parameter 24 in the *.prm file = 01
Page
Application initiated call (outbound call)
Page
Page
Page
Page
Host-controlled disconnect: This is the default setting for parameter 24 in the *.prm file
Page
Call Rejection
Outgoing call rejected by the network
Incoming call rejected by the application
Page
Page
Page
Page
Page
Page
Page
Initiation of Hold and Retrieve (BRI and PRI DPNSS/Q.SIG Protocols Only)
Page
Page
Network Facility Request or Service
Page
Synchronous Programming: Call disconnected by application
Two B Channel Transfer (TBCT)
Figure 7. TBCT Invocation with Notification (Both Calls Answered)
Figure 8. TBCT Invocation with Notification (Call 1 Answered/Call 2 Alerting)
Users A & B connected
Users A & B disconnected
2. Retrieving the Networks Call Reference Value:
4. Processing the Network response to TBCT request:
Page
5. Processing the Network notification for disconnecting transferred calls:
Non-Call Associated Signaling (NCAS)
Page
NCAS call connected
2. Setting up the MAKECALL_BLK for an NCAS call:
NCAS call connected
Page
Appendix B - DPNSS Call Scenarios
Executive Intrusion - Normal
Executive intrusion - with prior validation
Local diversion - outbound
Local diversion - inbound
418
Remote diversion - outbound
Step Dialogic API Action/Result Dialogic Event
Remote diversion - inbound
Transfer
Page
Virtual call -outbound
Virtual call - inbound
Page
Appendix C - IEs and ISDN Message Types for DPNSS
Information Elements for cc_GetCallInfo( ) and cc_GetSigInfo( )
Page
Text Display IE:
Network Specific Indications (NSI) IE:
NSI IE fields 4 and 5 can be repeated multiple times, as needed. Extension Status IE:
Page
Information Elements for cc_SetInfoElem( )
Diversion IE:
Diversion Bypass IE:
Inquiry IE:
Extension Status IE:
Virtual Call IE:
Text Display IE:
Network Specific Indications (NSI) IE:
NSI IE fields 5 and 6 can be repeated multiple times, as needed.
DPNSS Message Types for cc_SndMsg( )
The following tables describe the ISDN message types that support the DPNSS protocol.
SndMsg_Divert:
SndMsg_Intrude:
SndMsg_NSI:
NSI IE fields 5 and 6 can be repeated multiple times as needed. SndMsg_Transfer:
SndMsg_Transit:
Page
Appendix D BRI Supplemental Services
Page
Page
Page
Page
Page
Appendix E - Establishing ISDN Cable Connections
Ordering Service
Establishing Connections to an NTU
Page
Appendix F - Related Publications
Page
Glossary
Page
Page
Page
Page
Page
Index
5
A
B
C
Page
Page
Page
D
E
F
G
H
I
L
M
N
O
P
Q
R
S
T
U
V
W