Re: [eside-ghost] Asterisk, detección de llamadas no exitosas con el SPA3102 y transcoding
Saúl Ibarra
saghul en gmail.com
Mie Sep 26 20:45:29 CEST 2007
Después de esa llamada a móvil 'no exitosa', asterisk cualga normal?
El tema es que el SPA3102 no esta pensado para PSTN gateway puro y
duro, y siempre hace answer... Creo que a Halls le pasó parecido..
El 25/09/07, Unai Goikoetxeta <unai en goikoetxeta.com> escribió:
> Volviendo al tema de detectar si la RTB está ocupada.... He configurado el
> macro para que detecte el estado de la llamada, pero no ocurre nada. Empiezo
> a pensar que es imposible detectar si la llamada ha tenido éxito o no usando
> la salida PSTN del SPA3102.
>
> He probado, por ejemplo, la siguiente configuración en extensions.conf:
>
> exten => _XX.,1,NoOp(${CALLERID(num)} llamando a ${EXTEN} via RTB)
> exten => _XX.,n,Dial(SIP/${EXTEN}@rtb,30,Tt)
> exten => _XX.,n,Hangup
>
>
> Como veís, simplemente llama al telefono marcado por la extensión empleando
> sip del modo Dial(SIP/${EXTEN}@rtb,30,Tt). Lo de ${EXTEN}@rtb me lo saqué de
> la manga y funciona, aunque no se si hay otra manera mejor.
>
> En cuanto a los 30 segundos para la llamada, estos se pueden llegar a
> superar con creces, ya que cuando se realiza la llamada el SPA contesta al
> momento, por lo que todos los parámetros configurados en el extensions.conf
> no sirven para nada.
>
> Si por ejemplo llamo a un móvil no operativo, me sale el mensaje de la
> operadora del móvil diciéndome que no esta disponible, y Asterisk no es
> capaz de detectar que la llamada no ha tenido éxito.
>
> ¿Existe alguna manera de solucionar esto? Me temo que no se puede... y de
> poderse, sería configurando algún parámetro raro dentro de la configuración
> del SPA.....
>
>
> On 9/20/07, Saúl Ibarra <saghul en gmail.com> wrote:
> > El 20/09/07, Unai Goikoetxeta <unai en goikoetxeta.com> escribió:
> > > Aupa Jon,
> > >
> > > Muchas gracias por responder. No tenía muy claro como hacer el dialplan,
> y
> > > me lo saqué de la chistera xD Pero ahora que me has dicho eso, lo he
> > > restructurado para dejarlo así:
> > >
> > > [etxea]
> > >
> > > exten => _XXX,Dial( SIP/${EXTEN}@rtb,30)
> > > exten => _112,Dial( SIP/112 en rtb,30)
> > >
> > > exten => _XXXX, Dial(SIP/${EXTEN}@rtb,30)
> > >
> > > exten => _XXXXX, Dial(SIP/${EXTEN}@rtb,30)
> > >
> > > exten => _656008062,1,Goto(1,1)
> > > exten => _944763299,n,Goto(2,1)
> > > exten => _XXXXXXXXX,n,Dial(SIP/${EXTEN}@rtb,30)
> > > exten => _XXXXXXXXX,n,Congestion
> > >
> > > exten => 1,1,Dial(SIP/unai,30)
> > > exten => 1,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?4)
> > > exten => 1,n,Dial( SIP/6561111111 en rtb,30)
> > > exten => 1,n,Goto(6,1)
> > > exten => 1,n,PlayBack(vm-goodbye)
> > > exten => 1,n,Hangup
> > >
> > > exten => 2,1,Dial(SIP/etxea,30)
> > > exten => 2,n,Goto(7,1)
> > > exten => 2,n,PlayBack(vm-goodbye)
> > > exten => 2,n,Hangup
> > >
> > > exten => 5,1,VoicemailMain(${CALLERID(num)}@buzondevoz)
> > > exten => 5,n,Hangup
> > >
> > > exten => 6,1,Voicemail( 656111111 en buzondevoz)
> > > exten => 6,n,Hangup
> > >
> > > exten => 7,1,Voicemail(944761111 en buzondevoz)
> > > exten => 7,n,Hangup
> > >
> > > Sobre la variable ${DIALSTATUS}, probé a ponerlo ayer detrás de la
> directiva
> > > (1,3) pero no me detectaba ni busy ni congestion.... Si tenéis alguna
> > > sugerencia sobre como ponerlo me haríais un gran favor :)
> > >
> >
> > Para las llamadas a los dispositivos SIP y tal, una macro (normalita
> jeje):
> >
> > [macro-llamar]
> > exten => s,1,Dial(${ARG1},30,Tt)
> > exten => s,n,Goto(s-${DIALSTATUS})
> >
> > exten => s-BUSY,1,Voicemail(${MACRO_EXTEN}|b)
> > exten => s-NOANSWER,1,Voicemail(${MACRO_EXTEN}|u)
> >
> > exten => _s-.,1,Goto(s-NOANSWER,1)
> >
> > Y en el dialplan pones:
> >
> > exten => 2,1,Macro(llamar,SIP/etxea)
> >
> > > En cuanto al transcoding, lo preguntaba porque Saúl ayer me recomendó
> > > hacerlo. Según te he entendido, tengo que poner en cada usuario el tipo
> de
> > > codec preferido para él, ¿no? ¿De esta manera, si tengo un codec para el
> > > usuario a y otro distinto para el b, las comunicaciones del a al
> asterisk
> > > serán empleando el primer codec y las del b al asterisk serán con el
> > > segundo? Quisiera preguntaros sobre qué codec debería utilizar... en el
> > > SPA3102 utilizo el g729a, que me he fijado que no lo tengo soportado por
> > > asterisk....
> > >
> >
> > Umm, yo te recomendé lo contrario :) que no hagas transcodign, para no
> > cargar la máquina... Asterisk de serie no soporta transcoding de g729,
> > pero todo se puede arreglar :) puedes bajarte el codec para fines
> > educativos de http://asterisk.hosting.lv y así podrás transcodificar
> > :)
> >
> > Por otro lado, vas a utilizar softphones y tal, pero con g729 no los
> > hay ni libres ni gratis, así que lo suyo es usar Zoiper y el codec GSM
> > por ejemplo. Entonces, lo mejor será que configures el SPA en alaw,
> > porque el transcoding tiene menor coste. No obstante, en el PAP2
> > tendrás que configurar el g729 para que no te consuma mucho ancho de
> > banda, así que instalate el codec del link que te he puesto.
> >
> > Happy Asterisk hacking!
> >
> > > Muchas gracias!!
> > >
> > > Unai
> > >
> > > PD:
> > >
> > > Me piro a Galicia en dos horas y puede que no pueda contestaros con
> rapidez.
> > > Pero en cuanto tenga un momento, chequearé el correo :)
> > >
> > >
> > >
> > > On 9/20/07, Manwe Jon Bonilla <manwe en aholab.ehu.es> wrote:
> > > >
> > > > El Thu, 20 Sep 2007 03:31:26 +0200
> > > > "Unai Goikoetxeta" < unai en goikoetxeta.com> escribió:
> > > >
> > > > > Bueno, ya he configurado el PAPT y el SPA3102 y he de decir que
> funciona
> > > > > todo de maravilla. Quisiera consultaros un par de dudas en base a mi
> > > > > dialplan en Asterisk:
> > > > >
> > > > > [etxea]
> > > > >
> > > > > exten => _XXXXXXXXX,1,GotoIf($["${EXTEN}" =
> > > "656111111"]?5)
> > > > > exten => _XXXXXXXXX,2,GotoIf($["${EXTEN}" =
> > > "944761111"]?6)
> > > > > exten => _XXXXXXXXX,3,Dial(SIP/${EXTEN}@rtb,30)
> > > > > exten => _XXXXXXXXX,4,Congestion
> > > > > exten => _XXXXXXXXX,5,Goto(1,1)
> > > > > exten => _XXXXXXXXX,6,Goto(2,1)
> > > > >
> > > > > exten => 1,1,Dial(SIP/unai,30)
> > > > > exten => 1,2,GotoIf($["${DIALSTATUS}" = "BUSY"]?4)
> > > > > exten => 1,3,Dial(SIP/6561111111 en rtb ,30)
> > > > > exten => 1,4,Goto(6,1)
> > > > > exten => 1,5,PlayBack(vm-goodbye)
> > > > > exten => 1,6,Hangup
> > > > >
> > > > > exten => 2,1,Dial(SIP/etxea,30)
> > > > > exten => 2,2,Goto(7,1)
> > > > > exten => 2,3,PlayBack(vm-goodbye)
> > > > > exten => 2,4,Hangup
> > > > >
> > > > > exten =>
> 5,1,VoicemailMain(${CALLERID(num)}@buzondevoz)
> > > > >
> > > > > exten => 6,1,Voicemail( 656111111 en buzondevoz)
> > > > > exten => 6,2,Hangup
> > > > >
> > > > > exten => 7,1,Voicemail( 944761111 en buzondevoz)
> > > > > exten => 7,2,Hangup
> > > > >
> > > > > Como veis, he hecho una regla general para todos los teléfonos de 9
> > > cifras,
> > > > > sobre los que filtro mi numero de teléfono y el de casa, para los
> que
> > > hago
> > > > > un tratamiento especial. En el caso de mi número, primero intento
> > > contactar
> > > > > vía SIP con mi usuario durante 30 segundos, y de no poder hacerlo
> llamo
> > > a mi
> > > > > teléfono móvil. Si el usuario sip rechaza la llamada, se salta el
> > > > > contestador... pero si no la rechaza, se realiza la llamada al
> móvil, y
> > > > > aunque esta no sea exitosa, no salta el contestador. ¿Hay alguna
> manera
> > > de
> > > > > hacer que Asterisk detecte una llamada fallida en este caso?
> > > >
> > > > Vamos por partes:
> > > >
> > > > Las dos primeras líneas que has puesto son imaginativas pero no son la
> > > manera
> > > > correcta de filtrar números. Cuando tienes varias plantillas dentro de
> una
> > > > extensión, asterisk usa siempre la menos ambigua que coincida con la
> > > extensión
> > > > que marcas. Ejemplo:
> > > >
> > > > exten => _XXX,NoOp(Llamada de 3 cifras)
> > > > exten => _1XX,NoOp(Llamada al ciento algo)
> > > > exten => _112,NoOp(Emergencias)
> > > >
> > > > Si marcas el 300 solo el primer patrón coincide y esta claro que ese
> se
> > > usa.
> > > > Si llamases al 150 los dos primeros patrones son válidos pero se usa
> el
> > > > segundo por ser menos ambiguo. Y en el caso de llamar al 112 se usaría
> el
> > > > tercero por la misma razón.
> > > >
> > > > exten => 656111111,1,
> > > > ...
> > > > exten => 944761111,1,
> > > > ...
> > > > exten => _XXXXXXXXX,1
> > > > ...
> > > >
> > > > Otra cosa: Las prioridades las marcas 1,2,3,... y es correcto pero
> poco
> > > > flexible ya que si quieres meter cosas en medio tienes que
> renombrarlas
> > > todas.
> > > > Se usa 1,n,n,n,n,... que es mucho más cómodo.
> > > >
> > > >
> > > > Respecto a lo de detectar las llamadas fallidas y tal te puedo decir
> cómo
> > > lo
> > > > trataría yo pero cuando Saul se despierte va a mandar seguro una macro
> > > enorme
> > > > que contemple todas las posibilidades :)
> > > >
> > > > Si quieres algo refinado lo mejor es que uses una macro que contemple
> las
> > > > posibilidades en función de la variable ${DIALSTATUS} y te permitirá
> > > > diferenciar entre noanswer, busy...etc
> > > >
> > > >
> > > >
> > > > > Por otro lado, quería preguntaros alguna sugerencia para mejorar el
> > > dialplan
> > > > > y sobre como puedo realizar transcoding para lograr mejor calidad en
> la
> > > > > conversación.
> > > > >
> > > >
> > > > algunas mejoras ya te las he sugerido. En cuanto al trascoding,
> asterisk
> > > lo
> > > > realiza para poder comunicar los canales si usan diferentes codecs.
> Para
> > > > mejorar la calidad de audio solo tienes que decir al uusario que use
> > > mejores
> > > > codecs. Puede que no hay entendido esta parte...
> > > >
> > > >
> > > >
> > > > Un saludo
> > > >
> > > >
> > > >
> > > > _______________________________________________
> > > > eside-ghost mailing list
> > > > eside-ghost en deusto.es
> > > > https://listas.deusto.es/mailman/listinfo/eside-ghost
> > > >
> > >
> > >
> > > _______________________________________________
> > > eside-ghost mailing list
> > > eside-ghost en deusto.es
> > > https://listas.deusto.es/mailman/listinfo/eside-ghost
> > >
> >
> >
> > --
> > Saúl -- "Nunca subestimes el ancho de banda de un camión lleno de
> disketes."
> >
> ----------------------------------------------------------------
> > http://www.saghul.net/
> >
> > _______________________________________________
> > eside-ghost mailing list
> > eside-ghost en deusto.es
> > https://listas.deusto.es/mailman/listinfo/eside-ghost
> >
>
>
> _______________________________________________
> eside-ghost mailing list
> eside-ghost en deusto.es
> https://listas.deusto.es/mailman/listinfo/eside-ghost
>
--
Saúl -- "Nunca subestimes el ancho de banda de un camión lleno de disketes."
----------------------------------------------------------------
http://www.saghul.net/
Más información sobre la lista de distribución eside-ghost