2009/3/8 Daniel-Constantin Mierla miconda@gmail.com:
Yes. It must be checked that the NOTIFY frmo the presence server have a RURI containing "transport=tcp".
NOTIFY will have in r-uri the contact from SUBSCRIBE not the contact from 200ok.
Yes, that waht I mean since the SUBSCRIBE in the examples does contain "transport=tcp2 :)
But the bug I reported in OpenSIPS was the opposite:
Phone ---(UDP)--- Proxy ---(TCP)--- PresenceServer
I route the SUBSCRIBE to the PresenceServer using TCP by seting: $du="sip:PresenceServer;transport=tcp"
but the 202 replied by the presence server contains a "Contact" with no "transport=tcp". This means that refresh-SUBSCRIBE's from the phone would fail since they would be routed to the PresenceServer using UDP (in case of firewall they'll fail).
The 200ok for SUBSCRIBE has the transport=tcp in this case and the proxy will add 2 R-R headers to allow udp-tcp translations.
Well, when I reported whit bug in OpenSIPS it did exist. Have been changes in Kamailio presence module fixing this behaviour?
Regards.