(Page 1 of 1 in this chapter) Version
|
Operation
|
Supported?
|
|---|---|
|
Receiving inbound calls
|
Yes
|
|
Placing outbound calls
|
Yes
|
|
Releasing calls
|
Yes
|
|
Call blocking
|
Yes
|
|
Call transfer
|
No
|
|
Call hold/retrieve
|
No
|
Figure 10. NCC Line State Diagram

typedef struct
{
DWORD size; /* No of bytes written to by callstatus */
DWORD state; /* Current call state */
char calledaddr [NCC_MAX_DIGITS+1]; /* Called number address */
char callingaddr[NCC_MAX_DIGITS+1]; /* Calling number address */
char callingname[NCC_MAX_CALLING_NAME]; /* Calling name info */
DWORD pendingcmd; /* Last command not ack'ed by board */
DWORD held; /* Non--zero value when call is held */
DWORD direction; /* Indicates inbound or outbound call */
CTAHD linehd; /* Line handle on which call resides */
} NCC_CALL_STATUS;
|
Field
|
DMS
|
NI2
|
4ESS
|
5ESS
|
NTT
|
AU S
|
HKT
|
KOR
|
TWN
|
VN6
|
EUR
|
QSIG
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
size
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
|
state
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
|
calledaddr
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
|
callingaddr
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
x1
|
|
pendingcommand
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
typedef struct
{
DWORD size; /* Size returned by nccGetExtendedCallStatus */
INT32 reason; /* NCC reason for returning to Idle */
DWORD stream; /* MVIP stream number */
DWORD timeslot; /* MVIP timeslot */
char callednumplan; /* Q.931 numbering plan ID if supported */
char callednumtype; /* Q.931 number type if supported */
char callingnumplan; /* Q.931 numbering plan ID if supported */
char callingnumtype; /* Q.931 number type if supported */
char callingpres; /* Q.931 caller ID presentation ind. */
char callingscreen; /* Q.931 ANI screening indicator */
char progressdescr; /* Q.931 progress descriptor */
char releasecause; /* Q.931 cause for call release */
char redirectingaddr[NCC_MAX_DIGITS+1]; /* Redirecting number */
char redirectingplan; /* Q.931 numbering plan ID if supported */
char redirectingtype; /* Q.931 number type if supported */
char redirectingpres; /* Q.931 redir number pres. indicator */
char redirectingscreen; /* Q.931 redir number screen indicator */
char redirectingreason; /* Reason for redirection */
char originalcalledaddr[NCC_MAX_DIGITS+1]; /* Original called nmb */
char origcalledplan; /* Q.931 numbering plan ID if supported */
char origcalledtype; /* Q.931 number type if supported */
char origcalledpres; /* Original called number pres. indicator */
char origcalledscreen; /* Q.931 redirecting number screen ind. */
char origcalledreason; /* Q.931 reason for redirection */
char UUI[NCC_ISDN_MAX_UUI + 1]; /* User to user information */
} NCC_ISDN_EXT_CALL_STATUS;
2 Field may be filled when the call is alerting.
3 Field may be filled when the call is released.
* t1tnwhere:
* and t digits from the string.
* s1snwhere:
* and s digits from the string.
-O) that sets this bit. Refer to Chapter 7 for more information.
-I) that sets this bit. Refer to Chapter 7 for more information.
Figure 12. Sequence Diagram for Answering an Inbound Call
Figure 13. Sequence Diagram for Rejecting an Inbound Call
Figure 14. Sequence Diagram for Accepting and then Answering an Inbound Call
Figure 15. Sequence Diagram for Accepting and then Rejecting an Inbound Call
Figure 16. Sequence Diagram for Immediately Rejecting an Inbound Call
Figure 17. Sequence Diagram for an Outbound Call
Figure 18. Sequence Diagram for Placing a Call with Overlapped Sending
Figure 19. Sequence Diagram for Handling Overlapped Receiving of Digits
Figure 20. Sequence Diagram for Network-Initiated Release
Figure 21. Sequence Diagram for Application-Initiated Release
typedef struct
{
DWORD size; /* Size of this structure */
char uui[NCC_ISDN_MAX_UUI + 1]; /* UUI */
CALLEDNUM callednumber; /* Called number substructure */
CALLINGNUM callingnumber; /* Calling number substructure */
REDIRECTINGNUM redirectingnumber; /* Redirecting number substructure */
WORD service; /* Service */
WORD nsf_present; /* NSF usage flag */
WORD nsf_service_feature; /* Service or fiture is set in the */
/* coding field */
WORD nsf_facility_coding; /* NSF coding */
} PLACECALL_EXT;
typedef struct
{
DWORD size; /* Size of this structure */
WORD plan;
/* Q.931 numbering plan of calling address */
WORD type
/* Q.931 numbering type of calling address */
WORD screen /* Q.931 ANI screening indicator*/
WORD presentation;
/* Q.931 caller ID presentation indicator */
} CALLING_NUM;
typedef struct
{
DWORD size; /* Size of called number */
WORD plan;
/* Q.931 numbering plan of called address */
WORD type
/* Q.931 numbering type of called address */
} CALLED_NUM;
typedef struct
{
DWORD size; /* Size of this structure */
char digits[33]; /* Redirecting address */
char pad[3]; /* padding */
WORD plan;
/* Q.931 numbering plan of redirecting address */
WORD type;
/* Q.931 numbering type of redirecting address */
WORD screen;
/* Q.931 redirecting address screening indicator */
WORD presentation;
/* Q.931 redirecting address presentation indicator */
WORD reason;
/* Q.931 reason for redirection */
WORD pad[1] /*padding */
} REDIRECTING_NUM;
|
PLACECALL_EXT Field
|
4ESS
|
E10
|
NI2
|
DMS100
|
ETSI
|
VN6
|
HKG
|
AUSTEL1
|
NTT
|
KOREA
|
TAIWAN
|
QSIG
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
uui
|
x
|
x
|
x
|
|
x
|
x
|
|
|
x
|
x
|
x
|
|
|
callednumber
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
|
callingnumber
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
|
redirectingnumber
|
x
|
x
|
x
|
x
|
|
|
|
|
|
|
|
|
|
service
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
|
nsf_present
|
x
|
|
|
|
|
|
|
|
|
|
|
|
|
nsf_service_feature
|
x
|
|
|
|
|
|
|
|
|
|
|
|
|
nsf_facility_coding
|
x
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
{
DWORD size; /* Size of this structure */
char uui [NCC_ISDN_MAX_UUI + 1]; /* UUI */
} ANSWERCALL_EXT;
|
ANSWERCALL_EXT Field
|
4ESS
|
E10
|
NI2
|
DMS100
|
ETSI
|
VN6
|
HKG
|
AUSTEL1
|
NTT
|
KOREA
|
TAIWAN
|
QSIG
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
uui
|
x
|
x
|
|
|
x
|
x
|
|
|
x
|
x
|
x
|
|
|
Field
|
Description
|
|---|---|
|
uui
|
Pointer to a string with user-to-user information (132 chars max)
|
typedef struct
{
DWORD size; /* Size of this structure */
char uui [NCC_ISDN_MAX_UUI + 1]; /* UUI */
WORD cause; /* Cause value */
WORD progressdescription; /* Progress description */
} ACCEPTCALL_EXT;
|
ACCEPTCALL_EXT Field (PROGRESS message)
|
4ESS
|
E10
|
NI2
|
DMS100
|
ETSI
|
VN6
|
HKG
|
AUSTEL1
|
NTT
|
KOREA
|
TAIWAN
|
QSIG
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
uui
|
Not sent
| |||||||||||
|
cause
|
x
|
x
|
x
|
x
|
x
|
|
|
|
|
|
|
|
|
progressdescription
|
x
|
x
|
x
|
x
|
x
|
|
|
|
|
|
|
|
|
ACCEPTCALL_EXT Field (ALERTING message)
|
4ESS
|
E10
|
NI2
|
DMS100
|
ETSI
|
VN6
|
HKG
|
AUSTEL1
|
NTT
|
KOREA
|
TAIWAN
|
QSIG
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
uui
|
x
|
x
|
|
|
x
|
x
|
|
|
x
|
x
|
x
|
|
|
cause
|
Not sent
| |||||||||||
|
progressdescription
|
|
x
|
x
|
x
|
x
|
x
|
|
|
x
|
x
|
x
|
|
|
Field
|
Description
|
|---|---|
|
size
|
Size of ACCEPTCALL_EXT
|
|
uui
|
Pointer to a string with user-to-user information (132 chars max)
|
|
cause
|
Cause
|
|
progressdescription
|
Progress description
|
typedef struct
{
DWORD size; /* Size of this structure */
char uui [NCC_ISDN_MAX_UUI + 1]; /* UUI */
WORD cause; /* Disconnect cause (NCC value) */
WORD pad;
} REJECTCALL_EXT;
|
REJECTCALL_EXT Field
|
4ESS
|
E10
|
NI2
|
DMS100
|
ETSI
|
VN6
|
HKG
|
AUSTEL1
|
NTT
|
KOREA
|
TAIWAN
|
QSIG
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
uui
|
x
|
x
|
x
|
|
x
|
x
|
|
|
x
|
x
|
x
|
|
|
cause
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
|
Fields
|
Description
|
|---|---|
|
size
|
Size of REJECTCALL_EXT
|
|
uui
|
Pointer to a string with user-to-user information (132 chars max)
|
|
cause
|
Cause
|
typedef struct
{
DWORD size; /* Size of this structure */
char uui [NCC_ISDN_MAX_UUI + 1]; /* UUI */
WORD cause; /* Disconnect cause (NCC value) */
WORD pad;
} DISCONNECTCALL_EXT;
|
DISCONNECTCALL_EXT Field
|
4ESS
|
E10
|
NI2
|
DMS100
|
ETSI
|
VN6
|
HKG
|
AUSTEL1
|
NTT
|
KOREA
|
TAIWAN
|
QSIG
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
uui
|
x
|
x
|
|
|
x
|
x
|
|
|
x
|
x
|
x
|
|
|
cause
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
x
|
|
Field
|
Description
|
|---|---|
|
size
|
Size of DISCONNECTCALL_EXT
|
|
uui
|
Pointer to a string with user-to-user info (132 chars max)
|
|
cause
|
Cause
|
|
Variant
|
NT/TE
|
Capabilities
| ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
|
CALLER_ID
|
MEDIA_IN_SETUP
|
DISCONNECT_IN_ANY_STATE
|
HOLD_IN_ANY_STATE
|
SEND_LINE_MESSAGE
|
SEND_CALL_MESSAGE
|
EXTENDED_CALL_STATUS
|
AUTOMATIC_TRANSFER
|
SUPERVISED_TRANSFER
|
HOLD_CALL
|
OVERLAPPED_SENDING
|
SET_BILLING
|
ACCEPT_CALL
|
|
DMS
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
| |
|
NI2
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
| |
|
4ESS
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
| |
|
5ESS
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
| |
|
AUS1
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
| |
|
HKT
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
| |
|
KOR
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
x
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
x
|
|
x
| |
|
NTT
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
|
|
x
| |
|
TWN
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
x
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
x
|
|
x
| |
|
ETSI
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
x
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
x
|
|
x
| |
|
VN6
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
x
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
x
|
|
x
| |
|
QSI
|
NT:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
x
|
|
x
|
|
TE:
|
x
|
x
|
x
|
|
|
|
x
|
|
|
|
x
|
|
x
| |
(Page 1 of 1 in this chapter) Version