Objective Systems, Inc.  

ooCalls.h File Reference

This file contains call management functions. More...

#include "ooLogChan.h"
#include "ooCapability.h"

Go to the source code of this file.

Data Structures

struct  OOMediaInfo
 Structure to store local and remote media endpoint info for a given media type. More...
struct  OOCallFwdData
 Structure to hold information on a forwarded call. More...
struct  OOH323Channel
 Structure to store information on an H.323 channel (H.225 or H.245) for a particular call. More...
struct  FastStartResponse
 Structure to store information on fast start response (H.225) to reply same answer in CALL PROCEEDING, ALERTING & CONNECT. More...
struct  OOH323CallData
 This structure is used to maintain all information on an active call. More...
struct  OOH323CALLBACKS
 This structure holds all of the H.323 signaling callback function addresses. More...

Defines

#define OO_M_ENDSESSION_BUILT   ASN1UINTCNT(0x00800000)
#define OO_M_RELEASE_BUILT   ASN1UINTCNT(0x00400000)
#define OO_M_FASTSTARTANSWERED   ASN1UINTCNT(0x04000000)
#define OO_M_ENDPOINTCREATED   ASN1UINTCNT(0x00010000)
#define OO_M_GKROUTED   ASN1UINTCNT(0x00200000)
#define OO_M_AUTOANSWER   ASN1UINTCNT(0x00100000)
#define OO_M_TUNNELING   ASN1UINTCNT(0x08000000)
#define OO_M_MEDIAWAITFORCONN   ASN1UINTCNT(0x20000000)
#define OO_M_FASTSTART   ASN1UINTCNT(0x02000000)
#define OO_M_DISABLEGK   ASN1UINTCNT(0x01000000)
#define OO_M_MANUALRINGBACK   ASN1UINTCNT(0x10000000)
#define ooMediaInfo   OOMediaInfo
#define ooCallData   OOH323CallData

Typedefs

typedef OOMediaInfo OOMediaInfo
 Structure to store local and remote media endpoint info for a given media type.
typedef OOCallFwdData OOCallFwdData
 Structure to hold information on a forwarded call.
typedef OOH323Channel OOH323Channel
 Structure to store information on an H.323 channel (H.225 or H.245) for a particular call.
typedef EXTERN FastStartResponse FastStartResponse
 Structure to store information on fast start response (H.225) to reply same answer in CALL PROCEEDING, ALERTING & CONNECT.
typedef OOH323CallData OOH323CallData
 This structure is used to maintain all information on an active call.
typedef int(* cb_OnNewCallCreated )(OOH323CallData *call)
 This callback function is triggered when a new call structure is created inside the stack for an incoming or outgoing call.
typedef int(* cb_OnAlerting )(OOH323CallData *call)
 This callback function is triggered when a Q.931 alerting message is received for an outgoing call or when a Q.931 alerting message is sent for an incoming call.
typedef int(* cb_OnIncomingCall )(OOH323CallData *call)
 This callback function is triggered when there is an incoming call.
typedef int(* cb_OnOutgoingCall )(OOH323CallData *call)
 This callback function is triggered after a Q.931 setup message is sent for an outgoing call.
typedef int(* cb_OnCallEstablished )(struct OOH323CallData *call)
 This callback function is triggered when a Q.931 connect message is sent in case of incoming call.
typedef int(* cb_OnCallCleared )(struct OOH323CallData *call)
 This callback function is triggered when a call is cleared.
typedef int(* cb_OpenLogicalChannels )(struct OOH323CallData *call)
 This callback function is triggered when master-slave determination and capabilities negotiation procedures are successfully completed for a call.
typedef int(* cb_OnCallForwarded )(struct OOH323CallData *call)
 This callback function is triggered when a call is forwarded by a remote endpoint to another remote destination.
typedef int(* cb_OnReceivedDTMF )(struct OOH323CallData *call, const char *dtmf)
 This callback function is triggered when dtmf is received over Q.931(keypad) or H.245(alphanumeric) or H.245(signal).
typedef OOH323CALLBACKS OOH323CALLBACKS
 This structure holds all of the H.323 signaling callback function addresses.

Enumerations

enum  OOCallState {
  OO_CALL_CREATED,
  OO_CALL_WAITING_ADMISSION,
  OO_CALL_CONNECTING,
  OO_CALL_CONNECTED,
  OO_CALL_PAUSED,
  OO_CALL_CLEAR,
  OO_CALL_CLEAR_RELEASERECVD,
  OO_CALL_CLEAR_RELEASESENT,
  OO_CALL_CLEARED
}
 Call states. More...
enum  OOH245SessionState {
  OO_H245SESSION_IDLE,
  OO_H245SESSION_PAUSED,
  OO_H245SESSION_ACTIVE,
  OO_H245SESSION_ENDSENT,
  OO_H245SESSION_ENDRECVD,
  OO_H245SESSION_CLOSED
}
 H.245 session states.

Functions

EXTERN OOH323CallDataooCreateCall (char *type, char *callToken)
 This function is used to create a new call entry.
EXTERN int ooAddCallToList (OOH323CallData *call)
 This function is used to add a call to the list of existing calls.
EXTERN int ooCallSetCallerId (OOH323CallData *call, const char *callerid)
 This function is used to set the caller ID for a call.
EXTERN int ooCallSetCallingPartyNumber (OOH323CallData *call, const char *number)
 This function is used to set calling party number for a particular call.
EXTERN int ooCallGetCallingPartyNumber (OOH323CallData *call, char *buffer, int len)
 This function is used to retrieve calling party number of a particular call.
EXTERN int ooCallGetCalledPartyNumber (OOH323CallData *call, char *buffer, int len)
 This function is used to retrieve called party number of a particular call.
EXTERN int ooCallSetCalledPartyNumber (OOH323CallData *call, const char *number)
 This function is used to set called party number for a particular call.
EXTERN int ooCallClearAliases (OOH323CallData *call)
 This function is used to clear the local aliases used by this call.
EXTERN int ooCallAddAliasH323ID (OOH323CallData *call, const char *h323id)
 This function is used to add an H323ID alias to be used by local endpoint for a particular call.
EXTERN int ooCallAddAliasDialedDigits (OOH323CallData *call, const char *dialedDigits)
 This function is used to add an dialedDigits alias to be used by local endpoint for a particular call.
EXTERN int ooCallAddAliasEmailID (OOH323CallData *call, const char *email)
 This function is used to add an email-id alias to be used by local endpoint for a particular call.
EXTERN int ooCallAddAliasURLID (OOH323CallData *call, const char *url)
 This function is used to add an email-id alias to be used by local endpoint for a particular call.
int ooCallAddAlias (OOH323CallData *call, int aliasType, const char *value, OOBOOL local)
 This is a helper function used by other call related add aliases functions to add a particular alias.
EXTERN int ooCallAddRemoteAliasDialedDigits (OOH323CallData *call, const char *dialedDigits)
 This function is used to add an dialed digits alias for the remote endpoint involved in a particular call.
EXTERN int ooCallAddRemoteAliasH323ID (OOH323CallData *call, const char *h323id)
 This function is used to add an H323ID alias for the remote endpoint involved in a particular call.
EXTERN int ooCallAddG7231Capability (OOH323CallData *call, int cap, int txframes, int rxframes, OOBOOL silenceSuppression, int dir, cb_StartReceiveChannel startReceiveChannel, cb_StartTransmitChannel startTransmitChannel, cb_StopReceiveChannel stopReceiveChannel, cb_StopTransmitChannel stopTransmitChannel)
 This function is used to add G7231 capability for the call.
EXTERN int ooCallAddG728Capability (OOH323CallData *call, int cap, int txframes, int rxframes, int dir, cb_StartReceiveChannel startReceiveChannel, cb_StartTransmitChannel startTransmitChannel, cb_StopReceiveChannel stopReceiveChannel, cb_StopTransmitChannel stopTransmitChannel)
 This function is used to add G728 capability for the call.
EXTERN int ooCallAddG729Capability (OOH323CallData *call, int cap, int txframes, int rxframes, int dir, cb_StartReceiveChannel startReceiveChannel, cb_StartTransmitChannel startTransmitChannel, cb_StopReceiveChannel stopReceiveChannel, cb_StopTransmitChannel stopTransmitChannel)
 This function is used to add G729 capability for the call.
EXTERN int ooCallAddG711Capability (OOH323CallData *call, int cap, int txframes, int rxframes, int dir, cb_StartReceiveChannel startReceiveChannel, cb_StartTransmitChannel startTransmitChannel, cb_StopReceiveChannel stopReceiveChannel, cb_StopTransmitChannel stopTransmitChannel)
 This function is used to add G711 capability for the call.
EXTERN int ooCallAddGSMCapability (OOH323CallData *call, int cap, ASN1USINT framesPerPkt, OOBOOL comfortNoise, OOBOOL scrambled, int dir, cb_StartReceiveChannel startReceiveChannel, cb_StartTransmitChannel startTransmitChannel, cb_StopReceiveChannel stopReceiveChannel, cb_StopTransmitChannel stopTransmitChannel)
 This function is used to add GSM capability for the call.
EXTERN int ooCallAddH263VideoCapability (OOH323CallData *call, int cap, unsigned sqcifMPI, unsigned qcifMPI, unsigned cifMPI, unsigned cif4MPI, unsigned cif16MPI, unsigned maxBitRate, int dir, cb_StartReceiveChannel startReceiveChannel, cb_StartTransmitChannel startTransmitChannel, cb_StopReceiveChannel stopReceiveChannel, cb_StopTransmitChannel stopTransmitChannel)
 This function is used to add H263 video capability for the call.
EXTERN int ooCallEnableDTMFRFC2833 (OOH323CallData *call, int dynamicRTPPayloadType)
 This function is used to enable rfc 2833 capability for the call.
EXTERN int ooCallDisableDTMFRFC2833 (OOH323CallData *call)
 This function is used to disable rfc 2833 capability for the call.
EXTERN int ooCallEnableDTMFH245Alphanumeric (OOH323CallData *call)
 This function is used to enable H.245(alphanumeric) dtmf support for the call.
EXTERN int ooCallDisableDTMFH245Alphanumeric (OOH323CallData *call)
 This function is used to disable H.245(alphanumeric) dtmf support for the call.
EXTERN int ooCallEnableDTMFH245Signal (OOH323CallData *call)
 This function is used to enable H.245(signal) dtmf support for the call.
EXTERN int ooCallDisableDTMFH245Signal (OOH323CallData *call)
 This function is used to disable H.245(signal) dtmf support for the call.
EXTERN int ooCallEnableDTMFQ931Keypad (OOH323CallData *call)
 This function is used to enable Q.931(keypad) dtmf support for the call.
EXTERN int ooCallDisableDTMFQ931Keypad (OOH323CallData *call)
 This function is used to disable Q.931(keypad) dtmf support for the call.
EXTERN OOH323CallDataooFindCallByToken (char *callToken)
 This function is used to find a call by using the unique token for the call.
EXTERN int ooEndCall (OOH323CallData *call)
 This function is used to end a call.
EXTERN int ooRemoveCallFromList (OOH323CallData *call)
 This function is used to remove a call from the list of existing calls.
EXTERN int ooCleanCall (OOH323CallData *call)
 This function is used to clean up a call.
EXTERN ASN1BOOL ooIsSessionEstablished (OOH323CallData *call, int sessionID, char *dir)
 This function is used to check whether a specified session in specified direction is active for the call.
EXTERN int ooAddMediaInfo (OOH323CallData *call, OOMediaInfo mediaInfo)
 This function can be used by an application to specify media endpoint information for different types of media.
EXTERN unsigned ooCallGenerateSessionID (OOH323CallData *call, OOCapType type, char *dir)
 This function is used to generate a media session id for the new media session for the call.
EXTERN int ooCallH245ConnectionRetryTimerExpired (void *data)
 This is an handler for H245 connection retry timer.
EXTERN const char * ooGetReasonCodeText (OOUINT32 code)
 This function is used to retrieve the description text for a reason code.
EXTERN const char * ooGetCallStateText (OOCallState callState)
 This function is used to retrieve the description text for a call state.


Detailed Description

This file contains call management functions.

Definition in file ooCalls.h.


This file was last modified on 25 Jan 2007.
Objective Open H.323 Stack, 0.8.3