Outbound IVR

Hi All,
I am trying to setup an “outbound IVR”.
I have problems with the calls.

I drop a file in the outgoing folder
test.call
Channel: Local/993284486408@from-internal
Callerid: 0240709019
MaxRetries: 5
RetryTime: 300
WaitTime: 45
Context: outboundmsg1
Extension: s
Priority: 1

I receive the call, but nothing will be played and the call hungs immediatly.
(the trunk is set up to use 99|.)

here the asterisk log and the dialplan.
Any help will be really appreciated.

(NOTE: we are searching a part time programmer and we can offer a “short contract” to set up the IVR demo)

Here the files:

dialplan:
############################################################################
; Prova IVR outbound
; ############################################################################
[outboundmsg1]
exten => s,1,DigitTimeout,5 ; Set Digit Timeout to 5 seconds
exten => s,2,ResponseTimeout,10 ; Set Response Timeout to 10 seconds
exten => s,3,Answer
exten => s,4,Wait(1)
exten => s,5,Background(1-for-am-2-for-pm) ; "play outbound msg"
exten => s,6,Background(1-for-am-2-for-pm) ; "Press 1 to replay or 2 to acknowledge receiving this message"
exten => 1,1,Goto(s,5) ; replay message
exten => 2,1,Goto(msgack,s,1) ; acknowledge message
exten => t,1,Playback(1-for-am-2-for-pm)
exten => t,2,Hangup

Log:
– Attempting call on Local/993284486408@from-internal for s@outboundmsg1:1 (Retry 6)
– Executing [993284486408@from-internal:1] Macro(“Local/993284486408@from-i nternal-6bca,2”, “dialout-trunk|3|3284486408||”) in new stack
– Executing [s@macro-dialout-trunk:1] Set(“Local/993284486408@from-internal -6bca,2”, “DIAL_TRUNK=3”) in new stack
– Executing [s@macro-dialout-trunk:2] Set(“Local/993284486408@from-internal -6bca,2”, “DIAL_NUMBER=3284486408”) in new stack
– Executing [s@macro-dialout-trunk:3] Set(“Local/993284486408@from-internal -6bca,2”, “ROUTE_PASSWD=”) in new stack
– Executing [s@macro-dialout-trunk:4] GotoIf(“Local/993284486408@from-inter nal-6bca,2”, “1?noauth”) in new stack
– Goto (macro-dialout-trunk,s,6)
– Executing [s@macro-dialout-trunk:6] GotoIf(“Local/993284486408@from-inter nal-6bca,2”, “0?disabletrunk|1”) in new stack
– Executing [s@macro-dialout-trunk:7] Set(“Local/993284486408@from-internal -6bca,2”, “_NODEST=”) in new stack
– Executing [s@macro-dialout-trunk:8] Set(“Local/993284486408@from-internal -6bca,2”, “DIAL_TRUNK_OPTIONS=tr”) in new stack
– Executing [s@macro-dialout-trunk:9] Set(“Local/993284486408@from-internal -6bca,2”, “GROUP()=OUT_3”) in new stack
– Executing [s@macro-dialout-trunk:10] Macro(“Local/993284486408@from-inter nal-6bca,2”, “user-callerid|SKIPTTL”) in new stack
– Executing [s@macro-user-callerid:1] NoOp(“Local/993284486408@from-interna l-6bca,2”, “user-callerid: 0240709019”) in new stack
– Executing [s@macro-user-callerid:2] Set(“Local/993284486408@from-internal -6bca,2”, “AMPUSER=0240709019”) in new stack
– Executing [s@macro-user-callerid:3] GotoIf(“Local/993284486408@from-inter nal-6bca,2”, “1?report”) in new stack
– Goto (macro-user-callerid,s,13)
– Executing [s@macro-user-callerid:13] NoOp(“Local/993284486408@from-intern al-6bca,2”, “TTL: ARG1: SKIPTTL”) in new stack
– Executing [s@macro-user-callerid:14] GotoIf(“Local/993284486408@from-inte rnal-6bca,2”, “1?continue”) in new stack
– Goto (macro-user-callerid,s,23)
– Executing [s@macro-user-callerid:23] NoOp(“Local/993284486408@from-intern al-6bca,2”, “Using CallerID “” <0240709019>”) in new stack
– Executing [s@macro-dialout-trunk:11] Macro(“Local/993284486408@from-inter nal-6bca,2”, “record-enable|0240709019|OUT”) in new stack
– Executing [s@macro-record-enable:1] GotoIf(“Local/993284486408@from-inter nal-6bca,2”, “0?2:4”) in new stack
– Goto (macro-record-enable,s,4)
– Executing [s@macro-record-enable:4] AGI(“Local/993284486408@from-internal -6bca,2”, “recordingcheck|20080121-224259|1200951779.89”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck
recordingcheck|20080121-224259|1200951779.89: No AMPUSER db entry for 02407090 19. Not recording
– AGI Script recordingcheck completed, returning 0
– Executing [s@macro-record-enable:5] NoOp(“Local/993284486408@from-interna l-6bca,2”, “No recording needed”) in new stack
– Executing [s@macro-dialout-trunk:12] GotoIf(“Local/993284486408@from-inte rnal-6bca,2”, “0?skipoutcid”) in new stack
– Executing [s@macro-dialout-trunk:13] Set(“Local/993284486408@from-interna l-6bca,2”, “DIAL_TRUNK_OPTIONS=”) in new stack
– Executing [s@macro-dialout-trunk:14] Macro(“Local/993284486408@from-inter nal-6bca,2”, “outbound-callerid|3”) in new stack
– Executing [s@macro-outbound-callerid:1] GotoIf(“Local/993284486408@from-i nternal-6bca,2”, “0?start”) in new stack
– Executing [s@macro-outbound-callerid:2] Set(“Local/993284486408@from-inte rnal-6bca,2”, “REALCALLERIDNUM=0240709019”) in new stack
– Executing [s@macro-outbound-callerid:3] NoOp(“Local/993284486408@from-int ernal-6bca,2”, “REALCALLERIDNUM is 0240709019”) in new stack
– Executing [s@macro-outbound-callerid:4] GotoIf(“Local/993284486408@from-i nternal-6bca,2”, “1?normcid”) in new stack
– Goto (macro-outbound-callerid,s,9)
– Executing [s@macro-outbound-callerid:9] Set(“Local/993284486408@from-inte rnal-6bca,2”, “USEROUTCID=”) in new stack
– Executing [s@macro-outbound-callerid:10] Set(“Local/993284486408@from-int ernal-6bca,2”, “EMERGENCYCID=”) in new stack
– Executing [s@macro-outbound-callerid:11] Set(“Local/993284486408@from-int ernal-6bca,2”, “TRUNKOUTCID=0240709019”) in new stack
– Executing [s@macro-outbound-callerid:12] GotoIf(“Local/993284486408@from- internal-6bca,2”, “1?trunkcid”) in new stack
– Goto (macro-outbound-callerid,s,16)
– Executing [s@macro-outbound-callerid:16] GotoIf(“Local/993284486408@from- internal-6bca,2”, “0?usercid”) in new stack
– Executing [s@macro-outbound-callerid:17] Set(“Local/993284486408@from-int ernal-6bca,2”, “CALLERID(all)=0240709019”) in new stack
– Executing [s@macro-outbound-callerid:18] GotoIf(“Local/993284486408@from- internal-6bca,2”, “1?report”) in new stack
– Goto (macro-outbound-callerid,s,22)
– Executing [s@macro-outbound-callerid:22] NoOp(“Local/993284486408@from-in ternal-6bca,2”, “CallerID set to “” <0240709019>”) in new stack
– Executing [s@macro-dialout-trunk:15] GotoIf(“Local/993284486408@from-inte rnal-6bca,2”, “1?nomax”) in new stack
– Goto (macro-dialout-trunk,s,17)
– Executing [s@macro-dialout-trunk:17] AGI(“Local/993284486408@from-interna l-6bca,2”, “fixlocalprefix”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/fixlocalprefix
– AGI Script fixlocalprefix completed, returning 0
– Executing [s@macro-dialout-trunk:18] Set(“Local/993284486408@from-interna l-6bca,2”, “OUTNUM=3284486408”) in new stack
– Executing [s@macro-dialout-trunk:19] Set(“Local/993284486408@from-interna l-6bca,2”, “custom=SIP/caller 0240709019”) in new stack
– Executing [s@macro-dialout-trunk:20] GotoIf(“Local/993284486408@from-inte rnal-6bca,2”, “1?gocall”) in new stack
– Goto (macro-dialout-trunk,s,24)
– Executing [s@macro-dialout-trunk:24] GotoIf(“Local/993284486408@from-inte rnal-6bca,2”, “0?customtrunk”) in new stack
– Executing [s@macro-dialout-trunk:25] Dial(“Local/993284486408@from-intern al-6bca,2”, “SIP/caller 0240709019/3284486408|300|”) in new stack
– Called caller 0240709019/3284486408
– SIP/caller 0240709019-097d7968 is making progress passing it to Local/993 284486408@from-internal-6bca,2
– SIP/caller 0240709019-097d7968 answered Local/993284486408@from-internal- 6bca,2
> Channel Local/993284486408@from-internal-6bca,1 was answered.
== Spawn extension (outboundmsg1, s, 1) exited non-zero on ‘Local/993284486408 @from-internal-6bca,1’
== Spawn extension (macro-dialout-trunk, s, 25) exited non-zero on ‘Local/9932 84486408@from-internal-6bca,2’ in macro ‘dialout-trunk’
== Spawn extension (macro-dialout-trunk, s, 25) exited non-zero on ‘Local/9932 84486408@from-internal-6bca,2’
– Executing [h@macro-dialout-trunk:1] Macro(“Local/993284486408@from-intern al-6bca,2”, “hangupcall”) in new stack
– Executing [s@macro-hangupcall:1] ResetCDR(“Local/993284486408@from-intern al-6bca,2”, “w”) in new stack
– Executing [s@macro-hangupcall:2] NoCDR(“Local/993284486408@from-internal- 6bca,2”, “”) in new stack
– Executing [s@macro-hangupcall:3] GotoIf(“Local/993284486408@from-internal -6bca,2”, “1?skiprg”) in new stack
– Goto (macro-hangupcall,s,6)
– Executing [s@macro-hangupcall:6] GotoIf(“Local/993284486408@from-internal -6bca,2”, “1?skipblkvm”) in new stack
– Goto (macro-hangupcall,s,9)
– Executing [s@macro-hangupcall:9] GotoIf(“Local/993284486408@from-internal -6bca,2”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,11)
– Executing [s@macro-hangupcall:11] Hangup(“Local/993284486408@from-interna l-6bca,2”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘Local/9932844 86408@from-internal-6bca,2’ in macro ‘hangupcall’
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘Local/9932844 86408@from-internal-6bca,2’

Try calling your IVR and see what happens (like set an extension that goes there).

Also why are you sending the call to the local channel as well as what GUI are you using ?

I found some problems:

the script found on some forum was wrong.

exten => s,1,DigitTimeout,5 ; Set Digit Timeout to 5 seconds
exten => s,2,ResponseTimeout,10 ; Set Response Timeout to 10 seconds

is no more supported.
here the correct one.

[outboundmsg1]
exten => s,1,NoOp(inizio) ; verbose
exten => s,n,Answer
exten => s,n,set(TIMEOUT(absolute)=20) ; Set Digit Timeout to 5 seconds
exten => s,n,Set(TIMEOUT(digit)=5) ; Set Response Timeout to 10 seconds
exten => s,n,NoOp(risponde) ; verbose
;exten => s,n,Wait(3)
exten => s,n,NoOp(back) ; verbose
exten => s,n(message),Background(custom/test) ; "play outbound msg"
exten => s,n,Background(xx-test2) ;
exten => s,n,WaitExten(10)
exten => 1,1,Goto(s,message) ; replay message
exten => 2,1,Goto(msgack,s,1) ; acknowledge message
exten => t,1,Playback(vm-goodbye)
exten => t,2,Hangup


here the call file

Channel: SIP/032277860@caller-out
Callerid: 0240709019
MaxRetries: 5
RetryTime: 60
WaitTime: 30
Context: outboundmsg1
Extension: s
Priority: 1

------ i am going on to fix all problems…

Try it again and see what happens (I was too tired to see the error).