📄 phonicdll.h
字号:
#ifndef __FIHO_PHONIC_H__
#define __FIHO_PHONIC_H__
#ifdef __cplusplus
extern "C"{
#endif
#include "ctidef.h"
typedef enum enumPhonicEvent
{
eventState = 0, //(eventState, channelType, channelID, newChannelState, oldChannelState)
eventDeviceTimer, //(eventDeviceTimer, channelType, channelID, 0,0)
eventSignal, //(eventSignal, channelType, channelID, signal, 0)
eventAlarm, //(eventAlarm, channelType, channelID, alarm, 0)
eventIdle, //(eventIdle, channelType, channelID, 0,0)
eventCallIn, //(eventCallIn, channelType, channelID, char * callerID, char * phoneNumber)
eventAnswer, //(eventAnswer, channelType, channelID, 0,0)
eventCallOutFinish, //(eventCallOutFinish, channelType, channelID, 0,0)
eventCallFail, //(eventCallFail, channelType, channelID, cause, 0)
eventHangup, //(eventHangup, channelType, channelID, cause, 0)
eventDTMF, //(eventDTMF, channelType, channelID, dtmfCode, 0)
eventSignalMonitor, //(eventSignalMonitor, channelType, channelID, signalType, signalCode)
eventPlayEnd, //(eventPlayEnd, channelType, channelID, completeSize, 0)
eventRecordEnd, //(eventRecordEnd, channelType, channelID, completeSize, 0)
eventFaxError, //(eventFaxError, channelType, channelID, cause, 0)
eventOneFaxPageOver, //(eventOneFaxPageOver, channelType, channelID, isFinishedAll, 0)
eventFlash, //(eventFlash, channelType, channelID, 0,0)
eventSendCallerIDEnd,
eventSendV23End,
eventV23DataReady,
eventRing, //振铃
eventVoice, //外线检测到语音
eventSilence, //外线检测到静音
eventHanging, //高阻悬空
eventDetectedFaxTone, //检测到传真音
eventFaxToneMissing, //检测到传真音消失
eventRealTimeData,
eventAnalogSignal,
eventDtmfOn,
eventDtmfOff,
eventPolarity,
eventEnergy,
eventVad,
eventIPArrive,
eventIPCallFail,
eventIPAnswer,
eventIPHangup,
eventIPRegisterResult,
eventMax
}EPhonicEvent;
typedef void (CALLBACK * ProcPhonicFireEventCallBack)(
EPhonicEvent eventType,
int channelType,
int channelID,
int iParam1,
int iParam2);
//事件通知回调函数
void WINAPI tpi_SetEventNotifyCallBackProc( ProcPhonicFireEventCallBack procFireEvent );
int WINAPI tpi_GetPhonicEvent(
EPhonicEvent * pEventType,
int * pChannelType,
int * pChannelID,
int * pParam1,
int * pParam2);
//系统
int WINAPI tpi_OpenDevice();
void WINAPI tpi_CloseDevice();
int WINAPI tpi_GetChannelCount(int channelType);
int WINAPI tpi_GetCardCount(int lCardType);
int WINAPI tpi_GetCardType(int iCardNo);
int WINAPI tpi_GetLineCount(void);
int WINAPI tpi_GetLineID(int channelType, int channelID);
int WINAPI tpi_GetChannelType(int lineID);
int WINAPI tpi_GetChannelID(int lineID);
int WINAPI tpi_GetCardInfo(int cardType, int cardID, int channelType, int* pGroupCount, int* pGroupStartIndex, int* pChannelCount, int* pChannelStartIndex);
int WINAPI tpi_GetFreeChannel(int groupType, int groupID);
int WINAPI tpi_GetChannelTimeSlot(int channelType, int channelID, int * pStream, int * pTimeSlot);
int WINAPI tpi_GetChannelState(int channelType, int channelID);
int WINAPI tpi_GetRunTime();
//提示音加载
int WINAPI tpi_AddPromptVoiceFromFile(const char * fileName);
int WINAPI tpi_AddPromptVoiceFromMemory(char* pVoiceBuffer, int voiceSize);
//交换
int WINAPI tpi_Exchange(int cardID, int destStream, int destTimeslot, int srcStream, int srcTimeslot, int exchangeType);
int WINAPI tpi_TalkWith(int destType, int destID, int srcType, int srcID);
int WINAPI tpi_BreakTalk(int channelType, int channelID);
int WINAPI tpi_ListenTo(int destType, int destID, int srcType, int srcID);
int WINAPI tpi_BreakListen(int destChannelType, int destChannelID);
//定时器
int WINAPI tpi_SetDeviceTimer(int channelType, int channelID, int timer);
int WINAPI tpi_ClearDeviceTimer(int channelType, int channelID);
//呼叫接续
int WINAPI tpi_MakeCall(int channelType, int channelID, const char * callerID, const char * phoneNumber, int overtime);
int WINAPI tpi_Answer(int channelType, int channelID, int bConn);
int WINAPI tpi_Hangup(int channelType, int channelID, int cause);
// 系列号
int WINAPI tpi_GetCardLabel(int iCardNo,char* LabelBuf);
int WINAPI tpi_GetCardProductPassword(int iCardNo,int iPermit);
int WINAPI tpi_GetCardUserPassword(int iCardNo ,char * pwBuf);
int WINAPI tpi_SetCardUserPassword(int iCardNo,char * pwBuf);
//录放音
int WINAPI tpi_SetVoiceVolume(int channelType, int channelID, int volume, int type);
int WINAPI tpi_SetVoiceCoder(int channelType, int channelID, int lCoder);
int WINAPI tpi_PlayPromptVoice(int channelType, int channelID, int pmtIndex, int loopCount);
int WINAPI tpi_PlayPromptVoiceArray(int channelType, int channelID, int* pPmtIndexArray, int pmtCount, int loopCount);
int WINAPI tpi_PlayFile(int channelType, int channelID, const char * fileName, int offset, int voiceSize);
int WINAPI tpi_PlayMemory(int channelType, int channelID, char* pVoiceBuffer, int voiceSize);
int WINAPI tpi_PlayPause(int channelType, int channelID, int bPause);
int WINAPI tpi_SendDtmf(int channelType, int channelID, const char * dtmfString, int toneTime, int silenceTime, int scale);
int WINAPI tpi_PlayTone(int channelType, int channelID, float fFrequency, int dwTimeLength, int dwScale, const char * attrib);
int WINAPI tpi_PlayText(int channelType, int channelID, const char * text, int isMale, int speed);
int WINAPI tpi_PlayTextFile(int channelType, int channelID, char* text, int isMale, int speed);
int WINAPI tpi_ConvertTextToVoiceFile(char *pText, int isMale, int speed, int iTextIsFileName, char* pVocName);
int WINAPI tpi_StopPlay(int channelType, int channelID);
int WINAPI tpi_RecordFile(int channelType, int channelID, const char * fileName, int offset, int voiceSize);
int WINAPI tpi_RecordMemory(int channelType, int channelID, char* pVoiceBuffer, int voiceSize);
int WINAPI tpi_RecordPause(int channelType, int channelID, int bPause);
int WINAPI tpi_StopRecord(int channelType, int channelID);
// V23
int WINAPI tpi_modemSendV23(int channelType, int channelID,char * pData,int iSize);
//电话会议
int WINAPI tpi_JoinConference(int channelType, int channelID, int conferResourceGrpID, int conferSetID, int Attenuation, int NoiseSuppression);
int WINAPI tpi_ListenConference(int channelType, int channelID, int conferResourceGrpID, int conferSetID);
int WINAPI tpi_ExitConference(int channelType, int channelID);
int WINAPI tpi_ParseConferenceHandle(int conferenceHandle, int* pConferGrpID, int* pConferSetID, int* pMemberCount);
int WINAPI tpi_GetConferSetMemberInfo(int conferenceHandle, int memberID, int* pChannelType, int* pChannelID);
//FAX
int WINAPI tpi_faxSetLocalID(int channelType, int channelID, const char * IDString);
int WINAPI tpi_faxSendFax(int channelType, int channelID, const char * fileName);
int WINAPI tpi_faxReceiveFax(int channelType, int channelID, const char * fileName);
void WINAPI tpi_faxStopFax(int channelType, int channelID);
int WINAPI tpi_faxCreateFaxFile(int cvtChannelID, const char * fileName, int Resolution, int scanLineNum);
void WINAPI tpi_faxCloseFaxFile(int cvtChannelID);
int WINAPI tpi_faxAddTextLine(int cvtChannelID, const char * strText, int horiDoubleFlag, int vertiDoubleFlag, int FontSize);
int WINAPI tpi_faxAddBmpFile(int cvtChannelID, const char * BmpFileName, int DoubleBitFlag);
int WINAPI tpi_faxLeftLine(int cvtChannelID);
int WINAPI tpi_faxOpenConvert();
void WINAPI tpi_faxCloseConvert();
int WINAPI tpi_faxAddDotLine(int cvtChannelID, const char * szDot, int DotSize, int DotFlag);
//VoIP 专用
HANDLE WINAPI tpi_voipGetDeviceHandle( int cardType, int cardID );
DWORD WINAPI tpi_voipGetChannelOffset(int channelType,int channelID);
int WINAPI tpi_voipGetChannelMinVoicePacketSize(int channelType,int channelID);
int WINAPI tpi_voipConnectVoice(int channelType,int channelID );
int WINAPI tpi_voipStopStreamVoice(int channelType,int channelID);
void WINAPI tpi_SetUsedForFaxOnly();
int WINAPI tpi_EnableHookOffDetect(int channelType, int channelID, BOOL bEnable);
int WINAPI tpi_EnableChannelEvent(int channelType, int channelID, long lMask);
int WINAPI tpi_SetSilenceThreshold(int channelType, int channelID,int lSilenceThreshold);
int WINAPI tpi_Flash(int channelType, int channelID);
int WINAPI tpi_SendMesage(int unitType, int unitID,int msg, DWORD wParam, void * pParam );
int WINAPI tpi_StartRealTimeRecord(int channelType,int channelID, int BlockSize);
int WINAPI tpi_GetRealTimeRecordData(int channelType,int channelID,char* pBuf,int BufSize);
int WINAPI tpi_GetChannelCallerID(int channelType, int channelID,char * callerIDBuf,char * dateTimeBuf);
int WINAPI tpi_GetCardPass(int iCardNo);
int WINAPI tpi_StartEnergyEvent(int channelType,int channelID,int iInterval,BOOL bStart);
int WINAPI tpi_StartVadEvent(int channelType,int channelID,BOOL bStart);
//H.323
int WINAPI tpi_H323Open();
void WINAPI tpi_H323Close();
int WINAPI tpi_IPCall(int channelType,int channelID,char* DestIp,char* DestNumber,char* srcNumber);
int WINAPI tpi_IPHangup(int channelType,int channelID);
int WINAPI tpi_IPAnswer(int channelType,int channelID);
int WINAPI tpi_IPRegister(char* GKIP,char* H323ID,char* prefix);
int WINAPI tpi_IPUnregister();
int WINAPI tpi_SetVoiceThreshold(int channelType, int channelID,int lVoiceThreshold,int lVoiceCount);
int WINAPI tpi_SetSilenceThresholdEx(int channelType, int channelID,int lSilenceThreshold,int lSilenceTime,BOOL bDisableEvent);
int WINAPI tpi_MakeCallEx(int channelType, int channelID, const char * callerID, const char * phoneNumber,
int toneTime, int silenceTime, int scale,int overtime);
#ifdef __cplusplus
};
#endif
#endif //__FIHO_PHONIC_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -