El Jueves, 21 de Agosto de 2008, troxlinux escribió:
ok aquí va aunque es un buen trozo , lo que me tiene con duda es ese 500 error, viendo la tablita de Response codes de los rfc , lo califica como un Internal server error ..
Lo que está ocurriendo 8otra cosa es "porqué") es que OpenSer acepta el INVITE y se lo manda a Asterisk. Pero **a la vez** está respondiendo un "500" al tfno. Este 500 acaba la transacción (el tfno envía ACK).
Luego Asterisk responde con un 200 que llega a OpenSer quien lo envía al teléfono [*].
Pero ese 200 no tiene ningún sentido en el tfno puesto que ya había recibido una respuesta final (el 500) por lo que el tfno lo ignora y Asterisk lo sigue reenviando un montón de veces en espera del ACK, hasta que expira el timer correspondiente.
[*] Ese 200 es reenviado por OpenSer al tfno de forma "stateless" puesto que la transacción ya había sido destruida.
En cuanto al porqué... buff, ni idea.
- ¿Cómo haces el envío a Asterisk en el config de OpenSer? - ¿Usas append_branch() para algo? - ¿Usas on_branch_route[] para algo?