AST_VDauto_dial.pl fix for deleting vicidial_auto_calls entries git-svn-id: svn://192.168.202.10@979 3d104415-ff17-0410-8863-d5cf3c621b8a
63 lines
3.3 KiB
Plaintext
63 lines
3.3 KiB
Plaintext
Inbound VDAC IVR process 2008-05-25
|
|
|
|
This doc goes over the addition of the IVR status to the vicidial_auto_calls table and how calls that are not yet in an in-group(queue) can still be counted as active calls. This allows your system to show a tally of inbound calls that are still navigating menus before finding an in-group(queue) to be put into.
|
|
|
|
The agi-VDAD_inbound_calltime_check.agi script does a check for the calltime scheme of the defined in-group(queue) as well as using the after-hours method for that in-group and the associated after-hours message if defined. Also, this script can place a record in the vicidial_auto_calls status in the IVR status. Calls in this status do not affect the dial ratios of blended campaigns, but they will display in the AST_timeonVDADall.php real-time status pages.
|
|
|
|
A log of the calls going into this agi-VDAD_inbound_calltime_check.agi script is also inserted into the live_inbound_log table.
|
|
|
|
The agi-VDAD_inbound_calltime_check.agi script can also be used to log the progression of a call through an IVR if you place it at major points in your IVR dialplan. The third field that you can define allows you to set a note or comment that is placed into the database when the call goes through that step.
|
|
|
|
|
|
The example below shows how to do a very simple IVR before sending to a queue asking if the caller wants English, Spanish, French or German language service.
|
|
|
|
The "test_in_menu" audio file would have something like the following script:
|
|
|
|
"Hello, thank you for calling ACME Service Inc. For English press one, para el
|
|
español, prensa dos, pour le Français, presse trois, für Deutsche Presse vier."
|
|
|
|
|
|
|
|
extensions.conf additions:
|
|
|
|
|
|
; First, in the default context you will put a line sending the inbound calls
|
|
; for this number into a context named the same as the first in-group(queue),
|
|
; in this case "TEST_IN". There are also 3 other in-groups(queues) for the
|
|
; non-English in-groups(queues):
|
|
; TEST_IN - English - option 1
|
|
; TEST_IN_ES - Spanish - option 2
|
|
; TEST_IN_FR - French - option 3
|
|
; TEST_IN_DE - German - option 4
|
|
|
|
[default]
|
|
exten => 7275551111,1,Goto(TEST_IN,s,1)
|
|
|
|
|
|
[TEST_IN]
|
|
exten => s,1,AGI(agi-VDAD_inbound_calltime_check.agi,TEST_IN-----YES-----START)
|
|
exten => s,2,Background(test_in_menu)
|
|
exten => s,n,WaitExten(10)
|
|
exten => s,n,Background(test_in_menu)
|
|
exten => s,n,WaitExten(10)
|
|
exten => s,n,Playback(vm-goodbye)
|
|
exten => s,n,hangup
|
|
|
|
exten => 1,1,AGI(agi-VDAD_ALL_inbound.agi,CIDLOOKUP-----LB-----TEST_IN-----7275551111-----Closer-----park----------999-----1-----OUTB)
|
|
exten => 1,n,Hangup
|
|
|
|
exten => 2,1,AGI(agi-VDAD_ALL_inbound.agi,CIDLOOKUP-----LB-----TEST_IN_ES-----7275551111-----Closer-----park----------999-----1-----OUTB)
|
|
exten => 2,n,Hangup
|
|
|
|
exten => 3,1,AGI(agi-VDAD_ALL_inbound.agi,CIDLOOKUP-----LB-----TEST_IN_FR-----7275551111-----Closer-----park----------999-----1-----OUTB)
|
|
exten => 3,n,Hangup
|
|
|
|
exten => 4,1,AGI(agi-VDAD_ALL_inbound.agi,CIDLOOKUP-----LB-----TEST_IN_DE-----7275551111-----Closer-----park----------999-----1-----OUTB)
|
|
exten => 4,n,Hangup
|
|
|
|
exten => #,1,Goto(s,2)
|
|
exten => i,1,Goto(s,2)
|
|
exten => t,1,Goto(s,2)
|
|
exten => h,1,DeadAGI(agi://127.0.0.1:4577/call_log--HVcauses--PRI-----NODEBUG-----${HANGUPCAUSE}-----${DIALSTATUS}-----${DIALEDTIME}-----${ANSWEREDTIME})
|
|
|