Hi all,
I'm playing around serial forking with avpops module. My goal is to have one PSTN number mapped to N voip number; so, when the first voip number is busy, OPENSER catch 486 reply and then try with the second AOR and so on. But here raise the problem: the OPENSER forward the reply upstream with a code 407 Proxy Auth Required and the PSTN GW send his ACK and all stop here.
Below ther's a snippet of mi openser.cfg:
modparam("avpops", "avp_aliases", "serial_fork=i:665")
[..skipping..]
#if RURI is to a voip user:
avp_db_load("$ruri", "$serial_fork"); avp_print(); avp_pushto("$ruri","$serial_fork"); lookup("aliases"); if lookup("location") {
t_on_reply("1"); t_on_failure("2"); t_relay();
break; };
onreply_route[1] { if (t_check_status("486")) { t_on_failure("2"); break; }; }
failure_route[2] { if (t_check_status("486")) { # delete the first element of the list (if any) and pass to second from list avp_delete("$serial_fork"); if (avp_pushto("$ruri", "$serial_fork")) { append_branch(); avp_delete("$serial_fork"); t_on_failure("2"); t_relay(); } }
}
My DB entries are:
+------+------------+------------------------+-----------+------+---------------------------------------+---------------------+ | uuid | username | domain | attribute | type | value | modified | +------+------------+------------------------+-----------+------+---------------------------------------+---------------------+ | | 0662293703 | sipexp.mydomain.org | 665 | 2 | sip:0662293701@sipexp.mydomain.org | 2005-08-02 15:03:27 | | | 0662293703 | sipexp.mydomain.org | 665 | 2 | sip:0662293702@sipexp.mydomain.org | 2005-08-02 15:03:33 | +------+------------+------------------------+-----------+------+---------------------------------------+---------------------+
Do you have a suggestion to resolve this problem? Why OpenSer send upstream 407 after received 486 Busy Here and not try to send a new INVITE to voip user with new R-URI?
Many thanx,
Verbal