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

📄 rvwpt.h

📁 基于h323协议的软phone
💻 H
📖 第 1 页 / 共 2 页
字号:
{
	WpCodex				tx;
	WpCodex				rx;
	int 					maxAlSduFrames;
	RvUint32				localRtpPort;		/* Local RTP port */
	RvUint16				remoteRtpPort;		/* Remote RTP port */
	RvUint32				remoteRtpIpAddr;	/* Remote IP address */
} WpCodec;


typedef struct
{
	int		isUsed;
	char		codecName[32];
	int 		codecType;	
} CodecS;

struct AudioInfo_tag
{
	CodecS	codecPrefOrder[AUDIO_CODEC_NUM];
} ;

typedef struct
{
	cmTransportAddress rtp;
	int wpcodecIndex;
	int dir;/*0-rec, 1-trans, 2-bir*/
	int ackIndex;
}FastStartChannelAck;


/*************************************************************************
 * Structure:		WpCodecList
 * 
 * Description:	This struct holds the local codec preferrence list.
 *
 *************************************************************************/
/*typedef struct WpCodecList_tag
{
	CodecS		codecPrefOrder[AUDIO_CODEC_NUM];		
} WpCodecList;*/


/*************************************************************************
 * Structure:		WrapperMsg
 * 
 * Description:	This struct holds the message between Wrapper and Application.
 *
 *************************************************************************/
typedef struct WrapperMsg_tag
{
	RvUint32			msgId;				/* message ID */
	WpBaseInfo		baseInfo;			/* basic info */

	union msgData
	{
		WpAlarm alarmInfo;				/* NEED: alarm information */
		WpCallTransfer CallTransferInfo;	/* for call transfer */
		WpCallForward CallForwardInfo;	/* for call forward */
		WpRegister registr;				/* Info for "Register" message */
		WpCodec codec;		
	} d;

	RvUint8			reason;				/* error reasons */
	RvUint8			other;				/* other */
	HRTPSESSION		rtpSession;
} WrapperMsg;

typedef struct
{
    int          event;
    char         digit;
} NonWrapperMsg;

typedef int (*wpForwardCycleFun)(int callId, char *number, RvBool *hasCycle);

typedef struct CapElem_tag
{
	RvInt32 capEntryNumber;
	char* name;
} CapElem;

extern HAPP    	hApp;
extern CallInfo	wpCallInfo[MAX_CONCURRENT_CALL_NUM];
/*extern WpCodecList wpCodecList;*/
extern int RVCALLCONV cmEvNewCall
(
	IN HAPP hApp,
	IN HCALL hsCall,
	OUT LPHAPPCALL lphaCall
);
extern int RVCALLCONV cmEvCallNewChannel(IN  HAPPCALL   haCall,
                                  IN  HCALL      hsCall,
                                  IN  HCHAN      hsChan,
                                  OUT LPHAPPCHAN lphaChan);

extern int RVCALLCONV cmEvCallFastStart
(
	IN HAPPCALL haCall, 
	IN HCALL hsCall
);

extern int RVCALLCONV cmEvChannelStateChanged
(
	IN HAPPCHAN	haChan,
	IN HCHAN	hsChan,
	IN RvUint32	state,
	IN RvUint32	stateMode
);
int RVCALLCONV cmEvChannelSetAddress
(
	IN HAPPCHAN	haChan,
	IN HCHAN	hsChan,
	IN RvUint32	ip,
	IN RvUint16	port
);
int RVCALLCONV cmEvChannelSetRTCPAddress(IN      HAPPCHAN            haChan,
                                         IN      HCHAN               hsChan,
                                         IN      RvUint32            ip,
                                         IN      RvUint16            port);
extern int RVCALLCONV cmEvCallStateChanged
(
	IN HAPPCALL             haCall,
	IN HCALL                hsCall,
	IN cmCallState_e        state,
	IN cmCallStateMode_e    stateMode
);
extern int wpcmEvRASTimeout(IN HAPPRAS haRas, IN HRAS hsRas);
extern int wpcmEvRASReject(IN HAPPRAS haRas, IN HRAS hsRas, IN cmRASReason reason);
extern int RVCALLCONV wpcmEvRASConfirm(IN  HAPPRAS haRas, IN  HRAS hsRas);
extern RvBool RVCALLCONV wphookRecvFrom(
    IN      HPROTCONN           hConn,
    IN      int                 nodeId,
    IN      int                 nodeIdFrom,
    IN      RvBool              multicast,
    IN      RvBool              error);
extern RvBool RVCALLCONV wphookSendTo(
    IN      HPROTCONN           hConn,
    IN      int                 nodeId,
    IN      int                 nodeIdTo,
    IN      RvBool              error);



extern int RVCALLCONV wpcmEvCallFacility(IN      HAPPCALL haCall,
                                IN      HCALL    hsCall,
                                IN      int      handle,
                                INOUT   RvBool*  proceed);

#if 0
extern int RVCALLCONV cmEvCallInfo(IN HAPPCALL haCall,
                            IN HCALL    hsCall,
                            IN char*    display,
                            IN char*    userUser,
                            IN int      userUserSize);
extern int RVCALLCONV cmEvCallNotify(IN HAPPCALL haCall,
                              IN HCALL    hsCall,
                              IN int      handle);
#endif
extern int RVCALLCONV cmEvCallProgress(IN HAPPCALL haCall,
                                IN HCALL    hsCall,
                                IN int      handle);


extern int RVCALLCONV cmEvCallRecvMessage(IN HAPPCALL haCall,
                                   IN HCALL    hsCall,
                                   IN int      message);


extern int RVCALLCONV cmEvCallSendMessage(IN HAPPCALL haCall,
                                   IN HCALL    hsCall,
                                   IN int      message);

#if 0
extern int RVCALLCONV cmEvCallStatus(IN    HAPPCALL haCall,
                              IN    HCALL hsCall,
                              OUT IN    cmCallStatusMessage *callStatusMsg);

extern int RVCALLCONV cmEvCallTunnNewMessage(IN  HAPPCALL haCall,
                                      IN  HCALL    hsCall,
                                      IN  int      vtNodeId,
                                      IN  int      vtAddNodeId,
                                      OUT RvBool*  wait);

extern int RVCALLCONV cmEvCallUserInput
(
	IN HAPPCALL haCall,
	IN HCALL    hsCall,
	IN RvInt32  userInputId
);

int RVCALLCONV cmEvChannelReplace
(
	IN HAPPCHAN haChan,
	IN HCHAN    hsChan,
	IN HAPPCHAN haReplacedChannel,
	IN HCHAN    hsReplacedChannel
);
#endif
int RVCALLCONV cmEvChannelParameters
(
	IN HAPPCHAN haChan,
	IN HCHAN    hsChan,
	IN char*    channelName,
	IN HAPPCHAN haChanSameSession,
	IN HCHAN    hsChanSameSession,
	IN HAPPCHAN haChanAssociated,
	IN HCHAN    hsChanAssociated,
	IN RvUint32 rate
);
#if 0
int RVCALLCONV cmEvChannelRequestCloseStatus
(
	IN HAPPCHAN haChan,
	IN HCHAN hsChan,
	IN cmRequestCloseStatus status
);
#endif
int RVCALLCONV cmEvCallCapabilities
(
	IN HAPPCALL      haCall,
	IN HCALL         hsCall,
	IN cmCapStruct * capabilities[]
);

LRESULT CALLBACK wpHandleMsg(HWND hWnd, UINT uMsg,WPARAM wParam,LPARAM lParam);
void wpSendCTorCF(WrapperMsg * msg);
void wpSendTransferSetup(WrapperMsg* msg);
void wpSendRegister(WrapperMsg* msg);
void wpSendQuery(WrapperMsg * msg);
void wpSendTerm(WrapperMsg * msg);
int wPGetCallIndex(HCALL hsCall);
RvUint8 wpSendMsgToApp(WrapperMsg *givenMsg);
void String2Bmp(char* string, char* bmp, int size);
void md5encode(char* str, int size, OUT char* hash);
void ConvertInt2CharNum(char* ipAddr,  unsigned int num, int flag);
void getTime(int* ttt);
int wpRelsCall(HCALL hsCall);
void wpSendConn(WrapperMsg *msg);
RVAPI void RVCALLCONV wpSendAlerting(WrapperMsg *msg);
void wpSendBusy(WrapperMsg *msg);
void wpCallAddFastStart(HCALL hsCall);
int wpOutChannelOpen(HCALL hsCall);
int cmpChannelName(char *name);
RvBool wpGetCapItemValue(int capId, RvInt32* value);
RVAPI void RVCALLCONV wpGetWnd(HWND AppWnd);
void GetOutParam(OutParam TransParam);
void MD5Init(struct MD5Context *ctx);
void MD5Update(struct MD5Context *ctx, unsigned char const *buf, unsigned len);
void MD5Final(unsigned char digest[16], struct MD5Context *ctx);
void MD5Transform(unsigned long buf[4], unsigned long const in[16]);
void byteReverse(unsigned char *buf, unsigned longs);
RVAPI int RVCALLCONV InitStack(void);
int wpInit();

	
RVAPI int RVCALLCONV WpSendMessage
(
	unsigned int	msgId,
	unsigned char	callIndex,
	unsigned int	remoteAddr,		/* Remote network address */
	char*		remoteNumber,	/* Remote phone number */
	char*		display,			/* Local display string */
	char*		localNumber		/* Local E.164 number */
);
int RVCALLCONV cmCallOffer(
	IN HAPPCALL             haCall,
	IN HCALL                hsCall,
	IN cmCallState_e        state,
	IN cmCallStateMode_e    stateMode,
	IN WrapperMsg*	wpmsg
);
int wpCallConnectH245Control(unsigned char callIndex);
RVAPI int RVCALLCONV wpSendUserInputId(unsigned char callIndex, char userInputId);
#ifdef INCLUDE_RV_RTP
/*RVAPI int RVCALLCONV wpSendDTMF2833(unsigned char callIndex, char userInput, unsigned char isTone);*/
#endif

RVAPI void RVCALLCONV wpSetFastStart(int mode);
RvBool wpSetH245Tunneling(IN int flag);

void ReInitrvwp(void);
void wpSetForwardCycleCallback(wpForwardCycleFun callbackFun);
int sort_function( const void *a, const void *b);
RVAPI void RVCALLCONV wpSendInformation(unsigned char callIndex,char userInput);

#ifdef __cplusplus
}
#endif

#endif

⌨️ 快捷键说明

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