BandaAncha.eu

Comunidad de usuarios
de fibra, móvil y ADSL

Que Asterisk haga passthrough si troncal y extensión interna admiten el codec g729

Jeronimo17

Tengo puesto Asterisk 16.3.0 en openwrt

Estaba probado a evitar que pase los paquetes de voz por Asterisk con canreinvite=yes y funciona bien, pero la duda/problema es cuando inicio una llama desde un dispositivo como un móvil por wifi y uso en exclusiva el codec g729 (en la parte del cliente SIP) al llamar a Netelip, Asterisk comienza a convertir g729 en alaw.

No entiendo como decirle que si el troncal admite g729 y la extensión interna también, no haga la conversión y haga passthrough.

Si pongo antes g729 que alaw en la configuración si funciona, pero ocurre lo contrario cuando uso una extensión con alaw, asterisk convierte a g729 para enviarlo a Netelip

¿Es algún problemita de la versión o es configurable lo que quiero de otra forma? Gracias

[trunk-netelip]
type=peer
host=sip-eu.netelip.com
fromdomain=sip-eu.netelip.com
username=
secret=
insecure=port,invite
context=callin-netelip
canreinvite=yes
Nat=yes
disallow=all
allow=alaw
allow=g729

[ramal-voip]
type=friend
context=INTERNO
host=dynamic
canreinvite=yes
disallow=all
allow=alaw
allow=g729
rbetancor

Si usas chan_sip, la negociación de codecs es una puñetera mierda en Asterisk … tendrás que usar chan_pjsip y jugetear con las opciones de negociación de codecs, para definas las preferencias, el order y esos temas.

🗨️ 1
Jeronimo17

Aja, eso parece que complica bastante las cosas, Gracias!

AnThraxII

El orden de las lineas allow en la configuración es la prioridad, pon primero g729 si quieres que negocie a ese codecs.

🗨️ 1
rbetancor

Quiere hacer passthrougth … cosa que JAMÁS ha funcionado bien el Asterisk con chan_sip, que se empeña en usar el primer codec coincidente del llamante con el llamado.

Solo se puede hacer bien con chan_pjsip y jugueteando con las preferencias de los friends/peers involucrados en la llamada

Si por algo es famoso Asterisk, entre otras cosas, es por su desastrosos algoritmos de *-matching, el codec-matching entre ellos.