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 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).

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 28 May 2010.
Objective Open H.323 Stack, 0.9.1