[reSIProcate] 180 Ringing and 200 OK messages with incorrect port?

Dien Ba Quang dienbaquang at gmail.com
Mon Mar 26 14:52:26 CDT 2007


 Hi,
I have problem with 180 Ringing and 200 OK messages. When I received INVITE
message, the callback function : onNewSession(ServerInviteSessionHandle sis,
InviteSession::OfferAnswerType oat, const SipMessage& msg) is called.
But two message 180 Ringing and 200 OK didn't send to Sip server (SIPX 3.6)
with the correct port 5060, they used a random port (37570, ...). Do you
know how to make them send to correct port 5060?

Below is my source code of the callback function:

void
TestUac::onNewSession(ServerInviteSessionHandle sis,
InviteSession::OfferAnswerType oat, const SipMessage& msg)
{
    cout << name << ": ServerInviteSession-onNewSession - " << msg.brief()
<< endl;
    cout << name << ": Sending 180 response." << endl;
    mSis = sis;
//sis->provisional(100);
    sis->provisional(180);
    SdpContents* msdp = dynamic_cast<SdpContents*>(msg.getContents());
sis->provideAnswer(*msdp);
sis->accept();
_status = 5; // server receive invite and sended 200 OK with SDP
Data IpAddress = msdp->session().connection().getAddress();
int port = msdp->session().media().begin()->port();
OnInviteResult(&_status, (char*)IpAddress.c_str(), &port);
}


Thanks in advanced.

DBQ.

On 3/26/07, Dien Ba Quang <dienbaquang at gmail.com> wrote:
>
> Hi,
> I have problem with 180 Ringing and 200 OK messages. When I received
> INVITE message, the callback function : onNewSession(ServerInviteSessionHandle
> sis, InviteSession::OfferAnswerType oat, const SipMessage& msg) is called.
> But two message 180 Ringing and 200 OK didn't send to Sip server (SIPX 3.6)
> with the correct port 5060, they used a random port (37570, ...). Do you
> know how to make them send to correct port 5060?
>
> Below is my source code of the callback function:
>
> void
> TestUac::onNewSession(ServerInviteSessionHandle sis,
> InviteSession::OfferAnswerType oat, const SipMessage& msg)
> {
>     cout << name << ": ServerInviteSession-onNewSession - " << msg.brief()
> << endl;
>     cout << name << ": Sending 180 response." << endl;
>     mSis = sis;
> //sis->provisional(100);
>     sis->provisional(180);
>     SdpContents* msdp = dynamic_cast<SdpContents*>(msg.getContents());
> sis->provideAnswer(*msdp);
> sis->accept();
> _status = 5; // server receive invite and sended 200 OK with SDP
> Data IpAddress = msdp->session().connection().getAddress();
> int port = msdp->session().media().begin()->port();
> OnInviteResult(&_status, (char*)IpAddress.c_str(), &port);
> }
>
>
> Any help would be appreciated.
>
> DBQ.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20070326/1b8641a1/attachment.htm>


More information about the resiprocate-devel mailing list