OPAL  Version 3.18.8
SIPHandler Class Reference

#include <handlers.h>

Inheritance diagram for SIPHandler:
Collaboration diagram for SIPHandler:

Public Types

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

Public Member Functions

 ~SIPHandler ()
 
virtual PString GetAuthID () const
 
virtual PString GetPassword () const
 
void SetState (SIPHandler::State s)
 
SIPHandler::State GetState () const
 
const PString & GetCallID () const
 
virtual const SIPURLGetAddressOfRecord () const
 
virtual PBoolean OnReceivedNOTIFY (SIP_PDU &response)
 
virtual void SetExpire (int e)
 
virtual int GetExpire () const
 
virtual void SetBody (const PString &)
 
virtual bool IsDuplicateCSeq (unsigned)
 
virtual SIPTransactionCreateTransaction (OpalTransport &)
 
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 OnReceivedForbidden (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 (SIP_PDU::StatusCodes)
 
virtual void SendStatus (SIP_PDU::StatusCodes code, State state)
 
bool ActivateState (SIPHandler::State state, bool resetInterface=false)
 
virtual bool SendNotify (const PObject *)
 
SIP_PDU::StatusCodes GetLastResponseStatus () const
 
const OpalProductInfoGetProductInfo () const
 
const PString & GetRealm () const
 
virtual bool ShutDown ()
 
- Public Member Functions inherited from SIPTransactionOwner
 SIPTransactionOwner (PSafeObject &object, SIPEndPoint &endpoint)
 
virtual ~SIPTransactionOwner ()
 
virtual unsigned GetAllowedMethods () const
 
virtual void OnStartTransaction (SIPTransaction &)
 
void FinaliseForking (SIPTransaction &transaction, SIP_PDU &response)
 
bool CleanPendingTransactions ()
 
void AbortPendingTransactions (bool all=true)
 
virtual SIP_PDU::StatusCodes StartTransaction (const OpalTransport::WriteConnectCallback &function)
 
SIP_PDU::StatusCodes SwitchTransportProto (const char *proto, SIP_PDU *pdu)
 
SIP_PDU::StatusCodes HandleAuthentication (const SIP_PDU &response)
 
SIPEndPointGetEndPoint () const
 
OpalTransportAddress GetRemoteTransportAddress () const
 
const SIPURLGetRequestURI () const
 
const SIPURLGetRemoteURI () const
 
const SIPURLGetProxy () const
 
const PString & GetInterface () const
 
PINDEX GetDNSEntry () const
 
SIPAuthenticationGetAuthenticator () const
 
SIPDialogContextGetDialog ()
 
const SIPDialogContextGetDialog () const
 

Protected Types

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

Protected Member Functions

 SIPHandler (SIP_PDU::Methods method, SIPEndPoint &ep, const SIPParameters &params, const PString &callID=SIPTransaction::GenerateCallID())
 
virtual PBoolean SendRequest (SIPHandler::State state)
 
void RetryLater (unsigned after)
 
void OnExpireTimeout ()
 
 PDECLARE_WriteConnectCallback (SIPHandler, WriteTransaction)
 
- Protected Member Functions inherited from SIPTransactionOwner
 PDECLARE_MUTEX (m_forkMutex)
 

Protected Attributes

const PString m_callID
 
PString m_username
 
PString m_password
 
PString m_realm
 
const SIP_PDU::Methods m_method
 
const SIPURL m_addressOfRecord
 
SIPMIMEInfo m_mime
 
unsigned m_lastCseq
 
SIP_PDU::StatusCodes m_lastResponseStatus
 
int m_currentExpireTime
 
int m_originalExpireTime
 
int m_offlineExpireTime
 
State m_state
 
std::queue< Statem_stateQueue
 
bool m_receivedResponse
 
SIPPoolTimer< SIPHandlerm_expireTimer
 
OpalProductInfo m_productInfo
 
bool m_retryForbidden
 
std::pair< IndexMap::iterator,
bool > 
m_byAorAndPackage
 
std::pair< IndexMap::iterator,
bool > 
m_byAuthIdAndRealm
 
std::pair< IndexMap::iterator,
bool > 
m_byAorUserAndRealm
 
- Protected Attributes inherited from SIPTransactionOwner
PSafeObject & m_object
 
SIPEndPointm_sipEndpoint
 
SIPDialogContext m_dialog
 
PINDEX m_dnsEntry
 
SIPAuthenticationm_authentication
 
unsigned m_authenticateErrors
 
PSafeArray< SIPTransactionm_transactions
 

Friends

class SIPHandlers
 

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,
const PString &  callID = SIPTransaction::GenerateCallID() 
)
protected
SIPHandler::~SIPHandler ( )

Member Function Documentation

bool SIPHandler::ActivateState ( SIPHandler::State  state,
bool  resetInterface = false 
)
virtual SIPTransaction* SIPHandler::CreateTransaction ( OpalTransport )
inlinevirtual
virtual const SIPURL& SIPHandler::GetAddressOfRecord ( ) const
inlinevirtual

References m_addressOfRecord.

virtual PString SIPHandler::GetAuthID ( ) const
inlinevirtual

Implements SIPTransactionOwner.

References m_username.

const PString& SIPHandler::GetCallID ( ) const
inline

References m_callID.

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

References m_currentExpireTime.

SIP_PDU::StatusCodes SIPHandler::GetLastResponseStatus ( ) const
inline

References m_lastResponseStatus.

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

References m_method.

virtual PString SIPHandler::GetPassword ( ) const
inlinevirtual

Reimplemented from SIPTransactionOwner.

References m_password.

const OpalProductInfo& SIPHandler::GetProductInfo ( ) const
inline

References m_productInfo.

const PString& SIPHandler::GetRealm ( ) const
inline

References m_realm.

SIPHandler::State SIPHandler::GetState ( ) const
inline

References m_state.

virtual bool SIPHandler::IsDuplicateCSeq ( unsigned  )
inlinevirtual
void SIPHandler::OnExpireTimeout ( )
protected
virtual void SIPHandler::OnFailed ( SIP_PDU::StatusCodes  )
virtual

Reimplemented in SIPMessageHandler, and SIPSubscribeHandler.

virtual void SIPHandler::OnReceivedAuthenticationRequired ( SIPTransaction transaction,
SIP_PDU response 
)
virtual
virtual void SIPHandler::OnReceivedForbidden ( 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

Reimplemented from SIPTransactionOwner.

virtual void SIPHandler::OnReceivedTemporarilyUnavailable ( SIPTransaction transaction,
SIP_PDU response 
)
virtual
virtual void SIPHandler::OnTransactionFailed ( SIPTransaction transaction)
virtual

Reimplemented from SIPTransactionOwner.

SIPHandler::PDECLARE_WriteConnectCallback ( SIPHandler  ,
WriteTransaction   
)
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

Reimplemented in SIPNotifyHandler, and SIPRegisterHandler.

virtual void SIPHandler::SendStatus ( SIP_PDU::StatusCodes  code,
State  state 
)
virtual

Reimplemented in SIPSubscribeHandler, and SIPRegisterHandler.

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

Friends And Related Function Documentation

friend class SIPHandlers
friend

Field Documentation

const SIPURL SIPHandler::m_addressOfRecord
protected

Referenced by GetAddressOfRecord().

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
const PString SIPHandler::m_callID
protected

Referenced by GetCallID().

int SIPHandler::m_currentExpireTime
protected

Referenced by GetExpire().

SIPPoolTimer<SIPHandler> SIPHandler::m_expireTimer
protected
unsigned SIPHandler::m_lastCseq
protected
SIP_PDU::StatusCodes SIPHandler::m_lastResponseStatus
protected

Referenced by GetLastResponseStatus().

const SIP_PDU::Methods SIPHandler::m_method
protected

Referenced by GetMethod().

SIPMIMEInfo SIPHandler::m_mime
protected
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().

PString SIPHandler::m_realm
protected

Referenced by GetRealm().

bool SIPHandler::m_receivedResponse
protected
bool SIPHandler::m_retryForbidden
protected
State SIPHandler::m_state
protected

Referenced by GetState().

std::queue<State> SIPHandler::m_stateQueue
protected
PString SIPHandler::m_username
protected

Referenced by GetAuthID().


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