Standardizing the parameters for messages.
git-svn-id: http://yate.null.ro/svn/yate/trunk@254 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
parent
19d358ca5f
commit
393a92fdb5
|
@ -274,7 +274,7 @@ class YateH323Connection : public H323Connection, public DataEndpoint
|
|||
{
|
||||
PCLASSINFO(YateH323Connection, H323Connection)
|
||||
public:
|
||||
YateH323Connection(YateH323EndPoint &endpoint, unsigned callReference, void *userdata);
|
||||
YateH323Connection(YateH323EndPoint &endpoint, H323Transport *transport, unsigned callReference, void *userdata);
|
||||
~YateH323Connection();
|
||||
virtual H323Connection::AnswerCallResponse OnAnswerCall(const PString &caller,
|
||||
const H323SignalPDU &signalPDU, H323SignalPDU &connectPDU);
|
||||
|
@ -556,7 +556,7 @@ H323Connection *YateH323EndPoint::CreateConnection(unsigned callReference,
|
|||
return 0;
|
||||
}
|
||||
}
|
||||
return new YateH323Connection(*this,callReference,userData);
|
||||
return new YateH323Connection(*this,transport,callReference,userData);
|
||||
}
|
||||
|
||||
#ifdef USE_CAPABILITY_FACTORY
|
||||
|
@ -711,7 +711,7 @@ bool YateH323EndPoint::Init(void)
|
|||
}
|
||||
|
||||
YateH323Connection::YateH323Connection(YateH323EndPoint &endpoint,
|
||||
unsigned callReference, void *userdata)
|
||||
H323Transport *transport, unsigned callReference, void *userdata)
|
||||
: H323Connection(endpoint,callReference), DataEndpoint("h323"),
|
||||
m_nativeRtp(false), m_passtrough(false), m_rtpPort(0), m_remotePort(0)
|
||||
{
|
||||
|
@ -724,9 +724,12 @@ YateH323Connection::YateH323Connection(YateH323EndPoint &endpoint,
|
|||
hplugin.calls().append(this)->setDelete(false);
|
||||
s_calls.unlock();
|
||||
Message* m = new Message("chan.startup");
|
||||
m->addParam("driver","h323");
|
||||
m->addParam("id",m_id);
|
||||
m->addParam("direction",userdata ? "outgoing" : "incoming");
|
||||
m->addParam("status","new");
|
||||
if (transport)
|
||||
m->addParam("address",transport->GetRemoteAddress());
|
||||
Engine::enqueue(m);
|
||||
DataEndpoint *dd = static_cast<DataEndpoint *>(userdata);
|
||||
if (dd && connect(dd))
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
#include <sys/socket.h>
|
||||
#include <netinet/in.h>
|
||||
#include <netinet/ip.h>
|
||||
#include <arpa/inet.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
extern "C" {
|
||||
|
@ -129,7 +130,7 @@ private:
|
|||
class YateIAXConnection : public DataEndpoint
|
||||
{
|
||||
public:
|
||||
YateIAXConnection(iax_session *session = 0);
|
||||
YateIAXConnection(const char* addr, iax_session *session = 0);
|
||||
~YateIAXConnection();
|
||||
virtual void disconnected(bool final, const char *reason);
|
||||
void abort(int type = 0);
|
||||
|
@ -494,7 +495,9 @@ void YateIAXEndPoint::answer(iax_event *e)
|
|||
{
|
||||
if (!accepting(e))
|
||||
return;
|
||||
YateIAXConnection *conn = new YateIAXConnection(e->session);
|
||||
String addr(::inet_ntoa(e->session->peeraddr.sin_addr));
|
||||
addr << ":" << ntohs(e->session->peeraddr.sin_port);
|
||||
YateIAXConnection *conn = new YateIAXConnection(addr,e->session);
|
||||
if (!conn->startRouting(e))
|
||||
conn->reject("Server error");
|
||||
}
|
||||
|
@ -639,8 +642,9 @@ void IAXMsgThread::cleanup()
|
|||
delete m_msg;
|
||||
}
|
||||
|
||||
YateIAXConnection::YateIAXConnection(iax_session *session)
|
||||
: m_session(session), m_final(false), m_muted(false), m_ast_format(0), m_reason(0)
|
||||
YateIAXConnection::YateIAXConnection(const char* addr, iax_session *session)
|
||||
: address(addr), m_session(session), m_final(false), m_muted(false),
|
||||
m_ast_format(0), m_reason(0)
|
||||
{
|
||||
Debug(DebugAll,"YateIAXConnection::YateIAXConnection() [%p]",this);
|
||||
s_mutex.lock();
|
||||
|
@ -660,7 +664,9 @@ YateIAXConnection::YateIAXConnection(iax_session *session)
|
|||
s_mutex.unlock();
|
||||
Message* m = new Message("chan.startup");
|
||||
m->addParam("id",id);
|
||||
m->addParam("driver","iax");
|
||||
m->addParam("direction",m_status);
|
||||
m->addParam("address",address);
|
||||
m->addParam("status","new");
|
||||
Engine::enqueue(m);
|
||||
}
|
||||
|
@ -751,6 +757,7 @@ void YateIAXConnection::handleEvent(iax_event *event)
|
|||
Debug("IAX",DebugInfo,"TEXT inside a call: '%s' [%p]",(char *)event->data,this);
|
||||
{
|
||||
Message* m = new Message("chan.text");
|
||||
m->addParam("driver","iax");
|
||||
m->addParam("id",id);
|
||||
m->addParam("text",(char *)event->data);
|
||||
m->addParam("targetid",targetid.c_str());
|
||||
|
@ -767,6 +774,7 @@ void YateIAXConnection::handleEvent(iax_event *event)
|
|||
char buf[2];
|
||||
buf[0] = event->subclass;
|
||||
buf[1] = 0;
|
||||
m->addParam("driver","iax");
|
||||
m->addParam("id",id);
|
||||
m->addParam("text",buf);
|
||||
m->addParam("targetid",targetid.c_str());
|
||||
|
@ -785,6 +793,7 @@ void YateIAXConnection::handleEvent(iax_event *event)
|
|||
Debug("IAX",DebugInfo,"RING inside a call [%p]",this);
|
||||
{
|
||||
Message* m = new Message("call.ringing");
|
||||
m->addParam("driver","iax");
|
||||
m->addParam("id",id);
|
||||
m->addParam("targetid",targetid.c_str());
|
||||
Engine::enqueue(m);
|
||||
|
@ -794,6 +803,7 @@ void YateIAXConnection::handleEvent(iax_event *event)
|
|||
Debug("IAX",DebugInfo,"ANSWER inside a call [%p]",this);
|
||||
{
|
||||
Message* m = new Message("call.answered");
|
||||
m->addParam("driver","iax");
|
||||
m->addParam("id",id);
|
||||
m->addParam("targetid",targetid.c_str());
|
||||
Engine::enqueue(m);
|
||||
|
@ -841,6 +851,7 @@ void YateIAXConnection::hangup(const char *reason)
|
|||
s_mutex.unlock();
|
||||
}
|
||||
Message* m = new Message("chan.hangup");
|
||||
m->addParam("driver","iax");
|
||||
m->addParam("id",id);
|
||||
m->addParam("status","hangup");
|
||||
m->addParam("reason",reason);
|
||||
|
@ -1061,6 +1072,7 @@ bool IAXConnHandler::received(Message &msg, int id)
|
|||
Debug(DebugInfo,"Transferring connection '%s' [%p] to '%s'",
|
||||
callid.c_str(),conn,callto.c_str());
|
||||
Message m("call.execute");
|
||||
m.addParam("driver","iax");
|
||||
m.addParam("callto",callto.c_str());
|
||||
m.addParam("id",conn->id);
|
||||
m.userData(conn);
|
||||
|
@ -1101,7 +1113,7 @@ bool IAXHandler::received(Message &msg)
|
|||
return false;
|
||||
}
|
||||
String ip = dest.matchString(1);
|
||||
YateIAXConnection *conn = new YateIAXConnection();
|
||||
YateIAXConnection *conn = new YateIAXConnection(ip);
|
||||
/* i do this to setup the peercallid by getting id
|
||||
* from the other party */
|
||||
conn->targetid = msg.getValue("id");
|
||||
|
|
|
@ -444,6 +444,7 @@ bool OssHandler::received(Message &msg)
|
|||
if (direct)
|
||||
{
|
||||
Message m("call.execute");
|
||||
m.addParam("driver","oss");
|
||||
m.addParam("id",dest);
|
||||
m.addParam("caller",dest);
|
||||
m.addParam("callto",direct);
|
||||
|
@ -465,6 +466,7 @@ bool OssHandler::received(Message &msg)
|
|||
return false;
|
||||
}
|
||||
Message m("call.route");
|
||||
m.addParam("driver","oss");
|
||||
m.addParam("id",dest);
|
||||
m.addParam("caller",dest);
|
||||
m.addParam("called",targ);
|
||||
|
|
|
@ -294,6 +294,7 @@ bool ToneHandler::received(Message &msg)
|
|||
return false;
|
||||
}
|
||||
Message m("call.route");
|
||||
m.addParam("driver","tone");
|
||||
m.addParam("id",dest);
|
||||
m.addParam("caller",dest);
|
||||
m.addParam("called",targ);
|
||||
|
|
|
@ -420,6 +420,7 @@ bool WaveHandler::received(Message &msg)
|
|||
return false;
|
||||
}
|
||||
Message m("call.route");
|
||||
m.addParam("driver","wave");
|
||||
m.addParam("id",dest);
|
||||
m.addParam("caller",dest);
|
||||
m.addParam("called",targ);
|
||||
|
|
|
@ -734,8 +734,11 @@ YateSIPConnection::YateSIPConnection(Message& msg, SIPTransaction* tr)
|
|||
m_rtpAddr.c_str(),m_rtpPort.c_str(),m_formats.c_str(),m_rtpFormat.c_str());
|
||||
Message *ms = new Message("chan.startup");
|
||||
ms->addParam("driver","sip");
|
||||
ms->addParam("direction","incoming");
|
||||
ms->addParam("id",m_id);
|
||||
String addr(m_host);
|
||||
addr << ":" << m_port;
|
||||
ms->addParam("address",addr);
|
||||
ms->addParam("direction","incoming");
|
||||
Engine::enqueue(ms);
|
||||
}
|
||||
|
||||
|
@ -768,8 +771,11 @@ YateSIPConnection::YateSIPConnection(Message& msg, const String& uri)
|
|||
s_mutex.unlock();
|
||||
Message *ms = new Message("chan.startup");
|
||||
ms->addParam("driver","sip");
|
||||
ms->addParam("direction","outgoing");
|
||||
ms->addParam("id",m_id);
|
||||
String addr(m_host);
|
||||
addr << ":" << m_port;
|
||||
ms->addParam("address",addr);
|
||||
ms->addParam("direction","outgoing");
|
||||
Engine::enqueue(ms);
|
||||
}
|
||||
|
||||
|
@ -883,6 +889,7 @@ SDPBody* YateSIPConnection::createPasstroughSDP(Message &msg)
|
|||
SDPBody* YateSIPConnection::createRtpSDP(SIPMessage* msg, const char* formats)
|
||||
{
|
||||
Message m("chan.rtp");
|
||||
m.addParam("driver","sip");
|
||||
m.addParam("id",id());
|
||||
m.addParam("direction","bidir");
|
||||
m.addParam("remoteip",msg->getParty()->getPartyAddr());
|
||||
|
@ -903,6 +910,7 @@ SDPBody* YateSIPConnection::createRtpSDP(bool start)
|
|||
return createSDP(m_rtpLocal,0,m_formats);
|
||||
}
|
||||
Message m("chan.rtp");
|
||||
m.addParam("driver","sip");
|
||||
m.addParam("id",id());
|
||||
m.addParam("direction","bidir");
|
||||
m.addParam("remoteip",m_rtpAddr);
|
||||
|
@ -928,6 +936,7 @@ bool YateSIPConnection::startRtp()
|
|||
return false;
|
||||
Debug(DebugAll,"YateSIPConnection::startRtp() [%p]",this);
|
||||
Message m("chan.rtp");
|
||||
m.addParam("driver","sip");
|
||||
m.addParam("id",id());
|
||||
m.addParam("rtpid",m_rtpid);
|
||||
m.addParam("direction","bidir");
|
||||
|
|
|
@ -1269,6 +1269,7 @@ bool ZapChan::call(Message &msg, const char *called)
|
|||
m->addParam("id",id());
|
||||
m->addParam("span",String(m_span->span()));
|
||||
m->addParam("channel",String(m_chan));
|
||||
m->addParam("address",String(m_span->span()) + "/" + String(m_chan));
|
||||
m->addParam("direction","outgoing");
|
||||
Engine::enqueue(m);
|
||||
return true;
|
||||
|
@ -1286,6 +1287,7 @@ void ZapChan::ring(q931_call *call)
|
|||
m->addParam("id",id());
|
||||
m->addParam("span",String(m_span->span()));
|
||||
m->addParam("channel",String(m_chan));
|
||||
m->addParam("address",String(m_span->span()) + "/" + String(m_chan));
|
||||
m->addParam("direction","incoming");
|
||||
Engine::enqueue(m);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue