OPAL  Version 3.10.10
SIPHandler Class Referenceabstract

#include <handlers.h>

Inheritance diagram for SIPHandler:
SIPMessageHandler SIPNotifyHandler SIPOptionsHandler SIPPingHandler SIPPublishHandler SIPRegisterHandler SIPSubscribeHandler

Public Types

enum  State {
  Subscribed, Subscribing, Unavailable, Refreshing,
  Restoring, Unsubscribing, Unsubscribed, NumStates
}
 

Public Member Functions

 ~SIPHandler ()
 
virtual Comparison Compare (const PObject &other) const
 
virtual bool ShutDown ()
 
void SetState (SIPHandler::State s)
 
SIPHandler::State GetState ()
 
virtual OpalTransportGetTransport ()
 
virtual SIPAuthenticationGetAuthentication ()
 
virtual const SIPURLGetAddressOfRecord ()
 
virtual PBoolean OnReceivedNOTIFY (SIP_PDU &response)
 
virtual void SetExpire (int e)
 
virtual int GetExpire ()
 
virtual const PString & GetCallID () const
 
virtual void SetBody (const PString &)
 
virtual bool IsDuplicateCSeq (unsigned)
 
virtual SIPTransactionCreateTransaction (OpalTransport &t)=0
 
SIP_PDU::Methods GetMethod () const
 
virtual SIPSubscribe::EventPackage GetEventPackage () const
 
virtual void OnReceivedResponse (SIPTransaction &transaction, SIP_PDU &response)
 
virtual void OnReceivedIntervalTooBrief (SIPTransaction &transaction, SIP_PDU &response)
 
virtual void OnReceivedTemporarilyUnavailable (SIPTransaction &transaction, SIP_PDU &response)
 
virtual void OnReceivedAuthenticationRequired (SIPTransaction &transaction, SIP_PDU &response)
 
virtual void OnReceivedOK (SIPTransaction &transaction, SIP_PDU &response)
 
virtual void OnTransactionFailed (SIPTransaction &transaction)
 
virtual void OnFailed (const SIP_PDU &response)
 
virtual void OnFailed (SIP_PDU::StatusCodes)
 
bool ActivateState (SIPHandler::State state)
 
virtual bool SendNotify (const PObject *)
 
SIPEndPointGetEndPoint () const
 
const OpalProductInfoGetProductInfo () const
 
const PString & GetUsername () const
 
const PString & GetPassword () const
 
const PString & GetRealm () const
 
const SIPURLGetRemoteAddress () const
 
const SIPURLGetProxy () const
 

Data Fields

SIPMIMEInfo m_mime
 

Protected Types

typedef std::map< PString,
PSafePtr< SIPHandler > > 
IndexMap
 

Protected Member Functions

 SIPHandler (SIP_PDU::Methods method, SIPEndPoint &ep, const SIPParameters &params)
 
virtual PBoolean SendRequest (SIPHandler::State state)
 
void RetryLater (unsigned after)
 
 PDECLARE_NOTIFIER (PTimer, SIPHandler, OnExpireTimeout)
 
virtual bool WriteSIPHandler (OpalTransport &transport, bool forked)
 

Static Protected Member Functions

static PBoolean WriteSIPHandler (OpalTransport &transport, void *info)
 

Protected Attributes

SIPEndPointendpoint
 
SIPAuthenticationm_authentication
 
unsigned m_authenticateErrors
 
PString m_username
 
PString m_password
 
PString m_realm
 
PSafeList< SIPTransactionm_transactions
 
OpalTransportm_transport
 
SIP_PDU::Methods m_method
 
SIPURL m_addressOfRecord
 
SIPURL m_remoteAddress
 
PString m_callID
 
unsigned m_lastCseq
 
int m_currentExpireTime
 
int m_originalExpireTime
 
int m_offlineExpireTime
 
State m_state
 
std::queue< Statem_stateQueue
 
bool m_receivedResponse
 
PTimer m_expireTimer
 
SIPURL m_proxy
 
OpalProductInfo m_productInfo
 
std::pair< IndexMap::iterator,
bool > 
m_byCallID
 
std::pair< IndexMap::iterator,
bool > 
m_byAorAndPackage
 
std::pair< IndexMap::iterator,
bool > 
m_byAuthIdAndRealm
 
std::pair< IndexMap::iterator,
bool > 
m_byAorUserAndRealm
 

Friends

class SIPHandlersList
 

Member Typedef Documentation

typedef std::map<PString, PSafePtr<SIPHandler> > SIPHandler::IndexMap
protected

Member Enumeration Documentation

Enumerator
Subscribed 
Subscribing 
Unavailable 
Refreshing 
Restoring 
Unsubscribing 
Unsubscribed 
NumStates 

Constructor & Destructor Documentation

SIPHandler::SIPHandler ( SIP_PDU::Methods  method,
SIPEndPoint ep,
const SIPParameters params 
)
protected
SIPHandler::~SIPHandler ( )

Member Function Documentation

bool SIPHandler::ActivateState ( SIPHandler::State  state)
virtual Comparison SIPHandler::Compare ( const PObject &  other) const
virtual
virtual SIPTransaction* SIPHandler::CreateTransaction ( OpalTransport t)
pure virtual
virtual const SIPURL& SIPHandler::GetAddressOfRecord ( )
inlinevirtual

References m_addressOfRecord.

virtual SIPAuthentication* SIPHandler::GetAuthentication ( )
inlinevirtual

References m_authentication.

virtual const PString& SIPHandler::GetCallID ( ) const
inlinevirtual

References m_callID.

SIPEndPoint& SIPHandler::GetEndPoint ( ) const
inline

References endpoint.

virtual SIPSubscribe::EventPackage SIPHandler::GetEventPackage ( ) const
inlinevirtual
virtual int SIPHandler::GetExpire ( )
inlinevirtual

References m_currentExpireTime.

SIP_PDU::Methods SIPHandler::GetMethod ( ) const
inline

References m_method.

const PString& SIPHandler::GetPassword ( ) const
inline

References m_password.

const OpalProductInfo& SIPHandler::GetProductInfo ( ) const
inline

References m_productInfo.

const SIPURL& SIPHandler::GetProxy ( ) const
inline

References m_proxy.

const PString& SIPHandler::GetRealm ( ) const
inline

References m_realm.

const SIPURL& SIPHandler::GetRemoteAddress ( ) const
inline

References m_remoteAddress.

SIPHandler::State SIPHandler::GetState ( )
inline

References m_state.

virtual OpalTransport* SIPHandler::GetTransport ( )
virtual
const PString& SIPHandler::GetUsername ( ) const
inline

References m_username.

virtual bool SIPHandler::IsDuplicateCSeq ( unsigned  )
inlinevirtual

Reimplemented in SIPNotifyHandler, and SIPSubscribeHandler.

virtual void SIPHandler::OnFailed ( const SIP_PDU response)
virtual

Reimplemented in SIPOptionsHandler, and SIPSubscribeHandler.

virtual void SIPHandler::OnFailed ( SIP_PDU::StatusCodes  )
virtual
virtual void SIPHandler::OnReceivedAuthenticationRequired ( SIPTransaction transaction,
SIP_PDU response 
)
virtual
virtual void SIPHandler::OnReceivedIntervalTooBrief ( SIPTransaction transaction,
SIP_PDU response 
)
virtual
virtual PBoolean SIPHandler::OnReceivedNOTIFY ( SIP_PDU response)
virtual

Reimplemented in SIPSubscribeHandler.

virtual void SIPHandler::OnReceivedOK ( SIPTransaction transaction,
SIP_PDU response 
)
virtual
virtual void SIPHandler::OnReceivedResponse ( SIPTransaction transaction,
SIP_PDU response 
)
virtual
virtual void SIPHandler::OnReceivedTemporarilyUnavailable ( SIPTransaction transaction,
SIP_PDU response 
)
virtual
virtual void SIPHandler::OnTransactionFailed ( SIPTransaction transaction)
virtual
SIPHandler::PDECLARE_NOTIFIER ( PTimer  ,
SIPHandler  ,
OnExpireTimeout   
)
protected
void SIPHandler::RetryLater ( unsigned  after)
protected
virtual bool SIPHandler::SendNotify ( const PObject *  )
inlinevirtual

Reimplemented in SIPNotifyHandler.

virtual PBoolean SIPHandler::SendRequest ( SIPHandler::State  state)
protectedvirtual
virtual void SIPHandler::SetBody ( const PString &  )
inlinevirtual

Reimplemented in SIPPublishHandler, and SIPNotifyHandler.

virtual void SIPHandler::SetExpire ( int  e)
virtual
void SIPHandler::SetState ( SIPHandler::State  s)
virtual bool SIPHandler::ShutDown ( )
virtual
static PBoolean SIPHandler::WriteSIPHandler ( OpalTransport transport,
void *  info 
)
staticprotected
virtual bool SIPHandler::WriteSIPHandler ( OpalTransport transport,
bool  forked 
)
protectedvirtual

Reimplemented in SIPNotifyHandler, and SIPSubscribeHandler.

Friends And Related Function Documentation

friend class SIPHandlersList
friend

Field Documentation

SIPEndPoint& SIPHandler::endpoint
protected

Referenced by GetEndPoint().

SIPURL SIPHandler::m_addressOfRecord
protected

Referenced by GetAddressOfRecord().

unsigned SIPHandler::m_authenticateErrors
protected
SIPAuthentication* SIPHandler::m_authentication
protected

Referenced by GetAuthentication().

std::pair<IndexMap::iterator, bool> SIPHandler::m_byAorAndPackage
protected
std::pair<IndexMap::iterator, bool> SIPHandler::m_byAorUserAndRealm
protected
std::pair<IndexMap::iterator, bool> SIPHandler::m_byAuthIdAndRealm
protected
std::pair<IndexMap::iterator, bool> SIPHandler::m_byCallID
protected
PString SIPHandler::m_callID
protected

Referenced by GetCallID().

int SIPHandler::m_currentExpireTime
protected

Referenced by GetExpire().

PTimer SIPHandler::m_expireTimer
protected
unsigned SIPHandler::m_lastCseq
protected
SIP_PDU::Methods SIPHandler::m_method
protected

Referenced by GetMethod().

SIPMIMEInfo SIPHandler::m_mime
int SIPHandler::m_offlineExpireTime
protected
int SIPHandler::m_originalExpireTime
protected
PString SIPHandler::m_password
protected

Referenced by GetPassword().

OpalProductInfo SIPHandler::m_productInfo
protected

Referenced by GetProductInfo().

SIPURL SIPHandler::m_proxy
protected

Referenced by GetProxy().

PString SIPHandler::m_realm
protected

Referenced by GetRealm().

bool SIPHandler::m_receivedResponse
protected
SIPURL SIPHandler::m_remoteAddress
protected

Referenced by GetRemoteAddress().

State SIPHandler::m_state
protected

Referenced by GetState().

std::queue<State> SIPHandler::m_stateQueue
protected
PSafeList<SIPTransaction> SIPHandler::m_transactions
protected
OpalTransport* SIPHandler::m_transport
protected
PString SIPHandler::m_username
protected

Referenced by GetUsername().


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