Added new cm_lookup.agi script to allow for account lookups within a Call Menu without having to go into an in-group. Also new Call Menu option added to allow for vicidial_list field logging of responses inside of a call menu.
git-svn-id: svn://192.168.202.10@1732 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
+102
-31
@@ -1,4 +1,4 @@
|
||||
ASTERISK CONF FILE GENERATION 2009-02-11
|
||||
ASTERISK CONF FILE GENERATION Started: 2009-02-11 Updated: 2011-10-04
|
||||
|
||||
This file details the process for how the system automatically generates Asterisk conf files purely from VICIDIAL settings.
|
||||
|
||||
@@ -6,7 +6,7 @@ The conf files that are generated are:
|
||||
/etc/asterisk/extensions-vicidial.conf
|
||||
/etc/asterisk/iax-vicidial.conf
|
||||
/etc/asterisk/sip-vicidial.conf
|
||||
/etc/asterisk/voicemail-vicidial.conf
|
||||
/etc/asterisk/voicemail.conf
|
||||
/etc/asterisk/meetme-vicidial.conf
|
||||
/etc/asterisk/musiconhold-vicidial.conf
|
||||
|
||||
@@ -40,9 +40,9 @@ The Menu ID is the unique identifier of the call menu and it is also used as the
|
||||
|
||||
|
||||
Call Menu Options:
|
||||
0,1,2,3,4,5,6,7,8,9,*,#,A,B,C,D,TIMECHECK
|
||||
0,1,2,3,4,5,6,7,8,9,*,#,A,B,C,D,TIMECHECK,TIMEOUT,INVALID,INVALID_2ND,INVALID_3RD
|
||||
|
||||
The options are the DTMF digits that a caller can select within this Call Menu, with the exception of the TIMECHECK option which is used when the call is taking place outside of the call_time as defined in the Call menu.
|
||||
The options are the DTMF digits that a caller can select within this Call Menu, with the exception of the TIMECHECK, TIMEOUT and INVALID options which are used when the call is taking place outside of the call_time as defined in the Call menu, when the menu times out or when an invalid choice is made.
|
||||
|
||||
|
||||
Call Menu Routes:
|
||||
@@ -51,6 +51,10 @@ CALLMENU,HANGUP,DID,EXTENSION,PHONE,VOICEMAIL,AGI
|
||||
The option route is similar to the DID route since it defines what method to use to send the call to the option route value. The route value is dependant upon the route selected, for example if you selected DID as the route you would then need to select a value DID to send the call to. Or if you selected PHONE as the route, the route value would need to be a valid phone login as defined in the phones section of Administration.
|
||||
|
||||
|
||||
Log Key Press - This option if enabled will log the DTMF key press by the caller in this Call Menu. Default is 0 for disabled.
|
||||
|
||||
Log Field - If the Log Key Press option is enabled, this optional setting can allow the response to also be stored in this list field. vendor_lead_code, source_id, phone_code, title, first_name, middle_initial, last_name, address1, address2, address3, city, state, province, postal_code, country_code, alt_phone, email, security_phrase, comments, rank, owner, status, user. Default is NONE for disabled.
|
||||
|
||||
|
||||
An example of a call menu:
|
||||
|
||||
@@ -64,6 +68,11 @@ menu_repeat = 1
|
||||
menu_time_check = 1
|
||||
call_time_id = 9am-5pm
|
||||
track_in_vdac = 1
|
||||
custom_dialplan_entry =
|
||||
tracking_group = CALLMENU
|
||||
dtmf_log = 0
|
||||
dtmf_field = NONE
|
||||
|
||||
|
||||
menu_id = test_menu
|
||||
option_value = 1
|
||||
@@ -172,33 +181,95 @@ exten => h,1,DeadAGI(agi://127.0.0.1:4577/call_log--HVcauses--PRI-----NODEBUG---
|
||||
|
||||
|
||||
|
||||
Example of an inbound IVR using Call Menus and updating existing customer records after querying for a vendor_lead_code with TTS confirmation of last name:
|
||||
|
||||
Database changes needed for Call Menus:
|
||||
###### DO NOT RUN, FOR DOCUMENTATION PURPOSES ONLY! ######
|
||||
1. Make sure Admin -> System Settings options are set:
|
||||
- Allow Custom Dialplan Entries = 1
|
||||
- Enable TTS Integration = 1
|
||||
2. Make sure Cepstral TTS is installed(with licenses) and create this TTS prompt in Admin -> Text To Speech
|
||||
- TTS ID: lastname_oneyestwono
|
||||
- TTS Name: Confirm last name one for yes two for no
|
||||
- TTS Active: Y
|
||||
- TTS Voice: Allison-8kHz
|
||||
- TTS Text: Is this the members last name? <break time='500ms'/> --A--last_name--B-- <break time='1000ms'/> Press one for yes, or two for no.
|
||||
|
||||
CREATE TABLE vicidial_call_menu (
|
||||
menu_id VARCHAR(50) PRIMARY KEY NOT NULL,
|
||||
menu_name VARCHAR(100),
|
||||
menu_prompt VARCHAR(100),
|
||||
menu_timeout SMALLINT(2) UNSIGNED default '10',
|
||||
menu_timeout_prompt VARCHAR(100) default 'NONE',
|
||||
menu_invalid_prompt VARCHAR(100) default 'NONE',
|
||||
menu_repeat TINYINT(1) UNSIGNED default '0',
|
||||
menu_time_check ENUM('0','1') default '0',
|
||||
call_time_id VARCHAR(20) default '',
|
||||
track_in_vdac ENUM('0','1') default '1'
|
||||
);
|
||||
3. Create first Call Menu in Inbound -> Add A New Call Menu
|
||||
- Menu ID: enter_your_id
|
||||
- Menu Name: Enter a Member ID
|
||||
- Menu Prompt: <record a prompt and add it through the Admin -> Audio Store> (remember, 8k/16bit/mono/pcm/wav files)
|
||||
- Menu Timeout: 10
|
||||
- Menu Repeat: 1
|
||||
- Menu Timecheck: 0
|
||||
- Log Key Press: 0
|
||||
- Log Field: NONE
|
||||
- Custom Dialplan Entry:
|
||||
exten => _XXXXXXXX,1,AGI(cm_lookup.agi,vendor_lead_code---CAMPLISTSALL---TESTCAMP---lastname_oneyestwono)
|
||||
<submit to save changes>
|
||||
4. Create second Call Menu -
|
||||
- Menu ID: enter_date
|
||||
- Menu Name: Enter visit date mmdd
|
||||
- Menu Prompt: <recorded prompt>
|
||||
- Menu Timeout: 10
|
||||
- Menu Repeat: 1
|
||||
- Menu Timecheck: 0
|
||||
- Log Key Press: 1
|
||||
- Log Field: email <this is the field that will get the date stored in>
|
||||
- Custom Dialplan Entry:
|
||||
exten => _XXXX,1,AGI(cm.agi,CALLMENU-----${EXTEN}-----email)
|
||||
exten => _XXXX,n,Goto(complete_visit,s,1)
|
||||
<submit to save changes>
|
||||
5. Create third Call Menu -
|
||||
- Menu ID: complete_visit
|
||||
- Menu Name: Was visit complete or not
|
||||
- Menu Prompt: <recorded prompt>
|
||||
- Menu Timeout: 10
|
||||
- Menu Repeat: 1
|
||||
- Menu Timecheck: 0
|
||||
- Log Key Press: 1
|
||||
- Log Field: province <this is the field that will get the response stored in>
|
||||
<submit to save changes>
|
||||
6. Create fourth Call Menu -
|
||||
- Menu ID: incomplete_reason
|
||||
- Menu Name: Reason visit was incomplete
|
||||
- Log Key Press: 1
|
||||
- Log Field: security_phrase <this is the field that will get the response stored in>
|
||||
<submit to save changes>
|
||||
7. Create fifth Call Menu -
|
||||
- Menu ID: followup_required
|
||||
- Menu Name: Is a follow-up required
|
||||
- Log Key Press: 1
|
||||
- Log Field: alt_phone <this is the field that will get the response stored in>
|
||||
<submit to save changes>
|
||||
8. Create sixth Call Menu -
|
||||
- Menu ID: followup_action
|
||||
- Menu Name: Follow-up action
|
||||
- Log Key Press: 1
|
||||
- Log Field: owner <this is the field that will get the response stored in>
|
||||
<submit to save changes>
|
||||
9. Create seventh Call Menu -
|
||||
- Menu ID: update_another_record
|
||||
- Menu Name: Ask if you want to update another record
|
||||
- Log Key Press: 0
|
||||
- Log Field: NONE
|
||||
<submit to save changes>
|
||||
10. Add the following options to these call menus that we have just created:
|
||||
- enter_your_id
|
||||
- Add a "A" option to go to CALLMENU "enter_date", matching IDs will move on
|
||||
- Add a "B" option to go to CALLMENU "enter_your_id", no-match will repeat prompt
|
||||
- enter_date
|
||||
- Add a "INVALID" option to go to CALLMENU "enter_date"
|
||||
- complete_visit
|
||||
- Add a "1" option to go to CALLMENU "update_another_record"
|
||||
- Add a "2" option to go to CALLMENU "incomplete_reason"
|
||||
- incomplete_reason
|
||||
- Add options "1-5" to go to CALLMENU "followup_required"
|
||||
- followup_required
|
||||
- Add a "1" option to go to CALLMENU "followup_action"
|
||||
- Add a "2" option to go to CALLMENU "update_another_record"
|
||||
- Add a "3" option to go to CALLMENU "update_another_record"
|
||||
- incomplete_reason
|
||||
- Add options "1-9" to go to CALLMENU "update_another_record"
|
||||
- followup_required
|
||||
- Add a "1" option to go to CALLMENU "enter_your_id"
|
||||
- Add a "2" option to go to HANGUP with audio prompt "vm-goodbye"
|
||||
|
||||
CREATE TABLE vicidial_call_menu_options (
|
||||
menu_id VARCHAR(50) NOT NULL,
|
||||
option_value VARCHAR(20) NOT NULL default '',
|
||||
option_description VARCHAR(255) default '',
|
||||
option_route VARCHAR(20),
|
||||
option_route_value VARCHAR(100),
|
||||
option_route_value_context VARCHAR(100),
|
||||
index (menu_id),
|
||||
unique index menuoption (menu_id, option_value)
|
||||
);
|
||||
|
||||
ALTER TABLE vicidial_inbound_dids MODIFY did_route ENUM('EXTEN','VOICEMAIL','AGENT','PHONE','IN_GROUP','CALLMENU') default 'EXTEN';
|
||||
ALTER TABLE vicidial_inbound_dids ADD menu_id VARCHAR(50) default '';
|
||||
|
||||
Reference in New Issue
Block a user