Email: erwan.desvergnes@sdci.fr
This how to is working with VICIDIAL latest version and FreePBX 2.2, and Asterisk 1.2.14
I’m using CENTOS 4.4 with latest update ( >10 callcenters for >6 month).
- 1 - Install Centos 4.4 (or any distrib you want)
- 2 - Follow the Matt Florell’s scratch install document.
In order to use FreePBX and Vicidial, you need install following Perl Module.
* Bundle::CPAN * MD5 * Digest::MD5 * Digest::SHA1 * readline * DBI * DBD::mysql * Net::Telnet * Time::HiRes * Net::Server * OLE::Storage_Lite * Spreadsheet::ParseExcel * IPC::Signal * Proc::WaitStat * MIME * Types * Time::HiRes
- 3 - Before compiling asterisk you need to install “SPANDSP” and patching asterisk like it describe in FreePBX setup.
- 4 - In order to use FreePBX, you need to execute Asterisk as a non root user like it describe in FreePBX setup.
- 5 - In reference to the Scratch Install “PHASE 5: CONFIGURING ASTERISK AND YOUR SIP PHONES” is not needed You must replace it by the end of the setup of FreePBX
- 6 - At the end of FreePBX setup you restart Vicidial Scratch install at “PHASE 6: INSTALLING ASTGUICLIENT AND VICIDIAL”
Note: “SUBPHASE 6.2: making additions to your Asterisk conf files” is not needed.
- 7 - At the end of Vicidial setup process you need to make some change to vicidial Installation.
- a. You need to edit “/etc/asterisk/extension.conf” and at the end of the file, you must comment under General context.
-
-
- And in “macro-dialout-trunk” you must do the following change
-
-
-
- exten => s,n,Set(custom=$WARNING: No such module CUT! ) ; Custom trunks are prefixed with "AMP:"
- exten => s,n,GotoIf($"${custom}" = "AMP"?customtrunk)
- exten => s,n,AGI(call_log.agi,${EXTEN}) ; ADD FOR VICIDIAL
- exten => s,n,Dial(${OUT_${DIAL_TRUNK}}/${OUTNUM},300,${DIAL_TRUNK_OPTIONS}) ; Regular Trunk Dial
- exten => s,n,Goto(s-${DIALSTATUS},1)
-
-
- b. You need to edit “/etc/asterisk/extension_custom.conf” at the top of the file just under the comments, you need to had the following lines:
-
-
- #include vicidial_extensions.conf
-
-
-
- custom-vicidial
- include => default
-
-
-
- from-internal-custom
- include => default
-
-
- c. You need to create a file “/etc/asterisk/vicidial_extensions.conf” with the following lines:
-
-
- default
- include => ext-local
-
-
-
- ; Extension 8600 + 8601 conference rooms
- exten => 8600,1,Meetme,8600
- exten => 8601,1,Meetme,8601
-
-
-
- ; Extension 102 - Grandstream hardphone
- exten => 102,1,Playback,transfer|skip ; "Please hold while..."
- exten => 102,2,Dial,sip/gs102|20|to ; Ring, 20 secs max
- exten => 102,3,Voicemail,u102 ; Send to voicemail...
- ; Extension 2000 Sipura line 1
- exten => 2000,1,Dial,sip/spa2000|30|to ; Ring, 30 secs max
- exten => 2000,2,Voicemail,u2000 ; Send to voicemail...
- ; Extension 2001 Sipura line 2
- exten => 2001,1,Dial,sip/spa2001|30|to ; Ring, 30 secs max
- exten => 2001,2,Voicemail,u2001 ; Send to voicemail...
- ; Extension 2020 rings both sipura lines
- exten => 2001,1,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30 secs max
- exten => 2001,2,Voicemail,u2000 ; Send to voicemail...
- ; Extension 301 rings the firefly softphone
- exten => 301,1,Dial,(IAX2/firefly01@firefly01/s)
- exten => 301,2,Hangup
-
-
-
- ; # timeout invalid rules
- exten => #,1,Playback(invalid) ; "Thanks for trying the demo"
- exten => #,2,Hangup ; Hang them up.
- exten => t,1,Goto(#,1) ; If they take too long, give up
- exten => i,1,Playback(invalid) ; "That's not valid, try again"
-
-
-
- ; Give voicemail at extension 8500
- exten => 8500,1,VoicemailMain?
- exten => 8500,2,Goto(s,6)
-
-
-
- ; ASTERISK AGENTS LOGINS FOR QUEUES (NOT part of VICIDIAL)
- ; the following assumes phone agent login and exten are 3 digits and the same
- ; also assumes that 3-digit login is present in agents.conf and queueus.conf
- ;Agent Logout then stay onhook, DIAL 54 + 3-digit ID
- exten => _54XXX,1,AgentCallbackLogin(
-
)
-
-
-
- the following are used to login and logout of Asterisk Queues from phone
- Agent Login then stay offhook on the phone, DIAL 55 + 3-digit ID
- exten => _55XXX,1,AgentLogin(${EXTEN:1})
- Agent Login then stay onhook, phones will ring, DIAL 56 + 3-digit ID
- exten => _56XXX,1,AgentCallbackLogin(
-
-
${EXTEN:1}@default)
-
-
- ; Extension 4001 rings Zap phone
- exten => 4001,1,Dial,Zap/1|30| ; ring Zap device 1
- exten => 4001,2,Voicemail,u4001 ; Send to voicemail...
-
-
-
- exten => h,1,DeadAGI(agi://127.0.0.1:4577/call_log)
- exten => h,2,DeadAGI(agi://127.0.0.1:4577/VD_hangup--HVcauses--PRI-----NODEBUG-----${HANGUPCAUSE}-----${DIALSTATUS}-----${DIALEDTIME}-----${ANSWEREDTIME}))
- ;exten => h,1,DeadAGI(call_log.agi,${EXTEN}) ; DeadAGI is new
- ;exten => h,2,DeadAGI(VD_hangup.agi,PRI-----NODEBUG-----${HANGUPCAUSE}-----${DIALSTATUS}-----${DIALEDTIME}-----${ANSWEREDTIME})
-
-
-
- ; Extension 3429 - Inbound 800 number ()
- exten => _**3429,1,Ringing
- exten => _**3429,2,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _**3429,2,AGI(call_log.agi,${EXTEN})
- exten => _**3429,3,Answer
- exten => _**3429,4,Dial,sip/spa2000&sip/spa2001|30|to
- exten => _**3429,5,Voicemail,u2000
- ; Extension 3429 - with ANI callerID
- exten => _*NXXNXXXXXX*3429,1,Ringing
- exten => _*NXXNXXXXXX*3429,2,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _*NXXNXXXXXX*3429,2,AGI(call_log.agi,${EXTEN})
- exten => _*NXXNXXXXXX*3429,3,Answer
- exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001|30|to
- exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000
-
-
-
- ; Inbound call from BINFONE
- ; exten => ,1,AGI(agi://127.0.0.1:4577/call_log)
- ; exten => ,1,AGI(call_log.agi,${EXTEN})
- ; exten => ,2,Dial(sip/gs102,55,o)
- ; exten => ,3,Hangup
-
-
-
- ; Extension - Inbound local number from PRI with 10 digit delivery
- exten => ,1,Ringing
- exten => ,2,Wait(1)
- exten => ,3,AGI(agi://127.0.0.1:4577/call_log--fullCID--${EXTEN}-----${CALLERID}-----${CALLERIDNUM}-----${CALLERIDNAME})
- ;exten => ,3,AGI(call_logCID.agi,${EXTEN}-----${CALLERID}-----${CALLERIDNUM}-----${CALLERIDNAME})
- exten => ,4,Answer
- exten => ,5,Dial,sip/spa2000&sip/spa2001|30|to
- exten => ,6,Voicemail,u2000
-
-
-
- ; dial a long distance outbound number to the UK
- exten => _901144XXXXXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _901144XXXXXXXXXX,1,AGI(call_log.agi,${EXTEN})
- exten => _901144XXXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},55,tTo)
- exten => _901144XXXXXXXXXX,3,Hangup
-
-
-
- ; dial a long distance outbound number to Australia
- exten => _901161XXXXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _901161XXXXXXXXX,1,AGI(call_log.agi,${EXTEN})
- exten => _901161XXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo)
- exten => _901161XXXXXXXXX,3,Hangup
-
-
-
- ; dial an 800 outbound number
- exten => _91800NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _91800NXXXXXX,1,AGI(call_log.agi,${EXTEN})
- exten => _91800NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
- exten => _91800NXXXXXX,3,Hangup
- exten => _91888NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _91888NXXXXXX,1,AGI(call_log.agi,${EXTEN})
- exten => _91888NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
- exten => _91888NXXXXXX,3,Hangup
- exten => _91877NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _91877NXXXXXX,1,AGI(call_log.agi,${EXTEN})
- exten => _91877NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
- exten => _91877NXXXXXX,3,Hangup
- exten => _91866NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _91866NXXXXXX,1,AGI(call_log.agi,${EXTEN})
- exten => _91866NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
- exten => _91866NXXXXXX,3,Hangup
-
-
-
- ; dial a local 727 outbound number with area code
- exten => _9727NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _9727NXXXXXX,1,AGI(call_log.agi,${EXTEN})
- exten => _9727NXXXXXX,2,Dial(${TRUNK}/1${EXTEN:1},,tTo)
- exten => _9727NXXXXXX,3,Hangup
-
-
-
- ; dial a local 813 outbound number with area code
- exten => _9813NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _9813NXXXXXX,1,AGI(call_log.agi,${EXTEN})
- exten => _9813NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo)
- exten => _9813NXXXXXX,3,Hangup
-
-
-
- ; dial a long distance outbound number
- exten => _91NXXNXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _91NXXNXXXXXX,1,AGI(call_log.agi,${EXTEN})
- exten => _91NXXNXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo)
- exten => _91NXXNXXXXXX,3,Hangup
- ; dial a long distance outbound number through BINFONE
- ; exten => _91NXXNXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;; exten => _91NXXNXXXXXX,1,AGI(call_log.agi,${EXTEN})
- ; exten => _91NXXNXXXXXX,2,Dial(${TRUNKIAX}/${EXTEN},55,o)
- ; exten => _91NXXNXXXXXX,3,Hangup
- ; dial a long distance outbound number through a SIP provider
- ; exten => _91NXXNXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;; exten => _91NXXNXXXXXX,1,AGI(call_log.agi,${EXTEN})
- ; exten => _91NXXNXXXXXX,2,Dial(sip/${EXTEN}@SIPtrunk,55,o)
- ; exten => _91NXXNXXXXXX,3,Hangup
-
-
-
- ; dial Phone Number for France IAX
- exten => _910X.,1,AGI(agi://127.0.0.1:4577/call_log)
- exten => _910X.,2,Dial(${OUT_2}/${EXTEN:2},55,o) ; Name of the trunk chose in extensions_additional.conf
-
-
-
- ; dial a local outbound number (modified because of only LD T1)
- exten => _9NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _9NXXXXXX,1,AGI(call_log.agi,${EXTEN})
- exten => _9NXXXXXX,2,Dial(${TRUNK}/1727${EXTEN:1},,tTo)
- exten => _9NXXXXXX,3,Hangup
-
-
-
- ; parameters for call_inbound.agi (7 fields separated by five dashes "-----"):
- ; 1. the extension of the phone to ring as defined in the asterisk.phones table
- ; 2. the phone number that was called, for the live_inbound/_log entry
- ; 3. a text description of the number that was called in
- ; 4-7. optional fields, they are also passed as fields in the GUI to web browser
-
-
-
- ; Extension 3429 - Inbound 800 number ()
- exten => _**3429,1,Ringing
- exten => _**3429,2,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _**3429,2,AGI(call_log.agi,${EXTEN})
- exten => _**3429,3,AGI(call_inbound.agi,spa2000----------Inbound 800-----x-----y-----z-----w)
- exten => _**3429,4,Answer
- exten => _**3429,5,Dial,sip/spa2000&sip/spa2001|30|to
- exten => _**3429,6,Voicemail,u2000
- ; Extension 3429 - with ANI callerID
- exten => _*NXXNXXXXXX*3429,1,Ringing
- exten => _*NXXNXXXXXX*3429,2,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => _*NXXNXXXXXX*3429,2,AGI(call_log.agi,${EXTEN})
- exten => _*NXXNXXXXXX*3429,3,AGI(call_inbound.agi,spa2000----------Inbound 800-----x-----y-----z-----w)
- exten => _*NXXNXXXXXX*3429,3,Answer
- exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001|30|to
- exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000
-
-
-
- exten => _010*01XXX,1,Goto(default,${EXTEN:16},1)
- exten => _010*01XXX*.,1,Goto(default,${EXTEN:16},1)
- exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)
-
-
-
- ; ### server 2 extens:
- ; exten => _010*01XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o)
- ; exten => _010*01XXX,2,Hangup
- ; exten => _010*01XXX*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o)
- ; exten => _010*01XXX*.,2,Hangup
-
-
-
- ; parameters for agi-VDADcloser.agi (2 fields separated by five dashes "-----"):
- ; 1. the full extension formatted by VICIDIAL for internal transfers * separated
- ; 2. the word START to denote the beginning of the acceptance of the transfer
- ; inbound VICIDIAL transfer calls can arrive through PRI T1 crossover or IAX channel
- exten => _90009.,1,Answer ; Answer the line
- exten => _90009.,2,AGI(agi-VDADcloser.agi,${EXTEN}-----START)
- exten => _90009.,3,Hangup
-
-
-
- ; parameters for agi-VDADcloser_inbound....agi (7 fields separated by five dashes "-----"):
- ; 1. the full name of the IN GROUP to be used in vicidial for the inbound call
- ; 2. the phone number that was called, for the log entry
- ; 3. the callerID or lead_id of the person that called(usually overridden)
- ; 4. the park extension audio file name if used
- ; 5. the status of the call initially(usually not used)
- ; 6. the list_id to insert the new lead under if it is new (and callerID available)
- ; 7. the phone dialing code to insert with the new lead if new (and callerID available)
-
-
-
- ; inbound VICIDIAL call with CID delivery through T1 PRI
- exten => 1234,1,Ringing ; call ringing
- exten => 1234,2,Wait(1) ; Wait 1 second for CID delivery from PRI
- exten => 1234,3,Answer ; Answer the line
- exten => 1234,4,AGI(agi-VDADcloser_inboundCID.agi,CL_GALLERIA----------Closer-----park----------999-----1)
- exten => 1234,5,Hangup
-
-
-
- ; inbound VICIDIAL call with ANI delivery through robbed-bit T1 (*NXXNXXXXXX*DNIS)
- exten => 1234,1,Answer ; Answer the line
- exten => 1234,2,AGI(agi-VDADcloser_inboundANI.agi,CL_GALLERIA----------Closer-----park----------999-----1)
- exten => 1234,3,Hangup
-
-
-
- ; inbound VICIDIAL call with prompt for 4-digit fronter code
- exten => 1234,1,Answer ; Answer the line
- exten => 1234,2,AGI(agi-VDADcloser_inbound.agi,CL_GALLERIA----------Closer-----park----------999-----1)
- exten => 1234,3,Hangup
-
-
-
- ; barge monitoring extension
- exten => 8159,1,ZapBarge?
- exten => 8159,2,Hangup
-
-
-
- ; ZapBarge? direct channel extensions
- exten => 8612001,1,ZapBarge(1)
- exten => 8612002,1,ZapBarge(2)
- exten => 8612003,1,ZapBarge(3)
- exten => 8612004,1,ZapBarge(4)
- exten => 8612005,1,ZapBarge(5)
- exten => 8612006,1,ZapBarge(6)
- exten => 8612007,1,ZapBarge(7)
- exten => 8612008,1,ZapBarge(8)
- exten => 8612009,1,ZapBarge(9)
- exten => 8612010,1,ZapBarge(10)
- exten => 8612011,1,ZapBarge(11)
- exten => 8612012,1,ZapBarge(12)
- exten => 8612013,1,ZapBarge(13)
- exten => 8612014,1,ZapBarge(14)
- exten => 8612015,1,ZapBarge(15)
- exten => 8612016,1,ZapBarge(16)
- exten => 8612017,1,ZapBarge(17)
- exten => 8612018,1,ZapBarge(18)
- exten => 8612019,1,ZapBarge(19)
- exten => 8612020,1,ZapBarge(20)
- exten => 8612021,1,ZapBarge(21)
- exten => 8612022,1,ZapBarge(22)
- exten => 8612023,1,ZapBarge(23)
- exten => 8612024,1,ZapBarge(24)
-
-
-
- ; astGUIclient conferences
- exten => 8600001,1,Meetme,8600001|q
- exten => 8600002,1,Meetme,8600002|q
- exten => 8600003,1,Meetme,8600003|q
- exten => 8600004,1,Meetme,8600004|q
- exten => 8600005,1,Meetme,8600005|q
- exten => 8600006,1,Meetme,8600006|q
- exten => 8600007,1,Meetme,8600007|q
- exten => 8600008,1,Meetme,8600008|q
- exten => 8600009,1,Meetme,8600009|q
- exten => 8600010,1,Meetme,8600010|q
- exten => 8600011,1,Meetme,8600011|q
- exten => 8600012,1,Meetme,8600012|q
- exten => 8600013,1,Meetme,8600013|q
- exten => 8600014,1,Meetme,8600014|q
- exten => 8600015,1,Meetme,8600015|q
- exten => 8600016,1,Meetme,8600016|q
- exten => 8600017,1,Meetme,8600017|q
- exten => 8600018,1,Meetme,8600018|q
- exten => 8600019,1,Meetme,8600019|q
- exten => 8600020,1,Meetme,8600020|q
- exten => 8600021,1,Meetme,8600021|q
- exten => 8600022,1,Meetme,8600022|q
- exten => 8600023,1,Meetme,8600023|q
- exten => 8600024,1,Meetme,8600024|q
- exten => 8600025,1,Meetme,8600025|q
- exten => 8600026,1,Meetme,8600026|q
- exten => 8600027,1,Meetme,8600027|q
- exten => 8600028,1,Meetme,8600028|q
- exten => 8600029,1,Meetme,8600029|q
-
-
-
- exten => _X48600XXX,1,MeetMeAdmin(${EXTEN:2},T,${EXTEN:0:1})
- exten => _X48600XXX,2,Hangup
-
-
-
- exten => _X38600XXX,1,MeetMeAdmin(${EXTEN:2},t,${EXTEN:0:1})
- exten => _X38600XXX,2,Hangup
-
-
-
- exten => 8300,1,Hangup
-
-
-
- ; VICIDIAL conferences
- exten => 8600051,1,Meetme,8600051
- exten => 8600052,1,Meetme,8600052
- exten => 8600053,1,Meetme,8600053
- exten => 8600054,1,Meetme,8600054
- exten => 8600055,1,Meetme,8600055
- exten => 8600056,1,Meetme,8600056
- exten => 8600057,1,Meetme,8600057
- exten => 8600058,1,Meetme,8600058
- exten => 8600059,1,Meetme,8600059
- exten => 8600060,1,Meetme,8600060
- exten => 8600061,1,Meetme,8600061
- exten => 8600062,1,Meetme,8600062
- exten => 8600063,1,Meetme,8600063
- exten => 8600064,1,Meetme,8600064
- exten => 8600065,1,Meetme,8600065
- exten => 8600066,1,Meetme,8600066
- exten => 8600067,1,Meetme,8600067
- exten => 8600068,1,Meetme,8600068
- exten => 8600069,1,Meetme,8600069
- exten => 8600070,1,Meetme,8600070
- exten => 8600071,1,Meetme,8600071
- exten => 8600072,1,Meetme,8600072
- exten => 8600073,1,Meetme,8600073
- exten => 8600074,1,Meetme,8600074
- exten => 8600075,1,Meetme,8600075
- exten => 8600076,1,Meetme,8600076
- exten => 8600077,1,Meetme,8600077
- exten => 8600078,1,Meetme,8600078
- exten => 8600079,1,Meetme,8600079
- exten => 8600080,1,Meetme,8600080
- exten => 8600081,1,Meetme,8600081
- exten => 8600082,1,Meetme,8600082
- exten => 8600083,1,Meetme,8600083
- exten => 8600084,1,Meetme,8600084
- exten => 8600085,1,Meetme,8600085
- exten => 8600086,1,Meetme,8600086
- exten => 8600087,1,Meetme,8600087
- exten => 8600088,1,Meetme,8600088
- exten => 8600089,1,Meetme,8600089
- exten => 8600090,1,Meetme,8600090
- exten => 8600091,1,Meetme,8600091
- exten => 8600092,1,Meetme,8600092
- exten => 8600093,1,Meetme,8600093
- exten => 8600094,1,Meetme,8600094
- exten => 8600095,1,Meetme,8600095
- exten => 8600096,1,Meetme,8600096
- exten => 8600097,1,Meetme,8600097
- exten => 8600098,1,Meetme,8600098
- exten => 8600099,1,Meetme,8600099
- exten => 8600100,1,Meetme,8600100
- exten => 8600101,1,Meetme,8600101
- exten => 8600102,1,Meetme,8600102
- exten => 8600103,1,Meetme,8600103
- exten => 8600104,1,Meetme,8600104
- exten => 8600105,1,Meetme,8600105
- exten => 8600106,1,Meetme,8600106
- exten => 8600107,1,Meetme,8600107
- exten => 8600108,1,Meetme,8600108
- exten => 8600109,1,Meetme,8600109
- exten => 8600110,1,Meetme,8600110
- exten => 8600111,1,Meetme,8600111
- exten => 8600112,1,Meetme,8600112
- exten => 8600113,1,Meetme,8600113
- exten => 8600114,1,Meetme,8600114
- exten => 8600115,1,Meetme,8600115
- exten => 8600116,1,Meetme,8600116
- exten => 8600117,1,Meetme,8600117
- exten => 8600118,1,Meetme,8600118
- exten => 8600119,1,Meetme,8600119
- exten => 8600120,1,Meetme,8600120
- exten => 8600121,1,Meetme,8600121
- exten => 8600122,1,Meetme,8600122
- exten => 8600123,1,Meetme,8600123
- exten => 8600124,1,Meetme,8600124
- exten => 8600125,1,Meetme,8600125
- exten => 8600126,1,Meetme,8600126
- exten => 8600127,1,Meetme,8600127
- exten => 8600128,1,Meetme,8600128
- exten => 8600129,1,Meetme,8600129
- exten => 8600130,1,Meetme,8600130
- exten => 8600131,1,Meetme,8600131
- exten => 8600132,1,Meetme,8600132
- exten => 8600133,1,Meetme,8600133
- exten => 8600134,1,Meetme,8600134
- exten => 8600135,1,Meetme,8600135
- exten => 8600136,1,Meetme,8600136
- exten => 8600137,1,Meetme,8600137
- exten => 8600138,1,Meetme,8600138
- exten => 8600139,1,Meetme,8600139
- exten => 8600140,1,Meetme,8600140
- exten => 8600141,1,Meetme,8600141
- exten => 8600142,1,Meetme,8600142
- exten => 8600143,1,Meetme,8600143
- exten => 8600144,1,Meetme,8600144
- exten => 8600145,1,Meetme,8600145
- exten => 8600146,1,Meetme,8600146
- exten => 8600147,1,Meetme,8600147
- exten => 8600148,1,Meetme,8600148
- exten => 8600149,1,Meetme,8600149
- exten => 8600150,1,Meetme,8600150
- exten => 8600151,1,Meetme,8600151
- exten => 8600152,1,Meetme,8600152
- exten => 8600153,1,Meetme,8600153
- exten => 8600154,1,Meetme,8600154
- exten => 8600155,1,Meetme,8600155
- exten => 8600156,1,Meetme,8600156
- exten => 8600157,1,Meetme,8600157
- exten => 8600158,1,Meetme,8600158
- exten => 8600159,1,Meetme,8600159
- exten => 8600160,1,Meetme,8600160
- exten => 8600161,1,Meetme,8600161
- exten => 8600162,1,Meetme,8600162
- exten => 8600163,1,Meetme,8600163
- exten => 8600164,1,Meetme,8600164
- exten => 8600165,1,Meetme,8600165
- exten => 8600166,1,Meetme,8600166
- exten => 8600167,1,Meetme,8600167
- exten => 8600168,1,Meetme,8600168
- exten => 8600169,1,Meetme,8600169
- exten => 8600170,1,Meetme,8600170
- exten => 8600171,1,Meetme,8600171
- exten => 8600172,1,Meetme,8600172
- exten => 8600173,1,Meetme,8600173
- exten => 8600174,1,Meetme,8600174
- exten => 8600175,1,Meetme,8600175
- exten => 8600176,1,Meetme,8600176
- exten => 8600177,1,Meetme,8600177
- exten => 8600178,1,Meetme,8600178
- exten => 8600179,1,Meetme,8600179
- exten => 8600180,1,Meetme,8600180
- exten => 8600181,1,Meetme,8600181
- exten => 8600182,1,Meetme,8600182
- exten => 8600183,1,Meetme,8600183
- exten => 8600184,1,Meetme,8600184
- exten => 8600185,1,Meetme,8600185
- exten => 8600186,1,Meetme,8600186
- exten => 8600187,1,Meetme,8600187
- exten => 8600188,1,Meetme,8600188
- exten => 8600189,1,Meetme,8600189
- exten => 8600190,1,Meetme,8600190
- exten => 8600191,1,Meetme,8600191
- exten => 8600192,1,Meetme,8600192
- exten => 8600193,1,Meetme,8600193
- exten => 8600194,1,Meetme,8600194
- exten => 8600195,1,Meetme,8600195
- exten => 8600196,1,Meetme,8600196
- exten => 8600197,1,Meetme,8600197
- exten => 8600198,1,Meetme,8600198
- exten => 8600199,1,Meetme,8600199
- exten => 8600200,1,Meetme,8600200
- ; quiet entry and leaving conferences for VICIDIAL
- exten => _78600XXX,1,Meetme,${EXTEN:1}|q
- ; quiet monitor extensions for meetme rooms (for room managers)
- exten => _68600XXX,1,Meetme,${EXTEN:1}|mq
-
-
-
- ; park channel for client GUI parking, hangup after 30 minutes
- ; create a GSM formatted audio file named "park.gsm" that is 30 minutes long
- ; and put it in /var/lib/asterisk/sounds
- exten => 8301,1,Answer
- exten => 8301,2,AGI(park_CID.agi)
- exten => 8301,3,Playback(park)
- exten => 8301,4,Hangup
- exten => 8303,1,Answer
- exten => 8303,2,AGI(park_CID.agi)
- exten => 8303,3,Playback(conf)
- exten => 8303,4,Hangup
-
-
-
- ; park channel for client GUI conferencing, hangup after 30 minutes
- ; create a GSM formatted audio file named "conf.gsm" that is 30 minutes long
- ; and put it in /var/lib/asterisk/sounds
- exten => 8302,1,Answer
- exten => 8302,2,Playback(conf)
- exten => 8302,3,Hangup
-
-
-
- ; default audio for safe harbor 2-second-after-hello message then hangup
- ; create a GSM formatted audio file complies with safe harbor rules
- ; and put it in /var/lib/asterisk/sounds then change filename below
- exten => 8307,1,Answer
- exten => 8307,2,Playback(vm-goodbye)
- exten => 8307,3,Hangup
-
-
-
- ; this is used for recording conference calls, the client app sends the filename
- ; value as a callerID recordings go to /var/spool/asterisk/monitor (WAV)
- exten => 8309,1,Answer
- exten => 8309,2,Monitor(wav,${CALLERIDNAME})
- exten => 8309,3,Wait,3600
- exten => 8309,4,Hangup
-
-
-
- ; this is used for recording conference calls, the client app sends the filename
- ; value as a callerID recordings go to /var/spool/asterisk/monitor (GSM)
- exten => 8310,1,Answer
- exten => 8310,2,Monitor(gsm,${CALLERIDNAME})
- exten => 8310,3,Wait,3600
- exten => 8310,4,Hangup
-
-
-
- ; this is used for playing a message to an answering machine forwarded from AMD in VICIDIAL
- ; replace conf with the message file you want to leave
- exten => 8320,1,WaitForSilence(2000,2) ; AMD got machine. leave message after recording
- exten => 8320,2,Playback(conf)
- exten => 8320,3,AGI(VD_amd_post.agi,${EXTEN})
- exten => 8320,4,Hangup
-
-
-
- ; use for selective CallerID hangup by area code(hard-coded)
- exten => 8352,1,AGI(agi-VDADselective_CID_hangup.agi,${EXTEN})
- exten => 8352,2,Playback(safe_harbor)
- exten => 8352,3,Hangup
-
-
-
- ; prompt recording AGI script, ID is 4321
- exten => 8168,1,Answer
- exten => 8168,2,AGI(agi-record_prompts.agi)
- exten => 8168,3,Hangup
-
-
-
- ; playback of recorded prompts
- exten => _851XXXXX,1,Answer
- exten => _851XXXXX,2,Playback(${EXTEN})
- exten => _851XXXXX,3,Hangup
-
-
-
- ; this is used to allow the GUI to send you directly into voicemail
- ; don't forget to set GUI variable $voicemail_exten to this extension
- exten => 8501,1,VoicemailMain(s${CALLERIDNUM})
- exten => 8501,2,Hangup
-
-
-
- ; this is used to allow the GUI to send live calls directly into voicemail
- ; don't forget to set GUI variable $voicemail_dump_exten to this extension
- exten => _6666.,1,Wait(2)
- exten => _6666.,2,Voicemail(${EXTEN:14})
- exten => _6666.,3,Hangup
-
-
-
- ; this is used for sending DTMF signals within conference calls, the client app
- ; sends the digits to be played in the callerID field
- ; sound files must be placed in /var/lib/asterisk/sounds
- exten => 8500998,1,Answer
- exten => 8500998,2,Playback(silence)
- exten => 8500998,3,AGI(agi-dtmf.agi)
- exten => 8500998,4,Hangup
-
-
-
- ;#### VDAD SIP UNREGISTERED TRANSFER ENTRIES ####
- ;#### Use these entries IN PLACE OF the entries above if you are using SIP trunks
- ;#### and are not registering your provider in sip.conf
- ;; VICIDIAL_auto_dialer transfer script:
- ;exten => 8365,1,Playback(sip-silence)
- ;exten => 8365,2,AGI(agi://127.0.0.1:4577/call_log)
- ;;exten => 8365,2,AGI(call_log.agi,${EXTEN})
- ;exten => 8365,3,AGI(agi-VDADtransfer.agi,${EXTEN})
- ;exten => 8365,4,AGI(agi-VDADtransfer.agi,${EXTEN})
- ;exten => 8365,5,AGI(agi-VDADtransfer.agi,${EXTEN})
- ;exten => 8365,6,Hangup
-
-
-
- ;#### VDAD STANDARD TRANSFER ENTRIES ####
- ; VICIDIAL_auto_dialer transfer script:
- exten => 8365,1,Playback(sip-silence)
- exten => 8365,2,AGI(agi://127.0.0.1:4577/call_log)
- ;exten => 8365,1,AGI(call_log.agi,${EXTEN})
- exten => 8365,3,AGI(agi-VDADtransfer.agi,${EXTEN:2})
- exten => 8365,4,AGI(agi-VDADtransfer.agi,${EXTEN:2})
- exten => 8365,5,AGI(agi-VDADtransfer.agi,${EXTEN:2})
- exten => 8365,6,Hangup
-
-
-
- ;
- ;; VICIDIAL_auto_dialer transfer script SURVEY at beginning:
- exten => 8366,1,Playback(sip-silence)
- exten => 8366,2,AGI(agi://127.0.0.1:4577/call_log)
- ;;exten => 8366,2,AGI(call_log.agi,${EXTEN})
- exten => 8366,3,AGI(agi-VDADtransferSURVEY.agi,${EXTEN})
- exten => 8366,4,AGI(agi-VDADtransferSURVEY.agi,${EXTEN})
- exten => 8366,5,Hangup
- ;
- ;; VICIDIAL_auto_dialer transfer script Load Balance Overflow:
- exten => 8367,1,Playback(sip-silence)
- exten => 8367,2,AGI(agi://127.0.0.1:4577/call_log)
- ;;exten => 8367,2,AGI(call_log.agi,${EXTEN})
- exten => 8367,3,AGI(agi-VDAD_LO_transfer.agi,${EXTEN})
- exten => 8367,4,AGI(agi-VDAD_LO_transfer.agi,${EXTEN})
- exten => 8367,5,Hangup
- ;
- ;; VICIDIAL_auto_dialer transfer script Load Balanced:
- exten => 8368,1,Playback(sip-silence)
- exten => 8368,2,AGI(agi://127.0.0.1:4577/call_log)
- ;;exten => 8368,2,AGI(call_log.agi,${EXTEN})
- exten => 8368,3,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
- exten => 8368,4,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
- exten => 8368,5,Hangup
- ;
- ;; VICIDIAL_auto_dialer transfer script AMD with Load Balanced:
- exten => 8369,1,Playback(sip-silence)
- exten => 8369,2,AGI(agi://127.0.0.1:4577/call_log)
- ;;exten => 8369,2,AGI(call_log.agi,${EXTEN})
- exten => 8369,3,AMD(3500||120|50|5|256)
- exten => 8369,4,AGI(VD_amd.agi,${EXTEN})
- exten => 8369,5,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
- exten => 8369,6,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
- exten => 8369,7,Hangup
- ;
- ;; VICIDIAL auto-dial reminder script
- exten => 8372,1,Playback(sip-silence)
- exten => 8372,2,AGI(agi://127.0.0.1:4577/call_log)
- ;;exten => 8372,2,AGI(call_log.agi,${EXTEN})
- exten => 8372,3,AGI(agi-VDADautoREMINDER.agi,${EXTEN})
- exten => 8372,4,AGI(agi-VDADautoREMINDER.agi,${EXTEN})
- exten => 8372,5,Hangup
-
-
- d. You need to edit “/etc/asterisk/manager.conf” and add the following lines:
-
-
- admin
- secret = amp111
- deny=0.0.0.0/0.0.0.0
- permit=127.0.0.1/255.255.255.0
- read = system,call,log,verbose,command,agent,user
- write = system,call,log,verbose,command,agent,user
-
-
-
- cron
- secret = 1234
- read = system,call,log,verbose,command,agent,user
- write = system,call,log,verbose,command,agent,user
-
-
-
- updatecron
- secret = 1234
- read = system,call,log,verbose,command,agent,user
- write = system,call,log,verbose,command,agent,user
-
-
-
- listencron
- secret = 1234
- read = system,call,log,verbose,command,agent,user
- write = command
-
-
-
- sendcron
- secret = 1234
- read = command
- write = system,call,log,verbose,command,agent,user
-
-
-
- user1
- secret = 1234
- read = system,call,log,verbose,command,agent,user
- write = system,call,log,verbose,command,agent,user
-
-
- e. You need to edit “/etc/asterisk/meetme.conf” and add the following line:
-
-
- #include vicidial_meetme.conf
-
-
- f. You need to create a file “/etc/asterisk/vicidial_meetme.conf” and add the following lines:
-
-
- conf => 8600011
- conf => 8600012
- conf => 8600013
- conf => 8600014
- conf => 8600015
- conf => 8600016
- conf => 8600017
- conf => 8600018
- conf => 8600019
- conf => 8600020
- conf => 8600021
- conf => 8600022
- conf => 8600023
- conf => 8600024
- conf => 8600025
- conf => 8600026
- conf => 8600027
- conf => 8600028
- conf => 8600029
- conf => 8600051
- conf => 8600052
- conf => 8600053
- conf => 8600054
- conf => 8600055
- conf => 8600056
- conf => 8600057
- conf => 8600058
- conf => 8600059
- conf => 8600060
- conf => 8600061
- conf => 8600062
- conf => 8600063
- conf => 8600064
- conf => 8600065
- conf => 8600066
- conf => 8600067
- conf => 8600068
- conf => 8600069
- conf => 8600070
- conf => 8600071
- conf => 8600072
- conf => 8600073
- conf => 8600074
- conf => 8600075
- conf => 8600076
- conf => 8600077
- conf => 8600078
- conf => 8600079
- conf => 8600080
- conf => 8600081
- conf => 8600082
- conf => 8600083
- conf => 8600084
- conf => 8600085
- conf => 8600086
- conf => 8600087
- conf => 8600088
- conf => 8600089
- conf => 8600090
- conf => 8600091
- conf => 8600092
- conf => 8600093
- conf => 8600094
- conf => 8600095
- conf => 8600096
- conf => 8600097
- conf => 8600098
- conf => 8600099
- conf => 8600100
-
-
- g. In order to get better performance in Perl Script, you need to start asterisk using Matt Florell’s starup script. For this purpose, you need to edit “/usr/sbin/amportal” near line 178 and make follwing change:
-
-
- case "$1" in
- start)
- chown_asterisk
- # run_asterisk #Replace for Vicidial use
- /usr/share/astguiclient/start_asterisk_boot.pl
- run_fop
- ;;
- stop)
- stop_asterisk
- stop_fop
- ;;
- restart)
- stop_asterisk
- stop_fop
- sleep 1
- chown_asterisk
- # run_asterisk #Replace for Vicidial use
- /usr/share/astguiclient/start_asterisk_boot.pl
- run_fop
- ;;
- chown)
- chown_asterisk
- ;;
- kill)
- kill_amp
- ;;
- *)
- echo "----------AMP Control Script-----------"
-
All must be right now to start using VICIDIAL and FreePBX
If anyone has any questions, comments, or concerns, please let me know.
No comments:
Post a Comment