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

📄 tw8vid.h

📁 五岳鑫电话卡应用开发
💻 H
字号:

/*****************************************************************************

	FILE ........... TW8VID.H
	FUNCTION ....... Header file for Telewind - TW8VID API
	VERSION ........ 1.20

*****************************************************************************/
#ifndef __TW8VID_H
#define __TW8VID_H

#define MAX_ADAPTERS	16
#define MAX_CHANNELS	(8 * MAX_ADAPTERS)
#define CHANNEL_MASK	(MAX_CHANNELS-1)

#define FILE_FLAG	1	/* For TV_PlaySentence(...) */
#define DTMF_LEN	40

#define MAX_CALLINGID_LEN		24

/*	Return code for function call
*/
#define E_DRIVER	0xff	/* TW8VID driver not installed */
#define E_OK		0x00	/* OK */
#define E_COMMAND	0x01	/* Invalid command */
#define E_LENGTH	0x02	/* Too few buffer length */
#define E_PLAY_RECORD	0x03	/* Play/Record conflict */
#define E_CHANNEL	0x04	/* Invalid channel number */
#define E_ARGUMENT	0x05
#define E_ERR_SYNC	0x6
#define E_OUT_OF_MEMORY	0x7
#define E_ERR		0x8
#define E_RECORD_BUSY	0x9
#define E_FILEOPEN		0xa
#define E_PLAY_BUSY		0xb

#define E_NO_CONF_PORT	0x20
#define E_NO_FAX_PORT	0x21

#define CT_INTERNAL	0	/* Internal channel */
#define CT_EXTERNAL	1	/* External channel */
#define CT_EMPTY	2	/* Empty channel */

#define RATE_64K	0
#define RATE_32K	1
#define RATE_16K	2
#define RATE_8K		3
#define RATE_48K	4
#define RATE_24K	5
#define RATE_12K	6
#define RATE_6K		7

#define SIGNAL_TYPE	8
/*
 *	Signal type
 */
#define	SIG_UNKNOWN	0x60
#define SIG_TIMEOUT	0x61
#define SIG_OFFHOOK	0x62
#define SIG_NOBODY	0x63

#define SIG_SILENCE	0x40
#define SIG_DIAL	0x41

#define SIG_RING	0x00
#define SIG_BUSY1	0x01
#define SIG_BUSY2	0x02

#define CM_NORMAL	0x0		/* channel work in not compress mode */
#define CM_COMPRESS	0x1		/* channel work in compress mode */

/* CHAR_NAME is for TV_MakeSentence(...)
*/
typedef enum {
	CN_END = 0,		/* End of sentence (Also end of string) */
	CN_NOTHING,		/* Do nothing */
	CN_DIGIT0, CN_DIGIT1, CN_DIGIT2, CN_DIGIT3, CN_DIGIT4,	/* 0 - 4 */
	CN_DIGIT5, CN_DIGIT6, CN_DIGIT7, CN_DIGIT8, CN_DIGIT9,	/* 5 - 9 */
	CN_TEN,			/*          10 */
	CN_HUNDRED,		/*         100 */
	CN_THOUSAND,		/*       1,000 */
	CN_10THOUSAND,		/*      10,000 */
	CN_100MILLION,		/* 100,000,000 */
	CN_POINT,		/* "." */
	CN_NEGATIVE,		/* "-" */

	CN_LAST			/* To be continued by YOU ! */
} CHAR_NAME;

typedef struct {
	int	silence_sig_min;	/* Min. count of SIG_SILENCE */
	int	dial_sig_min;	/* Min. count of SIG_DIAL */
	int	signal_para[SIGNAL_TYPE][4];
	/*	[x][0] : Min count of low
	 *	[x][1] : Max count of low
	 *	[x][2] : Min count of high
	 *	[x][3] : Max count of high
	 */
} PCB_STRUC;	/* Parameter Control Block Structure */

typedef struct {
	unsigned char	MajorVer;
	unsigned char	MinorVer;
	unsigned char	IRQNo;
	unsigned char	IntrNo;
	PCB_STRUC 		PCB;
	int	AdapterNum;
	int	ChannelNum;
	unsigned int	TW8VIDSeg[MAX_ADAPTERS];
	int far *		reserved1;
	unsigned char   ( far * reserved2)[512];
} SP_STRUC;	/* System Parameter Structure */


extern int		TV_ReturnCode;	/* Return code for last call */
extern int		TV_CloseFile;	/* Close files in TV_StartRecordFile() & TV_StartPlayFile() ? */
extern char far *	*TV_VoiceData;	/* Voice data for CHAR_NAME */
extern int	*TV_VoiceLen;	/* Voice data length for CHAR_NAME */


#ifdef __cplusplus
extern "C" {
#endif

#ifndef WIN32
#define WINAPI
#else
#define TM_NOTIFY		(WM_USER+7)
#endif

int		WINAPI TV_Installed (void);
int		WINAPI TV_Initialize (void);
void	WINAPI TV_Disable (void);

int		WINAPI TV_ChannelType (int);
int		WINAPI TV_OffHookDetect (int);
int		WINAPI TV_RingDetect (int);
void	WINAPI TV_HangUpCtrl (int);
void	WINAPI TV_OffHookCtrl (int);
void	WINAPI TV_RingCtrl (int);
void	WINAPI TV_PowerCtrl (int);
void	WINAPI TV_SysPara (SP_STRUC far *);
void	WINAPI TV_CompressRatio (int);

long	WINAPI TV_StartRecord (int, char far *, int);
long	WINAPI TV_StartRecord2 (int, char far *, int);
long	WINAPI TV_StopRecord (int);
long	WINAPI TV_RecordRest (int);
long	WINAPI TV_StartPlay (int, char far *, int);
long	WINAPI TV_StopPlay (int);
long	WINAPI TV_PlayRest (int);
int		WINAPI TV_StartDial (int, char far *);
int		WINAPI TV_StopDial (int);
int		WINAPI TV_DialRest (int);

int		WINAPI TV_ReceiveCallingID (int ch, char far *rb, int rl);

void	WINAPI TV_FlushDTMF (int);
int		WINAPI TV_GetDTMFChar (int);
char far *WINAPI TV_GetDTMFStr (int);
void	WINAPI TV_StartTimer (int, long);
long	WINAPI TV_TimerElapsed (int);
int		WINAPI TV_CheckSignal (int, int *, int *);
int		WINAPI TV_CheckOffHook (int, int *, int *);
int		WINAPI TV_ListenerOffHook (int);

void	WINAPI TV_ConnectChannels (int, int);
void	WINAPI TV_DisconnectChannels (int, int);
void	WINAPI TV_ConnectTo (int, int);
void	WINAPI TV_Disconnect (int);
void	WINAPI TV_Connect3 (int, int, int);
void	WINAPI TV_Disconnect3 (int, int, int);

void	WINAPI TV_GenerateSignal (int, int);
void	WINAPI TV_GenerateRing (int);

long	WINAPI TV_StartRecordFile (int, char *, long, long);
long	WINAPI TV_RecordFileRest (int);
long	WINAPI TV_StopRecordFile (int);
int		WINAPI TV_TruncateFile (char *, long);
long	WINAPI TV_StartPlayFile (int, char *, long, long);
long	WINAPI TV_PlayFileRest (int);
long	WINAPI TV_StopPlayFile (int);

void	WINAPI TV_MakeSentence (double, unsigned char *);
long	WINAPI TV_PlaySentence (int, unsigned char *);
long	WINAPI TV_PlaySentenceRest (int);

void	WINAPI TV_GetSerial (char far *);

void	WINAPI TV_StartMonitor (int);
int		WINAPI TV_MonitorOffHook (int, int);
int		WINAPI TV_MonitorBusy (int, int, int);

void	WINAPI TV_SetSignalLevel( int );
void	WINAPI TV_SetChannelMode( int , int );

void	WINAPI TV_SetSignalParam( int , int , int ,int ,int );
void 	WINAPI TV_SetDTMFSendSpeed( int ch, int speed);
void	WINAPI TV_SetVoi(int ch, int v);
void 	WINAPI TV_SetSendMode( int ch, int m);

int 	WINAPI TV_SetFaxPort( int port );
int 	WINAPI TV_SetConfPort( int inPort, int outPort );
int 	WINAPI TV_SetConfPort2( int inPort, int outPort );
int 	WINAPI TV_AttachConf( int ch, int conf );
int 	WINAPI TV_AttachFax( int ch, int fax );
int 	WINAPI TV_AttachTwpcm( int ch );
void	WINAPI TV_ConnectToTW8VID(int nCard,int srcSt, int srcCh, int dstSt,int dstCh);

int 	WINAPI TV_OcDetect(int ch);
int 	WINAPI TV_SetOcTime(int t);
int		WINAPI TV_SetOcInterval(int omin,int omax);

void    WINAPI TV_SetVoicei(int i,char far *filename);
int	WINAPI TV_GetLastError();
int	WINAPI TV_InternalRingDetect( int ch );

int	WINAPI TV_SetVos( int v);
int	WINAPI TV_SetAmp(int v);	// 20 -- 80
int	WINAPI  TV_GetAdapterBuffer(int, char *, int);
int	WINAPI  TV_SetAdapterParam(int which,int v);
int	WINAPI  TV_SetChannelFreq(int ch,int Hz);
long	WINAPI TV_StartRecord2 (int, char far *, int);

#ifdef __cplusplus
}
#endif

#endif

⌨️ 快捷键说明

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