⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gxvoice.pas

📁 基于东进公司模拟语音板卡下的CTI demo
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit GxVoice;

interface
uses Windows;

const MAX_CARD_NUM                      =$0008;
const MAX_CHANNEL_NUM                   =$0040;
const MAX_FILE_NAME_NUM                 =$0040;
const MAX_DTMF_NUM                      =$0040;
const MAX_FSK_NUM                       =$0400;
const MAX_CID_NUM                       =$0080;
const MAX_INDEX_FILE_NUM                =$0040;
const MAX_INDEX_BUFFER_NUM              =$0100;
const MAX_CONFERENCE_GROUP_NUM          =$000A;
const MAX_CONFERENCE_RESOURCE_NUM       =$0020;
const MAX_CONFERENCE_GROUP_RESOURCE_NUM =$0006;


const MESSAGE_HAVE_CID_FSK              =$0000;
const MESSAGE_HAVE_CID_DTMF             =$0001;
const MESSAGE_HAVE_CID_ERROR            =$0002;
const MESSAGE_HAVE_DTMF                 =$0003;
const MESSAGE_PLAY_VOICE_END            =$0004;
const MESSAGE_PLAY_VOICE_EXIT           =$0005;
const MESSAGE_RECORD_VOICE_END          =$0006;
const MESSAGE_RECORD_VOICE_EXIT         =$0007;
const MESSAGE_GENERATE_SIGNAL_END       =$0008;
const MESSAGE_GENERATE_SIGNAL_EXIT      =$0009;
const MESSAGE_GENERATE_DTMF_END         =$000A;
const MESSAGE_SEND_FSK_END              =$000B;
const MESSAGE_HAVE_DIAL_TONE            =$000C;
const MESSAGE_HAVE_BUSY_TONE            =$000D;
const MESSAGE_HAVE_BACK_TONE            =$000E;
const MESSAGE_HAVE_TONE_DATA            =$000F;
const MESSAGE_HAVE_HELLO_VOICE          =$0010;
const MESSAGE_HAVE_SILENCE_DATA         =$0011;
const MESSAGE_HAVE_TIME_OUT             =$0012;
const MESSAGE_HAVE_FSK_DATA             =$0013;
const MESSAGE_PLAY_CIRCLE_FIRST_END	    =$0014;
const MESSAGE_PLAY_CIRCLE_SECOND_END	  =$0015;
const MESSAGE_RECORD_CIRCLE_FIRST_END	  =$0016;
const MESSAGE_RECORD_CIRCLE_SECOND_END  =$0017;
const MESSAGE_AUTO_DIAL_NO_DIAL_TONE	  =$0018;
const MESSAGE_AUTO_DIAL_NONE_LISTEN	    =$0019;
const MESSAGE_AUTO_DIAL_HAVE_BUSY		    =$001A;
const MESSAGE_AUTO_DIAL_HOOK_OFF		    =$001B;
const MESSAGE_HAVE_SPECIAL_SIGNAL		    =$001C;
const MESSAGE_HAVE_BACK_TONE_HALT       =$001E;

const MESSAGE_USER_HOOK_OFF             =$1001;
const MESSAGE_USER_HOOK_ON              =$1002;
const MESSAGE_USER_PICK_UP              =$1003;
const MESSAGE_USER_RING_END             =$1004;

const MESSAGE_TRUNK_RING                =$2000;
const MESSAGE_TRUNK_POLE                =$2001;
const MESSAGE_TRUNK_PICK_UP_END         =$2002;

const MESSAGE_RECORD_HOOK_OFF           =$3001;
const MESSAGE_RECORD_HOOK_ON            =$3002;
const MESSAGE_RECORD_RING               =$3003;
const MESSAGE_RECORD_OPEN_CIRCLE        =$3004;
const MESSAGE_RECORD_NO_OPEN_CIRCLE     =$3005;

const MESSAGE_SEND_FAX_OK               =$6000;
const MESSAGE_SEND_FAX_ERROR            =$6001;
const MESSAGE_RECEIVE_FAX_OK            =$6002;
const MESSAGE_RECEIVE_FAX_ERROR         =$6003;
const MESSAGE_FAX_HAVE_REMOTE_TEL_NO    =$6004;
const MESSAGE_FAX_HAVE_INFORMATION      =$6005;

const MESSAGE_PLAY_SOUND_END				    =$7031;
const MESSAGE_PLAY_SOUND_EXIT				    =$7032;

const COMPRESS_TYPE_64KBPS				      =$00;
const COMPRESS_TYPE_32KBPS				      =$01;
const COMPRESS_TYPE_16KBPS				      =$02;
const COMPRESS_TYPE_8KBPS					      =$03;
const COMPRESS_TYPE_GSM					        =$04;


// Define Error const
const GX_OK                             =$0000;
const GX_NO_ERROR                       =$0000;
const GX_ERROR                          =$FFFF;
const GX_ERROR_LOAD_PROGRAM             =$FFFE;
const GX_ERROR_OPEN_DRIVER              =$FFFD;


// Define Channel Type Const
const CHANNEL_TYPE_NONE                 =$0000;
const CHANNEL_TYPE_USER                 =$0001;
const CHANNEL_TYPE_TRUNK                =$0002;
const CHANNEL_TYPE_RECORD               =$0003;
const CHANNEL_TYPE_MIX					        =$0004;

const STOP_NOT_DTMF                     =$00;
const STOP_ANY_DTMF                     =$01;


// Define struct for all voice card
type
    GX_MESSAGE_INFO = RECORD
        MessageCode  : WORD;
        ChannelNo    : WORD;
        MsgBuff    : ARRAY[0..5] of WORD;
    END;
    PGX_MESSAGE_INFO=^GX_MESSAGE_INFO;

    GX_TONE_INFO = RECORD
		DialToneMinTotalTime		: WORD;		// Max Signal All times By MilliSecond, default :2500

		BusyToneMaxTotalTime		: WORD;		// Max Signal All times By MilliSecond, default :1500
		BusyToneMinTotalTime		: WORD;		// Min Signal All times By MilliSecond, default :500
		BusyToneRatio				: WORD;		// Ratio(%)(On Times/All Times), default :50
		BusyToneErrorBetweenTwo     : WORD;		// Error between Ratio (%), default :10
		BusyToneTotalTimes			: WORD;		// Total Times, default :3

		BackToneMaxTotalTime		: WORD;		// Max Signal All times By MilliSecond, default :6000
		BackToneMinTotalTime		: WORD;		// Min Signal All times By MilliSecond, default :4000
		BackToneRatio				: WORD;		// Ratio(%)(On Times/All Times), default :20
		BackToneErrorBetweenTwo		: WORD; 	// Error between Ratio (%), default :10
		BackToneTotalTimes			: WORD;		// Total Times, default :2
    end;
    PGX_TONE_INFO=^GX_TONE_INFO;

    GX_FAX_INFORMATION = RECORD
		SignalRate                  : WORD;
		Resolution                  : WORD;
		TwoDimensional              : WORD;
		RecordWidth                 : WORD;
		RecordLength                : WORD;
    end;
    PGX_FAX_INFORMATION=^GX_FAX_INFORMATION;

function GX_InitializeSystem() : WORD; stdcall; far external 'GxV16.dll';
function GX_CloseSystem() : WORD; stdcall; far external 'GxV16.dll';

function GX_GetCardSerialNo(CardNo  : WORD) : WORD; stdcall; far external 'GxV16.dll';
function GX_GetTotalCardCount() : WORD; stdcall; far external 'GxV16.dll';
function GX_GetCardStatus(CardNo : WORD) : WORD; stdcall; far external 'GxV16.dll';
function GX_GetTotalChannelCount() : WORD; stdcall; far external 'GxV16.dll';
function GX_GetChannelType(ChannelNo : WORD) : WORD; stdcall; far external 'GxV16.dll';
function GX_GetChannelStatus(ChannelNo : WORD) : WORD; stdcall; far external 'GxV16.dll';
function GX_GetTotalVoiceChannel() : WORD; stdcall; far external 'GxV16.dll';

function GX_OpenChannel(ChannelNo : WORD) : WORD; stdcall; far external 'GxV16.dll';
function GX_CloseChannel(ChannelNo : WORD) : WORD; stdcall; far external 'GxV16.dll';

function GX_GetMessageForWindows(WaitTime : WORD; pMessageBuffer : PGX_MESSAGE_INFO) : WORD; stdcall; far external 'GxV16.dll';
function GX_CheckMessageForWindows(WaitTime : WORD; pMessageBuffer : PGX_MESSAGE_INFO) : WORD; stdcall; far external 'GxV16.dll';

function GX_UserRingOn(ChannelNo : WORD;RingOnTime : WORD;RingOffTime : WORD;TotalTimes : WORD) : WORD; stdcall; far external 'GxV16.dll';

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -