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

📄 tc08a32.pas

📁 Delphi编写的东进语音卡实现的电话挂失系统
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit tc08a32;

interface
uses Windows;
const
     MAX_CARD_NO=		16;
     MAX_CHANNEL_NO=	8 * MAX_CARD_NO;

     LEN_FILEPATH=	70;

// the value of every card-type
     CARD_TYPE_T5_64=		1;
     CARD_TYPE_T5_128=	2;
     CARD_TYPE_T5_REC=	3;
     CARD_TYPE_T5_128_NT=	10;
     CARD_TYPE_T5_REC_NT=	11;
     CARD_TYPE_T5_ID_NT=	12;


     CHTYPE_USER=     0;
     CHTYPE_TRUNK=    1;
     CHTYPE_EMPTY=    2;
     CHTYPE_RECORD=   3;

     NODTMF=    -1;
     DTMF_CODE_0=		10;
     DTMF_CODE_1=		1;
     DTMF_CODE_2=		2;
     DTMF_CODE_3=		3;
     DTMF_CODE_4=		4;
     DTMF_CODE_5=		5;
     DTMF_CODE_6=		6;
     DTMF_CODE_7=		7;
     DTMF_CODE_8=		8;
     DTMF_CODE_9=		9;
     DTMF_CODE_STAR=	11;
     DTMF_CODE_SHARP=	12;
     DTMF_CODE_A=		13;
     DTMF_CODE_B=		14;
     DTMF_CODE_C=		15;
     DTMF_CODE_D=		16;


     RECORD_CHECK=    01;
     PLAY_CHECK=              02;
     SEND_CHECK=              03;
     SEND_READY_CHECK= 04;

     R_BUSY=          $21;
     R_OTHER=         $20;

     S_NORESULT =     $10;
     S_BUSY =         $11;
     S_NOBODY=        $13;
     S_CONNECT=       $14;
     S_NOSIGNAL=      $15;
     S_DIALSIG=       $30;


     PACK_64KBPS=     0;
     PACK_32KBPS=     1;
     PACK_16KBPS=     2;
     PACK_8KBPS=     3;

// NEW ADD for Feed and Signal

     SIG_STOP=     0;
     SIG_DIALTONE= 1;
     SIG_BUSY1=    2;
     SIG_BUSY2=    3;
     SIG_RINGBACK= 4;

     HANG_UP_FLAG_FALSE= 0;
     HANG_UP_FLAG_TRUE=  1;
     HANG_UP_FLAG_START= 2;
     HANG_UP_FLAG_PRESS_R=  3;


// caller-ID
    	ID_STEP_NONE=	0;
    	ID_STEP_HEAD=	1;
    	ID_STEP_ID=	2;
    	ID_STEP_OK=	3;
    	ID_STEP_FAIL=	4;
    	ID_STEP_LEN=	5;

// end of caller-ID

// nCadenceType value
    SIG_CADENCE_BUSY =1	;//busy tone
    SIG_CADENCE_RINGBACK =2;//ringback tone


type
    TPD_RPB= record
	PlayFlag:WORD ;
	RecordFlag:WORD ;
	PlayCount:WORD ;
	RecordCount:WORD ;
	DtmfCount:WORD ;
	DialFlag:WORD ;
	SigCount:WORD ;
	SigStartPoint:WORD ;
	SigBuf:PChar;
    end;

    TPD_WPB=record
	Busy1Count1Low:BYTE;
	Busy1Count1High:BYTE ;
	Busy1Count0Low:BYTE ;
	Busy1Count0High:BYTE ;

	BusySigCount:WORD  ;
	BusySigLen:WORD  ;

	SendReadyLen:WORD ;

	SendBusy1Count1Low:BYTE ;
	SendBusy1Count1High:BYTE ;
	SendBusy1Count0Low:BYTE ;
	SendBusy1Count0High:BYTE ;

	SendSigCount1Low:BYTE ;
	SendSigCount1High:BYTE ;
	SendSigCount0Low:BYTE ;
	SendSigCount0High:BYTE ;

	SendNoSignalLen:WORD  ;

	MaxRingTimes:BYTE ;
    end;

//use play index file
    TPD_PIF =record
	FileName:array[0..99] of char;
	gHandle:array[0..99] of HFILE ;
	FileCount:DWORD ;
    end;

//*******************************************
//	define struct & type
//********************************************/
    TC_INI_TYPE =record
	// get from "TC08A-V.INI"
	wCardNo:WORD ;
	wCardType:WORD ;
	wConnect:WORD ;
	wIRQ:WORD ;
	cbDir:array[0..LEN_FILEPATH-1] of char;
	wAddress:array[0..MAX_CARD_NO] of WORD;

	// get from driver
	wMajorVer:WORD ;
	wMinorVer:WORD ;
	wChType:array[0..MAX_CHANNEL_NO] of WORD ;
    end;

function LoadDRV() : LongInt; stdcall; far  external 'Tc08a32.dll';
procedure FreeDRV();  stdcall; far external 'Tc08a32.dll';
procedure GetSysInfo(TmpIni:pointer); stdcall; far external 'Tc08a32.dll';
function CheckValidCh() : WORD; stdcall; far external 'Tc08a32.dll';
function CheckChType(wChnlNo : WORD): WORD; stdcall; far external 'Tc08a32.dll';
function CheckChTypeNew(wChnlNo:word):integer;stdcall; far external 'Tc08a32.dll';
function DRec_OffHookDetect(wChnlNo:word):boolean;stdcall; far external 'Tc08a32.dll';
function IsSupportCallerID():boolean; stdcall; far external 'Tc08a32.dll';
function EnableCard(wUsedCh : WORD; wFileBufLen:WORD) : LONGINT; stdcall; far  external 'Tc08a32.dll';
procedure DisableCard(); stdcall; far external 'Tc08a32.dll';
function SetPackRate( pack:integer) :Integer; stdcall; far  external 'Tc08a32.dll';
procedure PUSH_PLAY(); stdcall; far external 'Tc08a32.dll';
function RingDetect(wChnlNo:WORD) : BOOLEAN; stdcall; far external 'Tc08a32.dll';
function CheckPolarity( chanelNo:integer) :Integer; stdcall; far  external 'Tc08a32.dll';
function OffHook(chanelNo:integer) :Integer; stdcall; far  external 'Tc08a32.dll';
function HangUp(chanelNo:integer) :Integer;  stdcall; far  external 'Tc08a32.dll';

⌨️ 快捷键说明

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