Hi Stefan,
Excellent! That works!
What I did (for the sake of documentation):
1. Added the following to Click2Dial.cpp:
bool C2DCallerDialog::onOtherReply(const AmSipReply& reply)
{
if(reply.code == 183){
//duplicated (private) member AmB2BSession::reinviteCaller
string content_type = reply.content_type;
if (!content_type.length())
content_type = getHeader(reply.hdrs,"Content-Type", "c");
dlg.sendRequest("INVITE",content_type,reply.body, "",
SIP_FLAGS_VERBATIM);
return true;
}
return AmB2BSession::onOtherReply(reply);
}
2. And added the onOtherReply declaration to the header file as well,
off course.
Would it be a good idea to have this in AmB2BSession.cpp in stead over
overloading it in click2dial.cpp? That way we don't have to duplicate
the private member function reinviteCaller. I'm not sure if that would
break any other applications though.
If you want I can create a patch for the AmB2BSession.cpp/.h. Or do you
want to keep this functionality strictly for click2dial?
Thanks for your help!
Regards,
Tom
-------- Originele bericht --------
Onderwerp: Re: [Sems] click2dial with early media
Van: Stefan Sayer <[email protected]>
Aan: Tom van der Geer <[email protected]>, [email protected]
Datum: 7-4-2009 10:33
Hello,
you invited callee with sdp from caller, so
callee is probably already sending early media
to caller. What you need to do is reinvite
caller so that he accepts the RTP.
Look at AmB2BCallerSession::onOtherReply,change
the condition to include 183. You may
add recvonly - but callee will drop rtp anyway.
Hth
Stefan
----- Original message -----
Dear all,
I'm modifying the apps/click2dial from the rel_1.1.0_rc1 branch to fit
my needs, but I noticed that when the b-leg sends early media (183
Session Progress) the a-leg will not hear this early media.
As you probably know, in a lot of cases early media is a "ringing" tone,
so the a-leg will be silent until the b-leg picks up. Not a big deal.
We're even capable to generate our own ringing tone for the a-leg.
(which I'm already doing for 180 Ringing). But in some cases early media
is another tone (busy, no such number, etc.) or an announcement followed
by a disconnect, so the a-leg will be disconnected without being
notified. This is not very friendly behavior.
I'm looking for a way to connect the a-leg with the b-leg when early
media is being received from the b-leg. Is that possible at all?
Best regards,
Tom
_______________________________________________
Sems mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/sems
_______________________________________________
Sems mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/sems