📄 divacapi.h
字号:
#define RETRIEVE_REQUEST 4#define RETRIEVE_INDICATION 5/*------------------------------------------------------------------*//* Capi IE + Msg types *//*------------------------------------------------------------------*/#define ESC_CAUSE 0x800|CAU /* Escape cause element */#define ESC_MSGTYPE 0x800|MSGTYPEIE /* Escape message type */#define ESC_CHI 0x800|CHI /* Escape channel id */#define ESC_LAW 0x800|BC /* Escape law info */#define ESC_CR 0x800|CRIE /* Escape CallReference */#define ESC_PROFILE 0x800|PROFILEIE /* Escape profile */#define ESC_SSEXT 0x800|SSEXTIE /* Escape Supplem. Serv.*/#define ESC_VSWITCH 0x800|VSWITCHIE /* Escape VSwitch */#define CST 0x14 /* Call State i.e. */#define PI 0x1E /* Progress Indicator */#define NI 0x27 /* Notification Ind */#define CONN_NR 0x4C /* Connected Number */#define CONG_RNR 0xBF /* Congestion RNR */#define CONG_RR 0xB0 /* Congestion RR */#define RESERVED 0xFF /* Res. for future use */#define ON_BOARD_CODEC 0x02 /* external controller */#define HANDSET 0x04 /* Codec+Handset(Pro11) */#define HOOK_SUPPORT 0x01 /* activate Hook signal */#define SCR 0x7a /* unscreened number */#define HOOK_OFF_REQ 0x9001 /* internal conn req */#define HOOK_ON_REQ 0x9002 /* internal disc req */#define SUSPEND_REQ 0x9003 /* internal susp req */#define RESUME_REQ 0x9004 /* internal resume req */#define USELAW_REQ 0x9005 /* internal law req */#define LISTEN_SIG_ASSIGN_PEND 0x9006#define PERM_LIST_REQ 0x900a /* permanent conn DCE */#define C_HOLD_REQ 0x9011#define C_RETRIEVE_REQ 0x9012#define C_NCR_FAC_REQ 0x9013#define PERM_COD_ASSIGN 0x9014#define PERM_COD_CALL 0x9015#define PERM_COD_HOOK 0x9016#define PERM_COD_CONN_PEND 0x9017 /* wait for connect_con */#define PTY_REQ_PEND 0x9018#define CD_REQ_PEND 0x9019#define CF_START_PEND 0x901a#define CF_STOP_PEND 0x901b#define ECT_REQ_PEND 0x901c#define GETSERV_REQ_PEND 0x901d#define BLOCK_PLCI 0x901e#define INTERR_NUMBERS_REQ_PEND 0x901f#define INTERR_DIVERSION_REQ_PEND 0x9020#define MWI_ACTIVATE_REQ_PEND 0x9021#define MWI_DEACTIVATE_REQ_PEND 0x9022#define SSEXT_REQ_COMMAND 0x9023#define SSEXT_NC_REQ_COMMAND 0x9024#define START_L1_SIG_ASSIGN_PEND 0x9025#define REM_L1_SIG_ASSIGN_PEND 0x9026#define CONF_BEGIN_REQ_PEND 0x9027#define CONF_ADD_REQ_PEND 0x9028#define CONF_SPLIT_REQ_PEND 0x9029#define CONF_DROP_REQ_PEND 0x902a#define CONF_ISOLATE_REQ_PEND 0x902b#define CONF_REATTACH_REQ_PEND 0x902c#define VSWITCH_REQ_PEND 0x902d#define GET_MWI_STATE 0x902e#define CCBS_REQUEST_REQ_PEND 0x902f#define CCBS_DEACTIVATE_REQ_PEND 0x9030#define CCBS_INTERROGATE_REQ_PEND 0x9031#define NO_INTERNAL_COMMAND 0#define DTMF_COMMAND_1 1#define DTMF_COMMAND_2 2#define DTMF_COMMAND_3 3#define MIXER_COMMAND_1 4#define MIXER_COMMAND_2 5#define MIXER_COMMAND_3 6#define ADV_VOICE_COMMAND_CONNECT_1 7#define ADV_VOICE_COMMAND_CONNECT_2 8#define ADV_VOICE_COMMAND_CONNECT_3 9#define ADV_VOICE_COMMAND_DISCONNECT_1 10#define ADV_VOICE_COMMAND_DISCONNECT_2 11#define ADV_VOICE_COMMAND_DISCONNECT_3 12#define ADJUST_B_RESTORE_1 13#define ADJUST_B_RESTORE_2 14#define RESET_B3_COMMAND_1 15#define SELECT_B_COMMAND_1 16#define FAX_CONNECT_INFO_COMMAND_1 17#define FAX_CONNECT_INFO_COMMAND_2 18#define FAX_ADJUST_B23_COMMAND_1 19#define FAX_ADJUST_B23_COMMAND_2 20#define EC_COMMAND_1 21#define EC_COMMAND_2 22#define EC_COMMAND_3 23#define RTP_CONNECT_B3_REQ_COMMAND_1 24#define RTP_CONNECT_B3_REQ_COMMAND_2 25#define RTP_CONNECT_B3_REQ_COMMAND_3 26#define RTP_CONNECT_B3_RES_COMMAND_1 27#define RTP_CONNECT_B3_RES_COMMAND_2 28#define RTP_CONNECT_B3_RES_COMMAND_3 29#define HOLD_SAVE_COMMAND_1 30#define RETRIEVE_RESTORE_COMMAND_1 31#define FAX_DISCONNECT_COMMAND_1 32#define FAX_DISCONNECT_COMMAND_2 33#define FAX_DISCONNECT_COMMAND_3 34#define FAX_EDATA_ACK_COMMAND_1 35#define FAX_EDATA_ACK_COMMAND_2 36#define FAX_CONNECT_ACK_COMMAND_1 37#define FAX_CONNECT_ACK_COMMAND_2 38#define STD_INTERNAL_COMMAND_COUNT 39#define UID 0x2d /* User Id for Mgmt */#define CALL_DIR_OUT 0x01 /* call direction of initial call */#define CALL_DIR_IN 0x02#define CALL_DIR_ORIGINATE 0x04 /* DTE/DCE direction according to */#define CALL_DIR_ANSWER 0x08 /* state of B-Channel Operation */#define CALL_DIR_FORCE_OUTG_NL 0x10 /* for RESET_B3 reconnect, after DISC_B3... */#define AWAITING_MANUF_CON 0x80 /* command spoofing flags */#define SPOOFING_REQUIRED 0xff#define AWAITING_SELECT_B 0xef/*------------------------------------------------------------------*//* B_CTRL / DSP_CTRL *//*------------------------------------------------------------------*/#define DSP_CTRL_OLD_SET_MIXER_COEFFICIENTS 0x01#define DSP_CTRL_SET_BCHANNEL_PASSIVATION_BRI 0x02#define DSP_CTRL_SET_DTMF_PARAMETERS 0x03#define MANUFACTURER_FEATURE_SLAVE_CODEC 0x00000001L#define MANUFACTURER_FEATURE_FAX_MORE_DOCUMENTS 0x00000002L#define MANUFACTURER_FEATURE_HARDDTMF 0x00000004L#define MANUFACTURER_FEATURE_SOFTDTMF_SEND 0x00000008L#define MANUFACTURER_FEATURE_DTMF_PARAMETERS 0x00000010L#define MANUFACTURER_FEATURE_SOFTDTMF_RECEIVE 0x00000020L#define MANUFACTURER_FEATURE_FAX_SUB_SEP_PWD 0x00000040L#define MANUFACTURER_FEATURE_V18 0x00000080L#define MANUFACTURER_FEATURE_MIXER_CH_CH 0x00000100L#define MANUFACTURER_FEATURE_MIXER_CH_PC 0x00000200L#define MANUFACTURER_FEATURE_MIXER_PC_CH 0x00000400L#define MANUFACTURER_FEATURE_MIXER_PC_PC 0x00000800L#define MANUFACTURER_FEATURE_ECHO_CANCELLER 0x00001000L#define MANUFACTURER_FEATURE_RTP 0x00002000L#define MANUFACTURER_FEATURE_T38 0x00004000L#define MANUFACTURER_FEATURE_TRANSP_DELIVERY_CONF 0x00008000L#define MANUFACTURER_FEATURE_XONOFF_FLOW_CONTROL 0x00010000L#define MANUFACTURER_FEATURE_OOB_CHANNEL 0x00020000L#define MANUFACTURER_FEATURE_IN_BAND_CHANNEL 0x00040000L#define MANUFACTURER_FEATURE_IN_BAND_FEATURE 0x00080000L#define MANUFACTURER_FEATURE_PIAFS 0x00100000L#define MANUFACTURER_FEATURE_DTMF_TONE 0x00200000L#define MANUFACTURER_FEATURE_FAX_PAPER_FORMATS 0x00400000L#define MANUFACTURER_FEATURE_OK_FC_LABEL 0x00800000L#define MANUFACTURER_FEATURE_VOWN 0x01000000L#define MANUFACTURER_FEATURE_XCONNECT 0x02000000L#define MANUFACTURER_FEATURE_DMACONNECT 0x04000000L#define MANUFACTURER_FEATURE_AUDIO_TAP 0x08000000L#define MANUFACTURER_FEATURE_FAX_NONSTANDARD 0x10000000L/*------------------------------------------------------------------*//* DTMF interface to IDI *//*------------------------------------------------------------------*/#define DTMF_DIGIT_TONE_LOW_GROUP_697_HZ 0x00#define DTMF_DIGIT_TONE_LOW_GROUP_770_HZ 0x01#define DTMF_DIGIT_TONE_LOW_GROUP_852_HZ 0x02#define DTMF_DIGIT_TONE_LOW_GROUP_941_HZ 0x03#define DTMF_DIGIT_TONE_LOW_GROUP_MASK 0x03#define DTMF_DIGIT_TONE_HIGH_GROUP_1209_HZ 0x00#define DTMF_DIGIT_TONE_HIGH_GROUP_1336_HZ 0x04#define DTMF_DIGIT_TONE_HIGH_GROUP_1477_HZ 0x08#define DTMF_DIGIT_TONE_HIGH_GROUP_1633_HZ 0x0c#define DTMF_DIGIT_TONE_HIGH_GROUP_MASK 0x0c#define DTMF_DIGIT_TONE_CODE_0 0x07#define DTMF_DIGIT_TONE_CODE_1 0x00#define DTMF_DIGIT_TONE_CODE_2 0x04#define DTMF_DIGIT_TONE_CODE_3 0x08#define DTMF_DIGIT_TONE_CODE_4 0x01#define DTMF_DIGIT_TONE_CODE_5 0x05#define DTMF_DIGIT_TONE_CODE_6 0x09#define DTMF_DIGIT_TONE_CODE_7 0x02#define DTMF_DIGIT_TONE_CODE_8 0x06#define DTMF_DIGIT_TONE_CODE_9 0x0a#define DTMF_DIGIT_TONE_CODE_STAR 0x03#define DTMF_DIGIT_TONE_CODE_HASHMARK 0x0b#define DTMF_DIGIT_TONE_CODE_A 0x0c#define DTMF_DIGIT_TONE_CODE_B 0x0d#define DTMF_DIGIT_TONE_CODE_C 0x0e#define DTMF_DIGIT_TONE_CODE_D 0x0f#define DTMF_UDATA_REQUEST_SEND_DIGITS 16#define DTMF_UDATA_REQUEST_ENABLE_RECEIVER 17#define DTMF_UDATA_REQUEST_DISABLE_RECEIVER 18#define DTMF_UDATA_INDICATION_DIGITS_SENT 16#define DTMF_UDATA_INDICATION_DIGITS_RECEIVED 17#define DTMF_UDATA_INDICATION_MODEM_CALLING_TONE 18#define DTMF_UDATA_INDICATION_FAX_CALLING_TONE 19#define DTMF_UDATA_INDICATION_ANSWER_TONE 20#define UDATA_REQUEST_MIXER_TAP_DATA 27#define UDATA_INDICATION_MIXER_TAP_DATA 27#define DTMF_LISTEN_ACTIVE_FLAG 0x01#define DTMF_SEND_DIGIT_FLAG 0x01/*------------------------------------------------------------------*//* Mixer interface to IDI *//*------------------------------------------------------------------*/#define LI2_FLAG_PCCONNECT_A_B 0x40000000#define LI2_FLAG_PCCONNECT_B_A 0x80000000#define MIXER_BCHANNELS_BRI 2#define MIXER_IC_CHANNELS_BRI MIXER_BCHANNELS_BRI#define MIXER_IC_CHANNEL_BASE MIXER_BCHANNELS_BRI#define MIXER_CHANNELS_BRI (MIXER_BCHANNELS_BRI + MIXER_IC_CHANNELS_BRI)#define MIXER_CHANNELS_PRI 32typedef struct li_config_s LI_CONFIG;struct xconnect_card_address_s { dword low; dword high;};struct xconnect_transfer_address_s { struct xconnect_card_address_s card_address; dword offset;};struct li_config_s { DIVA_CAPI_ADAPTER *adapter; PLCI *plci; struct xconnect_transfer_address_s send_b; struct xconnect_transfer_address_s send_pc; byte *flag_table; /* dword aligned and sized */ byte *coef_table; /* dword aligned and sized */ byte channel; byte curchnl; byte chflags;};extern LI_CONFIG *li_config_table;extern word li_total_channels;#define LI_CHANNEL_INVOLVED 0x01#define LI_CHANNEL_ACTIVE 0x02#define LI_CHANNEL_TX_DATA 0x04#define LI_CHANNEL_RX_DATA 0x08#define LI_CHANNEL_CONFERENCE 0x10#define LI_CHANNEL_ADDRESSES_SET 0x80#define LI_CHFLAG_MONITOR 0x01#define LI_CHFLAG_MIX 0x02#define LI_CHFLAG_LOOP 0x04#define LI_FLAG_INTERCONNECT 0x01#define LI_FLAG_MONITOR 0x02#define LI_FLAG_MIX 0x04#define LI_FLAG_PCCONNECT 0x08#define LI_FLAG_CONFERENCE 0x10#define LI_FLAG_ANNOUNCEMENT 0x20#define LI_COEF_CH_CH 0x01#define LI_COEF_CH_PC 0x02#define LI_COEF_PC_CH 0x04#define LI_COEF_PC_PC 0x08#define LI_COEF_CH_CH_SET 0x10#define LI_COEF_CH_PC_SET 0x20#define LI_COEF_PC_CH_SET 0x40#define LI_COEF_PC_PC_SET 0x80#define LI_REQ_SILENT_UPDATE 0xffff#define LI_PLCI_B_LAST_FLAG ((dword) 0x80000000L)#define LI_PLCI_B_DISC_FLAG ((dword) 0x40000000L)#define LI_PLCI_B_SKIP_FLAG ((dword) 0x20000000L)#define LI_PLCI_B_FLAG_MASK ((dword) 0xe0000000L)#define UDATA_REQUEST_SET_MIXER_COEFS_BRI 24#define UDATA_REQUEST_SET_MIXER_COEFS_PRI_SYNC 25#define UDATA_REQUEST_SET_MIXER_COEFS_PRI_ASYN 26#define UDATA_INDICATION_MIXER_COEFS_SET 24#define MIXER_FEATURE_ENABLE_TX_DATA 0x0001#define MIXER_FEATURE_ENABLE_RX_DATA 0x0002#define MIXER_COEF_LINE_CHANNEL_MASK 0x1f#define MIXER_COEF_LINE_FROM_PC_FLAG 0x20#define MIXER_COEF_LINE_TO_PC_FLAG 0x40#define MIXER_COEF_LINE_ROW_FLAG 0x80#define UDATA_REQUEST_XCONNECT_FROM 28#define UDATA_INDICATION_XCONNECT_FROM 28#define UDATA_REQUEST_XCONNECT_TO 29#define UDATA_INDICATION_XCONNECT_TO 29#define XCONNECT_CHANNEL_PORT_B 0x0000#define XCONNECT_CHANNEL_PORT_PC 0x8000#define XCONNECT_CHANNEL_PORT_MASK 0x8000#define XCONNECT_CHANNEL_NUMBER_MASK 0x7fff#define XCONNECT_CHANNEL_PORT_COUNT 2#define XCONNECT_SUCCESS 0x0000#define XCONNECT_ERROR 0x0001/*------------------------------------------------------------------*//* Echo canceller interface to IDI *//*------------------------------------------------------------------*/#define PRIVATE_ECHO_CANCELLER 0#define PRIV_SELECTOR_ECHO_CANCELLER 255#define EC_ENABLE_OPERATION 1#define EC_DISABLE_OPERATION 2#define EC_FREEZE_COEFFICIENTS 3#define EC_RESUME_COEFFICIENT_UPDATE 4#define EC_RESET_COEFFICIENTS 5#define EC_DISABLE_NON_LINEAR_PROCESSING 0x0001#define EC_DO_NOT_REQUIRE_REVERSALS 0x0002#define EC_DETECT_DISABLE_TONE 0x0004#define EC_SUCCESS 0#define EC_UNSUPPORTED_OPERATION 1#define EC_BYPASS_DUE_TO_CONTINUOUS_2100HZ 1#define EC_BYPASS_DUE_TO_REVERSED_2100HZ 2#define EC_BYPASS_RELEASED 3#define DSP_CTRL_SET_LEC_PARAMETERS 0x05#define LEC_ENABLE_ECHO_CANCELLER 0x0001#define LEC_ENABLE_2100HZ_DETECTOR 0x0002#define LEC_REQUIRE_2100HZ_REVERSALS 0x0004#define LEC_MANUAL_DISABLE 0x0008
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -