#include <regprocessor.h>
Inheritance diagram for IAX2RegProcessor:
enum IAX2RegProcessor::RegistrationState [protected] |
bit mask of the different flags to indicate call status
IAX2RegProcessor::IAX2RegProcessor | ( | IAX2EndPoint & | ep, | |
const PString & | host, | |||
const PString & | username, | |||
const PString & | password, | |||
PINDEX | inRegistrationRefreshTime | |||
) |
Construct this class
virtual IAX2RegProcessor::~IAX2RegProcessor | ( | ) | [virtual] |
Destructor
void IAX2RegProcessor::Unregister | ( | ) |
Unregister from the remote iax2 server. This method is synchronous. and could take until the Timeout peroid to return. This will also shutdown the main thread.
PString IAX2RegProcessor::GetHost | ( | ) | const [inline] |
PString IAX2RegProcessor::GetUserName | ( | ) | const [inline] |
PString IAX2RegProcessor::GetPassword | ( | ) | const [inline] |
void IAX2RegProcessor::OnDoRegistration | ( | PTimer & | , | |
INT | ||||
) | [protected] |
A pwlib callback function to start the registration process again
void IAX2RegProcessor::ProcessIaxCmdRegAuth | ( | IAX2FullFrameProtocol * | src | ) | [protected] |
Process an authentication request when registering
void IAX2RegProcessor::ProcessIaxCmdRegAck | ( | IAX2FullFrameProtocol * | src | ) | [protected] |
Process an acknowledgement of a sucessful registration
void IAX2RegProcessor::ProcessIaxCmdRegRej | ( | IAX2FullFrameProtocol * | src | ) | [protected] |
Process a registration rejection
void IAX2RegProcessor::ProcessIaxCmdUnRegAuth | ( | IAX2FullFrameProtocol * | src | ) | [protected] |
Process an authentication request when registering doing a registration release
void IAX2RegProcessor::ProcessIaxCmdUnRegAck | ( | IAX2FullFrameProtocol * | src | ) | [protected] |
Process an acknowledgement of a registration release
void IAX2RegProcessor::ProcessIaxCmdUnRegRej | ( | IAX2FullFrameProtocol * | src | ) | [protected] |
Process a registration release rejection
void IAX2RegProcessor::OnNoResponseTimeout | ( | ) | [protected, virtual] |
This callback is called when a packet fails to get an Acknowledgment
Implements IAX2Processor.
void IAX2RegProcessor::PrintOn | ( | ostream & | strm | ) | const [protected, virtual] |
A method to cause some of the values in this class to be formatted into a printable stream
Implements IAX2Processor.
virtual void IAX2RegProcessor::ProcessLists | ( | ) | [protected, virtual] |
Go through the three lists for incoming data (ethernet/sound/UI commands.
Implements IAX2Processor.
virtual void IAX2RegProcessor::ProcessFullFrame | ( | IAX2FullFrame & | fullFrame | ) | [protected, virtual] |
Processes a full frame, and sends it off to the relevant processor. This RegistrationProcessor instance worries about those types common to registration, so is concerned about cmdRegAuth, cmdRegAck etc.
Implements IAX2Processor.
virtual void IAX2RegProcessor::ProcessNetworkFrame | ( | IAX2MiniFrame * | src | ) | [protected, virtual] |
Handles a mini frame - so copes with media.
Implements IAX2Processor.
virtual BOOL IAX2RegProcessor::ProcessNetworkFrame | ( | IAX2FullFrameProtocol * | src | ) | [protected, virtual] |
Processes a protocol full frame, well, those components relating to registration.
Reimplemented from IAX2Processor.
void IAX2RegProcessor::ResetCall | ( | ) | [protected] |
Reset the call, ie: get a new call source number, put the sequence numbers to 0 and reset the timer. This solves having to create a new thread for every seperate call.
PString IAX2RegProcessor::host [protected] |
PString IAX2RegProcessor::userName [protected] |
PString IAX2RegProcessor::password [protected] |
INT IAX2RegProcessor::registrationRefreshTime [protected] |
BOOL IAX2RegProcessor::registrationState [protected] |
The current state of the registration
PMutex IAX2RegProcessor::stateMutex [protected] |
A mutex to protect the registrationState variable and the flow of the RegProcessor.
PTimer IAX2RegProcessor::registrationTimer [protected] |
The timer which is used to send a registration message
PRandom IAX2RegProcessor::regRandom [protected] |
A class that generates random values used for varying the registration timer