[OpenSER-Users-ES] llamada asterisk a openser, ruri modificado?
Iñaki Baz Castillo
ibc at aliax.net
Fri Feb 1 21:24:59 CET 2008
2008/2/1, David Villasmil <david.villasmil.work at gmail.com>:
>
> route{
> if (method=="INVITE") {
> # CUSTOMER-CUSTOMER CALL
>
> if($si=="ip1"||$si=="ip2"){
> xlog("L_ERR", "\n************** CUSTOMER-CUSTOMER CALL
> (ASTERISK->OPENSER) ************\n");
> if (uri=~"^sip:8888"){
> strip(4);
> }
> if (!lookup("location")) {
> sl_send_reply("404", "Not Found");
> exit;
> };
> }
> }
>
> if (!lookup("location")) {
> sl_send_reply("404", "Not Found");
> exit;
> };
Si el INVITE viene de esas IP's estás aplicando **2 veces** el
lookup(location). La segunda obviamente fallará, pues ya habías
modificado el URI en la primera.
> ************** CUSTOMER-CUSTOMER CALL (ASTERISK->OPENSER) ************
> 11(20554) rewrite_uri: Rewriting Request-URI with 'sip:s at 192.168.1.253'
> porqué el username termina siendo "s"????? claro, así nunca lo encontrará!
Asterisk por defecto se registra como "s at IP", puedes comprobarlo
monitorizando el REGISTER que envía Asterisk y mirando la cabecera
"Contact" (que es la localización que registra). No hay ningún
problema por ello, ninguno.
No obstante ,puedes forzar a que registre otro username así:
register => usuario:passwd at dominio/nuevo_username
y registrará ese username en vez de "s".
Pero este NO es tu poblema, el fallo es que aplicas dos veces lookup(location).
--
Iñaki Baz Castillo
<ibc at aliax.net>
More information about the Users-es
mailing list