I checked the code but could not find a place, where the transport type for OPTIONS messages is different than UDP. This is why I did like this.
On 13 June 2011 10:09, Tony Graziano <[email protected]> wrote: > what if the phone is already using tcp for signaling, media and keepalive? > On Jun 13, 2011 3:04 AM, "Kemal Eroğlu" <[email protected]> wrote: > > Hello, > > > > Previous week, we had a problem while testing the NAT. SipXecs sends > OPTIONS > > messages once every 20 seconds to provide NAT keepalive. But these > OPTIONS > > messages have empty Via fields. While some softphones like Bria, Eyebeam > can > > handle such a condition by sending back "Missing Mandatory field" > messages; > > some phones cannot. For instance, our phones was crushing and > re-registering > > every time they get an OPTIONS message. This was causing registration > drops, > > call drops, etc. > > > > So I investigated the reason and found that: > > In NatTraversalAgent::adjustViaForNatTraversal there is a conditional > > statement that adjusts the via field according to the keepalive > > message's sendProtocol. But sendProtocol is never being set. So I added a > > statement in NatMaintainer.cpp, just before it calls sendUdpKeepAlive(), > to > > set UDP as the protocol of OPTIONS message. I tested and it is working > now. > > I prepared a patch for that and it is attached. > > > > I appreciate, if you can check and confirm this. > > > > Best Regards, > > > > Kemal > > _______________________________________________ > sipx-dev mailing list > [email protected] > List Archive: http://list.sipfoundry.org/archive/sipx-dev/ >
_______________________________________________ sipx-dev mailing list [email protected] List Archive: http://list.sipfoundry.org/archive/sipx-dev/
