Hi Bogdan,
the gw is trusted and I use from_gw (LCR module) and so the INVITE falls into route[2] (PSTN to SIP scenario). In my test, the 407 seems to locally generated from OpenSer. Maybe I have to add in the failure_route[2] a statement that newly point to route[2] and not t_relay()?
To summarize my scenario is this:
PSTN user A calls VOIP user B. OpenSer recognize the call coming from trusted gws. OpenSer rewrite root number B with the first avp (let's say C) The INVITE is relayed to URI C (registerd user). C is ringing, 200 OK and ACK from gw.
PSTN user AA calls VOIP user B. OpenSer recognize the call coming from trusted gws. OpenSer rewrite root number B with the first avp (let's say C) The INVITE is relayed to URI C (registerd user). But C is busy (reply with 486 Busy Here), ACK from OpenSer to C OpenSer relays upstream 407 Proxy Authentication Required that is acked from gw and the process stop here.
I have tryed to modify the aliases table to have one alias mapped to N AOR but without success. Now I'm playing with avpops module, but I'm stopped at this point.
Do you have any suggestion?
Many thanx,
Francesco ----- Original Message ----- From: "Bogdan-Andrei Iancu" bogdan@voice-system.ro To: "Francesco Bottà" francesco.botta@eutelia.it Cc: users@openser.org Sent: Wednesday, August 03, 2005 11:45 AM Subject: Re: [Users] ovpops for serial forking and its cures
Hi Francesco,
so you have a PSTN to SIP call - does your OpenSER require authentication for GW? or the "407" is not generated by OpenSER?
in the auth block, skip from auth the request coming from the GW IP.
if (src_ip!=gw_IP) { #perform auth ..... }
Francesco Bottà wrote:
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
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users