📄 ctidef.h
字号:
#ifndef __CTI_DEFINE_H__ //{
#define __CTI_DEFINE_H__
typedef enum enumChannelType //通道类型
{
CH_DIGITAL_TRUNK = 0, //数字中继通道
CH_USER, //内线坐席通道
CH_ANALOG_TRUNK, //模拟中继通道(市话线)通道
CH_VOIP, //VoIP语音压缩解压通道
CH_VOICE, //语音通道
CH_CONFERENCE, //电话会议通道
CH_PCM,
CH_MFC,
CH_DTMF,
CH_HIGH_IMPEDANCE, //高阻监控通道(模块)
CH_MVIP,
CH_SPEAKER,
CH_MAX//CH_MAX也表示空通道(模拟卡、座席卡未插模块)
}EChannelType;
#define CH_MIN CH_DIGITAL_TRUNK
#define CH_TRUNK CH_DIGITAL_TRUNK
#define CH_INTERIOR_SLIC CH_USER
#define CH_EXTERIOR_SLIC CH_ANALOG_TRUNK
#define CH_SLIC CH_USER
#define CH_ANALOG CH_ANALOG_TRUNK
typedef enum enumCardType //卡类型
{
CARD_TYPE_UNKNOW = 0,
CARD_TYPE_PCM = 1, //数字中继语音卡
CARD_TYPE_SLIC = 2, //坐席卡
CARD_TYPE_ANALOG = 3, //模拟语音卡
CARD_TYPE_FAX = 4, //FAX卡
CARD_TYPE_ROUTER = 5, //过机卡
CARD_TYPE_SS7 = 6, //七号信令卡
CARD_TYPE_VOIP = 7, //IP压缩解压卡
CARD_TYPE_MAX
}ECardType;
#define CARD_TYPE_MIN CARD_TYPE_PCM
typedef enum enumChannelState
{
STATE_IDLE = 0, //0
STATE_IN_CALLING, //1
STATE_IN_RINGING, //2
STATE_IN_TALK, //3
STATE_IN_HANGUP, //4
STATE_IN_RELEASE, //5
STATE_OUT_CALLING, //6
STATE_OUT_RINGING, //7
STATE_OUT_TALK, //8
STATE_OUT_HANGUP, //9
STATE_OUT_RELEASE, //10
STATE_DISABLE //11
}EChannelState;
typedef enum enumChannelEvent
{
EVENT_STATE = 100,
EVENT_CALL_IN = 101,
EVENT_ANSWER = 102,
EVENT_HANGUP = 103,
EVENT_CALL_FAIL = 104,
EVENT_CALL_OUT = 105,
EVENT_TIMER = 106,
EVENT_TUP_GATEWAY_CLOSE = 701
}EChannelEvent;
typedef enum enumHangupCause
{
CAUSE_UNKNOW = 0,
CAUSE_HANGUP = 1, //对方挂机
CAUSE_TIMEOUT = 2, //呼叫超时
CAUSE_UNN = 10, //空号
CAUSE_SLB = 11, //用户市话忙
CAUSE_SEC_CGC_NNC = 12, //交换设备拥塞信号、电路群拥塞信号、国内网拥塞信号
CAUSE_ADI = 13, //地址不全信号
CAUSE_LOS_CFL = 14, //线路不工作信号、呼叫失败信号
CAUSE_STB = 15, //用户长话忙
CAUSE_SST = 16, //发送专用信息音信号
CAUSE_DPN = 17, //不提供数字通道信号
CAUSE_ACB = 18, //接入拒绝信号
}EHangupCause;
typedef enum enumExchangeType
{
exchangeBuildDoublyConnect = 0, //建立双向联结
exchangeBreakDoublyConnect = 1, //拆除双向联结
exchangeBuildSinglyConnect = 2, //建立单向联结
exchangeBreakSinglyConnect = 3 //拆除单向联结
}EExchangeType;
typedef enum enumPhonicErrorCode
{
ERR_SUCCESS = 0, //操作成功
ERR_UNKNOW = -1, //未知原因的错误
ERR_NO_ENOUGH_RESOURCE = -2,
ERR_INTI_DEVICE_FAIL = -3,
ERR_INVALID_FUNC = -4,
ERR_CANNOT_LOAD_DRIVER = -5,
ERR_CANNOT_OPEN_NAMED_EVENT = -6,
ERR_DEVICE_NOT_OPEN = -7,
ERR_FAX_CONVERT_NOT_INITIALED = -8,
ERR_INVALID_CHANNEL_ID = -11,
ERR_INVALID_CHANNEL_TYPE = -12,
ERR_INVALID_CARD_TYPE = -13,
ERR_INVALID_CARD_ID = -14,
ERR_INVALID_GROUP_ID = -15,
ERR_INVALID_CHANNEL_STATE = -16,
//Voice
ERR_CANNOT_OPEN_FILE = -101, //打不开文件
ERR_INVALID_FILE_SEEK = -102, //文件定位(设置读写位置)错误
ERR_INVALID_PMT_INDEX = -113,
//Conference
ERR_INVALID_CONFER_SET_ID = -201,
ERR_NOT_EXIST_CONFER_SET = -202,
ERR_INVALID_CONFER_HANDLE = -203,
//VOIP
ERR_VOIP_SEND_BUF_FULL = -301,
ERR_INVALID_CODER = -302,
ERR_FILE_FORMAT_NOT_SURPPORT = -401,
ERR_FUNCTION_NOT_SURPPORT = -402,
ERR_CODER_NOT_SURPPORT = -403
}EPhonicErrorCode;
typedef enum enumChannelCmdParameter
{
PARAM_CODRE = 1
}EChannelCmdParameter;
typedef enum enumSignalType
{
SIGNAL_NONE = 0,
SIGNAL_REMOTE_DL, //对方直流信令改变
SIGNAL_LOCAL_DL, //本地直流信令改变
SIGNAL_REMOTE_SEND, //对方发送MFC码
SIGNAL_REMOTE_STOP, //对方停发
SIGNAL_LOCAL_SEND, //本地发送MFC码
SIGNAL_LOCALE_STOP //本地停发
}ESignalType;
#define _DL_FORE_IDLE 0x0b //A
#define _DL_FORE_USED 0x03 //B
#define _DL_FORE_CONNECT 0x03 //D
#define _DL_BACK_IDLE 0x0b //A
#define _DL_BACK_CONFIRM 0x0f //C
#define _DL_BACK_CONNECT 0x07 //D
#define _DL_BACK_BLOCK 0x0f //F
//The follow message is for Mfc channel
#define _MFC_BACK_A1 0x10 //request next
#define _MFC_BACK_A2 0x11 //request from home
#define _MFC_BACK_A3 0x12 //change to B signal
#define _MFC_BACK_A4 0x13 //busy
#define _MFC_BACK_A5 0x14 //space No.
#define _MFC_BACK_A6 0x15 //request KA and caller
#define _MFC_BACK_KB1 0x10 //user is free
#define _MFC_BACK_KB2 0x11 //no used
#define _MFC_BACK_KB3 0x12 //no used
#define _MFC_BACK_KB4 0x13 //user is busy
#define _MFC_BACK_KB5 0x14 //space No.
#define _MFC_BACK_KB6 0x15 //user is free and controled by Caller
#define _MFC_BACK_KD1 1 //long half auto call
#define _MFC_BACK_KD2 2 //long auto call
#define _MFC_BACK_KD3 3 //city phone
#define _MFC_BACK_KD4 4 //city FAX or DATA
#define _MFC_BACK_KD5 5 //half auto confirm caller number
#define _MFC_BACK_KD6 6 //test call
#define _MFC_FORE_KA1 1
#define _MFC_FORE_KA2 2
#define _MFC_FORE_KA3 3
#define _MFC_FORE_KA4 4
#define _MFC_FORE_KA5 5
#define _MFC_FORE_KA6 6
#define _MFC_FORE_KA7 7
#define _MFC_FORE_KA8 8
#define _MFC_FORE_KA9 9
#define _MFC_FORE_KA10 10
#define _MFC_FORE_KA11 11
#define _MFC_FORE_KA12 12
#define _MFC_FORE_KA13 13
#define _MFC_FORE_KA14 14
#define _MFC_FORE_KA15 15
#define _MFC_CALLER_END 0x0f
#define _MAX_CONFERENCE_SET 10
typedef union unionConferenceHandle
{
DWORD m_hConferenceHandle;
struct
{
WORD m_wConferGroupID;
WORD m_wConferenceSetID;
};
}UConferenceHandle;
typedef enum enumConferAttenution
{
ATTEN_0DB = 0,
ATTEN_MINUS_3DB = 1,
ATTEN_MINUS_6DB = 2
}EConferAttenution;
typedef enum enumConferNoiseSuppresion
{
NOISE_NO_SUPPRESION = 0,
NOISE_9_DIVIDE_BY_4096 = 1, // 9/4096
NOISE_16_DIVIDE_BY_4096 = 2, // 16/4096
NOISE_32_DIVIDE_BY_4096 = 3 // 32/4096
}EConferNoiseSuppresion;
typedef enum enumUnitType //通道类型
{
UNIT_DIGITAL_TRUNK = 0, //数字中继通道
UNIT_USER, //内线坐席通道
UNIT_ANALOG_TRUNK, //模拟中继通道(市话线)通道
UNIT_VOIP, //VoIP语音压缩解压通道
UNIT_VOICE, //语音通道
UNIT_CONFERENCE, //电话会议通道
UNIT_PCM,
UNIT_MFC,
UNIT_DTMF,
UNIT_HIGH_IMPEDANCE, //高阻监控通道(模块)
UNIT_MVIP,
UNIT_DEVICE, //设备
UNIT_SYSTEM, //系统
UNIT_MAX
}EUnitType;
#define A8MSG_RECORD_FILE_MODE 0 // 设置录音模式,wParam==1清除偏移量后的所有数据
typedef enum enumAnalogSignal
{
signalNone, //没有信号
signalBusy, //忙音
signalRingBack, //回铃音
signalDialTone //拨号音
}EAnalogSignal;
#endif //}__FIHO_DTVC_DEFINE_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -