I tried this:
[custom-dic-dis]
exten => s,1,Playback(/var/lib/asterisk/sounds/custom/dd-discharge,skip)
exten => s,n,Wait(1)
exten => s,n,Playback(/var/lib/asterisk/sounds/custom/dd-enterid,skip)
exten => s,n,Read(USERID)
exten => s,n,Set(STAMP=${USERID}-${STRFTIME(,EST5EDT,%Y-%m-%d-%H.%M.%S)})
exten => s,n,Playback(/var/lib/asterisk/sounds/custom/dd-record,skip)
;exten => s,n,Record(/var/spool/asterisk/dictate/discharge/${STAMP}.wav|0|3600|skip)
exten => s,n,Dictate(/var/spool/asterisk/dictate/discharge/${STAMP})
exten => h,n,System(date > /var/spool/asterisk/dictate/discharge/Message.txt)
;exten => h,n,System(mutt -s "Dictation from workgroup Discharge - User ID ${USERID}" -a /var/spool/asterisk/dictate/discharge/${STAMP}.wav dictation@grape.local < /var/spool/asterisk/dictate/discharge/Message.txt)
;exten => h,n,System(rm -f /var/spool/asterisk/dictate/discharge/${STAMP}.wav)
exten => h,n,Playback(/var/lib/asterisk/sounds/custom/dd-confirmation,skip)
exten => h,n,Hangup
I tried this and it didn’t work. My output looked like this:
-- Executing Answer("IAX2/100-5", "") in new stack
-- Executing Wait("IAX2/100-5", "1") in new stack
-- Executing Set("IAX2/100-5", "TIMEOUT(digit)=3600") in new stack
-- Digit timeout set to 3600
-- Executing Set("IAX2/100-5", "TIMEOUT(response)=3600") in new stack
-- Response timeout set to 3600
-- Executing BackGround("IAX2/100-5", "custom/dd-main") in new stack
-- Playing 'custom/dd-main' (language 'en')
== CDR updated on IAX2/100-5
-- Executing Goto("IAX2/100-5", "custom-dic-dis|s|1") in new stack
-- Goto (custom-dic-dis,s,1)
-- Executing Playback("IAX2/100-5", "/var/lib/asterisk/sounds/custom/dd-discharge|skip") in new stack
-- Playing '/var/lib/asterisk/sounds/custom/dd-discharge' (language 'en')
-- Executing Wait("IAX2/100-5", "1") in new stack
-- Executing Playback("IAX2/100-5", "/var/lib/asterisk/sounds/custom/dd-enterid|skip") in new stack
-- Playing '/var/lib/asterisk/sounds/custom/dd-enterid' (language 'en')
-- Executing Read("IAX2/100-5", "USERID") in new stack
-- User entered '999'
-- Executing Set("IAX2/100-5", "STAMP=999-2006-06-16-12.42.20") in new stack
-- Executing Playback("IAX2/100-5", "/var/lib/asterisk/sounds/custom/dd-record|skip") in new stack
-- Playing '/var/lib/asterisk/sounds/custom/dd-record' (language 'en')
-- Executing Dictate("IAX2/100-5", "/var/spool/asterisk/dictate/discharge/999-2006-06-16-12.42.20") in new stack
-- Playing 'dictate/enter_filename' (language 'en')
-- Playing 'dictate/forhelp' (language 'en')
-- Playing 'dictate/playback_mode' (language 'en')
-- Playing 'dictate/paused' (language 'en')
-- Playing 'dictate/record_mode' (language 'en')
-- Playing 'dictate/record' (language 'en')
-- Playing 'dictate/pause' (language 'en')
-- Playing 'dictate/enter_filename' (language 'en')
== Spawn extension (custom-dic-dis, s, 7) exited non-zero on 'IAX2/100-5'
-- Hungup 'IAX2/100-5'
I had no luck with this. Nothing happens still after dictate() is done. Thank you for your help. I have spent so much time on this with no success. It’s so frustrating. It seems that the ‘h’ doesn’t help.
The above context was just a quick and dirty hack of another context to see if everything keeps moving. Once I confirm that the dialplan will keep executing, I will set it up to convert the raw file to wav and do some file manipulations.