Problema al intentar utilizar "lo que espía" el ChanSpy de Asterisk

Hola,

Estoy intentando enviar el tráfico de cada uno de los canales de audio a un cliente MRCP que me lo mandará a un servidor MRCP para hacer Recognize del audio. El problema es que no encuentro el modo de hacerlo de forma que se haga para una llamada. Es decir, normalmente esto está pensado para IVR, se llama a  un número de Asterisk y cuando haces Answer luego puedes llamar a una función MRCPRecog para reconocer. El problema es que yo quiero hacerlo para una llamada, por lo que además de interceptar el RTP, quiero que llegue también al destinatario.

Si uso lo siguiente y ejecuto una macro para cada una de las patas de la llamada

exten=> _[a-z][a-z].,n,Dial(SIP/${EXTEN},45,G(recognition^s^1))

[recognition]

exten=> s,1,Macro(recogchannel1)
exten=> s,2,Macro(recogchannel2)
 

[macro-recogchannel1]

exten=> s,n,ChanSpy(${CHANNEL},q)
exten=> s,n,MRCPRecog(

[macro-recogchannel2]
exten=> s,n,ChanSpy(${CHANNEL},q)
exten=> s,n,MRCPRecog(

Se queda haciendo ChanSpy, pero no me ejecuta el MRCPRecog con lo que está sniffando en el ChanSpy.

¿alguna idea de cómo resolverlo?

Gracias!

Etiquetas: