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

📄 shpa3api.h

📁 VC6.0
💻 H
📖 第 1 页 / 共 5 页
字号:
    E_CHG_RemoteChBlock   = 0x001a,
    E_CHG_RemotePCMBlock  = 0x001b,
    E_SYS_ActualPickup   = 0x001c,
    E_CHG_RingFlag    = 0x001d,
    E_CHG_RingCount    = 0x001e,
    E_CHG_CIDExBuf    = 0x001f,
    E_CHG_RxPhoNumBuf   = 0x0020,
    E_CHG_PolarRvrsCount  = 0x0021,
    E_SYS_RemotePickup   = 0x0022,
    E_CHG_FlashCount   = 0x0023,
    E_CHG_HookState    = 0x0024,
    E_CHG_ToneAnalyze   = 0x0025,
    E_OverallEnergy    = 0x0026,
    E_CHG_OvrlEnrgLevel   = 0x0027,
    E_CHG_BusyTone    = 0x0028,
    E_CHG_BusyToneEx   = 0x0029,
    E_CHG_VocFxFlag    = 0x002a,
    E_CHG_ToneValue    = 0x002b,
    E_CHG_RingEchoToneTime  = 0x002c,
    E_CHG_PeakFrq    = 0x002d,
    E_SYS_BargeIn    = 0x002e,
    E_SYS_NoSound    = 0x002f,
    E_SYS_TIMEOUT    = 0x0030,
    E_CHG_SpyState    = 0x0031,
    E_CHG_SpyLinkStatus   = 0x0032,
    E_RCV_DTR_AUDIO    = 0x0033,
    E_RCV_DTR_HOOK    = 0x0034,
    E_RCV_DTR_LAMP    = 0x0035,
    E_RCV_DTR_FKEY    = 0x0036,
    E_RCV_DTR_DKEY    = 0x0037,
    E_RCV_DTR_VOX    = 0x0038,
    E_RCV_DTR_DISPLAY   = 0x0039,
    E_RCV_DTR_DIRECTION   = 0x003a,
    E_RCV_DTR_RING    = 0x003b,
    E_CHG_CICRxPhoNumBuf  = 0x003c,
    E_CHG_CICState    = 0x003d,
    E_PROC_CICAutoDial   = 0x003e,
    E_RCV_Ss7IsupUtuinf   = 0x003f,
    E_CHG_Mtp2Status   = 0x0040,
    E_RCV_DSTDChannel   = 0x0041,
    E_RCV_Ss7SpyMsu    = 0X0042,
    E_CHG_ToneDetector   = 0x0043,
    E_CHG_ToneDetectorItem  = 0x0044,
    E_RCV_CALLERID   = 0x0045,
    E_PROC_FaxDcnTag    = 0x0046,
    E_CHG_AMD     = 0x0047,
    E_RCV_Ss7IsupCpg   = 0x0048,
    E_CHG_CbChStatus   = 0x0049,
    E_REFER_Status     = 0x0050,  
	E_CHG_SpyHangupInfo	= 0x0051,
    MAX_EVENT_SIZE
};

enum
{
    TIMER_ONE,
    TIMER_PERIODIC
};

enum
{
    NO_EVENT, // 无事件方式
    EVENT_POLLING, //事件轮询
    EVENT_CALLBACK, //事件回调
    EVENT_MESSAGE //windows消息
};

//文件放音进程指示输出参数类型.
enum
{
    PLAYPERCENT,
    PLAYTIME,
    DATABYTESPLAYED,
    DATABYTESTOPLAY
};

//内存录放音进程指示输出参数类型.
enum
{
    END_HALF_BUFFER,
    END_BUFFER,
    MEM_OFFSET,
    MEM_BYTES,
};

//文件录音进程指示输出参数类型.
enum
{
    RECORD_TIME,
    RECORD_BYTES
};

#pragma pack(push, 8)
typedef struct  _MESSAGE_INFO
{
    WORD wEventCode;
    int  nReference;
    DWORD dwParam; //输出参数
}MESSAGE_INFO, *PMESSAGE_INFO;

typedef struct _EVENT_SET_INFO
{
    DWORD dwWorkMode;
    LPVOID lpHandlerParam;
    DWORD dwOutCondition;
    DWORD dwOutParamVal;
    DWORD dwUser;
}EVENT_SET_INFO, *PEVENT_SET_INFO;

typedef struct _SSM_EVENT
{
    WORD   wEventCode;
    int    nReference;
    DWORD   dwParam;
    DWORD   dwUser;
    DWORD   dwSubReason;   //Event sub-reason
    DWORD   dwXtraInfo;    //Extra information
    PVOID           pvBuffer;    //Pointer to buffer
    DWORD           dwBufferLength;   //Length of buffer pointed by pvBuffer
    DWORD           dwDataLength;   //Length of data in buffer pointed by pvBuffer
    DWORD           dwEventFlag;            //Falgs of the following:
    //bit 0, =1 - App created the event
    //   =0 - SHP_A3.DLL created the event
    //bit 1, Reserved
    //bit 2, =1 - data has been truncated
    //   =0 - data has not been truncated
    DWORD           dwReserved1;
    LONGLONG  llReserved2;
}SSM_EVENT, *PSSM_EVENT;

typedef struct tagFAX_FILE_SCT
{
    char  szFileName[256];
    int  nStartPage;
    int  nEndPage;
    int  nReserve1;
    int  nReserve2;
}FAX_FILE_SCT, *PFAX_FILE_SCT;


typedef struct _VERSION
{
    UCHAR   ucMajor;
    UCHAR   ucMinor;
    USHORT  usInternal;
    USHORT  usBuild;
    UCHAR   ucRelease;
    UCHAR   ucFeature;
}SSM_VERSION, *PSSM_VERSION;


#define IPM_SENDRECV			0x0000
#define IPM_RECVONLY			0x0001
#define	IPM_SENDONLY			0x0002

struct MediaParam
{
	int mode;
	char localIP[50];
	int localPort;
	char remoteIP[50];
	int remotePort;
	int sendCodecType;
	int	dtmfpayload;
};
#pragma pack(pop)

//ISUP用户部分参数常量定义,函数SsmSetIsupFlag中nType类型
enum
{
    ISUP_CallerParam = 1,//主叫号码参数
    ISUP_PhoNumParam = 2,//被叫号码参数
    ISUP_PhoNumREL = 3,  //带号码改发信息的REL
		ISUP_IAM_TMR  = 4,   
    ISUP_REL_DENY_SetToOther = 100,//呼叫被拒设置为其它情况
    DefaultIAM_OriginalCalleeParam = 101,
};


#pragma pack(push, 1)
typedef struct tag_ISUP_RIREL
{
    WORD wRIMsg;
    WORD wRIPhoNumPara;
    WORD wPhoNumLen;
    UCHAR ucRIPhoNum[20];
}ISUP_RIREL, *PISUP_RIREL;
#pragma pack(pop)

typedef struct
{
	WORD port;
	unsigned int addr;
} StunAddress4;
typedef enum 
{
	StunTypeUnknown=0,
		StunTypeOpen,
		StunTypeConeNat,
		StunTypeRestrictedNat,
		StunTypePortRestrictedNat,
		StunTypeSymNat,
		StunTypeSymFirewall,
		StunTypeBlocked,
		StunTypeFailure
} NatType;

#define TYPE_MESSAGE_CONTACT 0x0001   // 获取Contact字段内容
#define TYPE_SET_IP_IPADDR       1

#endif //SHCTI_CONST

#ifndef WINAPI
#define WINAPI
#endif
#ifndef CALLBACK
#define CALLBACK
#endif

#ifndef SHCTI_CALLBACK
#define SHCTI_CALLBACK

typedef void (WINAPI *RXDTMFHANDLER)(int ch, char cDtmf, int nDTStatus, PVOID pV);
typedef BOOL (WINAPI *RECORDMEMBLOCKHANDLER)(int ch, int nEndReason, PUCHAR pucBuf, DWORD dwStopOffset, PVOID pV);
typedef BOOL (WINAPI *PLAYMEMBLOCKHANDLER)(int ch, int nEndReason, PUCHAR pucBuf, DWORD dwStopOffset, PVOID pV);
typedef void (CALLBACK  *LPRECTOMEM)(int ch, LPBYTE lpData, DWORD dwDataLen);
typedef void (CALLBACK  *LPRECTOMEMB)(int ch, LPBYTE lpData, DWORD dwDataLen, PVOID pV);
typedef int (CALLBACK  *LPFNEVENTCALLBACK)(WORD wEvent, int nReference, DWORD dwParam, DWORD dwUser);
typedef int (CALLBACK  *LPFNEVENTCALLBACKA)(PSSM_EVENT pEvent);
typedef BOOL (CALLBACK *LPFNDSTRECRAWDATA)(int nCh, DWORD dwLen, PUCHAR pucdata, WORD wDataDiscardedTimes, WORD wWriteToFileFailedTimes);
typedef BOOL (CALLBACK *LPFNDSTRECBITFLOW)(int nCh, DWORD dwLen, PUCHAR pucdata, WORD wDataDiscardedTimes, WORD wWriteToFileFailedTimes);

#endif

#ifdef __cplusplus
extern "C"
{
#endif

#ifndef TcNo7_EXPORTS
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
//@@@@@@@@@@@@@@@@@@@ INITIALIZATION OPERATION  @@@@@@@@@@@@@@@@@@@@@
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
	int WINAPI SsmStartCti(LPCSTR lpSsmCfgFileName, LPCSTR lpIndexCfgFileName);
	int WINAPI SsmCloseCti();
	void WINAPI SsmGetLastErrMsg(LPSTR szErrMsgBuf);
	char *WINAPI SsmGetLastErrMsgA(void);
	int WINAPI SsmGetLastErrCode();
	int WINAPI SsmGetMaxUsableBoard();
	int WINAPI SsmGetMaxCfgBoard();
	int WINAPI SsmGetRxDtmfBufSize();
	int WINAPI SsmGetAccreditId(int nBId);
	int WINAPI SsmGetMaxCh(void);
	int WINAPI SsmGetChType(int ch);
	int WINAPI SsmSetMaxIdxSeg(WORD wMaxIdxSeg);
	int WINAPI SsmLoadIndexData(int nSegNo, LPCSTR pAlias, int nCodec, LPCSTR pVocFile, long lStartPos, long lLen);
	int WINAPI SsmFreeIndexData(int nSegNo);
	int WINAPI SsmGetTotalIndexSeg();
	int WINAPI SsmPauseCard();
	int WINAPI SsmRestartCard();

	int WINAPI SsmGetAccreditIdEx(int nBId);
	int WINAPI SsmGetBoardModel(int nBId);
	void WINAPI SsmSetDV(BOOL bEnable);
	BOOL WINAPI SsmGetDV(void);

	DWORD WINAPI SsmGetPciSerialNo(int nBId);

	DWORD WINAPI SsmGetIntCount();
	int WINAPI SsmSetListenMode(int nMode);

	int WINAPI SsmStartBoard(int nBId);
	int WINAPI SsmStopBoard(int nBId);
	int WINAPI SsmGetChHdInfo(int ch, int * pnBId, int * pnBCh);
	int WINAPI SsmGetAppChId(int * AppchId, int BrdId, int BrdChId);

	int WINAPI StartTimer(int ch, WORD ClockType);
	DWORD WINAPI ElapseTime(int ch, WORD ClockType);
    int WINAPI SsmSetLogOutput(int nAPIDbg, int nEventStart, int nEventEnd, int nChStart, int nChEnd, DWORD dwReserve);
	//+++START+++added by gaoliang for sc-2643 改进当前日志输出情况/2009/05/14
	int WINAPI SsmSetLogEnable(int nLogType,int nLogEnable,int nLogCreateMode);
	int WINAPI SsmSetLogAttribute(int nLogCreatePeriod,int nLogMaxKeep,int nLogMaxPeriod,LPCSTR pLogFilePath);
	int WINAPI SsmSetApiLogRange(int nChStart, int nChEnd, int nEventStart, int nEventEnd);
	int WINAPI SsmGetLogAttribute(PINT pLogCreatePeriod,PINT pLogMaxKeep,PINT pLogMaxPeriod,LPSTR pLogFilePath);
	//+++END+++added by gaoliang for sc-2643 改进当前日志输出情况/2009/05/14

	int WINAPI SsmLoadChIndexData(int ch, int nSegNo, LPCSTR pAlias, int nCodec, LPCSTR pVocFile, long lStartPos, long lLen);
	int WINAPI SsmFreeChIndexData(int ch, int nSegNo);
	int WINAPI SsmGetDllVersion(PSSM_VERSION pDLLVersion);

//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ PLAY OPERATION @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
	int WINAPI SsmSetPlayVolume(int ch, int nVolume);
	int WINAPI SsmSetDtmfStopPlay(int ch, BOOL bDspf);
	int WINAPI SsmGetDtmfStopPlayFlag(int ch);
	int WINAPI SsmSetBargeinStopPlay(int ch, BOOL bBispf);
	int WINAPI SsmGetBargeinStop

⌨️ 快捷键说明

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