Problema duración llamadas

17 views
Skip to first unread message

Javivi

unread,
Jul 20, 2022, 6:43:10 AM7/20/22
to asterisk-es
Hola buenos días..

Estoy usando la aplicación Stasis para mandar la llamada a Google y usar su servicio de Dialogflow.

Todo me funciona bien, pero al finalizar la llamada, necesito recoger unos datos de esta, como por ejemplo la duración de la llamada.

Pues bien, si la llamada la cuelga el cliente, no hay problema, tengo el dato.
Si la llamada la cuelga el Stasis, el tiempo lo tengo a 0.

Cuando entra la llamada, lo que hago es esto:

same => n,Set(CHANNEL(hangup_handler_push)=hangup-handler,s,1)
same => n,Stasis(dialogflow)
same => n,HangUp()

Y en hangup-handler, al colgar saco el ${CDR(duration)}.

Pues bien, si la llamda la colgó el cliente, en ${CDR(duration)} tengo la duración de la llamada, pero si el Stasis llega hasta el final y es este el que corta la llamada, en ${CDR(duration)} tengo 0.

Si intento sacar el tiempo de inicio y de fin, me saca el mismo, como si la llamada no se hubiera descolgado o algo así.

Estoy haciendo algo mal?

En el contexto hangup-handler, si hago un DumpChan(), puedo tener el ElapsedTime con la duración de la llamada, independientemente de quien haya colgado la llamada, pero no se como usar esa variable..

Hay algo que se os ocuyrra que pueda mirar para ver el porque de ese tiempo a 0?

Muchas gracias
Reply all
Reply to author
Forward
0 new messages