Re: [eside-ghost] Asterisk, detección de llamadas no exitosas con el SPA3102 y transcoding
Unai Goikoetxeta
unai en goikoetxeta.com
Mar Sep 25 02:09:01 CEST 2007
Saúl,
Yo entendí que me dijiste que como tenía un servidor potente podía hacer
transcoding :S Bueno.. he instalado los codecs de g729 y g723.1 de esa
página en mi Asterisk tal y como me has dicho. Lo que no entiendo bien es la
recomendación que me has dado respecto a que codecs utilizar en cada ata.
Te comento, ahora mismo, en el PAP2 tengo configurado el codec g729a y se
conecta a un usuario SIP con las siguientes características:
[unai]
type=friend
secret=secret
host=dynamic
canreinvite=no
disallow=all
allow=alaw
allow=ulaw
;allow=g729
;allow=g723.1
;allow=gsm
context=etxea
dtmfmode=rfc2833
callerid=666666666
language=es
qualify=yes
mailbox=666666666 en buzondevoz
Por otro lado, en el SPA, para el puerto FXS tengo el codec g729a con la
siguiente configuración en el asterisk para su usuario SIP:
[etxea]
type=friend
secret=secret
host=dynamic
canreinvite=no
disallow=all
allow=alaw
allow=ulaw
;allow=g729
;allow=g723.1
context=etxea
dtmfmode=rfc2833
outgoinglimit=1
callerid=999999999
qualify=yes
language=es
mailbox=999999999 en buzondevoz
Y en el puerto FXO el codec g729a con:
[rtb]
type=friend
secret=secret
host=dynamic
canreinvite=no
disallow=all
allow=alaw
allow=ulaw
;allow=g729
;allow=g723.1
;allow=gsm
context=etxea
cancallforward=yes
dtmfmode=rfc2833
outgoinglimit=1
language=es
qualify=yes
Me imagino, que el tema de los codecs permitidos en cada uno de los casos
tengo que cambiarlo. Tengo cinco preguntas:
1. ¿Debería permitir el uso de alaw, ulaw, g729, gsm y g723.1 en los tres
casos?
2. ¿alaw es g711a en los atas?
3. ¿Cúal de los codecs tiene mejor calidad de audio?
4. En caso de que desee un compromiso entre la calidad del audio y ancho de
banda consumido, ¿qué codec sería mejor?
5. El motivo por el cual me dices que utilice el g729 en el PAP2 supongo que
me lo recomiendas debido a que el PAP2 lo utilizaré fuera de la red local en
la que se encuentra Asterisk por lo que me vendrá mejor un codec que chupe
menos BW, ¿no?
Muchas gracias por todo!!!
Unai
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
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: https://listas.deusto.es/mailman/private/eside-ghost/attachments/20070925/66d8f941/attachment.htm
Más información sobre la lista de distribución eside-ghost