Stop chan.rtp dispatch for audio or video media with empty formats list.
git-svn-id: http://voip.null.ro/svn/yate@5608 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
parent
51406e17e2
commit
414a5d9414
|
@ -940,6 +940,7 @@ protected:
|
||||||
virtual Message* buildChanRtp(RefObject* context);
|
virtual Message* buildChanRtp(RefObject* context);
|
||||||
MimeSdpBody* createProvisionalSDP(Message& msg);
|
MimeSdpBody* createProvisionalSDP(Message& msg);
|
||||||
virtual void mediaChanged(const SDPMedia& media);
|
virtual void mediaChanged(const SDPMedia& media);
|
||||||
|
virtual void dispatchingRtp(Message*& msg, SDPMedia* media);
|
||||||
virtual void endDisconnect(const Message& msg, bool handled);
|
virtual void endDisconnect(const Message& msg, bool handled);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@ -5315,6 +5316,7 @@ YateSIPConnection::YateSIPConnection(SIPEvent* ev, SIPTransaction* tr)
|
||||||
m_honorDtmfDetect(s_honorDtmfDetect),
|
m_honorDtmfDetect(s_honorDtmfDetect),
|
||||||
m_referring(false), m_reInviting(ReinviteNone), m_lastRseq(0)
|
m_referring(false), m_reInviting(ReinviteNone), m_lastRseq(0)
|
||||||
{
|
{
|
||||||
|
setSdpDebug(this,this);
|
||||||
Debug(this,DebugAll,"YateSIPConnection::YateSIPConnection(%p,%p) [%p]",ev,tr,this);
|
Debug(this,DebugAll,"YateSIPConnection::YateSIPConnection(%p,%p) [%p]",ev,tr,this);
|
||||||
setReason();
|
setReason();
|
||||||
m_tr->ref();
|
m_tr->ref();
|
||||||
|
@ -5488,6 +5490,7 @@ YateSIPConnection::YateSIPConnection(Message& msg, const String& uri, const char
|
||||||
m_honorDtmfDetect(s_honorDtmfDetect),
|
m_honorDtmfDetect(s_honorDtmfDetect),
|
||||||
m_referring(false), m_reInviting(ReinviteNone), m_lastRseq(0)
|
m_referring(false), m_reInviting(ReinviteNone), m_lastRseq(0)
|
||||||
{
|
{
|
||||||
|
setSdpDebug(this,this);
|
||||||
Debug(this,DebugAll,"YateSIPConnection::YateSIPConnection(%p,'%s') [%p]",
|
Debug(this,DebugAll,"YateSIPConnection::YateSIPConnection(%p,'%s') [%p]",
|
||||||
&msg,uri.c_str(),this);
|
&msg,uri.c_str(),this);
|
||||||
m_targetid = target;
|
m_targetid = target;
|
||||||
|
@ -5984,6 +5987,17 @@ void YateSIPConnection::mediaChanged(const SDPMedia& media)
|
||||||
clearEndpoint(media);
|
clearEndpoint(media);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void YateSIPConnection::dispatchingRtp(Message*& msg, SDPMedia* media)
|
||||||
|
{
|
||||||
|
if (!(msg && media))
|
||||||
|
return;
|
||||||
|
if (media->formats() || !(media->isAudio() || media->isVideo()))
|
||||||
|
return;
|
||||||
|
Debug(this,DebugInfo,"Not sending %s for empty media %s [%p]",
|
||||||
|
msg->c_str(),media->c_str(),this);
|
||||||
|
TelEngine::destruct(msg);
|
||||||
|
}
|
||||||
|
|
||||||
// Process SIP events belonging to this connection
|
// Process SIP events belonging to this connection
|
||||||
bool YateSIPConnection::process(SIPEvent* ev)
|
bool YateSIPConnection::process(SIPEvent* ev)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue