[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