Hi, I've multidomain OpenSer and I want the possibility of adding new domains without having to write in conf file and restart OpenSer, so I use "domain" module and functions. It works fine.
The problem is that WengoPhone includes a "Route" in the REGISTER so it is matches in "loose_route" and creates an infinite loop:
------------------------------------------- U 2007/09/12 11:00:47.770226 212.121.235.18:1029 -> 88.95.0.210:5060 REGISTER sip:sip.domain.net SIP/2.0 Via: SIP/2.0/UDP 192.168.1.58:5061;rport;branch=123456789 Route: sip:sip.domain.net;lr
U 2007/09/12 11:00:47.772884 88.95.0.210:5060 -> 88.95.0.210:5060 REGISTER sip:sip.domain.net SIP/2.0 Max-Forwards: 10 Via: SIP/2.0/UDP 88.95.0.210;branch=z9hG4bK734e.08122386.0 Via: SIP/2.0/UDP 192.168.1.58:5061;received=212.121.235.18;rport=1029;branch=123456789 Route: sip:sip.domain.net;lr
U 2007/09/12 11:00:47.775153 88.95.0.210:5060 -> 88.95.0.210:5060 REGISTER sip:sip.domain.net SIP/2.0 Max-Forwards: 9 Via: SIP/2.0/UDP 88.95.0.210;branch=z9hG4bK734e.18122386.0 Via: SIP/2.0/UDP 88.95.0.210;rport=5060;branch=z9hG4bK734e.08122386.0 Via: SIP/2.0/UDP 192.168.1.58:5061;received=212.121.235.18;rport=1029;branch=123456789 Route: sip:sip.domain.net;lr
etc etc... -------------------------------------------
A developer of WengoPhone said me that this "Route" header is not necessary but still valid, and that I can solve it by adding:
alias=sip.domain.org
But I don't want to write in conf file for each new added domain, and I don't want to restart OpenSer when it.
I'm thinking in change:
if (loose_route()) {
by
if (loose_route() && method!="REGISTER") {
but it doesn't seem very ellegatn solution.
How could I solve it? Thanks for any help.