OPAL  Version 3.10.10
OpalManagerConsole Class Reference

#include <console_mgr.h>

Inheritance diagram for OpalManagerConsole:
OpalManager

Public Member Functions

 OpalManagerConsole ()
PString GetArgumentSpec () const
PString GetArgumentUsage () const
bool Initialise (PArgList &args, bool verbose, const PString &defaultRoute=PString::Empty())
- Public Member Functions inherited from OpalManager
void GarbageCollection ()
virtual void OnApplyStringOptions (OpalConnection &conn, OpalConnection::StringOptions &stringOptions)
OpalIMManagerGetIMManager ()
 OpalManager ()
 ~OpalManager ()
void AttachEndPoint (OpalEndPoint *endpoint, const PString &prefix=PString::Empty())
void DetachEndPoint (const PString &prefix)
void DetachEndPoint (OpalEndPoint *endpoint)
OpalEndPointFindEndPoint (const PString &prefix)
PList< OpalEndPointGetEndPoints () const
void ShutDownEndpoints ()
virtual PSafePtr< OpalCallSetUpCall (const PString &partyA, const PString &partyB, void *userData=NULL, unsigned options=0, OpalConnection::StringOptions *stringOptions=NULL)
virtual PBoolean SetUpCall (const PString &partyA, const PString &partyB, PString &token, void *userData=NULL, unsigned options=0, OpalConnection::StringOptions *stringOptions=NULL)
virtual PBoolean HasCall (const PString &token)
PINDEX GetCallCount () const
PArray< PString > GetAllCalls () const
PSafePtr< OpalCallFindCallWithLock (const PString &token, PSafetyMode mode=PSafeReadWrite)
virtual void OnEstablishedCall (OpalCall &call)
virtual PBoolean IsCallEstablished (const PString &token)
virtual PBoolean ClearCall (const PString &token, OpalConnection::CallEndReason reason=OpalConnection::EndedByLocalUser, PSyncPoint *sync=NULL)
virtual PBoolean ClearCallSynchronous (const PString &token, OpalConnection::CallEndReason reason=OpalConnection::EndedByLocalUser)
virtual void ClearAllCalls (OpalConnection::CallEndReason reason=OpalConnection::EndedByLocalUser, PBoolean wait=true)
virtual void OnClearedCall (OpalCall &call)
virtual OpalCallCreateCall (void *userData)
OpalCallInternalCreateCall ()
virtual void DestroyCall (OpalCall *call)
virtual PString GetNextToken (char prefix)
virtual PSafePtr< OpalPresentityAddPresentity (const PString &presentity)
virtual PSafePtr< OpalPresentityGetPresentity (const PString &presentity, PSafetyMode mode=PSafeReference)
virtual PStringList GetPresentities () const
virtual bool RemovePresentity (const PString &presentity)
virtual PBoolean Message (const PString &to, const PString &body)
virtual PBoolean Message (const PURL &to, const PString &type, const PString &body, PURL &from, PString &conversationId)
virtual PBoolean Message (OpalIM &message)
virtual void OnMessageReceived (const OpalIM &message)
virtual PSafePtr< OpalConnectionMakeConnection (OpalCall &call, const PString &party, void *userData=NULL, unsigned int options=0, OpalConnection::StringOptions *stringOptions=NULL)
virtual void OnNewConnection (OpalConnection &connection)
virtual PBoolean OnIncomingConnection (OpalConnection &connection, unsigned options, OpalConnection::StringOptions *stringOptions)
virtual bool OnRouteConnection (PStringSet &routesTried, const PString &a_party, const PString &b_party, OpalCall &call, unsigned options, OpalConnection::StringOptions *stringOptions)
virtual void OnProceeding (OpalConnection &connection)
virtual void OnAlerting (OpalConnection &connection)
virtual
OpalConnection::AnswerCallResponse 
OnAnswerCall (OpalConnection &connection, const PString &caller)
virtual void OnConnected (OpalConnection &connection)
virtual void OnEstablished (OpalConnection &connection)
virtual void OnReleased (OpalConnection &connection)
virtual void OnHold (OpalConnection &connection, bool fromRemote, bool onHold)
virtual void OnHold (OpalConnection &connection)
virtual PBoolean OnForwarded (OpalConnection &connection, const PString &remoteParty)
virtual bool OnTransferNotify (OpalConnection &connection, const PStringToString &info)
virtual void OnUserInputString (OpalConnection &connection, const PString &value)
virtual void OnUserInputTone (OpalConnection &connection, char tone, int duration)
virtual PString ReadUserInput (OpalConnection &connection, const char *terminators="#\r\n", unsigned lastDigitTimeout=4, unsigned firstDigitTimeout=30)
virtual PBoolean StartRecording (const PString &callToken, const PFilePath &filename, const OpalRecordManager::Options &options=false)
virtual bool IsRecording (const PString &callToken)
virtual bool StopRecording (const PString &callToken)
const OpalProductInfoGetProductInfo () const
void SetProductInfo (const OpalProductInfo &info, bool updateAll=true)
const PString & GetDefaultUserName () const
void SetDefaultUserName (const PString &name, bool updateAll=true)
const PString & GetDefaultDisplayName () const
void SetDefaultDisplayName (const PString &name, bool updateAll=true)
bool CanAutoStartReceiveVideo () const
void SetAutoStartReceiveVideo (bool can)
bool CanAutoStartTransmitVideo () const
void SetAutoStartTransmitVideo (bool can)
virtual PBoolean IsLocalAddress (const PIPSocket::Address &remoteAddress) const
virtual PBoolean IsRTPNATEnabled (OpalConnection &connection, const PIPSocket::Address &localAddr, const PIPSocket::Address &peerAddr, const PIPSocket::Address &signalAddr, PBoolean incoming)
virtual PBoolean TranslateIPAddress (PIPSocket::Address &localAddress, const PIPSocket::Address &remoteAddress)
const PString & GetTranslationHost () const
bool SetTranslationHost (const PString &host)
const PIPSocket::Address & GetTranslationAddress () const
void SetTranslationAddress (const PIPSocket::Address &address)
virtual PNatMethod * GetNatMethod (const PIPSocket::Address &remoteAddress=PIPSocket::GetDefaultIpAny()) const
PSTUNClient::NatTypes SetSTUNServer (const PString &server)
const PString & GetSTUNServer () const
PSTUNClient * GetSTUNClient () const
WORD GetTCPPortBase () const
WORD GetTCPPortMax () const
void SetTCPPorts (unsigned tcpBase, unsigned tcpMax)
WORD GetNextTCPPort ()
WORD GetUDPPortBase () const
WORD GetUDPPortMax () const
void SetUDPPorts (unsigned udpBase, unsigned udpMax)
WORD GetNextUDPPort ()
WORD GetRtpIpPortBase () const
WORD GetRtpIpPortMax () const
void SetRtpIpPorts (unsigned udpBase, unsigned udpMax)
WORD GetRtpIpPortPair ()
BYTE GetMediaTypeOfService () const
void SetMediaTypeOfService (unsigned tos)
BYTE P_DEPRECATED GetRtpIpTypeofService () const
void P_DEPRECATED SetRtpIpTypeofService (unsigned tos)
BYTE GetMediaTypeOfService (const OpalMediaType &type) const
void SetMediaTypeOfService (const OpalMediaType &type, unsigned tos)
PINDEX GetMaxRtpPayloadSize () const
void SetMaxRtpPayloadSize (PINDEX size, bool mtu=false)
PINDEX GetMaxRtpPacketSize () const
void SetMaxRtpPacketSize (PINDEX size)
unsigned GetMinAudioJitterDelay () const
unsigned GetMaxAudioJitterDelay () const
void SetAudioJitterDelay (unsigned minDelay, unsigned maxDelay)
const PStringArray & GetMediaFormatOrder () const
void SetMediaFormatOrder (const PStringArray &order)
const PStringArray & GetMediaFormatMask () const
void SetMediaFormatMask (const PStringArray &mask)
virtual void SetSilenceDetectParams (const OpalSilenceDetector::Params &params)
const OpalSilenceDetector::ParamsGetSilenceDetectParams () const
virtual PBoolean SetVideoInputDevice (const PVideoDevice::OpenArgs &deviceArgs)
const PVideoDevice::OpenArgs & GetVideoInputDevice () const
virtual PBoolean SetVideoPreviewDevice (const PVideoDevice::OpenArgs &deviceArgs)
const PVideoDevice::OpenArgs & GetVideoPreviewDevice () const
virtual PBoolean SetVideoOutputDevice (const PVideoDevice::OpenArgs &deviceArgs)
const PVideoDevice::OpenArgs & GetVideoOutputDevice () const
PBoolean DetectInBandDTMFDisabled () const
void DisableDetectInBandDTMF (PBoolean mode)
const PTimeInterval & GetNoMediaTimeout () const
PBoolean SetNoMediaTimeout (const PTimeInterval &newInterval)
const PString & GetDefaultILSServer () const
void SetDefaultILSServer (const PString &server)
virtual OpalMediaFormatList GetCommonMediaFormats (bool transportable, bool pcmAudio) const
virtual void AdjustMediaFormats (bool local, const OpalConnection &connection, OpalMediaFormatList &mediaFormats) const
virtual PBoolean IsMediaBypassPossible (const OpalConnection &source, const OpalConnection &destination, unsigned sessionID) const
virtual PBoolean OnOpenMediaStream (OpalConnection &connection, OpalMediaStream &stream)
virtual RTP_UDPCreateRTPSession (const RTP_Session::Params &params)
virtual void OnRTPStatistics (const OpalConnection &connection, const RTP_Session &session)
virtual bool OnLocalRTP (OpalConnection &connection1, OpalConnection &connection2, unsigned sessionID, bool opened) const
bool SetMediaPassThrough (const PString &token1, const PString &token2, bool bypass, unsigned sessionID=0, bool network=true)
virtual void OnClosedMediaStream (const OpalMediaStream &stream)
virtual PBoolean CreateVideoInputDevice (const OpalConnection &connection, const OpalMediaFormat &mediaFormat, PVideoInputDevice *&device, PBoolean &autoDelete)
virtual PBoolean CreateVideoOutputDevice (const OpalConnection &connection, const OpalMediaFormat &mediaFormat, PBoolean preview, PVideoOutputDevice *&device, PBoolean &autoDelete)
virtual OpalMediaPatchCreateMediaPatch (OpalMediaStream &source, PBoolean requiresPatchThread=true)
virtual void OnStartMediaPatch (OpalConnection &connection, OpalMediaPatch &patch)
virtual void OnStopMediaPatch (OpalConnection &connection, OpalMediaPatch &patch)
virtual void OnMWIReceived (const PString &party, MessageWaitingType type, const PString &extraInfo)
 PARRAY (RouteTable, RouteEntry)
virtual PBoolean AddRouteEntry (const PString &spec)
PBoolean SetRouteTable (const PStringArray &specs)
void SetRouteTable (const RouteTable &table)
const RouteTable & GetRouteTable () const
virtual PString ApplyRouteTable (const PString &source, const PString &destination, PINDEX &entry)

Protected Member Functions

SIPEndPointCreateSIPEndPoint ()
H323EndPointCreateH323EndPoint ()
OpalLineEndPointCreateLineEndPoint ()
- Protected Member Functions inherited from OpalManager
void InternalClearAllCalls (OpalConnection::CallEndReason reason, bool wait, bool first)
 PDECLARE_NOTIFIER (PThread, OpalManager, GarbageMain)
friend OpalCall::OpalCall (OpalManager &mgr)

Additional Inherited Members

- Public Types inherited from OpalManager
enum  MessageWaitingType {
  NoMessageWaiting, VoiceMessageWaiting, FaxMessageWaiting, PagerMessageWaiting,
  MultimediaMessageWaiting, TextMessageWaiting, NumMessageWaitingTypes
}
 Message waiting sub-types. More...
- Static Public Member Functions inherited from OpalManager
static bool SetMediaPassThrough (OpalConnection &connection1, OpalConnection &connection2, bool bypass, unsigned sessionID=0)
- Protected Attributes inherited from OpalManager
OpalProductInfo productInfo
PString defaultUserName
PString defaultDisplayName
BYTE m_defaultMediaTypeOfService
map< OpalMediaType, BYTE > m_mediaTypeOfService
PINDEX rtpPayloadSizeMax
PINDEX rtpPacketSizeMax
unsigned minAudioJitterDelay
unsigned maxAudioJitterDelay
PStringArray mediaFormatOrder
PStringArray mediaFormatMask
PBoolean disableDetectInBandDTMF
PTimeInterval noMediaTimeout
PString ilsServer
OpalSilenceDetector::Params silenceDetectParams
PVideoDevice::OpenArgs videoInputDevice
PVideoDevice::OpenArgs videoPreviewDevice
PVideoDevice::OpenArgs videoOutputDevice
struct OpalManager::PortInfo tcpPorts
struct OpalManager::PortInfo udpPorts
struct OpalManager::PortInfo rtpIpPorts
PString translationHost
PIPSocket::Address translationAddress
PString stunServer
PSTUNClient * stun
InterfaceMonitorinterfaceMonitor
RouteTable m_routeTable
PMutex m_routeMutex
PReadWriteMutex endpointsMutex
PList< OpalEndPointendpointList
std::map< PString, OpalEndPoint * > endpointMap
PAtomicInteger lastCallTokenID
OpalManager::CallDict activeCalls
PSafeDictionary< PString,
OpalPresentity
m_presentities
PAtomicInteger m_clearingAllCallsCount
PMutex m_clearingAllCallsMutex
PSyncPoint m_allCallsCleared
PThread * garbageCollector
PSyncPoint garbageCollectExit
bool garbageCollectSkip
OpalIMManagerm_imManager

Detailed Description

Opal manager class for console applications. An OpalManager derived class for use in a console application, providing a standard set of command line arguments for configuring many system parameters. Used by the sample applications such as faxopal, ovropal etc.

Constructor & Destructor Documentation

OpalManagerConsole::OpalManagerConsole ( )

Member Function Documentation

H323EndPoint* OpalManagerConsole::CreateH323EndPoint ( )
protected
OpalLineEndPoint* OpalManagerConsole::CreateLineEndPoint ( )
protected
SIPEndPoint* OpalManagerConsole::CreateSIPEndPoint ( )
protected
PString OpalManagerConsole::GetArgumentSpec ( ) const
PString OpalManagerConsole::GetArgumentUsage ( ) const
bool OpalManagerConsole::Initialise ( PArgList &  args,
bool  verbose,
const PString &  defaultRoute = PString::Empty() 
)

The documentation for this class was generated from the following file: