[OpenSER-Users-ES] Busco ejemplo de conf de openser+sems

Fernando Yubero fyubero at gmail.com
Wed May 7 16:02:09 CEST 2008


Estimado Iñaki:
Gracias por aportarme con este ejemplo de configuracion estoy por
hechar manos a la obra y probar estas configuracion, seguramente me
has salvado de mucho tiempo de prueba y error. Ahora la unica duda que
me queda y perdon si te incomodo o a los mienbros de la lista, por que
creo que tiene que ver mas con la configuracion del SEMS que con la
del Openser, es como distingo que locacion (mensaje wav) tocar con
respecto al mensaje que obtengo de desconexion, esto es 404 o 480, ya
que deseo brindar distintos mensajes, en el caso de 404 yo creo no voy
a tener el problema de que el carrier brinde tambien su locucion, por
que lo estoy usando en un esquema de interconexion con otro operador
en el cual no se colocan las locuciones en la red local, la
interconexion se realiza en TDM mediante un GW.

Saludos
Fernando

2008/5/5 Iñaki Baz Castillo <ibc at aliax.net>:
> El Lunes, 5 de Mayo de 2008, Fernando Yubero escribió:
>
>
> > Que tal participantes de la lista, creo nunca hasta ahora haber
>  > escrito un mensaje, aunque hace varios meses que leo y aprendo de los
>  > comentarios de ustedes.
>  > Les pido ayuda sobre la configuracion a utilizar en un openser y en un
>  > sems para proveer de mensajes de red a los clientes de openser, por
>  > ejemplo en el caso de un numero invalido, o sea un mensaje 404 que por
>  > medio de early media le pueda dar una locucion al cliente explicando
>  > que el numero que se a ingresa no corresponde a un abonado valido.
>  > Creo haber leido que tenian implementaciones funcionando, Iñaki??? por
>  > que tuvo que traducir la causa de desconexion para no obtener doble
>  > locucion, o sea en el tramo de sip de la llamada y desde la PSTN
>  > nuevamente.
>  > Desde ya muy agradecido.
>
>  Yo instalé SEMS usando su nuevo SIP stack en vez de usarlo amarrado a
>  un SER/OpenSer por unixsockets.
>
>  Por una parte prepara el SEMS para que disponga de la aplicación de ejemplo
>  "early-announce" y funcione con su nuevo SIP stack. Algunos parámetros del
>  sems.conf:
>
>   # Que reciba las indicaciones vía headers.
>   application=$(apphdr)
>   # Que cargue su SIP stack y la aplicación.
>   load_plugins=sipctrl;early_announce;announcement;wav;gsm;
>
>
>  Luego en OpenSer:
>
>  ------------------------------------------------------
>  route[ROUTE_TO_MEDIA_SERVER] {
>
>         t_on_reply("ON_REPLY_TO_MEDIA_SERVER");
>         t_on_failure("ON_FAILURE_TO_MEDIA_SERVER");
>
>         if ($rU == "user_not_available") {
>                 append_hf("P-App-Name: early_announce\r\n");
>                 # El usuario existe pero no puede recibir llamadas (!= 404).
>                 append_hf("P-App-Param: Final-Reply-Code=480;Final-Reply-Reason=Number Not Available Now\r\n");
>         }
>
>         else if ($rU == "user_busy") {
>                 append_hf("P-App-Name: early_announce\r\n");
>                 append_hf("P-App-Param: Final-Reply-Code=486;Final-Reply-Reason=Busy Here\r\n");
>         }
>
>         else if ($rU == "number_doesnt_exist") {
>                 append_hf("P-App-Name: early_announce\r\n");
>                 # Ojo, i respondes 404 el operador/carrier responderá el ISUP análogo y el operador llamante generará también su early-media.
>                 # Por ello, o respondemos algo != 404 o convencemos a nuestro carrier para que mapee el 404 a otro código ISUP.
>                 append_hf("P-App-Param: Final-Reply-Code=404;Final-Reply-Reason=Number Doesn't Exist\r\n");
>         }
>
>         else if ($rU == "destination_not_allowed") {
>                 append_hf("P-App-Name: early_announce\r\n");
>                 append_hf("P-App-Param: Final-Reply-Code=403;Final-Reply-Reason=Destination Not Allowed\r\n");
>         }
>
>
>         rewritehostport("MEDIA_SERVER_IP:MEDIA_SERVER_PORT");
>         t_realy();
>  ------------------------------------------------------
>
>  Y luego durante el script si por ejemplo nos llaman desde la PSTN a un número
>  que no existe:
>         $rU = "number_doesnt_exist";
>         route(ROUTE_TO_MEDIA_SERVER);
>
>  Si llaman a un número nuestro que sí existe pero cuyo usuario SIP no está registrado:
>         $rU = "user_not_available";
>         route(ROUTE_TO_MEDIA_SERVER);
>
>  Si un usuario nuestro llama a un número internacional no permitido:
>         $rU = "destination_not_allowed";
>         route(ROUTE_TO_MEDIA_SERVER);
>
>  Lo mismo si nos llaman y el usuario devuelve busy, etc etc etc...
>
>
>  --
>  Iñaki Baz Castillo
>
>  _______________________________________________
>  Users-es mailing list
>  Users-es at lists.openser.org
>  http://lists.openser.org/cgi-bin/mailman/listinfo/users-es
>




More information about the Users-es mailing list