📄 cmras.h
字号:
#ifdef __cplusplusextern "C" {#endif/*NOTICE:This document contains information that is proprietary to RADVision LTD..No part of this publication may be reproduced in any form whatsoever without written prior approval by RADVision LTD..RADVision LTD. reserves the right to revise this publication and make changes without obligation to notify any person of such revisions or changes.*/ #ifndef CMRAS_H#define CMRAS_H#ifndef CM_H#error cmras.h included improperly. Use #include <cm.h> instead.#else#include <rvcommon.h> typedef enum{ cmRASGatekeeper=1, cmRASRegistration, cmRASUnregistration, cmRASAdmission, cmRASDisengage, cmRASBandwidth, cmRASLocation, cmRASInfo, cmRASNonStandard, cmRASUnknown, cmRASResourceAvailability,
cmRASUnsolicitedIRR} cmRASTransaction;#define OPTIONAL typedef enum{ cmRASReasonResourceUnavailable , cmRASReasonInsufficientResources , cmRASReasonInvalidRevision , cmRASReasonInvalidCallSignalAddress , cmRASReasonInvalidRASAddress , /* supplied address is invalid */ cmRASReasonInvalidTerminalType , cmRASReasonInvalidPermission , /* permission has expired */ cmRASReasonInvalidConferenceID , /* possible revision */ cmRASReasonInvalidEndpointID , cmRASReasonCallerNotRegistered , cmRASReasonCalledPartyNotRegistered , /* can't translate address */ cmRASReasonDiscoveryRequired , /* registration permission has aged */ cmRASReasonDuplicateAlias , /* alias registered to another endpoint */ cmRASReasonTransportNotSupported , /* one or more of the transports */ cmRASReasonCallInProgress , cmRASReasonRouteCallToGatekeeper , cmRASReasonRequestToDropOther , /* can't request drop for others */ cmRASReasonNotRegistered , /* DRJ */ cmRASReasonUndefined , cmRASReasonTerminalExcluded , cmRASReasonNotBound , cmRASReasonNotCurrentlyRegistered , cmRASReasonRequestDenied , cmRASReasonLocationNotFound , /* can't find location */ cmRASReasonSecurityDenial , cmRASTransportQOSNotSupported , cmRASResourceUnavailable , cmRASInvalidAlias , cmRASPermissionDenied , cmRASQOSControlNotSupported , cmRASIncompleteAddress } cmRASReason;typedef enum{ cmRASDisengageReasonForcedDrop, cmRASDisengageReasonNormalDrop, cmRASDisengageReasonUndefinedReason} cmRASDisengageReason; typedef enum { cmRASTrStageRequest=1, cmRASTrStageConfirm, cmRASTrStageReject, cmRASTrStageTimeout, cmRASTrStageBegin, cmRASTrStageEnd, cmRASTrStageCreate, cmRASTrStageDummy, cmRASTrStageProgress, cmRASTrPartRequest=1, /* for backward compatability */ cmRASTrPartConfirm, cmRASTrPartReject, cmRASTrPartTimeout} cmRASTrStage;#define cmRASTrPart cmRASTrStage /* for backward compatability */#define cmRASCallType cmCallType#define cmRASCallTypeP2P cmCallTypeP2P#define cmRASCallTypeOne2N cmCallTypeOne2N#define cmRASCallTypeN2One cmCallTypeN2One#define cmRASCallTypeN2Nw cmCallTypeN2Nw#define cmRASCallModelTypeDirect cmCallModelTypeDirect#define cmRASCallModelTypeGKRouted cmCallModelTypeGKRouted#define cmRASCallModelType cmCallModelTypetypedef enum { cmRASParamGatekeeperID, /* cmRASAlias */ cmRASParamRASAddress, /* TA struct (GRQ)*/ cmRASParamCallSignalAddress,/* TA struct */ cmRASParamEndpointType, /* enum */ cmRASParamTerminalType, /* enum */ cmRASParamEndpointAlias, /* use index *//* Alias struct */ cmRASParamTerminalAlias, /* use index *//* Alias struct */ cmRASParamDiscoveryComplete,/* BOOL */ cmRASParamEndpointVendor, /* Vendor struct ???*//*LOLETAPEL*/ cmRASParamCallType, /* enum *//**/ cmRASParamCallModel, /* enum *//**/ cmRASParamEndpointID, /* cmRASAlias */ cmRASParamDestInfo, /*Alias */ cmRASParamSrcInfo, /*Alias */ cmRASParamDestExtraCallInfo,/*Alias */ cmRASParamDestCallSignalAddress,/* cmRASTransport */ cmRASParamSrcCallSignalAddress,/* cmRASTransport */ cmRASParamBandwidth, /* cmRASTransport */ cmRASParamActiveMC, /* BOOL */ cmRASParamAnswerCall, /* BOOL */ cmRASParamIrrFrequency, /* int */ cmRASParamReplyAddress, /* cmRASTransport */ cmRASParamDisengageReason, /* cmRASReason */ cmRASParamRejectedAlias, cmRASParamRejectReason, cmRASParamCID, cmRASParamDestinationIpAddress, /*cmRASTransport actual Address to send message to */ cmRASParamNonStandard, cmRASParamNonStandardData, cmRASParamCRV, cmRASParamMulticastTransaction, cmRASParamTransportQOS, cmRASParamKeepAlive, cmRASParamTimeToLive, cmRASParamDelay, cmRASParamCallID, cmRASParamAnsweredCall, cmRASParamAlmostOutOfResources,
cmRASParamAlternateGatekeeper,
cmRASParamAltGKInfo,
cmRASParamAltGKisPermanent,
cmRASParamEmpty,
cmRASParamLast} cmRASParam;#define cmRASRouteSize cmRouteSize#define cmRASAliasType cmAliasType#define cmRASAlias cmAlias#define cmRASTransportType cmTransportType#define cmRASTransport cmTransportAddress#define cmRASTransportTypeIP cmTransportTypeIP /* No route */#define cmRASTransportTypeIPStrictRoute cmTransportTypeIPStrictRoute#define cmRASTransportTypeIPLooseRoute cmTransportTypeIPLooseRoute#define cmRASAliasTypeE164 cmAliasTypeE164#define cmRASAliasTypeH323ID cmAliasTypeH323ID#define cmRASAliasTypeEndpointID cmAliasTypeEndpointID#define cmRASAliasTypeGatekeeperID cmAliasTypeGatekeeperIDtypedef struct
{
cmTransportAddress rasAddress;
cmRASAlias gatekeeperIdentifier;
BOOL needToRegister;
BYTE priority;
}cmAlternateGatekeeper;
typedef enum { cmRASErrorParamNotFound} cmRASError;#define cmRASEndpointType cmEndpointType#define cmRASEndpointTypeTerminal cmEndpointTypeTerminal#define cmRASEndpointTypeGateway cmEndpointTypeGateway#define cmRASEndpointTypeMCU cmEndpointTypeMCU#define cmRASEndpointTypeGK cmEndpointTypeGK#define cmRASEndpointTypeUndefined cmEndpointTypeUndefinedDECLARE_OPAQUE(HAPPRAS);DECLARE_OPAQUE(HRAS);RVAPIint CALLCONV cmRASStartTransaction( IN HAPP hApp, IN HAPPRAS haRas, OUT LPHRAS lphsRas, IN cmRASTransaction transaction, IN cmRASTransport* destAddress, IN HCALL hsCall OPTIONAL); RVAPIint CALLCONV cmRASRequest( IN HRAS hsRas);RVAPIint CALLCONV cmRASDummyRequest( IN HRAS hsRas);RVAPIint CALLCONV cmRASConfirm( IN HRAS hsRas);RVAPIint CALLCONV cmRASReject( IN HRAS hsRas, IN cmRASReason reason);RVAPIint CALLCONV cmRASInProgress( IN HRAS hsRas, IN int delay);RVAPIint CALLCONV cmRASGetHandle( IN HAPP hApp, IN HAPPRAS haRas, OUT LPHRAS hsRas);RVAPIint CALLCONV cmRASGetTransaction( IN HRAS hsRas, OUT cmRASTransaction * transaction);RVAPIint CALLCONV cmRASSetParam( IN HRAS hsRas, IN cmRASTrStage trStage, IN cmRASParam param, IN int index OPTIONAL, IN INT32 value, IN char* svalue); RVAPIint CALLCONV cmRASGetParam( IN HRAS hsRas, IN cmRASTrStage trStage, IN cmRASParam param, IN int index OPTIONAL, IN OUT INT32* value, /* value or length */ IN char* svalue);RVAPIint CALLCONV cmRASGetNumOfParams( IN HRAS hsRas, IN cmRASTrStage trStage, IN cmRASParam param);RVAPIint CALLCONV cmRASClose( IN HRAS hsRas);RVAPIcmRASError CALLCONV cmRASGetLastError( IN HRAS hsRas);typedef int (CALLCONV *cmEvRASRequestT)( IN HRAS hsRas, IN HCALL hsCall, OUT LPHAPPRAS lphaRas, IN cmRASTransaction transaction, IN cmRASTransport* srcAddress, IN HAPPCALL haCall OPTIONAL);typedef int (CALLCONV *cmEvRASConfirmT)( IN HAPPRAS haRas, IN HRAS hsRas); typedef int (CALLCONV *cmEvRASRejectT)( IN HAPPRAS haRas, IN HRAS hsRas, IN cmRASReason reason); typedef int (CALLCONV *cmEvRASTimeoutT)( IN HAPPRAS haRas, IN HRAS hsRas);typedef struct { cmEvRASRequestT cmEvRASRequest; cmEvRASConfirmT cmEvRASConfirm; cmEvRASRejectT cmEvRASReject; cmEvRASTimeoutT cmEvRASTimeout;} SCMRASEVENT,*CMRASEVENT;RVAPIint CALLCONV cmRASSetEventHandler( IN HAPP hApp, IN CMRASEVENT cmRASEvent, IN int size);RVAPI INT32 CALLCONV cmGetRASConfigurationHandle( IN HAPP hApp);
/*marina */DECLARE_OPAQUE(HAPPRASMSG);typedef int (*cmEvRasMessageReceiveFunc)(int nodeId,cmRASTrStage rasTrStage,HRAS hsRas,HAPPRASMSG hAppRas);typedef int (*cmEvRasMessageSendFunc)(int nodeId,HRAS hsRas,HAPPRASMSG hAppRas);typedef struct{ HAPPRASMSG hAppRasMsg; cmEvRasMessageReceiveFunc cmEvRasMessageReceive; cmEvRasMessageSendFunc cmEvRasMessageSend; } cmRasMessageEvent;RVAPIint CALLCONV cmRASMsgSetEventHandler( IN HAPP hApp, IN cmRasMessageEvent *cmRASMsgEvent, IN int size);
RVAPI
int CALLCONV cmRASStartIrr(
IN HAPP hApp,
IN HAPPRAS haRas,
OUT LPHRAS lphsRas,
IN cmTransportAddress* destAddress,
IN HCALL hsCall );
#endif#endif#ifdef __cplusplus} #endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -