Hi All,
Could someone tell me how to config openser 1.3.x route to support PRACK? I had installed openser 1.3.x and didn't change any route configuration. My scenario is:
A openser B | --> INVITE (with 100rel) -> | --> INVITE (with 100rel) --> | | | | | <--183 <-- | <-- 183 <-- | | | --> PRACK --> |
| <-- 404 Not here <--- |
For the default the openser reply the "404 Not here" to A. I found the '404' was replied here:
if (has_totag()) { # sequential request withing a dialog should # take the path determined by record-routing if (loose_route()) { if (is_method("BYE")) { setflag(1); # do accouting ... setflag(3); # ... even if the transaction fails } route(1); } else { /* !loose_route */ /* uncomment the following lines if you want to enable presence */ ##if (is_method("SUBSCRIBE") && $rd == "your.server.ip.address") { ## # in-dialog subscribe requests ## route(2); ## exit; ##} if ( is_method("ACK") ) { if ( t_check_trans() ) { # non loose-route, but stateful ACK; must be an ACK after a 487 or e.g. 404 from upstream server t_relay(); exit; } else { # ACK without matching transaction ... ignore and discard.\n"); exit; }
## These code will cause openser reply 483 response to PRACK if ( is_method("PRACK") ) { t_relay(); exit; }
} ## Here reply me the 404 sl_send_reply("404","Not here"); } exit; }
Than I added the green code to route the PRACK, But I received "483","Too Many Hops" from openser. And I found the Max-Forward is 70 not a wrong value. Does anyone can help me?
Best regards, Steven Wu