Cepstral voice not working through manager API

I’ve got the following dialplan that DOES work if I use a .call file:

[PlayVoice]
exten => s,1,Answer()
exten => s,2,SpeechActivateGrammar(yes_no)
exten => s,n,WaitForSilence(500|3|10)
exten => s,n,Swift(The voice works great.)
exten => s,n,SpeechDeactivateGrammar(yes_no)
exten => s,n,Hangup()

However, if I telnet into the manager and issue the following command:
ACTION: Originate
Channel: IAX2/4444
Priority: 1
Timeout: 60000
Context: PlayVoice
CallerID: 4444

The script starts to play but stops and hangs up:
[Jun 11 01:04:24] DEBUG[7957] chan_iax2.c: prepending 4 to prefs
[Jun 11 01:04:24] VERBOSE[2980] logger.c: – Call accepted by 10.1.1.50 (format gsm)
[Jun 11 01:04:24] VERBOSE[2980] logger.c: – Format for call is gsm
[Jun 11 01:04:26] VERBOSE[9676] logger.c: – Executing [s@PlayVoice:1] Answer(“IAX2/4444-16019”, “”) in new stack
[Jun 11 01:04:26] VERBOSE[9676] logger.c: – Executing [s@PlayVoice:2] SpeechActivateGrammar(“IAX2/4444-16019”, “yes_no”) in new stack
[Jun 11 01:04:26] VERBOSE[9676] logger.c: == Spawn extension (PlayVoice, s, 2) exited non-zero on ‘IAX2/4444-16019’
[Jun 11 01:04:26] VERBOSE[9676] logger.c: – Executing [h@PlayVoice:1] Hangup(“IAX2/4444-16019”, “”) in new stack
[Jun 11 01:04:26] VERBOSE[9676] logger.c: == Spawn extension (PlayVoice, h, 1) exited non-zero on ‘IAX2/4444-16019’
[Jun 11 01:04:26] VERBOSE[9676] logger.c: – Hungup ‘IAX2/4444-16019’

The script gets to the 2nd line where it runs SpeechActivateGrammar and stops. Does anyone know why this is happening? It’s like the Cepstral isn’t loaded or something, but it does work if I drop the .call file into the outgoing directory.

THANKS.

Interesting… I have to research what the SpeechActivateGrammar does. If I remove this line the call goes through.