mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-16 14:58:25 +00:00
Move Asterisk-addons modules into the main Asterisk source tree.
Someone asked yesterday, "is there a good reason why we can't just put these modules in Asterisk?". After a brief discussion, as long as the modules are clearly set aside in their own directory and not enabled by default, it is perfectly fine. For more information about why a module goes in addons, see README-addons.txt. chan_ooh323 does not currently compile as it is behind some trunk API updates. However, it will not build by default, so it should be okay for now. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@204413 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
560
addons/ooh323c/src/ooGkClient.h
Normal file
560
addons/ooh323c/src/ooGkClient.h
Normal file
@@ -0,0 +1,560 @@
|
||||
/*
|
||||
* Copyright (C) 2005 by Page Iberica, S.A.
|
||||
* Copyright (C) 2005 by Objective Systems, Inc.
|
||||
*
|
||||
* This software is furnished under an open source license and may be
|
||||
* used and copied only in accordance with the terms of this license.
|
||||
* The text of the license may generally be found in the root
|
||||
* directory of this installation in the COPYING file. It
|
||||
* can also be viewed online at the following URL:
|
||||
*
|
||||
* http://www.obj-sys.com/open/license.html
|
||||
*
|
||||
* Any redistributions of this file including modified versions must
|
||||
* maintain this copyright notice.
|
||||
*
|
||||
*****************************************************************************/
|
||||
|
||||
/**
|
||||
* @file ooGkClient.h
|
||||
* This file contains functions to support RAS protocol.
|
||||
*
|
||||
*
|
||||
*/
|
||||
#ifndef _OOGKCLIENT_H_
|
||||
#define _OOGKCLIENT_H_
|
||||
|
||||
#include "ooasn1.h"
|
||||
#include "ootypes.h"
|
||||
#include "H323-MESSAGES.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifndef EXTERN
|
||||
#ifdef MAKE_DLL
|
||||
#define EXTERN __declspec(dllexport)
|
||||
#else
|
||||
#define EXTERN
|
||||
#endif /* _WIN32 */
|
||||
#endif /* EXTERN */
|
||||
|
||||
|
||||
/*-------------------------------------------------------------------*/
|
||||
/* Public definitions */
|
||||
/*-------------------------------------------------------------------*/
|
||||
|
||||
|
||||
|
||||
#define MAX_IP_LEN 15
|
||||
#define DEFAULT_GKPORT 1719
|
||||
#define MULTICAST_GKADDRESS "224.0.1.41"
|
||||
#define MULTICAST_GKPORT 1718
|
||||
#define DEFAULT_BW_REQUEST 100000
|
||||
|
||||
/* Various timeouts in seconds */
|
||||
#define DEFAULT_REG_TTL 300
|
||||
#define DEFAULT_TTL_OFFSET 20
|
||||
#define DEFAULT_ARQ_TIMEOUT 5
|
||||
#define DEFAULT_DRQ_TIMEOUT 5
|
||||
#define DEFAULT_GRQ_TIMEOUT 15
|
||||
#define DEFAULT_RRQ_TIMEOUT 10
|
||||
|
||||
/* Number of retries before giving up */
|
||||
#define OO_MAX_GRQ_RETRIES 3
|
||||
#define OO_MAX_RRQ_RETRIES 3
|
||||
#define OO_MAX_ARQ_RETRIES 3
|
||||
|
||||
/* Gk Client timers */
|
||||
#define OO_GRQ_TIMER (1<<0)
|
||||
#define OO_RRQ_TIMER (1<<1)
|
||||
#define OO_REG_TIMER (1<<2)
|
||||
#define OO_ARQ_TIMER (1<<3)
|
||||
#define OO_DRQ_TIMER (1<<4)
|
||||
|
||||
/**
|
||||
* @defgroup gkclient Gatekeeper client
|
||||
* @{
|
||||
*/
|
||||
|
||||
struct OOH323CallData;
|
||||
struct ooGkClient;
|
||||
struct RasCallAdmissionInfo;
|
||||
|
||||
typedef struct ooGkClientTimerCb{
|
||||
int timerType;
|
||||
struct ooGkClient *pGkClient;
|
||||
struct RasCallAdmissionInfo *pAdmInfo;
|
||||
}ooGkClientTimerCb;
|
||||
|
||||
enum RasGatekeeperMode {
|
||||
RasNoGatekeeper = 0,
|
||||
RasDiscoverGatekeeper = 1,
|
||||
RasUseSpecificGatekeeper = 2,
|
||||
};
|
||||
|
||||
enum RasCallType{
|
||||
RasPointToPoint =0,
|
||||
RasOneToN,
|
||||
RasnToOne,
|
||||
RasnToN,
|
||||
};
|
||||
|
||||
|
||||
enum OOGkClientState {
|
||||
GkClientIdle = 0,
|
||||
GkClientDiscovered, /* Gk Discovery is complete */
|
||||
GkClientRegistered, /* registered with gk */
|
||||
GkClientUnregistered,
|
||||
GkClientGkErr,/*Gk is not responding, in discover mode can look for new GK*/
|
||||
GkClientFailed
|
||||
};
|
||||
|
||||
|
||||
typedef struct RasGatekeeperInfo
|
||||
{
|
||||
ASN1BOOL willRespondToIRR;
|
||||
H225UUIEsRequested uuiesRequested;
|
||||
H225BandWidth bw;
|
||||
H225RegistrationConfirm_preGrantedARQ preGrantedARQ;
|
||||
}RasGatekeeperInfo;
|
||||
|
||||
/**
|
||||
* Call Admission Information
|
||||
*/
|
||||
typedef struct RasCallAdmissionInfo
|
||||
{
|
||||
struct OOH323CallData *call;
|
||||
unsigned int retries;
|
||||
unsigned short requestSeqNum;
|
||||
ASN1USINT irrFrequency;
|
||||
} RasCallAdmissionInfo;
|
||||
|
||||
struct OOAliases;
|
||||
|
||||
/**
|
||||
* NOTE- This functionality is not yet fully completed.
|
||||
* This is a callback function which is triggered when registration confirm
|
||||
* message is received from the gatekeeper. The first parameter is the message
|
||||
* received. The second parameter provides updated list of aliases after the
|
||||
* message was processed by the stack.
|
||||
* @param rcf Handle to the received registration confirm message
|
||||
*/
|
||||
typedef int (*cb_OnReceivedRegistrationConfirm)
|
||||
(H225RegistrationConfirm *rcf, struct OOAliases *aliases);
|
||||
|
||||
|
||||
/**
|
||||
* NOTE- This functionality is not yet fully completed.
|
||||
* This is a callback function which is triggered when unregistration confirm
|
||||
* message is received. The first parameter is the message received. The second
|
||||
* parameter provides updated list of aliases after the message was processed
|
||||
* by the stack.
|
||||
*/
|
||||
typedef int (*cb_OnReceivedUnregistrationConfirm)
|
||||
(H225UnregistrationConfirm *ucf, struct OOAliases *aliases);
|
||||
|
||||
/**
|
||||
* NOTE- This functionality is not yet fully completed.
|
||||
* This is a callback function which is triggered when unregistration request
|
||||
* message is received. The first parameter is the message received. The second
|
||||
* parameter provides the list of aliases requested to be unregistered.
|
||||
*/
|
||||
typedef int (*cb_OnReceivedUnregistrationRequest)
|
||||
(H225UnregistrationRequest *urq, struct OOAliases *aliases);
|
||||
|
||||
typedef struct OOGKCLIENTCALLBACKS{
|
||||
cb_OnReceivedRegistrationConfirm onReceivedRegistrationConfirm;
|
||||
cb_OnReceivedUnregistrationConfirm onReceivedUnregistrationConfirm;
|
||||
cb_OnReceivedUnregistrationRequest onReceivedUnregistrationRequest;
|
||||
}OOGKCLIENTCALLBACKS;
|
||||
|
||||
/**
|
||||
* Structure to store all the configuration information for the gatekeeper
|
||||
* client. Gatekeeper client is responsible for all the communication with
|
||||
* a gatekeeper.
|
||||
*/
|
||||
typedef struct ooGkClient{
|
||||
ASN1BOOL discoveryComplete;
|
||||
OOCTXT ctxt;
|
||||
OOCTXT msgCtxt;
|
||||
OOSOCKET rasSocket;
|
||||
int localRASPort;
|
||||
char localRASIP[20];
|
||||
char gkRasIP[20];
|
||||
char gkCallSignallingIP[20];
|
||||
RasGatekeeperInfo gkInfo;
|
||||
int gkRasPort;
|
||||
int gkCallSignallingPort;
|
||||
unsigned short requestSeqNum;
|
||||
enum RasGatekeeperMode gkMode; /* Current Gk mode */
|
||||
struct timeval registrationTime;
|
||||
H225GatekeeperIdentifier gkId;
|
||||
H225EndpointIdentifier endpointId;
|
||||
DList callsPendingList;
|
||||
DList callsAdmittedList;
|
||||
DList timerList;
|
||||
OOGKCLIENTCALLBACKS callbacks;
|
||||
ASN1UINT grqRetries;
|
||||
ASN1UINT rrqRetries;
|
||||
ASN1UINT grqTimeout;
|
||||
ASN1UINT rrqTimeout;
|
||||
ASN1UINT regTimeout;
|
||||
ASN1UINT arqTimeout;
|
||||
ASN1UINT drqTimeout;
|
||||
enum OOGkClientState state;
|
||||
} ooGkClient;
|
||||
|
||||
struct OOAliases;
|
||||
struct OOH323CallData;
|
||||
|
||||
/**
|
||||
* This function is used to initialize the Gatekeeper client.If an application
|
||||
* wants to use gatekeeper services, it should call this function immediately
|
||||
* after initializing the H323 EndPoint.
|
||||
* @param eGkMode Gatekeeper mode.
|
||||
* @param szGkAddr Dotted gk ip address, if gk has to be specified.
|
||||
* @param iGkPort Gk port.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*
|
||||
*/
|
||||
EXTERN int ooGkClientInit
|
||||
(enum RasGatekeeperMode eGkMode, char *szGkAddr, int iGkPort );
|
||||
|
||||
/**
|
||||
* This function is used to print the gatekeeper client configuration
|
||||
* information to log.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
*/
|
||||
EXTERN void ooGkClientPrintConfig(ooGkClient *pGkClient);
|
||||
|
||||
/**
|
||||
* This function is used to destroy Gatekeeper client. It releases all the
|
||||
* associated memory.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientDestroy(void);
|
||||
|
||||
/**
|
||||
* This function is used to start the Gatekeeper client functionality.
|
||||
* @param pGkClient Pointer to the Gatekeeper Client.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientStart(ooGkClient *pGkClient);
|
||||
|
||||
/**
|
||||
* This function is invoked to set a gatekeeper mode.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
* @param eGkMode Gatekeeper mode selected. One of the following:
|
||||
* - RasNoGatekeeper (DEFAULT), No Gatekeeper.
|
||||
* - RasDiscoverGatekeeper, to discover a gatekeeper
|
||||
* automatically.
|
||||
* - RasUseSpecificGatekeeper, to use a specific gatekeeper.
|
||||
* @param szGkAddr Gatekeeper address (only when using specific gatekeeper).
|
||||
* @param iGkPort Gatekeeper RAS port
|
||||
*
|
||||
* @return Completion status - OO_OK on success, OO_FAILED on failure
|
||||
*/
|
||||
EXTERN int ooGkClientSetGkMode(ooGkClient *pGkClient,
|
||||
enum RasGatekeeperMode eGkMode, char *szGkAddr,
|
||||
int iGkPort );
|
||||
|
||||
/**
|
||||
* This function is used to create a RAS channel for the gatekeeper.
|
||||
* @param pGkClient Pointer to the Gatekeeper client for which RAS channel
|
||||
* has to be created.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientCreateChannel(ooGkClient *pGkClient);
|
||||
|
||||
/**
|
||||
* This function is used to close a RAS channel of the gatekeeper client.
|
||||
* @param pGkClient Pointer to the gatekeeper client.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientCloseChannel(ooGkClient *pGkClient);
|
||||
|
||||
|
||||
/**
|
||||
* This function is used to fill endpoint's vendor information into vendor
|
||||
* identifier.
|
||||
* @param pGkClient Pointer to gatekeeper client.
|
||||
* @param psVendor Pointer to vendor identifier to be filled.
|
||||
*
|
||||
*/
|
||||
EXTERN void ooGkClientRasFillVendor
|
||||
(ooGkClient *pGkClient, H225VendorIdentifier *psVendor);
|
||||
|
||||
|
||||
/**
|
||||
* This function is invoked to receive data on Gatekeeper client's RAS channel.
|
||||
* @param pGkClient Handle to Gatekeeper client for which message has to be
|
||||
* received.
|
||||
*
|
||||
* @return Completion status - OO_OK on success, OO_FAILED on
|
||||
* failure
|
||||
*/
|
||||
EXTERN int ooGkClientReceive(ooGkClient *pGkClient);
|
||||
|
||||
|
||||
/**
|
||||
* This function is used to handle a received RAS message by a gatekeeper
|
||||
* client.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
* @param pRasMsg Handle to received Ras message.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientHandleRASMessage
|
||||
(ooGkClient *pGkClient, H225RasMessage *pRasMsg);
|
||||
|
||||
|
||||
/**
|
||||
* This function is used to send a message on Gatekeeper clien't RAS channel.
|
||||
* @param pGkClient Handle to the gatekeeper client.
|
||||
* @param pRasMsg Handle to Ras message to be sent.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, otherwise.
|
||||
*/
|
||||
EXTERN int ooGkClientSendMsg(ooGkClient *pGkClient, H225RasMessage *pRasMsg);
|
||||
|
||||
|
||||
/**
|
||||
* This function is used to send Gatekeeper request message.
|
||||
* @param pGkClient Handle to gatekeeper client for which GRQ message has to
|
||||
* be sent.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, otherwise.
|
||||
*/
|
||||
EXTERN int ooGkClientSendGRQ(ooGkClient *pGkClient);
|
||||
|
||||
|
||||
/**
|
||||
* This function is used to handle a received gatekeeper reject message.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
* @param pGatekeeperReject Handle to received reject message.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, otherwise.
|
||||
*/
|
||||
EXTERN int ooGkClientHandleGatekeeperReject
|
||||
(ooGkClient *pGkClient, H225GatekeeperReject *pGatekeeperReject);
|
||||
|
||||
/**
|
||||
* This function is used to handle a received gatekeeper confirm message.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
* @param pGatekeeperConfirm Handle to received confirmed message.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, otherwise.
|
||||
*/
|
||||
EXTERN int ooGkClientHandleGatekeeperConfirm
|
||||
(ooGkClient *pGkClient, H225GatekeeperConfirm *pGatekeeperConfirm);
|
||||
|
||||
|
||||
/**
|
||||
* This function is used to send Registration request message.
|
||||
* @param pGkClient Handle to gatekeeper client for which RRQ message has to
|
||||
* be sent.
|
||||
* @param keepAlive Indicates whether keepalive lightweight registration has
|
||||
* to be sent.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, otherwise.
|
||||
*/
|
||||
EXTERN int ooGkClientSendRRQ(ooGkClient *pGkClient, ASN1BOOL keepAlive);
|
||||
|
||||
/**
|
||||
* This function is used to handle a received registration confirm message.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
* @param pRegistrationConfirm Handle to received confirmed message.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, otherwise.
|
||||
*/
|
||||
EXTERN int ooGkClientHandleRegistrationConfirm
|
||||
(ooGkClient *pGkClient, H225RegistrationConfirm *pRegistrationConfirm);
|
||||
|
||||
/**
|
||||
* This function is used to handle a received registration reject message.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
* @param pRegistrationReject Handle to received reject message.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, otherwise.
|
||||
*/
|
||||
EXTERN int ooGkClientHandleRegistrationReject
|
||||
(ooGkClient *pGkClient, H225RegistrationReject *pRegistrationReject);
|
||||
|
||||
|
||||
/**
|
||||
* This function is used to send UnRegistration request message.
|
||||
* @param pGkClient Handle to gatekeeper client for which URQ message has to
|
||||
* be sent.
|
||||
* @param aliases List of aliases to be unregistered. NULL, if all the
|
||||
* aliases have to be unregistered.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, otherwise.
|
||||
*/
|
||||
EXTERN int ooGkClientSendURQ(ooGkClient *pGkClient, struct OOAliases *aliases);
|
||||
|
||||
/**
|
||||
* This function is used to handle a received Unregistration request message.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
* @param punregistrationRequest Handle to received unregistration request.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, otherwise.
|
||||
*/
|
||||
EXTERN int ooGkClientHandleUnregistrationRequest
|
||||
(ooGkClient *pGkClient, H225UnregistrationRequest *punregistrationRequest);
|
||||
|
||||
|
||||
/**
|
||||
* This function is used to send an unregistration confirm messsage to
|
||||
* gatekeeper.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
* @param reqNo Request Sequence number for the confirm message.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientSendUnregistrationConfirm(ooGkClient *pGkClient,
|
||||
unsigned reqNo);
|
||||
|
||||
/**
|
||||
* This function is invoked to request bandwith admission for a call.
|
||||
* @param pGkClient Gatekeeper client to be used
|
||||
* @param call Handle to the call.
|
||||
* @param retransmit Indicates whether new call or retransmitting for
|
||||
* existing call.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientSendAdmissionRequest
|
||||
(ooGkClient *pGkClient, struct OOH323CallData *call, ASN1BOOL retransmit);
|
||||
|
||||
/**
|
||||
* This function is used to handle a received Admission confirm message.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
* @param pAdmissionConfirm Handle to received confirmed message.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, otherwise.
|
||||
*/
|
||||
EXTERN int ooGkClientHandleAdmissionConfirm
|
||||
(ooGkClient *pGkClient, H225AdmissionConfirm *pAdmissionConfirm);
|
||||
|
||||
|
||||
/**
|
||||
* This function is used to handle a received Admission Reject message. It
|
||||
* finds the associated call and marks it for cleaning with appropriate
|
||||
* call end reason code.
|
||||
* @param pGkClient Handle to Gatekeeper client.
|
||||
* @param pAdmissionReject Handle to received admission reject message.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientHandleAdmissionReject
|
||||
(ooGkClient *pGkClient, H225AdmissionReject *pAdmissionReject);
|
||||
|
||||
/**
|
||||
* This function is invoked to request call disengage to gatekeeper.
|
||||
* @param pGkClient Gatekeeper client to be used.
|
||||
* @param call Call Handle
|
||||
*
|
||||
* @return Completion status - OO_OK on success, OO_FAILED on failure
|
||||
*/
|
||||
EXTERN int ooGkClientSendDisengageRequest
|
||||
(ooGkClient *pGkClient, struct OOH323CallData *call);
|
||||
|
||||
/**
|
||||
* This function is used to handle a received disengage confirm message.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
* @param pDCF Handle to received confirmed message.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, otherwise.
|
||||
*/
|
||||
EXTERN int ooGkClientHandleDisengageConfirm
|
||||
(ooGkClient *pGkClient, H225DisengageConfirm *pDCF);
|
||||
|
||||
/**
|
||||
* This function is used to handle an expired registration request timer.
|
||||
* @param pdata Handle to callback data
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientRRQTimerExpired(void*pdata);
|
||||
|
||||
/**
|
||||
* This function is used to handle an expired gatekeeper request timer.
|
||||
* @param pdata Handle to callback data
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientGRQTimerExpired(void* pdata);
|
||||
|
||||
/**
|
||||
* This function is used to handle an expired registration time-to-live timer.
|
||||
* @param pdata Handle to callback data
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientREGTimerExpired(void *pdata);
|
||||
|
||||
/**
|
||||
* This function is used to handle an expired admission request timer.
|
||||
* @param pdata Handle to callback data
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientARQTimerExpired(void* pdata);
|
||||
|
||||
/**
|
||||
* This function is used to clean call related data from gatekeeper client.
|
||||
* @param pGkClient Handle to the gatekeeper client.
|
||||
* @param call Handle to the call to be cleaned.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientCleanCall(ooGkClient *pGkClient, struct OOH323CallData *call);
|
||||
|
||||
/**
|
||||
* This function is used to handle gatekeeper client failure or gatekeeper
|
||||
* failure which can be detected by unresponsiveness of gk.
|
||||
* @param pGkClient Handle to gatekeeper client.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientHandleClientOrGkFailure(ooGkClient *pGkClient);
|
||||
|
||||
/**
|
||||
* This function is used to update the registration status of aliases.
|
||||
* @param pGkClient Handle to the GK client.
|
||||
* @param pAddresses List of newly registered addresses. NULL means all
|
||||
* aliases have been successfully registered.
|
||||
* @param registered Indicates whether aliases are registered or unregistered.
|
||||
*
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
EXTERN int ooGkClientUpdateRegisteredAliases
|
||||
(ooGkClient *pGkClient, H225_SeqOfH225AliasAddress *pAddresses,
|
||||
OOBOOL registered);
|
||||
|
||||
/**
|
||||
* This function is used internally to set Gatekeeper Clients callbacks.
|
||||
* Note: This functionality is not yet fully supported
|
||||
* @param pGkClient Handle to the GK client.
|
||||
* @param callbacks Callback structure contatining various gatekeeper client
|
||||
* callbacks.
|
||||
* @return OO_OK, on success. OO_FAILED, on failure.
|
||||
*/
|
||||
int ooGkClientSetCallbacks
|
||||
(ooGkClient *pGkClient, OOGKCLIENTCALLBACKS callbacks);
|
||||
/**
|
||||
* @}
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __GKCLIENT_H */
|
||||
Reference in New Issue
Block a user