Added support to call controller to raise a Verify event when requested by descendants.
git-svn-id: http://voip.null.ro/svn/yate@1838 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
parent
97bea50166
commit
19b93078f4
|
@ -43,6 +43,7 @@ static TokenDict s_dictCicLock[] = {
|
|||
SignallingCallControl::SignallingCallControl(const NamedList& params,
|
||||
const char* msgPrefix)
|
||||
: Mutex(true),
|
||||
m_verifyEvent(false),
|
||||
m_circuits(0),
|
||||
m_cicLock(0),
|
||||
m_strategy(SignallingCircuitGroup::Increment),
|
||||
|
@ -187,6 +188,14 @@ SignallingEvent* SignallingCallControl::getEvent(const Time& when)
|
|||
return event;
|
||||
}
|
||||
}
|
||||
// Verify ?
|
||||
if (m_verifyEvent) {
|
||||
m_verifyEvent = false;
|
||||
SignallingMessage* msg = new SignallingMessage;
|
||||
SignallingEvent* event = new SignallingEvent(SignallingEvent::Verify,msg,this);
|
||||
buildVerifyEvent(msg->params());
|
||||
return event;
|
||||
}
|
||||
// Terminate if exiting and no more calls
|
||||
//TODO: Make sure we raise this event one time only
|
||||
if (exiting() && !m_calls.skipNull())
|
||||
|
|
|
@ -793,6 +793,13 @@ protected:
|
|||
SignallingCall* call = 0)
|
||||
{ return 0; }
|
||||
|
||||
/**
|
||||
* Build the parameters of a Verify event
|
||||
* @param params The list of parameters to fill
|
||||
*/
|
||||
virtual void buildVerifyEvent(NamedList& params)
|
||||
{}
|
||||
|
||||
/**
|
||||
* Clear call list
|
||||
*/
|
||||
|
@ -829,6 +836,12 @@ protected:
|
|||
*/
|
||||
String m_msgPrefix;
|
||||
|
||||
/**
|
||||
* Draw attention to call controller's user that something changed by
|
||||
* raising a Verify event
|
||||
*/
|
||||
bool m_verifyEvent;
|
||||
|
||||
private:
|
||||
SignallingCircuitGroup* m_circuits; // Circuit group
|
||||
int m_cicLock; // Flags to be locked when a circuit group is attached to this controller
|
||||
|
@ -5291,6 +5304,12 @@ protected:
|
|||
virtual SignallingEvent* processCircuitEvent(SignallingCircuitEvent& event,
|
||||
SignallingCall* call = 0);
|
||||
|
||||
/**
|
||||
* Build the parameters of a Verify event
|
||||
* @param params The list of parameters to fill
|
||||
*/
|
||||
virtual void buildVerifyEvent(NamedList& params);
|
||||
|
||||
/**
|
||||
* Length of the Circuit Identification Code in octets
|
||||
*/
|
||||
|
@ -5348,6 +5367,7 @@ private:
|
|||
int m_lockFlags; // Current request flags: blocking/unblocking,hw-failure/maintenance
|
||||
unsigned int m_lockCicCode; // Current (un)blocking cic code
|
||||
String m_lockMap; // The sent circuit map (contains 1 element for single circuit request)
|
||||
bool m_lockChanged; // Lock changed flag used when building a Verify event
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue