📄 cm.h
字号:
cmParamRate, /* int */
cmParamRequestedRate, /* int */
cmParamInformationTransferCapability, /* cmInformationTransferCapability enum */
cmParamMultiRate, /* RvBool */
cmParamCalledPartyNumber, /* cmAlias */
cmParamCalledPartySubAddress, /* cmAlias */
cmParamCallingPartyNumber, /* cmAlias */
cmParamCallingPartySubAddress, /* cmAlias */
cmParamExtension, /* cmAlias */
cmParamExtention = cmParamExtension, /* cmAlias - reserved for backward compatability */
cmParamAlternativeAddress, /* cmTransportAddress */
cmParamAlternativeAliasAddress, /* cmAlias */
cmParamFacilityReason, /* cmReasonType */
cmParamDestinationIpAddress, /* cmTransportAddress - physical address, used to detrmine actual destination of call */
cmParamRemoteIpAddress, /* cmTransportAddress */
cmParamCRV, /* int */
cmParamRASCRV, /* int */
cmParamCallSignalAddress, /* cmTransportAddress */
cmParamEstablishH245, /* RvBool */
cmParamDisplay, /* char* */
cmParamFacilityCID, /* char[16] */
cmParamConnectDisplay, /* char* */
cmParamUserUser, /* char* */
cmParamConnectUserUser, /* char* */
cmParamFullSourceInfo, /* RvPvtNodeId */
cmParamFullDestinationInfo, /* RvPvtNodeId */
cmParamSetupNonStandardData, /* RvPvtNodeId */
cmParamCallProceedingNonStandardData, /* RvPvtNodeId */
cmParamAlertingNonStandardData, /* RvPvtNodeId */
cmParamConnectNonStandardData, /* RvPvtNodeId */
cmParamReleaseCompleteNonStandardData, /* RvPvtNodeId */
cmParamSetupNonStandard, /* cmNonStandardParam */
cmParamCallProceedingNonStandard, /* cmNonStandardParam */
cmParamAlertingNonStandard, /* cmNonStandardParam */
cmParamConnectNonStandard, /* cmNonStandardParam */
cmParamReleaseCompleteNonStandard, /* cmNonStandardParam */
cmParamAlternativeDestExtraCallInfo, /* cmAlias */
cmParamAlternativeExtension, /* cmAlias */
cmParamAlternativeExtention = cmParamAlternativeExtension, /* cmAlias - reserved for backward compatability */
cmParamSetupFastStart, /* RvPvtNodeId */
cmParamConnectFastStart, /* RvPvtNodeId */
cmParamEarlyH245, /* RvBool */
cmParamCallID, /* char[16] */
cmParamPreGrantedArq, /* cmPreGrantedArqUse */
cmParamAlertingFastStart, /* RvPvtNodeId */
cmParamCallProcFastStart, /* RvPvtNodeId */
cmParamAlertingH245Address, /* cmTransportAddress*/
cmParamCallProcH245Address, /* cmTransportAddress*/
cmParamCanOverlapSending, /* RvBool */
cmParamIncompleteAddress, /* Resrved for backward compatability - not used*/
cmParamH245Tunneling, /* RvBool */
cmParamFastStartInUseObsolete, /* Resrved for backward compatability - not used*/
cmParamSetupCanOverlapSending, /* RvBool */
cmParamSetupSendingComplete, /* RvBool */
cmParamFullSourceAddress, /* RvPvtNodeId */
cmParamFullDestinationAddress, /* RvPvtNodeId */
cmParamRouteCallSignalAddress, /* cmTransportAddress*/
cmParamH245Stage, /* cmH245Stage */
cmParamH245Parallel, /* RvBool */
cmParamShutdownEmptyConnection, /* RvBool */
cmParamIsMultiplexed, /* RvBool */
cmParamAnnexE, /* cmAnnexEUsageMode */
cmParamDestinationAnnexEAddress, /* cmTransportAddress - physical address used to determine actual destination of call */
cmParamConnectedAddress, /* cmAlias */
cmParamFullDestExtraCallInfo, /* RvPvtNodeId */
cmParamFullExtension /* RvPvtNodeId */
} cmCallParam;
typedef int cmParam;
typedef int
(*cmNewCallbackEH)(void);
typedef enum
{
cmIdle,
cmDiscovered,
cmRegistered
} cmRegState;
typedef enum
{
cmGatekeeperConfirm,
cmGatekeeperReject,
cmRegistrationConfirm,
cmRegistrationReject,
cmUnregistrationRequest,
cmUnregistrationConfirm,
cmUnregistrationReject,
cmNonStandardMessage,
cmResourceAvailabilityConfirmation,
cmPermanentAlternateGatekeeperConfirmation
} cmRegEvent;
typedef int
(RVCALLCONV *cmEvNewCallT)(
IN HAPP hApp,
IN HCALL hsCall,
OUT LPHAPPCALL lphaCall);
typedef int
(RVCALLCONV *cmEvRegEventT)(
IN HAPP hApp,
IN cmRegState regState,
IN cmRegEvent regEvent,
IN RvPvtNodeId regEventHandle);
typedef struct
{
cmEvNewCallT cmEvNewCall;
cmEvRegEventT cmEvRegEvent;
} SCMEVENT,*CMEVENT;
typedef int
(RVCALLCONV *cmEvCallStateChangedT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN cmCallState_e state,
IN cmCallStateMode_e stateMode);
typedef int
(RVCALLCONV *cmEvCallNewRateT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN RvUint32 rate);
typedef int
(RVCALLCONV*cmEvCallInfoT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN char* display,
IN char* userUser,
IN int userUserSize);
/* This callback is obsolete. It is here for backward compatability. It is never
called by the stack */
typedef int
(RVCALLCONV*cmCallNonStandardParamT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN char* data,
IN int dataSize);
typedef int
(RVCALLCONV*cmEvCallFacilityT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN int handle,
OUT IN RvBool *proceed);
typedef int
(RVCALLCONV * cmEvCallFastStartSetupT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
OUT IN cmFastStartMessage *fsMessage);
typedef int
(RVCALLCONV*cmEvCallFastStartT)(
IN HAPPCALL haCall,
IN HCALL hsCall);
typedef int
(RVCALLCONV * cmEvCallStatusT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
OUT IN cmCallStatusMessage *callStatusMsg);
typedef int
(RVCALLCONV * cmEvCallUserInfoT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN int nodeId);
typedef int
(RVCALLCONV * cmEvCallH450SupplServT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN cmCallQ931MsgType msgType,
IN int nodeId,
IN int size);
typedef int
(RVCALLCONV * cmEvCallIncompleteAddressT)(
IN HAPPCALL haCall,
IN HCALL hsCall);
typedef int
(RVCALLCONV * cmEvCallAdditionalAddressT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN char* address,
IN RvBool sendingComplete);
typedef int
(RVCALLCONV * cmEvCallTunnNewMessageT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN int vtNodeId,
IN int vtAddNodeId,
OUT RvBool* wait);
/********************************************************************************************
* cmEvCallProgressT
* purpose : Notification function for the application that a Q931 Progress message was
* received on a call.
* input : haCall - Application's handle for the call
* hsCall - Stack's handle for the call
* handle - The PVT root node ID of the Progress message
* output : none
********************************************************************************************/
typedef int
(RVCALLCONV*cmEvCallProgressT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN int handle);
/********************************************************************************************
* cmEvCallNotiftyT
* purpose : Notification function for the application that a Q931 Notify message was
* received on a call.
* input : haCall - Application's handle for the call
* hsCall - Stack's handle for the call
* handle - The PVT root node ID of the Notify message
* output : none
********************************************************************************************/
typedef int
(RVCALLCONV*cmEvCallNotifyT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN int handle);
/********************************************************************************************
* cmEvCallNewAnnexLMessageT
* purpose : Notification function for the application that there has been a new Annex L
* message inside an incoming Q931 message.
* Applications that want to implement Annex L capabilities should implement
* this function.
* input : haCall - Application's handle for the call
* hsCall - Stack's handle for the call
* annexLElement - PVT node ID of the Annex L element inside a Q931 message
* msgType - The type of the message from which we extracted the Annex L
* message
* output : none
* note : cmCallGetAnnexLMessage can be used to analyze the Annex L message
********************************************************************************************/
typedef int
(RVCALLCONV*cmEvCallNewAnnexLMessageT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN int annexLElement,
IN int msgType);
/********************************************************************************************
* cmEvCallNewAnnexMMessageT
* purpose : Notification function for the application that there has been a new Annex M
* message inside an incoming Q931 message.
* Applications that want to implement Annex M capabilities should implement
* this function.
* input : haCall - Application's handle for the call
* hsCall - Stack's handle for the call
* annexMElement - PVT node ID of the Annex M element inside a Q931 message
* msgType - The type of the message from which we extracted the Annex M
* message
* output : none
* note : cmCallGetAnnexMMessage can be used to analyze the Annex M message
********************************************************************************************/
typedef int
(RVCALLCONV*cmEvCallNewAnnexMMessageT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN int annexMElement,
IN int msgType);
/********************************************************************************************
* cmEvCallRecvMessageT
* purpose : Notification function for the application that an incoming Q931 or H245 message
* was received by the stack and is about to be processed.
* input : haCall - Application's handle for the call
* hsCall - Stack's handle for the call
* message - PVT node ID of the message that was received
* output : none
********************************************************************************************/
typedef int
(RVCALLCONV*cmEvCallRecvMessageT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN int message);
/********************************************************************************************
* cmEvCallSendMessageT
* purpose : Notification function for the application that an outgoing Q931 or H245 message
* is about to be sent by the stack.
* input : haCall - Application's handle for the call
* hsCall - Stack's handle for the call
* message - PVT node ID of the message that is about to be sent
* output : none
********************************************************************************************/
typedef int
(RVCALLCONV*cmEvCallSendMessageT)(
IN HAPPCALL haCall,
IN HCALL hsCall,
IN int message);
typedef struct
{
cmEvCallStateChangedT cmEvCallStateChanged;
cmEvCallNewRateT cmEvCallNewRate;
cmEvCallInfoT cmEvCallInfo;
cmCallNonStandardParamT cmCallNonStandardParam; /* This callback is not used */
cmEvCallFacilityT cmEvCallFacility;
cmEvCallFastStartSetupT cmEvCallFastStartSetup;
cmEvCallStatusT cmEvCallStatus;
cmEvCallUserInfoT cmEvCallUserInfo;
cmEvCallH450SupplServT cmEvCallH450SupplServ;
cmEvCallIncompleteAddressT cmEvCallIncompleteAddress;
cmEvCallAdditionalAddressT cmEvCallAdditionalAddress;
cmEvCallTunnNewMessageT cmEvCallTunnNewMessage;
cmEvCallFastStartT cmEvCallFastStart;
cmEvCallProgressT cmEvCallProgress;
cmEvCallNotifyT cmEvCallNotify;
cmEvCallNewAnnexLMessageT cmEvCallNewAnnexLMessage;
cmEvCallNewAnnexMMessageT cmEvCallNewAnnexMMessage;
cmEvCallRecvMessageT cmEvCallRecvMessage;
cmEvCallSendMessageT cmEvCallSendMessage;
} SCMCALLEVENT,*CMCALLEVENT;
/********************************************************************************************
* cmStartUp
* purpose : This function should be called prior to any cmInit() or cmInitialize() calls.
* It must be called when several cmInitialize() functions are called from
* different threads at the same time.
* input : none
* output : none
* return : RV_OK on success, or a negative value on failure
********************************************************************************************/
RVAPI
RvStatus RVCALLCONV cmStartUp(void);
/********************************************************************************************
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -