?? cmras.h
字號(hào):
/*
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
#ifdef __cplusplus
extern "C" {
#endif
#ifndef CM_H
#error cmras.h included improperly. Use #include <cm.h> instead.
#endif
/************************************************************************
* Definitions for backward compatibility
************************************************************************/
#define cmRASTrPart cmRASTrStage
#define cmRASCallType cmCallType
#define cmRASCallTypeP2P cmCallTypeP2P
#define cmRASCallTypeOne2N cmCallTypeOne2N
#define cmRASCallTypeN2One cmCallTypeN2One
#define cmRASCallTypeN2Nw cmCallTypeN2Nw
#define cmRASCallModelTypeDirect cmCallModelTypeDirect
#define cmRASCallModelTypeGKRouted cmCallModelTypeGKRouted
#define cmRASCallModelType cmCallModelType
#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 cmAliasTypeGatekeeperID
#define cmRASEndpointType cmEndpointType
#define cmRASEndpointTypeTerminal cmEndpointTypeTerminal
#define cmRASEndpointTypeGateway cmEndpointTypeGateway
#define cmRASEndpointTypeMCU cmEndpointTypeMCU
#define cmRASEndpointTypeGK cmEndpointTypeGK
#define cmRASEndpointTypeUndefined cmEndpointTypeUndefined
#define cmRASEndpointTypeSET cmEndpointTypeSET
#define cmRASTransportQOSNotSupported cmRASReasonTransportQOSNotSupported
#define cmRASInvalidAlias cmRASReasonInvalidAlias
#define cmRASPermissionDenied cmRASReasonPermissionDenied
#define cmRASQOSControlNotSupported cmRASReasonQOSControlNotSupported
#define cmRASIncompleteAddress cmRASReasonIncompleteAddress
#define cmRASFullRegistrationRequired cmRASReasonFullRegistrationRequired
#define cmRASRouteCallToSCN cmRASReasonRouteCallToSCN
#define cmRASAliasesInconsistent cmRASReasonAliasesInconsistent
/************************************************************************
* cmRASTransaction enum:
* Indicates the type of RAS transaction we're dealing with.
************************************************************************/
typedef enum
{
cmRASGatekeeper=1, /* GRQ transaction */
cmRASRegistration, /* RRQ transaction */
cmRASUnregistration, /* URQ transaction */
cmRASAdmission, /* ARQ transaction */
cmRASDisengage, /* DRQ transaction */
cmRASBandwidth, /* BRQ transaction */
cmRASLocation, /* LRQ transaction */
cmRASInfo, /* IRQ-IRR transaction */
cmRASNonStandard, /* NSM */
cmRASUnknown, /* XRS */
cmRASResourceAvailability, /* RAI-RAC transaction */
cmRASUnsolicitedIRR, /* Unsolicited IRR */
cmRASServiceControl, /* SCI-SCR transaction */
cmRASMaxTransaction
} cmRASTransaction;
/************************************************************************
* cmRASReason enum:
* Indicates the reject reason of the transaction. We use a single
* enumeration for all possible reasons in Reject messages.
************************************************************************/
typedef enum
{
cmRASReasonResourceUnavailable, /* GRJ, RRJ, ARJ, LRJ - gatekeeper resources exhausted */
cmRASReasonInsufficientResources, /* BRJ */
cmRASReasonInvalidRevision, /* GRJ, RRJ, BRJ */
cmRASReasonInvalidCallSignalAddress, /* RRJ */
cmRASReasonInvalidRASAddress, /* RRJ - supplied address is invalid */
cmRASReasonInvalidTerminalType, /* RRJ */
cmRASReasonInvalidPermission, /* ARJ - permission has expired */
/* BRJ - true permission violation */
/* LRJ - exclusion by administrator or feature */
cmRASReasonInvalidConferenceID, /* BRJ - possible revision */
cmRASReasonInvalidEndpointID, /* ARJ */
cmRASReasonCallerNotRegistered, /* ARJ */
cmRASReasonCalledPartyNotRegistered, /* ARJ - can't translate address */
cmRASReasonDiscoveryRequired, /* RRJ - registration permission has aged */
cmRASReasonDuplicateAlias, /* RRJ - alias registered to another endpoint */
cmRASReasonTransportNotSupported, /* RRJ - one or more of the transports */
cmRASReasonCallInProgress, /* URJ */
cmRASReasonRouteCallToGatekeeper, /* ARJ */
cmRASReasonRequestToDropOther, /* DRJ - can't request drop for others */
cmRASReasonNotRegistered, /* DRJ, LRJ, INAK - not registered with gatekeeper */
cmRASReasonUndefined, /* GRJ, RRJ, URJ, ARJ, BRJ, LRJ, INAK */
cmRASReasonTerminalExcluded, /* GRJ - permission failure, not a resource failure */
cmRASReasonNotBound, /* BRJ - discovery permission has aged */
cmRASReasonNotCurrentlyRegistered, /* URJ */
cmRASReasonRequestDenied, /* ARJ - no bandwidrg available */
/* LRJ - cannot find location */
cmRASReasonLocationNotFound, /* LRJ - cannot find location */
cmRASReasonSecurityDenial, /* GRJ, RRJ, URJ, ARJ, BRJ, LRJ, DRJ, INAK */
cmRASReasonTransportQOSNotSupported, /* RRJ */
cmRASResourceUnavailable, /* Same as cmRASReasonResourceUnavailable */
cmRASReasonInvalidAlias, /* RRJ - alias not consistent with gatekeeper rules */
cmRASReasonPermissionDenied, /* URJ - requesting user not allowed to unregister specified user */
cmRASReasonQOSControlNotSupported, /* ARJ */
cmRASReasonIncompleteAddress, /* ARJ, LRJ */
cmRASReasonFullRegistrationRequired, /* RRJ - registration permission has expired */
cmRASReasonRouteCallToSCN, /* ARJ, LRJ */
cmRASReasonAliasesInconsistent, /* ARJ, LRJ - multiple aliases in request identify distinct people */
cmRASReasonAdditiveRegistrationNotSupported,/* RRJ */
cmRASReasonInvalidTerminalAliases, /* RRJ */
cmRASReasonExceedsCallCapacity, /* ARJ - destination does not have the capacity for this call */
cmRASReasonCollectDestination, /* ARJ */
cmRASReasonCollectPIN, /* ARJ */
cmRASReasonGenericData, /* GRJ, RRJ, ARJ, LRJ */
cmRASReasonNeededFeatureNotSupported, /* GRJ, RRJ, ARJ, LRJ */
cmRASReasonUnknownMessageResponse, /* XRS message was received for the request */
cmRASReasonHopCountExceeded /* LRJ */
} cmRASReason;
/************************************************************************
* cmRASDisengageReason enum:
* Indicates the reason given in the DRQ message (DisengageRequest).
************************************************************************/
typedef enum
{
cmRASDisengageReasonForcedDrop,
cmRASDisengageReasonNormalDrop,
cmRASDisengageReasonUndefinedReason
} cmRASDisengageReason;
/************************************************************************
* cmRASUnregReason enum:
* Indicates the reason given in the URQ message (UnregistrationRequest).
************************************************************************/
typedef enum
{
cmRASUnregReasonReregistrationRequired,
cmRASUnregReasonTtlExpired,
cmRASUnregReasonSecurityDenial,
cmRASUnregReasonUndefinedReason,
cmRASUnregReasonMaintenance
} cmRASUnregReason;
/************************************************************************
* cmRASIrrXXX
* These definitions are part of the irrStatus field in the IRR message,
* added on version 4.
* The segment field is not part of these definition, since the values
* 0-65535 can be used for each of the segments as a value.
************************************************************************/
#define cmRASIrrComplete (-1)
#define cmRASIrrIncomplete (-2)
#define cmRASIrrInvalidCall (-3)
/************************************************************************
* cmRASTrStage enum:
* Indicates the transaction state we want to use in the API function.
* cmRASTrStageRequest - Request message information
* cmRASTrStageConfirm - Confirm message information
* cmRASTrStageReject - Reject message information
* cmRASTrStageTimeout - Time-out occurred
* cmRASTrStateProgress - RIP message information
* Others - unused
************************************************************************/
typedef enum
{
cmRASTrStageRequest=1,
cmRASTrStageConfirm,
cmRASTrStageReject,
cmRASTrStageTimeout,
cmRASTrStageBegin,
cmRASTrStageEnd,
cmRASTrStageCreate,
cmRASTrStageDummy,
cmRASTrStageProgress,
cmRASTrPartRequest=1, /* for backward compatability */
cmRASTrPartConfirm,
cmRASTrPartReject,
cmRASTrPartTimeout
} cmRASTrStage;
/************************************************************************
* cmRASParam enum:
* Indicates the parameter we want to set/get from a RAS message
************************************************************************/
typedef enum
{
cmRASParamGatekeeperID, /* cmAlias */
cmRASParamRASAddress, /* cmTransportAddress */
cmRASParamCallSignalAddress, /* cmTransportAddress */
cmRASParamEndpointType, /* cmEndpointType */
cmRASParamTerminalType, /* cmEndpointType */
cmRASParamEndpointAlias, /* cmAlias */
cmRASParamTerminalAlias, /* cmAlias */
cmRASParamDiscoveryComplete, /* RvBool */
cmRASParamEndpointVendor, /* cmVendor */
cmRASParamCallType, /* cmCallType */
cmRASParamCallModel, /* cmCallModelType */
cmRASParamEndpointID, /* cmAlias */
cmRASParamDestInfo, /* cmAlias */
cmRASParamSrcInfo, /* cmAlias */
cmRASParamDestExtraCallInfo, /* cmAlias */
cmRASParamDestCallSignalAddress, /* cmTransportAddress */
cmRASParamSrcCallSignalAddress, /* cmTransportAddress */
cmRASParamBandwidth, /* int */
cmRASParamActiveMC, /* RvBool */
cmRASParamAnswerCall, /* RvBool */
cmRASParamIrrFrequency, /* int */
cmRASParamReplyAddress, /* cmTransportAddress */
cmRASParamDisengageReason, /* cmRASDisengageReason */
cmRASParamRejectedAlias, /* cmAlias */
cmRASParamRejectReason, /* cmRASReason */
cmRASParamCID, /* char[16] */
cmRASParamDestinationIpAddress, /* cmTransportAddress: the actual
address to send message to */
cmRASParamNonStandard, /* cmNonStandardParam */
cmRASParamNonStandardData, /* int - pvt nodeId */
cmRASParamCRV, /* int */
cmRASParamMulticastTransaction, /* RvBool: is this a multicast
transaction? */
cmRASParamTransportQOS, /* cmTransportQOS */
cmRASParamKeepAlive, /* RvBool */
cmRASParamTimeToLive, /* int */
cmRASParamDelay, /* int (in seconds) */
cmRASParamCallID, /* char[16] */
cmRASParamAnsweredCall, /* RvBool */
cmRASParamAlmostOutOfResources, /* RvBool */
cmRASParamAlternateGatekeeper, /* cmAlternateGatekeeper */
cmRASParamAltGKInfo, /* cmAlternateGatekeeper */
cmRASParamAltGKisPermanent, /* RvBool */
cmRASParamEmpty, /* none */
cmRASParamSourceInfo, /* cmAlias */
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -