1998-08-30 09:57:22 +00:00
# ifndef __CAPI20_H
# define __CAPI20_H
1999-09-10 17:20:34 +00:00
# include <sys/types.h>
1998-10-23 12:20:44 +00:00
# include <sys/time.h>
1998-08-30 09:57:22 +00:00
# include <time.h>
# ifdef __cplusplus
extern " C " {
# endif
1999-09-06 17:40:07 +00:00
/*----- errornumbers -----*/
# define CapiToManyAppls 0x1001
# define CapiLogBlkSizeToSmall 0x1002
# define CapiBuffExeceeds64k 0x1003
# define CapiMsgBufSizeToSmall 0x1004
# define CapiAnzLogConnNotSupported 0x1005
# define CapiRegReserved 0x1006
# define CapiRegBusy 0x1007
# define CapiRegOSResourceErr 0x1008
# define CapiRegNotInstalled 0x1009
# define CapiRegCtrlerNotSupportExtEquip 0x100a
# define CapiRegCtrlerOnlySupportExtEquip 0x100b
# define CapiNoError 0x0000
# define CapiIllAppNr 0x1101
# define CapiIllCmdOrSubcmdOrMsgToSmall 0x1102
# define CapiSendQueueFull 0x1103
# define CapiReceiveQueueEmpty 0x1104
# define CapiReceiveOverflow 0x1105
# define CapiUnknownNotPar 0x1106
# define CapiMsgBusy 0x1107
# define CapiMsgOSResourceErr 0x1108
# define CapiMsgNotInstalled 0x1109
# define CapiMsgCtrlerNotSupportExtEquip 0x110a
# define CapiMsgCtrlerOnlySupportExtEquip 0x110b
/* standard CAPI2.0 functions */
1999-09-10 17:20:34 +00:00
unsigned capi20_register ( unsigned MaxLogicalConnection ,
1999-09-06 17:40:07 +00:00
unsigned MaxBDataBlocks ,
unsigned MaxBDataLen ,
1999-09-10 17:20:34 +00:00
unsigned * ApplIDp ) ;
1999-09-06 17:40:07 +00:00
1999-09-10 17:20:34 +00:00
unsigned capi20_release ( unsigned ApplID ) ;
1999-09-06 17:40:07 +00:00
1999-09-10 17:20:34 +00:00
unsigned capi20_put_message ( unsigned char * Msg , unsigned ApplID ) ;
1999-09-06 17:40:07 +00:00
1999-09-10 17:20:34 +00:00
unsigned capi20_get_message ( unsigned ApplID , unsigned char * * Buf ) ;
1999-09-06 17:40:07 +00:00
1999-09-10 17:20:34 +00:00
unsigned capi20_waitformessage ( unsigned ApplID , struct timeval * TimeOut ) ;
1999-09-06 17:40:07 +00:00
unsigned char * capi20_get_manufacturer ( unsigned Ctrl , unsigned char * Buf ) ;
unsigned char * capi20_get_version ( unsigned Ctrl , unsigned char * Buf ) ;
unsigned char * capi20_get_serial_number ( unsigned Ctrl , unsigned char * Buf ) ;
1999-09-10 17:20:34 +00:00
unsigned capi20_get_profile ( unsigned Controller , unsigned char * Buf ) ;
1999-09-06 17:40:07 +00:00
1999-09-10 17:20:34 +00:00
unsigned capi20_isinstalled ( void ) ;
1999-09-06 17:40:07 +00:00
int capi20_fileno ( unsigned ApplID ) ;
# define CAPI20_REGISTER capi20_register
# define CAPI20_RELEASE capi20_release
# define CAPI20_PUT_MESSAGE capi20_put_message
# define CAPI20_GET_MESSAGE capi20_get_message
# define CAPI20_WaitforMessage capi20_waitformessage
# define CAPI20_GET_MANUFACTURER capi20_get_manufacturer
# define CAPI20_GET_VERSION capi20_get_version
# define CAPI20_GET_SERIAL_NUMBER capi20_get_serial_number
# define CAPI20_GET_PROFILE capi20_get_profile
# define CAPI20_ISINSTALLED capi20_isinstalled
/* end standard CAPI2.0 functions */
1999-09-10 17:20:34 +00:00
# define CAPI_REGISTER_ERROR unsigned
# define MESSAGE_EXCHANGE_ERROR unsigned
1999-09-06 17:40:07 +00:00
1998-08-30 09:57:22 +00:00
typedef unsigned char * CAPI_MESSAGE ;
1999-09-10 17:20:34 +00:00
typedef __uint8_t _cbyte ;
typedef __uint16_t _cword ;
typedef __uint32_t _cdword ;
typedef __uint64_t _cqword ;
1998-08-30 09:57:22 +00:00
typedef CAPI_MESSAGE _cstruct ;
typedef enum { CAPI_COMPOSE = 0 , CAPI_DEFAULT = 1 } _cmstruct ;
/*----- CAPI commands -----*/
# define CAPI_ALERT 0x01
# define CAPI_CONNECT 0x02
# define CAPI_CONNECT_ACTIVE 0x03
# define CAPI_CONNECT_B3_ACTIVE 0x83
# define CAPI_CONNECT_B3 0x82
# define CAPI_CONNECT_B3_T90_ACTIVE 0x88
# define CAPI_DATA_B3 0x86
# define CAPI_DISCONNECT_B3 0x84
# define CAPI_DISCONNECT 0x04
# define CAPI_FACILITY 0x80
# define CAPI_INFO 0x08
# define CAPI_LISTEN 0x05
# define CAPI_MANUFACTURER 0xff
# define CAPI_RESET_B3 0x87
# define CAPI_SELECT_B_PROTOCOL 0x41
/*----- CAPI subcommands -----*/
# define CAPI_REQ 0x80
# define CAPI_CONF 0x81
# define CAPI_IND 0x82
# define CAPI_RESP 0x83
/*
* The _cmsg structure contains all possible CAPI 2.0 parameter .
* All parameters are stored here first . The function capi_cmsg2message ( )
* assembles the parameter and builds CAPI2 .0 conform messages .
* capi_message2cmsg disassembles CAPI 2.0 messages and stores the
* parameter in the _cmsg structure
*/
typedef struct {
/* Header */
_cword ApplId ;
_cbyte Command ;
_cbyte Subcommand ;
_cword Messagenumber ;
/* Parameter */
union {
_cdword adrController ;
_cdword adrPLCI ;
_cdword adrNCCI ;
} adr ;
_cmstruct AdditionalInfo ;
_cstruct B1configuration ;
_cword B1protocol ;
_cstruct B2configuration ;
_cword B2protocol ;
_cstruct B3configuration ;
_cword B3protocol ;
_cstruct BC ;
_cstruct BChannelinformation ;
_cmstruct BProtocol ;
_cstruct CalledPartyNumber ;
_cstruct CalledPartySubaddress ;
_cstruct CallingPartyNumber ;
_cstruct CallingPartySubaddress ;
_cdword CIPmask ;
_cdword CIPmask2 ;
_cword CIPValue ;
_cdword Class ;
_cstruct ConnectedNumber ;
_cstruct ConnectedSubaddress ;
1999-09-10 17:20:34 +00:00
_cdword Data32 ;
_cqword Data64 ;
1998-08-30 09:57:22 +00:00
_cword DataHandle ;
_cword DataLength ;
_cstruct FacilityConfirmationParameter ;
_cstruct Facilitydataarray ;
_cstruct FacilityIndicationParameter ;
_cstruct FacilityRequestParameter ;
_cstruct FacilityResponseParameters ;
_cword FacilitySelector ;
_cword Flags ;
_cdword Function ;
_cstruct HLC ;
_cword Info ;
_cstruct InfoElement ;
_cdword InfoMask ;
_cword InfoNumber ;
_cstruct Keypadfacility ;
_cstruct LLC ;
_cstruct ManuData ;
_cdword ManuID ;
_cstruct NCPI ;
_cword Reason ;
_cword Reason_B3 ;
_cword Reject ;
_cstruct Useruserdata ;
1999-09-10 17:20:34 +00:00
unsigned char * Data ;
1998-08-30 09:57:22 +00:00
/* intern */
unsigned l , p ;
unsigned char * par ;
1999-09-06 17:40:07 +00:00
unsigned char * m ;
1998-08-30 09:57:22 +00:00
} _cmsg ;
1999-09-06 17:40:07 +00:00
# define capi_cmsg2message capi20_cmsg2message
# define capi_message2cmsg capi20_message2cmsg
unsigned capi20_cmsg2message ( _cmsg * cmsg , unsigned char * msg ) ;
unsigned capi20_message2cmsg ( _cmsg * cmsg , unsigned char * msg ) ;
1998-08-30 09:57:22 +00:00
/*
1999-09-06 17:40:07 +00:00
* capi20_put_cmsg ( ) works like capi20_put_message ( ) but it converts the
* _cmsg * first with capi20_cmsg2message ( ) . Possible errors from
* capi20_put_message ( ) will be returned .
1998-08-30 09:57:22 +00:00
*/
1999-09-06 17:40:07 +00:00
# define CAPI_PUT_CMSG capi20_put_cmsg
# define capi_put_cmsg capi20_put_cmsg
1999-09-10 17:20:34 +00:00
unsigned capi20_put_cmsg ( _cmsg * cmsg ) ;
1998-08-30 09:57:22 +00:00
/*
1999-09-06 17:40:07 +00:00
* capi20_get_cmsg ( ) works like capi20_get_message ( ) and converts the
* CAPI message * to a _cmsg with capi20_message2cmsg ( ) .
* Possible errors from capi20_get_message ( ) will be returned .
1998-08-30 09:57:22 +00:00
*/
1999-09-06 17:40:07 +00:00
# define CAPI_GET_CMSG capi20_get_cmsg
# define capi_get_cmsg capi20_get_cmsg
1999-09-10 17:20:34 +00:00
unsigned capi20_get_cmsg ( _cmsg * cmsg , unsigned applid ) ;
1998-08-30 09:57:22 +00:00
/*
1999-09-06 17:40:07 +00:00
* capi20_cmsg_header ( ) fills the _cmsg structure with default values ,
* so only parameter with non default values must be changed before
* sending the message .
1998-08-30 09:57:22 +00:00
*/
1999-09-06 17:40:07 +00:00
# define CAPI_CMSG_HEADER capi20_cmsg_header
# define capi_cmsg_header capi20_cmsg_header
unsigned capi20_cmsg_header ( _cmsg * cmsg , unsigned _ApplId , _cbyte _Command , _cbyte _Subcommand , _cword _Messagenumber , _cdword _Controller ) ;
1998-08-30 09:57:22 +00:00
/*
1999-09-06 17:40:07 +00:00
* capi20_cmsg_answer ( ) is used to answer indications . It changes the header
1998-08-30 09:57:22 +00:00
* of an indication to a response , and leaves all other parameters the same
*/
1999-09-06 17:40:07 +00:00
# define capi_cmsg_answer capi20_cmsg_answer
unsigned capi20_cmsg_answer ( _cmsg * cmsg ) ;
1998-08-30 09:57:22 +00:00
/*----- defines to access specific parameter -----*/
# define ALERT_REQ_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define ALERT_REQ_ADDITIONALINFO(x) ((x)->AdditionalInfo)
/* Additional info elements */
# define ALERT_REQ_BCHANNELINFORMATION(x) ((x)->BChannelinformation)
# define ALERT_REQ_KEYPADFACILITY(x) ((x)->Keypadfacility)
/* coded according to ETS 300 102-1 / Q.931 */
# define ALERT_REQ_USERUSERDATA(x) ((x)->Useruserdata)
/* coded according to ETS 300 102-1 / Q.931 */
# define ALERT_REQ_FACILITYDATAARRAY(x) ((x)->Facilitydataarray)
/* which is used to transfer additional parameters coded */
/* according to ETS 300 102-1 / Q.931 starting from octet 1. */
/* This field is used to transport one or more complete facility */
/* data information elements. */
# define ALERT_CONF_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define ALERT_CONF_INFO(x) ((x)->Info)
/* 0: alert initiated */
/* 0x0003: alert already sent by another application */
/* 0x2001: message not supported in current state */
/* 0x2002: illegal PLCI */
/* 0x2007: illegal message parameter coding */
# define CONNECT_REQ_CONTROLLER(x) ((x)->adr.adrController)
# define CONNECT_REQ_CIPVALUE(x) ((x)->CIPValue)
/* Compatibility Information Profile */
# define CONNECT_REQ_CALLEDPARTYNUMBER(x) ((x)->CalledPartyNumber)
/* Called party number */
# define CONNECT_REQ_CALLINGPARTYNUMBER(x) ((x)->CallingPartyNumber)
/* Calling party number */
# define CONNECT_REQ_CALLEDPARTYSUBADDRESS(x) ((x)->CalledPartySubaddress)
/* Called party subaddress */
# define CONNECT_REQ_CALLINGPARTYSUBADDRESS(x) ((x)->CallingPartySubaddress)
/* Calling party subaddress */
# define CONNECT_REQ_BPROTOCOL(x) ((x)->BProtocol)
/* B protocol to be used */
# define CONNECT_REQ_B1PROTOCOL(x) ((x)->B1protocol)
/* Physical layer and framing */
# define CONNECT_REQ_B2PROTOCOL(x) ((x)->B2protocol)
/* Data link layer */
# define CONNECT_REQ_B3PROTOCOL(x) ((x)->B3protocol)
/* Network layer */
# define CONNECT_REQ_B1CONFIGURATION(x) ((x)->B1configuration)
/* Physical layer and framing parameter */
# define CONNECT_REQ_B2CONFIGURATION(x) ((x)->B2configuration)
/* Data link layer parameter */
# define CONNECT_REQ_B3CONFIGURATION(x) ((x)->B3configuration)
/* Network layer parameter */
# define CONNECT_REQ_BC(x) ((x)->BC)
/* Bearer Capability */
# define CONNECT_REQ_LLC(x) ((x)->LLC)
/* Low Layer Compatibility */
# define CONNECT_REQ_HLC(x) ((x)->HLC)
/* High Layer Compatibility */
# define CONNECT_REQ_ADDITIONALINFO(x) ((x)->AdditionalInfo)
/* Additional information elements */
# define CONNECT_REQ_BCHANNELINFORMATION(x) ((x)->BChannelinformation)
# define CONNECT_REQ_KEYPADFACILITY(x) ((x)->Keypadfacility)
/* coded according to ETS 300 102-1 / Q.931 */
# define CONNECT_REQ_USERUSERDATA(x) ((x)->Useruserdata)
/* coded according to ETS 300 102-1 / Q.931 */
# define CONNECT_REQ_FACILITYDATAARRAY(x) ((x)->Facilitydataarray)
/* which is used to transfer additional parameters coded */
/* according to ETS 300 102-1 / Q.931 starting from octet 1. */
/* This field is used to transport one or more complete facility */
/* data information elements. */
# define CONNECT_CONF_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define CONNECT_CONF_INFO(x) ((x)->Info)
/* 0: connect initiated */
/* 0x2002: illegal controller */
/* 0x2003: out of PLCI */
/* 0x2007: illegal message parameter coding */
/* 0x3001: B1 protocol not supported */
/* 0x3002: B2 protocol not supported */
/* 0x3003: B3 protocol not supported */
/* 0x3004: B1 protocol parameter not supported */
/* 0x3005: B2 protocol parameter not supported */
/* 0x3006: B3 protocol parameter not supported */
/* 0x3007: B protocol combination not supported */
/* 0x300A: CIP Value unknown */
# define CONNECT_IND_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define CONNECT_IND_CIPVALUE(x) ((x)->CIPValue)
/* Compatibility Information Profile */
# define CONNECT_IND_CALLEDPARTYNUMBER(x) ((x)->CalledPartyNumber)
/* Called party number */
# define CONNECT_IND_CALLINGPARTYNUMBER(x) ((x)->CallingPartyNumber)
/* Calling party number */
# define CONNECT_IND_CALLEDPARTYSUBADDRESS(x) ((x)->CalledPartySubaddress)
/* Called party subaddress */
# define CONNECT_IND_CALLINGPARTYSUBADDRESS(x) ((x)->CallingPartySubaddress)
/* Calling party subaddress */
# define CONNECT_IND_BC(x) ((x)->BC)
/* Bearer compatibility */
# define CONNECT_IND_LLC(x) ((x)->LLC)
/* Low Layer Compatibility */
# define CONNECT_IND_HLC(x) ((x)->HLC)
/* High Layer Compatibility */
# define CONNECT_IND_ADDITIONALINFO(x) ((x)->AdditionalInfo)
/* Additional information elements */
# define CONNECT_IND_BCHANNELINFORMATION(x) ((x)->BChannelinformation)
# define CONNECT_IND_KEYPADFACILITY(x) ((x)->Keypadfacility)
/* coded according to ETS 300 102-1 / Q.931 */
# define CONNECT_IND_USERUSERDATA(x) ((x)->Useruserdata)
/* coded according to ETS 300 102-1 / Q.931 */
# define CONNECT_IND_FACILITYDATAARRAY(x) ((x)->Facilitydataarray)
/* which is used to transfer additional parameters coded */
/* according to ETS 300 102-1 / Q.931 starting from octet 1. */
/* This field is used to transport one or more complete facility */
/* data information elements. */
# define CONNECT_RESP_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define CONNECT_RESP_REJECT(x) ((x)->Reject)
/* 0: accept call */
/* 1: ignore call */
/* 2: reject call, normal call clearing */
/* 3: reject call, user busy */
/* 4: reject call, requestet circuit/channel not available */
/* 5: reject call, facility rejected */
/* 6: reject call, channel unacceptable */
/* 7: reject call, incompatible destination */
/* 8: reject call, destination out of order */
# define CONNECT_RESP_BPROTOCOL(x) ((x)->BProtocol)
/* B protocol to be used */
# define CONNECT_RESP_B1PROTOCOL(x) ((x)->B1protocol)
/* Physical layer and framing */
# define CONNECT_RESP_B2PROTOCOL(x) ((x)->B2protocol)
/* Data link layer */
# define CONNECT_RESP_B3PROTOCOL(x) ((x)->B3protocol)
/* Network layer */
# define CONNECT_RESP_B1CONFIGURATION(x) ((x)->B1configuration)
/* Physical layer and framing parameter */
# define CONNECT_RESP_B2CONFIGURATION(x) ((x)->B2configuration)
/* Data link layer parameter */
# define CONNECT_RESP_B3CONFIGURATION(x) ((x)->B3configuration)
/* Network layer parameter */
# define CONNECT_RESP_CONNECTEDNUMBER(x) ((x)->ConnectedNumber)
/* Connected number */
# define CONNECT_RESP_CONNECTEDSUBADDRESS(x) ((x)->ConnectedSubaddress)
/* Connected subaddress */
# define CONNECT_RESP_LLC(x) ((x)->LLC)
/* Low Layer Compatibility */
# define CONNECT_RESP_ADDITIONALINFO(x) ((x)->AdditionalInfo)
/* Additional information elements */
# define CONNECT_RESP_BCHANNELINFORMATION(x) ((x)->BChannelinformation)
# define CONNECT_RESP_KEYPADFACILITY(x) ((x)->Keypadfacility)
/* coded according to ETS 300 102-1 / Q.931 */
# define CONNECT_RESP_USERUSERDATA(x) ((x)->Useruserdata)
/* coded according to ETS 300 102-1 / Q.931 */
# define CONNECT_RESP_FACILITYDATAARRAY(x) ((x)->Facilitydataarray)
/* which is used to transfer additional parameters coded */
/* according to ETS 300 102-1 / Q.931 starting from octet 1. */
/* This field is used to transport one or more complete facility */
/* data information elements. */
# define CONNECT_ACTIVE_IND_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define CONNECT_ACTIVE_IND_CONNECTEDNUMBER(x) ((x)->ConnectedNumber)
/* Connected number */
# define CONNECT_ACTIVE_IND_CONNECTEDSUBADDRESS(x) ((x)->ConnectedSubaddress)
/* Connected subaddress */
# define CONNECT_ACTIVE_IND_LLC(x) ((x)->LLC)
/* Low Layer Compatibility */
# define CONNECT_ACTIVE_RESP_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define CONNECT_B3_ACTIVE_IND_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define CONNECT_B3_ACTIVE_IND_NCPI(x) ((x)->NCPI)
/* Network Control Protocol Information */
# define CONNECT_B3_ACTIVE_RESP_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define CONNECT_B3_REQ_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define CONNECT_B3_REQ_NCPI(x) ((x)->NCPI)
/* Network Control Protocol Information */
# define CONNECT_B3_CONF_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define CONNECT_B3_CONF_INFO(x) ((x)->Info)
/* 0: connect initiated */
/* 0x0001: NCPI not supported by current protocol, NCPI ignored */
/* 0x2001: message not supported in current state */
/* 0x2002: illegal PLCI */
/* 0x2004: out of NCCI */
/* 0x3008: NCPI not supported */
# define CONNECT_B3_IND_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define CONNECT_B3_IND_NCPI(x) ((x)->NCPI)
/* Network Control Protocol Information */
# define CONNECT_B3_RESP_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define CONNECT_B3_RESP_REJECT(x) ((x)->Reject)
/* 0: accept call */
/* 2: reject call, normal call clearing */
# define CONNECT_B3_RESP_NCPI(x) ((x)->NCPI)
/* Network Control Protocol Information */
# define CONNECT_B3_T90_ACTIVE_IND_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define CONNECT_B3_T90_ACTIVE_IND_NCPI(x) ((x)->NCPI)
/* Network Control Protocol Information */
# define CONNECT_B3_T90_ACTIVE_RESP_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define DATA_B3_REQ_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define DATA_B3_REQ_DATA(x) ((x)->Data)
/* Pointer to the data to be sent */
# define DATA_B3_REQ_DATALENGTH(x) ((x)->DataLength)
/* Size of data area to be sent */
# define DATA_B3_REQ_DATAHANDLE(x) ((x)->DataHandle)
/* Referenced in DATA_B3_CONF */
# define DATA_B3_REQ_FLAGS(x) ((x)->Flags)
/* [0]: qualifier bit */
/* [1]: more data bit */
/* [2]: delivery confirmation bit */
/* [3]: expedited data */
/* [4] to [15]: reserved */
# define DATA_B3_CONF_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define DATA_B3_CONF_DATAHANDLE(x) ((x)->DataHandle)
/* Identifies the data area of corresponding DATA_B3_REQ */
# define DATA_B3_CONF_INFO(x) ((x)->Info)
/* 0: data transmission initiated */
/* 0x0002: flags not supported by current protocol, flags ignored */
/* 0x2001: message not supported in current state */
/* 0x2002: illegal NCCI */
/* 0x2007: illegal message parameter coding */
/* 0x300A: flags not supported (reserved bits) */
/* 0x300C: data length not supported by current protocol */
# define DATA_B3_IND_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define DATA_B3_IND_DATA(x) ((x)->Data)
/* Pointer to data received */
# define DATA_B3_IND_DATALENGTH(x) ((x)->DataLength)
/* Size of data area received */
# define DATA_B3_IND_DATAHANDLE(x) ((x)->DataHandle)
/* handle to data area, referenced in DATA_B3_RESP */
# define DATA_B3_IND_FLAGS(x) ((x)->Flags)
/* 0: qualifier bit */
/* 1: more-data bit */
/* 2: delivery confirmation bit */
/* 3: expedited data */
/* 4 to 14: reserved */
/* [15]: framing error bit, data may be invalid (only with corresponding B2 protocol) */
# define DATA_B3_RESP_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define DATA_B3_RESP_DATAHANDLE(x) ((x)->DataHandle)
/* Data area reference in corresponding DATA_B3_IND */
# define DISCONNECT_B3_REQ_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define DISCONNECT_B3_REQ_NCPI(x) ((x)->NCPI)
/* Network Control Protocol Information */
# define DISCONNECT_B3_CONF_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define DISCONNECT_B3_CONF_INFO(x) ((x)->Info)
/* 0: disconnect initiated */
/* 0x0001: NCPI not supported by current protocol, NCPI ignored */
/* 0x2001: message not supported in current state */
/* 0x2002: illegal NCCI */
/* 0x2007: illegal message parameter coding */
/* 0x3008: NCPI not supported */
# define DISCONNECT_B3_IND_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define DISCONNECT_B3_IND_REASON_B3(x) ((x)->Reason_B3)
/* 0: clearing according to protocol */
/* 0x3301: protocol error layer 1 */
/* 0x3302: protocol error layer 2 */
/* 0x3303: protocol error layer 3 */
/* protocol dependent values are described in chapter 6 */
# define DISCONNECT_B3_IND_NCPI(x) ((x)->NCPI)
/* Network Control Protocol Information */
# define DISCONNECT_B3_RESP_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define DISCONNECT_REQ_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define DISCONNECT_REQ_ADDITIONALINFO(x) ((x)->AdditionalInfo)
/* Additional information elements */
# define DISCONNECT_REQ_BCHANNELINFORMATION(x) ((x)->BChannelinformation)
# define DISCONNECT_REQ_KEYPADFACILITY(x) ((x)->Keypadfacility)
/* coded according to ETS 300 102-1 / Q.931 */
# define DISCONNECT_REQ_USERUSERDATA(x) ((x)->Useruserdata)
/* coded according to ETS 300 102-1 / Q.931 */
# define DISCONNECT_REQ_FACILITYDATAARRAY(x) ((x)->Facilitydataarray)
/* which is used to transfer additional parameters coded */
/* according to ETS 300 102-1 / Q.931 starting from octet 1. */
/* This field is used to transport one or more complete facility */
/* data information elements. */
# define DISCONNECT_CONF_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define DISCONNECT_CONF_INFO(x) ((x)->Info)
/* 0: disconnect initiated */
/* 0x2001: message not supported in current state */
/* 0x2002: illegal PLCI */
/* 0x2007: illegal message parameter coding */
# define DISCONNECT_IND_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define DISCONNECT_IND_REASON(x) ((x)->Reason)
/* 0: no cause available */
/* 0x3301: protocol error layer 1 */
/* 0x3302: protocol error layer 2 */
/* 0x3303: protocol error layer 3 */
/* 0x3304: another application got that call */
/* 0x34xx: disconnect cause from the network according to Q.931/ETS 300 102-1. In the field 'xx' the cause value received within a cause information element (octet 4) from the network is indicated. */
# define DISCONNECT_RESP_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define FACILITY_REQ_CONTROLLER(x) ((x)->adr.adrController)
# define FACILITY_REQ_PLCI(x) ((x)->adr.adrPLCI)
# define FACILITY_REQ_NCCI(x) ((x)->adr.adrNCCI)
/* Depending on the facility selector */
# define FACILITY_REQ_FACILITYSELECTOR(x) ((x)->FacilitySelector)
/* 0: Handset Support */
/* 1: DTMF */
/* 2 to n: reserved */
# define FACILITY_REQ_FACILITYREQUESTPARAMETER(x) ((x)->FacilityRequestParameter)
/* Facility depending parameters */
# define FACILITY_CONF_CONTROLLER(x) ((x)->adr.adrController)
# define FACILITY_CONF_PLCI(x) ((x)->adr.adrPLCI)
# define FACILITY_CONF_NCCI(x) ((x)->adr.adrNCCI)
/* Depending on the facility selector */
# define FACILITY_CONF_INFO(x) ((x)->Info)
/* 0: request accepted */
/* 0x2001: message not supported in current state */
/* 0x2002: incorrect Controller/PLCI/NCCI */
/* 0x2007: illegal message parameter coding */
/* 0x300B: facility not supported */
# define FACILITY_CONF_FACILITYSELECTOR(x) ((x)->FacilitySelector)
/* 0: Handset Support */
/* 1: DTMF */
/* 2 to n: reserved */
# define FACILITY_CONF_FACILITYCONFIRMATIONPARAMETER(x) ((x)->FacilityConfirmationParameter)
/* Facility-depending parameters */
# define FACILITY_IND_CONTROLLER(x) ((x)->adr.adrController)
# define FACILITY_IND_PLCI(x) ((x)->adr.adrPLCI)
# define FACILITY_IND_NCCI(x) ((x)->adr.adrNCCI)
/* Depending on the facility selector */
# define FACILITY_IND_FACILITYSELECTOR(x) ((x)->FacilitySelector)
/* 0: Handset Support */
/* 1: DTMF */
/* 2 to n: reserved */
# define FACILITY_IND_FACILITYINDICATIONPARAMETER(x) ((x)->FacilityIndicationParameter)
/* Facility-depending parameters */
# define FACILITY_RESP_CONTROLLER(x) ((x)->adr.adrController)
# define FACILITY_RESP_PLCI(x) ((x)->adr.adrPLCI)
# define FACILITY_RESP_NCCI(x) ((x)->adr.adrNCCI)
/* Depending on the facility selector */
# define FACILITY_RESP_FACILITYSELECTOR(x) ((x)->FacilitySelector)
/* 0: Handset Support */
/* 1: DTMF */
/* 2 to n: reserved */
/* Facility response parameters */
/* struct */
/* Facility-depending parameters */
# define INFO_REQ_CONTROLLER(x) ((x)->adr.adrController)
# define INFO_REQ_PLCI(x) ((x)->adr.adrPLCI)
/* See note */
# define INFO_REQ_CALLEDPARTYNUMBER(x) ((x)->CalledPartyNumber)
/* Called party number */
# define INFO_REQ_ADDITIONALINFO(x) ((x)->AdditionalInfo)
/* Additional information elements */
# define INFO_REQ_BCHANNELINFORMATION(x) ((x)->BChannelinformation)
# define INFO_REQ_KEYPADFACILITY(x) ((x)->Keypadfacility)
/* coded according to ETS 300 102-1 / Q.931 */
# define INFO_REQ_USERUSERDATA(x) ((x)->Useruserdata)
/* coded according to ETS 300 102-1 / Q.931 */
# define INFO_REQ_FACILITYDATAARRAY(x) ((x)->Facilitydataarray)
/* which is used to transfer additional parameters coded */
/* according to ETS 300 102-1 / Q.931 starting from octet 1. */
/* This field is used to transport one or more complete facility */
/* data information elements. */
# define INFO_CONF_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define INFO_CONF_INFO(x) ((x)->Info)
/* 0: transmission of information initiated */
/* 0x2001: message not supported in current state */
/* 0x2002: illegal Controller/PLCI */
/* 0x2003: out of PLCI */
/* 0x2007: illegal message parameter coding */
# define INFO_IND_CONTROLLER(x) ((x)->adr.adrController)
# define INFO_IND_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define INFO_IND_INFONUMBER(x) ((x)->InfoNumber)
/* Information element identifier */
# define INFO_IND_INFOELEMENT(x) ((x)->InfoElement)
/* Information element dependent structure */
# define INFO_RESP_CONTROLLER(x) ((x)->adr.adrController)
# define INFO_RESP_PLCI(x) ((x)->adr.adrPLCI)
/* As in INFO_IND */
# define LISTEN_REQ_CONTROLLER(x) ((x)->adr.adrController)
# define LISTEN_REQ_INFOMASK(x) ((x)->InfoMask)
/* Bit field, coding as follows: */
/* 0: cause */
/* 1: date/Time */
/* 2: display */
/* 3: user-user information */
/* 4: call progression */
/* 5: facility */
/* 6: charging */
/* 7 to 31: reserved */
# define LISTEN_REQ_CIPMASK(x) ((x)->CIPmask)
/* Bit field, coding as follows: */
/* 0: any match */
/* 1: speech */
/* 2: unrestricted digital information */
/* 3: restricted digital information */
/* 4: 3.1 kHz audio */
/* 5: 7.0 kHz audio */
/* 6: video */
/* 7: packet mode */
/* 8: 56 kBit/s rate adaptation */
/* 9: unrestricted digital information with tones/announcements */
/* 10..15: reserved */
/* 16: telephony */
/* 17: fax group 2/3 */
/* 18: fax group 4 class 1 */
/* 19: Teletex service (basic and mixed), fax group 4 class 2 */
/* 20: Teletex service (basic and processable) */
/* 21: Teletex service (basic) */
/* 22: Videotex */
/* 23: Telex */
/* reserved for additional services */
/* 25: OSI applications according X.200 */
/* 26: 7 kHz Telephony */
/* 27: Video Telephony F.721, first connection */
/* 28: Video Telephony F.721, second connection */
/* 29 to 31: reserved */
# define LISTEN_REQ_CIPMASK2(x) ((x)->CIPmask2)
/* reserved for additional services */
# define LISTEN_REQ_CALLINGPARTYNUMBER(x) ((x)->CallingPartyNumber)
/* Calling party number */
# define LISTEN_REQ_CALLINGPARTYSUBADDRESS(x) ((x)->CallingPartySubaddress)
/* Calling party subaddress */
# define LISTEN_CONF_CONTROLLER(x) ((x)->adr.adrController)
# define LISTEN_CONF_INFO(x) ((x)->Info)
/* 0: listen is active */
/* 0x2002: illegal controller */
/* 0x2005: out of LISTEN-Resources */
/* 0x2007: illegal message parameter coding */
# define MANUFACTURER_REQ_CONTROLLER(x) ((x)->adr.adrController)
# define MANUFACTURER_REQ_MANUID(x) ((x)->ManuID)
/* Manufacturer specific ID (should be unique) */
/* Manufacturer specific */
# define MANUFACTURER_REQ_CLASS(x) ((x)->Class)
# define MANUFACTURER_REQ_FUNCTION(x) ((x)->Function)
# define MANUFACTURER_REQ_MANUDATA(x) ((x)->ManuData)
/* Manufacturer specific data */
# define MANUFACTURER_CONF_CONTROLLER(x) ((x)->adr.adrController)
# define MANUFACTURER_CONF_MANUID(x) ((x)->ManuID)
/* Manufacturer specific ID (should be unique) */
/* Manufacturer specific */
# define MANUFACTURER_CONF_CLASS(x) ((x)->Class)
# define MANUFACTURER_CONF_FUNCTION(x) ((x)->Function)
# define MANUFACTURER_CONF_MANUDATA(x) ((x)->ManuData)
/* Manufacturer specific data */
# define MANUFACTURER_IND_CONTROLLER(x) ((x)->adr.adrController)
# define MANUFACTURER_IND_MANUID(x) ((x)->ManuID)
/* Manufacturer specific ID (should be unique) */
/* Manufacturer specific */
# define MANUFACTURER_IND_CLASS(x) ((x)->Class)
# define MANUFACTURER_IND_FUNCTION(x) ((x)->Function)
# define MANUFACTURER_IND_MANUDATA(x) ((x)->ManuData)
/* Manufacturer specific data */
# define MANUFACTURER_RESP_CONTROLLER(x) ((x)->adr.adrController)
# define MANUFACTURER_RESP_MANUID(x) ((x)->ManuID)
/* Manufacturer specific ID (should be unique) */
/* Manufacturer specific */
# define MANUFACTURER_RESP_CLASS(x) ((x)->Class)
# define MANUFACTURER_RESP_FUNCTION(x) ((x)->Function)
# define MANUFACTURER_RESP_MANUDATA(x) ((x)->ManuData)
/* Manufacturer specific data */
# define RESET_B3_REQ_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define RESET_B3_REQ_NCPI(x) ((x)->NCPI)
/* Network Control Protocol Information */
# define RESET_B3_CONF_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define RESET_B3_CONF_INFO(x) ((x)->Info)
/* 0: reset initiated */
/* 0x0001: NCPI not supported by current protocol, NCPI ignored */
/* 0x2001: message not supported in current state */
/* 0x2002: illegal NCCI */
/* 0x2007: illegal message parameter coding */
/* 0x3008: NCPI not supported */
/* 0x300D: reset procedure not supported by current protocol */
# define RESET_B3_IND_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define RESET_B3_IND_NCPI(x) ((x)->NCPI)
/* Network Control Protocol Information */
# define RESET_B3_RESP_NCCI(x) ((x)->adr.adrNCCI)
/* Network Control Connection Identifier */
# define SELECT_B_PROTOCOL_REQ_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define SELECT_B_PROTOCOL_REQ_BPROTOCOL(x) ((x)->BProtocol)
/* Protocol definition */
# define SELECT_B_PROTOCOL_REQ_B1PROTOCOL(x) ((x)->B1protocol)
/* Physical layer and framing */
# define SELECT_B_PROTOCOL_REQ_B2PROTOCOL(x) ((x)->B2protocol)
/* Data link layer */
# define SELECT_B_PROTOCOL_REQ_B3PROTOCOL(x) ((x)->B3protocol)
/* Network layer */
# define SELECT_B_PROTOCOL_REQ_B1CONFIGURATION(x) ((x)->B1configuration)
/* Physical layer and framing parameter */
# define SELECT_B_PROTOCOL_REQ_B2CONFIGURATION(x) ((x)->B2configuration)
/* Data link layer parameter */
# define SELECT_B_PROTOCOL_REQ_B3CONFIGURATION(x) ((x)->B3configuration)
/* Network layer parameter */
# define SELECT_B_PROTOCOL_CONF_PLCI(x) ((x)->adr.adrPLCI)
/* Physical Link Connection Identifier */
# define SELECT_B_PROTOCOL_CONF_INFO(x) ((x)->Info)
/* 0: protocol switch successful */
/* 0x2001: message not supported in current state */
/* 0x2002: illegal PLCI */
/* 0x2007: illegal message parameter coding */
/* 0x3001: B1 protocol not supported */
/* 0x3002: B2 protocol not supported */
/* 0x3003: B3 protocol not supported */
/* 0x3004: B1 protocol parameter not supported */
/* 0x3005: B2 protocol parameter not supported */
/* 0x3006: B3 protocol parameter not supported */
/* 0x3007: B protocol combination not supported */
/*----- tests for specific commands -----*/
# define IS_CONNECT_IND(m) ((m)->Command==0x02 && (m)->Subcommand==0x82)
# define IS_CONNECT_ACTIVE_IND(m) ((m)->Command==0x03 && (m)->Subcommand==0x82)
# define IS_CONNECT_B3_ACTIVE_IND(m) ((m)->Command==0x83 && (m)->Subcommand==0x82)
# define IS_CONNECT_B3_IND(m) ((m)->Command==0x82 && (m)->Subcommand==0x82)
# define IS_CONNECT_B3_T90_ACTIVE_IND(m) ((m)->Command==0x88 && (m)->Subcommand==0x82)
# define IS_DATA_B3_IND(m) ((m)->Command==0x86 && (m)->Subcommand==0x82)
# define IS_DISCONNECT_B3_IND(m) ((m)->Command==0x84 && (m)->Subcommand==0x82)
# define IS_DISCONNECT_IND(m) ((m)->Command==0x04 && (m)->Subcommand==0x82)
# define IS_FACILITY_IND(m) ((m)->Command==0x80 && (m)->Subcommand==0x82)
# define IS_INFO_IND(m) ((m)->Command==0x08 && (m)->Subcommand==0x82)
# define IS_MANUFACTURER_IND(m) ((m)->Command==0xff && (m)->Subcommand==0x82)
# define IS_RESET_B3_IND(m) ((m)->Command==0x87 && (m)->Subcommand==0x82)
# define IS_ALERT_CONF(m) ((m)->Command==0x01 && (m)->Subcommand==0x81)
# define IS_CONNECT_CONF(m) ((m)->Command==0x02 && (m)->Subcommand==0x81)
# define IS_CONNECT_B3_CONF(m) ((m)->Command==0x82 && (m)->Subcommand==0x81)
# define IS_DATA_B3_CONF(m) ((m)->Command==0x86 && (m)->Subcommand==0x81)
# define IS_DISCONNECT_B3_CONF(m) ((m)->Command==0x84 && (m)->Subcommand==0x81)
# define IS_DISCONNECT_CONF(m) ((m)->Command==0x04 && (m)->Subcommand==0x81)
# define IS_FACILITY_CONF(m) ((m)->Command==0x80 && (m)->Subcommand==0x81)
# define IS_INFO_CONF(m) ((m)->Command==0x08 && (m)->Subcommand==0x81)
# define IS_LISTEN_CONF(m) ((m)->Command==0x05 && (m)->Subcommand==0x81)
# define IS_MANUFACTURER_CONF(m) ((m)->Command==0xff && (m)->Subcommand==0x81)
# define IS_RESET_B3_CONF(m) ((m)->Command==0x87 && (m)->Subcommand==0x81)
# define IS_SELECT_B_PROTOCOL_CONF(m) ((m)->Command==0x41 && (m)->Subcommand==0x81)
/*----- header functions that fill the _cmsg structure with default -----*/
/*----- values. Only nonstandard parameter need to be changed -----*/
# define ALERT_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x01 , 0x80 , Messagenumber , adr )
# define CONNECT_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x02 , 0x80 , Messagenumber , adr )
# define CONNECT_B3_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x82 , 0x80 , Messagenumber , adr )
# define DATA_B3_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x86 , 0x80 , Messagenumber , adr )
# define DISCONNECT_B3_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x84 , 0x80 , Messagenumber , adr )
# define DISCONNECT_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x04 , 0x80 , Messagenumber , adr )
# define FACILITY_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x80 , 0x80 , Messagenumber , adr )
# define INFO_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x08 , 0x80 , Messagenumber , adr )
# define LISTEN_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x05 , 0x80 , Messagenumber , adr )
# define MANUFACTURER_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0xff , 0x80 , Messagenumber , adr )
# define RESET_B3_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x87 , 0x80 , Messagenumber , adr )
# define SELECT_B_PROTOCOL_REQ_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x41 , 0x80 , Messagenumber , adr )
# define CONNECT_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x02 , 0x83 , Messagenumber , adr )
# define CONNECT_ACTIVE_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x03 , 0x83 , Messagenumber , adr )
# define CONNECT_B3_ACTIVE_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x83 , 0x83 , Messagenumber , adr )
# define CONNECT_B3_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x82 , 0x83 , Messagenumber , adr )
# define CONNECT_B3_T90_ACTIVE_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x88 , 0x83 , Messagenumber , adr )
# define DATA_B3_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x86 , 0x83 , Messagenumber , adr )
# define DISCONNECT_B3_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x84 , 0x83 , Messagenumber , adr )
# define DISCONNECT_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x04 , 0x83 , Messagenumber , adr )
# define FACILITY_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x80 , 0x83 , Messagenumber , adr )
# define INFO_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x08 , 0x83 , Messagenumber , adr )
# define MANUFACTURER_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0xff , 0x83 , Messagenumber , adr )
# define RESET_B3_RESP_HEADER(cmsg,ApplId,Messagenumber,adr) \
CAPI_CMSG_HEADER ( cmsg , ApplId , 0x87 , 0x83 , Messagenumber , adr )
/*
* CAPI - functions that correspond to the CAPI messages specified in the
* CAPI 2.0 specification . All possible parameter have to be specified .
* The CAPI message is sent immediately when calling these functions ,
* return values are the same as in capi_put_message ( )
*/
unsigned ALERT_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cstruct BChannelinformation
, _cstruct Keypadfacility
, _cstruct Useruserdata
, _cstruct Facilitydataarray ) ;
unsigned CONNECT_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cword CIPValue
, _cstruct CalledPartyNumber
, _cstruct CallingPartyNumber
, _cstruct CalledPartySubaddress
, _cstruct CallingPartySubaddress
, _cword B1protocol
, _cword B2protocol
, _cword B3protocol
, _cstruct B1configuration
, _cstruct B2configuration
, _cstruct B3configuration
, _cstruct BC
, _cstruct LLC
, _cstruct HLC
, _cstruct BChannelinformation
, _cstruct Keypadfacility
, _cstruct Useruserdata
, _cstruct Facilitydataarray ) ;
unsigned CONNECT_B3_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cstruct NCPI ) ;
unsigned DATA_B3_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
1999-09-10 17:20:34 +00:00
, void * Data
1998-08-30 09:57:22 +00:00
, _cword DataLength
, _cword DataHandle
, _cword Flags ) ;
unsigned DISCONNECT_B3_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cstruct NCPI ) ;
unsigned DISCONNECT_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cstruct BChannelinformation
, _cstruct Keypadfacility
, _cstruct Useruserdata
, _cstruct Facilitydataarray ) ;
unsigned FACILITY_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cword FacilitySelector
, _cstruct FacilityRequestParameter ) ;
unsigned INFO_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cstruct CalledPartyNumber
, _cstruct BChannelinformation
, _cstruct Keypadfacility
, _cstruct Useruserdata
, _cstruct Facilitydataarray ) ;
unsigned LISTEN_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cdword InfoMask
, _cdword CIPmask
, _cdword CIPmask2
, _cstruct CallingPartyNumber
, _cstruct CallingPartySubaddress ) ;
unsigned MANUFACTURER_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cdword ManuID
, _cdword Class
, _cdword Function
, _cstruct ManuData ) ;
unsigned RESET_B3_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cstruct NCPI ) ;
unsigned SELECT_B_PROTOCOL_REQ ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cword B1protocol
, _cword B2protocol
, _cword B3protocol
, _cstruct B1configuration
, _cstruct B2configuration
, _cstruct B3configuration ) ;
unsigned CONNECT_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cword Reject
, _cword B1protocol
, _cword B2protocol
, _cword B3protocol
, _cstruct B1configuration
, _cstruct B2configuration
, _cstruct B3configuration
, _cstruct ConnectedNumber
, _cstruct ConnectedSubaddress
, _cstruct LLC
, _cstruct BChannelinformation
, _cstruct Keypadfacility
, _cstruct Useruserdata
, _cstruct Facilitydataarray ) ;
unsigned CONNECT_ACTIVE_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr ) ;
unsigned CONNECT_B3_ACTIVE_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr ) ;
unsigned CONNECT_B3_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cword Reject
, _cstruct NCPI ) ;
unsigned CONNECT_B3_T90_ACTIVE_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr ) ;
unsigned DATA_B3_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cword DataHandle ) ;
unsigned DISCONNECT_B3_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr ) ;
unsigned DISCONNECT_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr ) ;
unsigned FACILITY_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cword FacilitySelector
, _cstruct FacilityResponseParameters ) ;
unsigned INFO_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr ) ;
unsigned MANUFACTURER_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr
, _cdword ManuID
, _cdword Class
, _cdword Function
, _cstruct ManuData ) ;
unsigned RESET_B3_RESP ( _cmsg * cmsg , _cword ApplId , _cword Messagenumber
, _cdword adr ) ;
# ifdef __cplusplus
}
# endif
# endif /* __CAPI20_H */