From 0f12d519b2f2375dc8fb91d5de0046fec5e62bbf Mon Sep 17 00:00:00 2001 From: mattf Date: Mon, 31 Mar 2008 09:43:38 +0000 Subject: [PATCH] updated docs added performance tuning extensions to default extensions.conf files git-svn-id: svn://192.168.202.10@819 3d104415-ff17-0410-8863-d5cf3c621b8a --- .../branches/agc_2.0.4/docs/BASE_INSTALL.txt | 21 +- .../agc_2.0.4/docs/LOAD_BALANCING.txt | 54 +- .../agc_2.0.4/docs/PERFORMANCE_TESTING.txt | 36 +- .../agc_2.0.4/docs/REQUIRED_APPS_INSTALL.txt | 48 +- .../agc_2.0.4/docs/SCRATCH_INSTALL.txt | 343 +++-------- .../docs/conf_examples/extensions.conf.sample | 569 +++++------------- .../conf_examples/extensions.conf.sample-1.4 | 568 +++++------------ .../docs/conf_examples/iax.conf.sample | 26 + agc_2-X/trunk/UPGRADE | 4 + agc_2-X/trunk/docs/BASE_INSTALL.txt | 21 +- agc_2-X/trunk/docs/PERFORMANCE_TESTING.txt | 35 +- agc_2-X/trunk/docs/REQUIRED_APPS_INSTALL.txt | 48 +- agc_2-X/trunk/docs/SCRATCH_INSTALL.txt | 347 +++-------- .../docs/conf_examples/extensions.conf.sample | 74 +++ .../conf_examples/extensions.conf.sample-1.4 | 74 +++ 15 files changed, 826 insertions(+), 1442 deletions(-) diff --git a/agc_2-X/branches/agc_2.0.4/docs/BASE_INSTALL.txt b/agc_2-X/branches/agc_2.0.4/docs/BASE_INSTALL.txt index 44dea57f..e86e8d65 100644 --- a/agc_2-X/branches/agc_2.0.4/docs/BASE_INSTALL.txt +++ b/agc_2-X/branches/agc_2.0.4/docs/BASE_INSTALL.txt @@ -1,4 +1,4 @@ -Asterisk/astguiclient install from existing server. v.2.0.4 2007-12-03 +Asterisk/astguiclient install from existing server. v.2.0.4.1 2008-04-02 By the astGUIclient group astguiclient@eflo.net @@ -187,12 +187,12 @@ VICIDIAL components to the system. There are two methods for downloading astGUIclient/VICIDIAL, a release and SVN 1. Go to http://astguiclient.sf.net/ and download the latest astguiclient -package(as of this writing it is 2.0.4) +package(as of this writing it is 2.0.4.1) - for 2.0.X release: mkdir /usr/src/astguiclient cd /usr/src/astguiclient - wget http://internap.dl.sourceforge.net/sourceforge/astguiclient/astguiclient_2.0.4.zip - unzip astguiclient_2.0.4.zip + wget http://internap.dl.sourceforge.net/sourceforge/astguiclient/astguiclient_2.0.4.1.zip + unzip astguiclient_2.0.4.1.zip perl install.pl - for SVN 2.0 trunk: mkdir /usr/src/astguiclient @@ -507,8 +507,17 @@ insert into vicidial_statuses values('XFER','Call Transferred','Y','Y','UNDEFINE quit - run this command from command line: - - /usr/share/astguiclient/ADMIN_area_code_populate.pl + to populate the timezone/country table run this command from command line: + - /usr/share/astguiclient/ADMIN_area_code_populate.pl + + to load the performance testing leads run these commands: + - cp /usr/src/astguiclient/trunk/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + or + - cp /usr/src/astguiclient/agc_2.0.4/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + - cp /usr/src/astguiclient_2.0.4.1/trunk/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + + - /usr/share/astguiclient/VICIDIAL_IN_new_leads_file.pl --forcelistid=107 --forcephonecode=1 + ######------ END Mysql data entry ------###### diff --git a/agc_2-X/branches/agc_2.0.4/docs/LOAD_BALANCING.txt b/agc_2-X/branches/agc_2.0.4/docs/LOAD_BALANCING.txt index f48e31a1..0b79de1d 100644 --- a/agc_2-X/branches/agc_2.0.4/docs/LOAD_BALANCING.txt +++ b/agc_2-X/branches/agc_2.0.4/docs/LOAD_BALANCING.txt @@ -38,6 +38,7 @@ NOTE: at the bottom of this document are conf examples for a 3 server load balan # 6 - FastAGI_log # 7 - AST_VDauto_dial_FILL (only for multi-server, this must only be on one server) +(NOTE: the install.pl script now has an option to generate the following settings and print them out to the screen so that you do not have to manually build them. ./install.pl --build_multiserver_conf) 3. The two servers need to be registered to each other as IAX2 friends: SERVER ONE(ASTtest1-10.10.10.15) iax.conf: @@ -123,27 +124,46 @@ NOTE: at the bottom of this document are conf examples for a 3 server load balan exten => 8368,4,AGI(agi-VDAD_LB_transfer.agi,${EXTEN}) exten => 8368,5,Hangup - ; parameters for agi-VDAD_LB_closer.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 [INTERNAL TRANSFER] - exten => _90009.,1,Answer ; Answer the line - exten => _90009.,2,AGI(agi-VDAD_LB_closer.agi,${EXTEN}-----START) - exten => _90009.,3,Hangup - ; parameters for agi-VDAD_LO_closer.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 [LOCAL TRANSFER] - exten => _990009.,1,Answer ; Answer the line - exten => _990009.,2,AGI(agi-VDAD_LO_closer.agi,${EXTEN}-----START) - exten => _990009.,3,Hangup - - ; inbound VICIDIAL call with prompt for 4-digit fronter code + ; Below are the parameters needed for the script to be run properly + ; 1. the method of call handling for the script: + ; - CID - CID received, add record with phone number + ; - CIDLOOKUP - Lookup CID to find record in whole system + ; - CIDLOOKUPRL - Restrict lookup to one list + ; - CIDLOOKUPRC - Restrict lookup to one campaign's lists + ; - CLOSER - Closer calls from VICIDIAL fronters + ; - ANI - ANI received, add record with phone number + ; - ANILOOKUP - Lookup ANI to find record in whole system + ; - ANILOOKUPRL - Restrict lookup to one list + ; - 3DIGITID - Enter 3 digit code to go to agent + ; - 4DIGITID - Enter 4 digit code to go to agent + ; - 5DIGITID - Enter 5 digit code to go to agent + ; - 10DIGITID - Enter 10 digit code to go to agent + ; 2. the method of searching for an available agent: + ; - LO - Load Balance Overflow only (priority to home server) + ; - LB - Load Balance total system + ; - SO - Home server only + ; 3. the full name of the IN GROUP to be used in vicidial for the inbound call + ; 4. the phone number that was called, for the log entry + ; 5. the callerID or lead_id of the person that called(usually overridden) + ; 6. the park extension audio file name if used + ; 7. the status of the call initially(usually not used) + ; 8. the list_id to insert the new lead under if it is new (and CID/ANI available) + ; 9. the phone dialing code to insert with the new lead if new (and CID/ANI available) + ; 10. the campaign_id to search within lists if CIDLOOKUPRC + ;inbound VICIDIAL calls: exten => 1234,1,Answer ; Answer the line - exten => 1234,2,AGI(agi-VDAD_LO_closer_inbound.agi,CL_GALLERIA-----7275555134-----Closer-----park----------999-----1) + exten => 1234,2,AGI(agi-VDAD_ALL_inbound.agi,CID-----LB-----INB-----7274515134-----Closer-----park----------999-----1-----OUTB) exten => 1234,3,Hangup + ; inbound VICIDIAL transfer calls [can arrive through PRI T1 crossover, IAX or SIP channel] + exten => _90009.,1,Answer ; Answer the line + exten => _90009.,2,AGI(agi-VDAD_ALL_inbound.agi,CLOSER-----LB-----CL_TESTCAMP-----7275551212-----Closer-----park----------999-----1) + exten => _90009.,3,Hangup + exten => _990009.,1,Answer ; Answer the line + exten => _990009.,2,AGI(agi-VDAD_ALL_inbound.agi,CLOSER-----LB-----CL_TESTCAMP-----7275551212-----Closer-----park----------999-----1) + exten => _990009.,3,Hangup + 6. Reload both Asterisk servers and for outbound change the VDAD exten to 8367 or 8368 and kill the AST_VDauto_dial.pl scripts on both servers so they can restart and you can now look at the AST_timeonVDADall.php page(per campaign time-on-VDAD available from the STATS and REPORTS link on the vicidial admin screen) that will allo you to see the server_ip of the agent and the server_ip of the call per campaign across all campaigns. diff --git a/agc_2-X/branches/agc_2.0.4/docs/PERFORMANCE_TESTING.txt b/agc_2-X/branches/agc_2.0.4/docs/PERFORMANCE_TESTING.txt index 147054a0..56da3108 100644 --- a/agc_2-X/branches/agc_2.0.4/docs/PERFORMANCE_TESTING.txt +++ b/agc_2-X/branches/agc_2.0.4/docs/PERFORMANCE_TESTING.txt @@ -1,11 +1,11 @@ -PERFORMANCE TESTING OF A VICIDIAL SERVER 2006-10-12 +PERFORMANCE TESTING OF A VICIDIAL SERVER 2008-03-31 OVERVIEW: This document goes over the setup of a VICIDIAL/Asterisk server that you are testing, and the control Asterisk server that will be taking the calls from the serer being tested. -It is very difficult to realistically performance test a VICIDIAL server not in production because of the randomness of call center operations. +It is very difficult to realistically performance test a VICIDIAL server not in production because of the random-ness of call center operations. How this process works is that multiple remote agents are activated and calls are placed from the server being tested to a control server that will take those calls and send various signals and play various audio files so that the randomness of outbound dialing is simulated. @@ -15,6 +15,7 @@ It is important that there are no live VICIDIAL agents or calls happening on thi If you want pretty server performance graphics you need to make sure the server record has performance logging enabled. + NOTE: as of release 2.0.4.1 Performance testing extensions are loaded in the default extensions.conf and the "loop" IAX trunk is enabled for the server to send calls back to itself, making performance testing on a default install of VICIDIAL much easier. EXAMPLE TESTING SCENARIO: @@ -74,20 +75,20 @@ exten => _999XXXXXX0,2,Answer exten => _999XXXXXX0,3,Playback(vm-goodbye) exten => _999XXXXXX0,4,Hangup -exten => 999999999999,1,Answer -exten => 999999999999,2,Playback(conf) -exten => 999999999999,3,Playback(conf) -exten => 999999999999,4,Playback(conf) -exten => 999999999999,5,Playback(conf) -exten => 999999999999,6,Playback(conf) -exten => 999999999999,7,Playback(conf) -exten => 999999999999,8,Playback(conf) -exten => 999999999999,9,Playback(conf) -exten => 999999999999,10,Playback(conf) -exten => 999999999999,11,Playback(conf) -exten => 999999999999,12,Playback(conf) -exten => 999999999999,13,Playback(conf) -exten => 999999999999,14,Hangup +exten => 99999999999,1,Answer +exten => 99999999999,2,Playback(conf) +exten => 99999999999,3,Playback(conf) +exten => 99999999999,4,Playback(conf) +exten => 99999999999,5,Playback(conf) +exten => 99999999999,6,Playback(conf) +exten => 99999999999,7,Playback(conf) +exten => 99999999999,8,Playback(conf) +exten => 99999999999,9,Playback(conf) +exten => 99999999999,10,Playback(conf) +exten => 99999999999,11,Playback(conf) +exten => 99999999999,12,Playback(conf) +exten => 99999999999,13,Playback(conf) +exten => 99999999999,14,Hangup In the test server you will need the following in your extensions.conf: @@ -97,13 +98,12 @@ TESTTRUNK = Zap/g2 TESTSIPTRUNK = SIP/VICItest:test@10.10.10.16:5060 [default] -;exten => _91999NXXXXXX,1,AGI(call_log.agi) exten => _91999NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) exten => _91999NXXXXXX,2,Dial(${TESTTRUNK}/${EXTEN:2},,tTo) exten => _91999NXXXXXX,3,Hangup exten => 999999999999,1,Answer -exten => 999999999999,2,Dial(${TESTSIPTRUNK}/${EXTEN},,tTo) +exten => 999999999999,2,Dial(${TESTSIPTRUNK}/${EXTEN:1},,tTo) exten => 999999999999,2,Hangup diff --git a/agc_2-X/branches/agc_2.0.4/docs/REQUIRED_APPS_INSTALL.txt b/agc_2-X/branches/agc_2.0.4/docs/REQUIRED_APPS_INSTALL.txt index a26757cf..7798c01d 100644 --- a/agc_2-X/branches/agc_2.0.4/docs/REQUIRED_APPS_INSTALL.txt +++ b/agc_2-X/branches/agc_2.0.4/docs/REQUIRED_APPS_INSTALL.txt @@ -1,4 +1,4 @@ -# Quick install of required apps v.2.0.4 2007-12-03 +# Quick install of required apps v.2.0.4.1 2008-04-02 # This file is a supplement to the BASE_INSTALL document giving you simple copy/ # paste installation shell commands for required and helper apps for VICIDIAL # might need: echo '/* Linuxthreads */' >> /usr/include/pthread.h @@ -222,6 +222,30 @@ vi /usr/local/apache2/conf/httpd.conf "LoadModule php4_module module/libphp4.so" modify the index.html line and add index.php to the list + to disable logging, change: + "CustomLog logs/access_log common" + to this: + "CustomLog /dev/null common" + + to enable web browsing of Recordings on Asterisk server, add this: + Alias /RECORDINGS/ "/var/spool/asterisk/monitorDONE/" + + + Options Indexes MultiViews + AllowOverride None + Order allow,deny + Allow from all + + + OPTIONAL: USE ONLY FOR STANDALONE apache/php SERVER ONLY: + + ServerLimit 768 + StartServers 450 + MinSpareServers 250 + MaxSpareServers 500 + MaxClients 768 + MaxRequestsPerChild 1000 + vi /usr/local/lib/php.ini @@ -231,8 +255,12 @@ vi /usr/local/lib/php.ini and change it to: "memory_limit = 48M" - -/usr/local/apache2/bin/apachectl startssl + some other fields to change if using web-based lead loader: + max_execution_time = 330 + max_input_time = 360 + post_max_size = 48M + upload_max_filesize = 42M + default_socket_timeout = 360 cd /usr/local @@ -269,21 +297,21 @@ mkdir /tmp/eaccelerator chmod 0777 /tmp/eaccelerator php -v +/usr/local/apache2/bin/apachectl startssl + -cd /usr/local -wget http://superb-east.dl.sourceforge.net/sourceforge/mtop/mtop-0.6.6.tar.gz -gunzip mtop-0.6.6.tar.gz -tar xvf mtop-0.6.6.tar -cd mtop-0.6.6 cpan - install Curses install Getopt::Long install Net::Domain quit - +cd /usr/local +wget http://superb-east.dl.sourceforge.net/sourceforge/mtop/mtop-0.6.6.tar.gz +gunzip mtop-0.6.6.tar.gz +tar xvf mtop-0.6.6.tar +cd mtop-0.6.6 perl Makefile.PL make make install diff --git a/agc_2-X/branches/agc_2.0.4/docs/SCRATCH_INSTALL.txt b/agc_2-X/branches/agc_2.0.4/docs/SCRATCH_INSTALL.txt index 702802e1..ce299098 100644 --- a/agc_2-X/branches/agc_2.0.4/docs/SCRATCH_INSTALL.txt +++ b/agc_2-X/branches/agc_2.0.4/docs/SCRATCH_INSTALL.txt @@ -702,6 +702,13 @@ installation on another machine) error_reporting = E_ALL & ~E_NOTICE ; (this is default) !!! REQUIRED !!! raise the memory limit for scripts in php.ini: memory_limit = 48M + some other fields to change if using web-based lead loader: + max_execution_time = 330 + max_input_time = 360 + post_max_size = 48M + upload_max_filesize = 42M + default_socket_timeout = 360 + - vi /usr/local/apache2/conf/httpd.conf add the following lines: "AddType application/x-httpd-php .php .phtml" @@ -709,6 +716,22 @@ installation on another machine) or "LoadModule php4_module modules/libphp4.so" modify the index.html line and add index.php to the list + + to disable logging, change: + "CustomLog logs/access_log common" + to this: + "CustomLog /dev/null common" + + to enable web browsing of Recordings on Asterisk server, add this: + Alias /RECORDINGS/ "/var/spool/asterisk/monitorDONE/" + + + Options Indexes MultiViews + AllowOverride None + Order allow,deny + Allow from all + + - /usr/local/apache2/bin/apachectl start - go to http://your-new-asterisk-server-ipaddress/ to see if it worked - you are done @@ -835,8 +858,8 @@ PHASE 4: INSTALLING ASTERISK OK, all the prep work is done, now it's time to start having fun with Asterisk. There are two basic ways to install Asterisk, an official release(at the time of -this writing the official release is 1.2.24) and the SVN_DEV version(development -branch). We recommend using Asterisk 1.2.24. These instructions are how we get +this writing the official release is 1.2.27) and the SVN_DEV version(development +branch). We recommend using Asterisk 1.2.27. These instructions are how we get our Asterisk system with it's T1 line installed with our 2 SIP VOIP devices and one IAX2 softphone. @@ -1201,7 +1224,7 @@ with a pin number required for entry): [rooms] conf => 8600 conf => 8601,1234 -5. edit iax.conf (only to do IAX trunks, not required) +5. edit iax.conf - vi /etc/asterisk/iax.conf This is the IAX configuration file, below is a very simple config for having two Asterisk servers connect natively to each other, if you @@ -1513,7 +1536,7 @@ install with astguiclient to start Asterisk. SUBPHASE 5.1: setting up your SIP phones You will need to follow the instructions for the phones that you are using with -your system, but here's the way to set up a Grandstream 102 and a Sipura +your system, but here's the way to set up a Grandstream 102 and a Linksys/Sipura SPA-2000 1. Here are basic instructions for setting up a Grandstream BT 102: @@ -1647,12 +1670,12 @@ SUBPHASE 6.0: putting the files in place There are two methods for downloading astGUIclient/VICIDIAL, a release and SVN 1. Go to http://astguiclient.sf.net/ and download the latest astguiclient -package(as of this writing it is 2.0.4) +package(as of this writing it is 2.0.4.1) - for 2.0.X release: - mkdir /usr/src/astguiclient - cd /usr/src/astguiclient - - wget http://internap.dl.sourceforge.net/sourceforge/astguiclient/astguiclient_2.0.4.zip - - unzip astguiclient_2.0.4.zip + - wget http://internap.dl.sourceforge.net/sourceforge/astguiclient/astguiclient_2.0.4.1.zip + - unzip astguiclient_2.0.4.1.zip - perl install.pl (make sure you are in the directory with the install.pl file) - for SVN 2.0 trunk: - mkdir /usr/src/astguiclient @@ -1672,9 +1695,9 @@ free for download at the following two sites: Then you will need to execute this command to copy it as the park file 'cp /var/lib/asterisk/sounds/conf.gsm /var/lib/asterisk/sounds/park.gsm' Here are the steps spelled out: - - cd /var/lib/asterisk/sounds - - wget http://www.freedomphones.net/conf.gsm - - cp conf.gsm park.gsm + cd /var/lib/asterisk/sounds + wget http://www.freedomphones.net/conf.gsm + cp conf.gsm park.gsm - you are done @@ -1708,7 +1731,7 @@ use asterisk; or you may need to run this if you get an error: \. /usr/src/astguiclient/trunk/extras/MySQL_AST_CREATE_tables.sql -insert into servers (server_id,server_description,server_ip,active,asterisk_version)values('TESTasterisk','Test install of Asterisk server', '10.10.10.15','Y','1.2.17'); +insert into servers (server_id,server_description,server_ip,active,asterisk_version)values('TESTasterisk','Test install of Asterisk server', '10.10.10.15','Y','1.2.27'); insert into server_updater values('10.10.10.15',''); @@ -1748,8 +1771,17 @@ insert into conferences values('8600029','10.10.10.15',''); quit - run this command from command line: - - /usr/share/astguiclient/ADMIN_area_code_populate.pl + to populate the timezone/country table run this command from command line: + - /usr/share/astguiclient/ADMIN_area_code_populate.pl + + to load the performance testing leads run these commands: + - cp /usr/src/astguiclient/trunk/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + or + - cp /usr/src/astguiclient/agc_2.0.4/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + - cp /usr/src/astguiclient_2.0.4.1/trunk/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + + - /usr/share/astguiclient/VICIDIAL_IN_new_leads_file.pl --forcelistid=107 --forcephonecode=1 + ######------ END Mysql data entry ------###### @@ -1827,25 +1859,39 @@ effected extension groups are show): ##### you will have problems if it is not in your dialplan! exten => h,1,DeadAGI(agi://127.0.0.1:4577/call_log--HVcauses--PRI-----NODEBUG-----${HANGUPCAUSE}-----${DIALSTATUS}-----${DIALEDTIME}-----${ANSWEREDTIME}) +; MANDITORY VDAD extens: +; In this setup, the serverIP is the prefix followed by agent conf_exten +; These lines are REQUIRED for VICIDIAL to work properly +; local server extens: +; BE SURE TO CHANGE THIS LINE FOR YOUR IP ADDRESS! + exten => _010*010*010*015*.,1,Goto(default,${EXTEN:16},1) + exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) + exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) +; Local blind monitoring + exten => _08600XXX,1,Dial(${TRUNKblind}/6${EXTEN:1},55,To) +; OPTIONAL server 2 extens, needed for load balancing: + exten => _010*010*010*016*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) + ; Extension 3429 - Inbound 800 number (1-800-555-3429) exten => _**3429,1,Ringing exten => _**3429,2,AGI(agi://127.0.0.1:4577/call_log) exten => _**3429,3,Answer -exten => _**3429,4,Dial,sip/spa2000&sip/spa2001|30|to +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,3,Answer -exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001|30|to +exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001,30,to exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000 ; Extension 7275551212 - Inbound local number from PRI with 10 digit delivery +; SEE extensions.conf.sample-1.4 for changes needed for use with Asterisk 1.4 exten => 7275551212,1,Ringing exten => 7275551212,2,Wait(1) exten => 7275551212,3,AGI(agi://127.0.0.1:4577/call_log--fullCID--${EXTEN}-----${CALLERID}-----${CALLERIDNUM}-----${CALLERIDNAME}) exten => 7275551212,4,Answer -exten => 7275551212,5,Dial,sip/spa2000&sip/spa2001|30|to +exten => 7275551212,5,Dial,sip/spa2000&sip/spa2001,30,to exten => 7275551212,6,Voicemail,u2000 ; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls, @@ -1860,6 +1906,14 @@ exten => _901161XXXXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) exten => _901161XXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo) exten => _901161XXXXXXXXX,3,Hangup +; Extensions for performance testing +exten => _91999NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) +exten => _91999NXXXXXX,2,Dial(${TRUNKloop}/${EXTEN:2},,tTo) +exten => _91999NXXXXXX,3,Hangup +exten => 999999999999,1,AGI(agi://127.0.0.1:4577/call_log) +exten => 999999999999,2,Dial(${TRUNKloop}/${EXTEN:1},,tTo) +exten => 999999999999,3,Hangup + ; dial an 800 outbound number exten => _91800NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) exten => _91800NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo) @@ -1879,11 +1933,6 @@ exten => _9727NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) 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,2,Dial(${TRUNK}/${EXTEN:1},,tTo) -exten => _9813NXXXXXX,3,Hangup - ; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls, ; dial a long distance outbound number exten => _91NXXNXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) @@ -1924,14 +1973,6 @@ exten => _*NXXNXXXXXX*3429,3,Answer exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001|30|to exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000 -exten => _010*010*010*015*8600XXX,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*8600XXX*.,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*78600XXX,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*78600XXX*.,1,Goto(default,${EXTEN:16},1) -exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) -exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) - - ; parameters for agi-VDAD_ALL_inbound.agi (9 fields separated by five dashes "-----"): ; 1. the method of call handling for the script: ; - CID - CID received, add record with phone number @@ -1995,33 +2036,9 @@ exten => _990009.,3,Hangup 3. Add the ZapBarge entries for all zap lines: - here is how our sample dialplan changes for adding zapbarge line-specific entries(this is a pure addition, nothing is being modified): -######------ START extensions.conf additions for direct zapbarges ------###### + ; 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) -######------ END extensions.conf additions for direct zapbarges ------###### +exten => _86120XX,1,ZapBarge(${EXTEN:5}) 4. Add the meetme entries for astguiclient and VICIDIAL conferences to @@ -2214,37 +2231,9 @@ conf => 8600200 5. Add the conference entries for astguiclient conferences: - here is how our sample dialplan changes for adding conference entries (this is a pure addition, nothing is being modified): -######------ START extensions.conf additions for agc 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 -######------ END extensions.conf additions for agc conferences ------###### + +; astGUIclient conferences +exten => _86000[0-4]X,1,Meetme,${EXTEN}|q 6. Add the conference entries for VICIDIAL conferences: @@ -2268,160 +2257,19 @@ exten => _55558600XXX,1,MeetMeAdmin(${EXTEN:4},K) exten => _55558600XXX,2,Hangup exten => 8300,1,Hangup -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 +; VICIDIAL conferences +exten => _86000[5-9]X,1,Meetme,${EXTEN}|F +exten => _86001XX,1,Meetme,${EXTEN}|F +exten => _8600200,1,Meetme,${EXTEN}|F ; quiet entry and leaving conferences for VICIDIAL -exten => _78600XXX,1,Meetme,${EXTEN:1}|q +exten => _78600XXX,1,Meetme,${EXTEN:1}|Fq ; quiet monitor extensions for meetme rooms (for room managers) -exten => _68600XXX,1,Meetme,${EXTEN:1}|mq +exten => _68600XXX,1,Meetme,${EXTEN:1}|Fmq + +; voicelab exten +exten => _86009XX,1,Meetme,${EXTEN}|Fmq +; voicelab exten moderator +exten => _986009XX,1,Meetme,${EXTEN:1} ######------ END extensions.conf changes for VD conf ------###### @@ -2465,6 +2313,7 @@ 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) +; SEE extensions.conf.sample-1.4 for changes needed for use with Asterisk 1.4 exten => 8309,1,Answer exten => 8309,2,Monitor(wav,${CALLERIDNAME}) exten => 8309,3,Wait,3600 @@ -2472,6 +2321,7 @@ 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) +; SEE extensions.conf.sample-1.4 for changes needed for use with Asterisk 1.4 exten => 8310,1,Answer exten => 8310,2,Monitor(gsm,${CALLERIDNAME}) exten => 8310,3,Wait,3600 @@ -2486,6 +2336,7 @@ exten => 8320,4,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 +; SEE extensions.conf.sample-1.4 for changes needed for use with Asterisk 1.4 exten => 8501,1,VoicemailMain(s${CALLERIDNUM}) exten => 8501,2,Hangup @@ -2617,22 +2468,6 @@ exten => 8372,3,AGI(agi-VDADautoREMINDER.agi,${EXTEN}) exten => 8372,4,AGI(agi-VDADautoREMINDER.agi,${EXTEN}) exten => 8372,5,Hangup -; MANDITORY VDAD extens: -; In this setup, the serverIP is the prefix followed by agent conf_exten -; These lines are REQUIRED for VICIDIAL to work properly -; local server extens: - exten => _010*010*010*015*8600XXX,1,Goto(default,${EXTEN:16},1) - exten => _010*010*010*015*8600XXX*.,1,Goto(default,${EXTEN:16},1) - exten => _010*010*010*015*78600XXX,1,Goto(default,${EXTEN:16},1) - exten => _010*010*010*015*78600XXX*.,1,Goto(default,${EXTEN:16},1) - exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) - exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) - -; OPTIONAL server 2 extens, needed for load balancing: - exten => _010*010*010*016*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) - exten => _010*010*010*016*8600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) - exten => _010*010*010*016*78600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) - exten => _010*010*010*016*78600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) SUBPHASE 6.3: adding entries to your MySQL "asterisk" database for vicidial diff --git a/agc_2-X/branches/agc_2.0.4/docs/conf_examples/extensions.conf.sample b/agc_2-X/branches/agc_2.0.4/docs/conf_examples/extensions.conf.sample index c1e63f2b..bd717e69 100644 --- a/agc_2-X/branches/agc_2.0.4/docs/conf_examples/extensions.conf.sample +++ b/agc_2-X/branches/agc_2.0.4/docs/conf_examples/extensions.conf.sample @@ -10,180 +10,53 @@ TRUNKIAX=IAX2/ASTtest1:test@10.10.10.16:4569 ; IAX trunk interface TRUNKIAX1=IAX2/ASTtest1:test@10.10.10.16:4569 ; IAX trunk interface TRUNKBINFONE=IAX2/1112223333:PASSWORD@iax.binfone.com ; IAX trunk interface SIPtrunk=SIP/1234:PASSWORD@sip.provider.net ; SIP trunk +TRUNKloop = IAX2/ASTloop:test@127.0.0.1:40569 ; used for blind monitoring +TRUNKblind = IAX2/ASTblind:test@127.0.0.1:41569 ; used for testing + [default] ; VICI-GROUP DIRECT SUPPORT LINE (VICIHELP[84244357]) exten => _84244XXX,1,Dial(IAX2/vicihelp/${EXTEN:5}) +; BE SURE TO CHANGE THIS LINE FOR YOUR IP ADDRESS! +exten => _010*010*010*015*.,1,Goto(default,${EXTEN:16},1) +exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) +exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) +; Local blind monitoring +exten => _08600XXX,1,Dial(${TRUNKblind}/6${EXTEN:1},55,To) + +; ### server 2 exten: +; exten => _010*010*010*016*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) + ; Example phone extensions -; Extension 2000 Sipura line 1 -exten => 2000,1,Dial,sip/spa2000|30|to ; Ring, 30 secs max +; Extension 2000 Sipura/Linksys ATA 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 +; Extension 2001 Sipura/Linksys ATA 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 => 2020,1,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30 secs max -exten => 2020,2,Voicemail,u2000 ; Send to voicemail... -; Extension 301 rings the firefly softphone -exten => 401,1,Dial,(IAX2/firefly01@firefly01/s) +; Extension 2102 rings Grandstream phone +exten => 2102,1,Dial(sip/gs102,30,to) ; Ring, 30 secs max +exten => 2102,2,Voicemail,u2102 ; Send to voicemail... +; Extension 401 rings the firefly softphone +exten => 401,1,Dial((IAX2/firefly01@firefly01/s||t) exten => 401,2,Hangup -; extensions for other SIP and IAX call center phones -exten => 100,1,Dial,sip/cc100|20|to -exten => 101,1,Dial,sip/cc101|20|to -exten => 102,1,Dial,sip/cc102|20|to -exten => 103,1,Dial,sip/cc103|20|to -exten => 104,1,Dial,sip/cc104|20|to -exten => 105,1,Dial,sip/cc105|20|to -exten => 106,1,Dial,sip/cc106|20|to -exten => 107,1,Dial,sip/cc107|20|to -exten => 108,1,Dial,sip/cc108|20|to -exten => 109,1,Dial,sip/cc109|20|to -exten => 110,1,Dial,sip/cc110|20|to -exten => 111,1,Dial,sip/cc111|20|to -exten => 112,1,Dial,sip/cc112|20|to -exten => 113,1,Dial,sip/cc113|20|to -exten => 114,1,Dial,sip/cc114|20|to -exten => 115,1,Dial,sip/cc115|20|to -exten => 116,1,Dial,sip/cc116|20|to -exten => 117,1,Dial,sip/cc117|20|to -exten => 118,1,Dial,sip/cc118|20|to -exten => 119,1,Dial,sip/cc119|20|to -exten => 120,1,Dial,sip/cc120|20|to -exten => 121,1,Dial,sip/cc121|20|to -exten => 122,1,Dial,sip/cc122|20|to -exten => 123,1,Dial,sip/cc123|20|to -exten => 124,1,Dial,sip/cc124|20|to -exten => 125,1,Dial,sip/cc125|20|to -exten => 126,1,Dial,sip/cc126|20|to -exten => 127,1,Dial,sip/cc127|20|to -exten => 128,1,Dial,sip/cc128|20|to -exten => 129,1,Dial,sip/cc129|20|to -exten => 130,1,Dial,sip/cc130|20|to -exten => 131,1,Dial,sip/cc131|20|to -exten => 132,1,Dial,sip/cc132|20|to -exten => 133,1,Dial,sip/cc133|20|to -exten => 134,1,Dial,sip/cc134|20|to -exten => 135,1,Dial,sip/cc135|20|to -exten => 136,1,Dial,sip/cc136|20|to -exten => 137,1,Dial,sip/cc137|20|to -exten => 138,1,Dial,sip/cc138|20|to -exten => 139,1,Dial,sip/cc139|20|to -exten => 140,1,Dial,sip/cc140|20|to -exten => 141,1,Dial,sip/cc141|20|to -exten => 142,1,Dial,sip/cc142|20|to -exten => 143,1,Dial,sip/cc143|20|to -exten => 144,1,Dial,sip/cc144|20|to -exten => 145,1,Dial,sip/cc145|20|to -exten => 146,1,Dial,sip/cc146|20|to -exten => 147,1,Dial,sip/cc147|20|to -exten => 148,1,Dial,sip/cc148|20|to -exten => 149,1,Dial,sip/cc149|20|to -exten => 150,1,Dial,sip/cc150|20|to -exten => 300,1,Dial,IAX2/cc300|20|to -exten => 301,1,Dial,IAX2/cc301|20|to -exten => 302,1,Dial,IAX2/cc302|20|to -exten => 303,1,Dial,IAX2/cc303|20|to -exten => 304,1,Dial,IAX2/cc304|20|to -exten => 305,1,Dial,IAX2/cc305|20|to -exten => 306,1,Dial,IAX2/cc306|20|to -exten => 307,1,Dial,IAX2/cc307|20|to -exten => 308,1,Dial,IAX2/cc308|20|to -exten => 309,1,Dial,IAX2/cc309|20|to -exten => 310,1,Dial,IAX2/cc310|20|to -exten => 311,1,Dial,IAX2/cc311|20|to -exten => 312,1,Dial,IAX2/cc312|20|to -exten => 313,1,Dial,IAX2/cc313|20|to -exten => 314,1,Dial,IAX2/cc314|20|to -exten => 315,1,Dial,IAX2/cc315|20|to -exten => 316,1,Dial,IAX2/cc316|20|to -exten => 317,1,Dial,IAX2/cc317|20|to -exten => 318,1,Dial,IAX2/cc318|20|to -exten => 319,1,Dial,IAX2/cc319|20|to -exten => 320,1,Dial,IAX2/cc320|20|to -exten => 321,1,Dial,IAX2/cc321|20|to -exten => 322,1,Dial,IAX2/cc322|20|to -exten => 323,1,Dial,IAX2/cc323|20|to -exten => 324,1,Dial,IAX2/cc324|20|to -exten => 325,1,Dial,IAX2/cc325|20|to -exten => 326,1,Dial,IAX2/cc326|20|to -exten => 327,1,Dial,IAX2/cc327|20|to -exten => 328,1,Dial,IAX2/cc328|20|to -exten => 329,1,Dial,IAX2/cc329|20|to -exten => 330,1,Dial,IAX2/cc330|20|to -exten => 331,1,Dial,IAX2/cc331|20|to -exten => 332,1,Dial,IAX2/cc332|20|to -exten => 333,1,Dial,IAX2/cc333|20|to -exten => 334,1,Dial,IAX2/cc334|20|to -exten => 335,1,Dial,IAX2/cc335|20|to -exten => 336,1,Dial,IAX2/cc336|20|to -exten => 337,1,Dial,IAX2/cc337|20|to -exten => 338,1,Dial,IAX2/cc338|20|to -exten => 339,1,Dial,IAX2/cc339|20|to -exten => 340,1,Dial,IAX2/cc340|20|to -exten => 341,1,Dial,IAX2/cc341|20|to -exten => 342,1,Dial,IAX2/cc342|20|to -exten => 343,1,Dial,IAX2/cc343|20|to -exten => 344,1,Dial,IAX2/cc344|20|to -exten => 345,1,Dial,IAX2/cc345|20|to -exten => 346,1,Dial,IAX2/cc346|20|to -exten => 347,1,Dial,IAX2/cc347|20|to -exten => 348,1,Dial,IAX2/cc348|20|to -exten => 349,1,Dial,IAX2/cc349|20|to -exten => 350,1,Dial,IAX2/cc350|20|to +; extensions for other SIP and IAX call center phones +; cc100-cc150 SIP Phones +exten => _1[0-5]X,1,Dial(sip/cc${EXTEN},20,to) +; cc300-cc350 IAX Phones +exten => _3[0-5]X,1,Dial(IAX2/cc${EXTEN},20,to) ; extensions if using a T1 channelbank -exten => 1901,1,Dial,Zap/1|30|o -exten => 1901,2,Hangup -exten => 1902,1,Dial,Zap/2|30|o -exten => 1902,2,Hangup -exten => 1903,1,Dial,Zap/3|30|o -exten => 1903,2,Hangup -exten => 1904,1,Dial,Zap/4|30|o -exten => 1904,2,Hangup -exten => 1905,1,Dial,Zap/5|30|o -exten => 1905,2,Hangup -exten => 1906,1,Dial,Zap/6|30|o -exten => 1906,2,Hangup -exten => 1907,1,Dial,Zap/7|30|o -exten => 1907,2,Hangup -exten => 1908,1,Dial,Zap/8|30|o -exten => 1908,2,Hangup -exten => 1909,1,Dial,Zap/9|30|o -exten => 1909,2,Hangup -exten => 1910,1,Dial,Zap/10|30|o -exten => 1910,2,Hangup -exten => 1911,1,Dial,Zap/11|30|o -exten => 1911,2,Hangup -exten => 1912,1,Dial,Zap/12|30|o -exten => 1912,2,Hangup -exten => 1913,1,Dial,Zap/13|30|o -exten => 1913,2,Hangup -exten => 1914,1,Dial,Zap/14|30|o -exten => 1914,2,Hangup -exten => 1915,1,Dial,Zap/15|30|o -exten => 1915,2,Hangup -exten => 1916,1,Dial,Zap/16|30|o -exten => 1916,2,Hangup -exten => 1917,1,Dial,Zap/17|30|o -exten => 1917,2,Hangup -exten => 1918,1,Dial,Zap/18|30|o -exten => 1918,2,Hangup -exten => 1919,1,Dial,Zap/19|30|o -exten => 1919,2,Hangup -exten => 1920,1,Dial,Zap/20|30|o -exten => 1920,2,Hangup -exten => 1921,1,Dial,Zap/21|30|o -exten => 1921,2,Hangup -exten => 1922,1,Dial,Zap/22|30|o -exten => 1922,2,Hangup -exten => 1923,1,Dial,Zap/23|30|o -exten => 1923,2,Hangup -exten => 1924,1,Dial,Zap/24|30|o -exten => 1924,2,Hangup +exten => _19XX,1,Dial(Zap/${EXTEN:2},30,o) +exten => _19XX,2,Hangup + +; Extension 4001 rings Zap phone (this example for FXS on Zap port 1) +exten => 4001,1,Dial(Zap/1,30,o) ; ring Zap device 1 +exten => 4001,2,Voicemail,u4001 ; Send to voicemail... ; # timeout invalid rules @@ -196,24 +69,6 @@ exten => i,1,Playback(invalid) ; "That's not valid, try again" 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 (this example for FXS on Zap port 1) -exten => 4001,1,Dial,Zap/1|30| ; ring Zap device 1 -exten => 4001,2,Voicemail,u4001 ; Send to voicemail... - - - - ; FastAGI for VICIDIAL/astGUIclient call logging exten => h,1,DeadAGI(agi://127.0.0.1:4577/call_log--HVcauses--PRI-----NODEBUG-----${HANGUPCAUSE}-----${DIALSTATUS}-----${DIALEDTIME}-----${ANSWEREDTIME}) @@ -227,69 +82,73 @@ exten => 7275551212,1,Ringing exten => 7275551212,2,Wait(1) exten => 7275551212,3,AGI(agi://127.0.0.1:4577/call_log--fullCID--${EXTEN}-----${CALLERID}-----${CALLERIDNUM}-----${CALLERIDNAME}) exten => 7275551212,4,Answer -exten => 7275551212,5,Dial,sip/spa2000&sip/spa2001|30|to +exten => 7275551212,5,Dial(sip/spa2000&sip/spa2001,30,To) exten => 7275551212,6,Voicemail,u2000 ; dial a long distance outbound number to the UK ; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls, exten => _901144XXXXXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _901144XXXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},55,tTo) +exten => _901144XXXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},55,To) exten => _901144XXXXXXXXXX,3,Hangup ; dial a long distance outbound number to Australia ; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls, exten => _901161XXXXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _901161XXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo) +exten => _901161XXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,To) exten => _901161XXXXXXXXX,3,Hangup +; Extensions for performance testing +exten => _91999NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) +exten => _91999NXXXXXX,2,Dial(${TRUNKloop}/${EXTEN:2},,tTo) +exten => _91999NXXXXXX,3,Hangup +exten => 999999999999,1,AGI(agi://127.0.0.1:4577/call_log) +exten => 999999999999,2,Dial(${TRUNKloop}/${EXTEN:1},,tTo) +exten => 999999999999,3,Hangup + ; dial an 800 outbound number exten => _91800NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _91800NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo) +exten => _91800NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,To) exten => _91800NXXXXXX,3,Hangup exten => _91888NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _91888NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo) +exten => _91888NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,To) exten => _91888NXXXXXX,3,Hangup exten => _91877NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _91877NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo) +exten => _91877NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,To) exten => _91877NXXXXXX,3,Hangup exten => _91866NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _91866NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo) +exten => _91866NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,To) exten => _91866NXXXXXX,3,Hangup +; 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,2,Dial(${TRUNK}/1727${EXTEN:1},,To) +exten => _9NXXXXXX,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,2,Dial(${TRUNK}/1${EXTEN:1},,tTo) +exten => _9727NXXXXXX,2,Dial(${TRUNK}/1${EXTEN:1},,To) 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,2,Dial(${TRUNK}/${EXTEN:1},,tTo) -exten => _9813NXXXXXX,3,Hangup - ; dial a long distance outbound number -; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls, +; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls exten => _91NXXNXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _91NXXNXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo) +exten => _91NXXNXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,To) 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,2,Dial(${TRUNKIAX}/${EXTEN},55,o) +; exten => _91NXXNXXXXXX,2,Dial(${TRUNKIAX}/${EXTEN},55,To) ; 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,2,Dial(sip/${EXTEN}@SIPtrunk,55,o) ; exten => _91NXXNXXXXXX,3,Hangup -; 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,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 +; This is not part of VICIDIAL, it is for astGUIclient agent use only ; Extension 3429 - Inbound 800 number (1-800-555-3429) example of RBS T1 ; with 10 digit ANI and 4 digit DNIS star separated @@ -297,30 +156,16 @@ exten => _**3429,1,Ringing exten => _**3429,2,AGI(agi://127.0.0.1:4577/call_log) exten => _**3429,3,AGI(call_inbound.agi,spa2000-----8005553429-----Inbound 800-----x-----y-----z-----w) exten => _**3429,4,Answer -exten => _**3429,5,Dial,sip/spa2000&sip/spa2001|30|to +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,3,AGI(call_inbound.agi,spa2000-----8005553429-----Inbound 800-----x-----y-----z-----w) exten => _*NXXNXXXXXX*3429,4,Answer -exten => _*NXXNXXXXXX*3429,5,Dial,sip/spa2000&sip/spa2001|30|to +exten => _*NXXNXXXXXX*3429,5,Dial(sip/spa2000&sip/spa2001,30,to) exten => _*NXXNXXXXXX*3429,6,Voicemail,u2000 -; BE SURE TO CHANGE THESE FOR YOUR IP ADDRESS! -exten => _010*010*010*015*8600XXX,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*8600XXX*.,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*78600XXX,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*78600XXX*.,1,Goto(default,${EXTEN:16},1) -exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) -exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) - -; ### server 2 extens: -; exten => _010*010*010*016*8600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) -; exten => _010*010*010*016*8600XXX,2,Hangup -; exten => _010*010*010*016*8600XXX*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) -; exten => _010*010*010*016*8600XXX*.,2,Hangup - ; parameters for agi-VDAD_ALL_inbound.agi (9 fields separated by five dashes "-----"): ; 1. the method of call handling for the script: @@ -362,67 +207,13 @@ exten => _990009.,2,AGI(agi-VDAD_ALL_inbound.agi,CLOSER-----LB-----CL_TESTCAMP-- exten => _990009.,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) +exten => _86120XX,1,ZapBarge(${EXTEN:5}) -; 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 @@ -440,164 +231,19 @@ exten => _55558600XXX,1,MeetMeAdmin(${EXTEN:4},K) exten => _55558600XXX,2,Hangup exten => 8300,1,Hangup +; astGUIclient conferences +exten => _86000[0-4]X,1,Meetme,${EXTEN}|q ; 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 +exten => _86000[5-9]X,1,Meetme,${EXTEN}|F +exten => _86001XX,1,Meetme,${EXTEN}|F +exten => _8600200,1,Meetme,${EXTEN}|F ; quiet entry and leaving conferences for VICIDIAL -exten => _78600XXX,1,Meetme,${EXTEN:1}|q +exten => _78600XXX,1,Meetme,${EXTEN:1}|Fq ; quiet monitor extensions for meetme rooms (for room managers) -exten => _68600XXX,1,Meetme,${EXTEN:1}|mq +exten => _68600XXX,1,Meetme,${EXTEN:1}|Fmq ; voicelab exten -exten => _86009XX,1,Meetme,${EXTEN}|mq +exten => _86009XX,1,Meetme,${EXTEN}|Fmq ; voicelab exten moderator exten => _986009XX,1,Meetme,${EXTEN:1} @@ -635,6 +281,7 @@ 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) +; Recording is limited to 1 hour, to make longer, just change the Wait,3600 exten => 8309,1,Answer exten => 8309,2,Monitor(wav,${CALLERIDNAME}) exten => 8309,3,Wait,3600 @@ -642,6 +289,7 @@ 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) +; Recording is limited to 1 hour, to make longer, just change the Wait,3600 exten => 8310,1,Answer exten => 8310,2,Monitor(gsm,${CALLERIDNAME}) exten => 8310,3,Wait,3600 @@ -659,9 +307,14 @@ 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 +; prompts for recording AGI script, ID is 4321 +; first variable is format (gsm/wav) +; second variable is timeout in milliseconds (default is 720000 [12 minutes]) +exten => 8167,1,Answer +exten => 8167,2,AGI(agi-record_prompts.agi,wav-----720000) +exten => 8167,3,Hangup exten => 8168,1,Answer -exten => 8168,2,AGI(agi-record_prompts.agi) +exten => 8168,2,AGI(agi-record_prompts.agi,gsm-----720000) exten => 8168,3,Hangup ; playback of recorded prompts @@ -793,3 +446,69 @@ exten => 8372,5,Hangup ;exten => 8372,3,AGI(agi-VDADautoREMINDER.agi,${EXTEN}) ;exten => 8372,4,AGI(agi-VDADautoREMINDER.agi,${EXTEN}) ;exten => 8372,5,Hangup + + + +; PERFORMANCE TESTING +exten => _999XXXXXX1,1,Answer +exten => _999XXXXXX1,2,Wait(2) +exten => _999XXXXXX1,3,Playback(beep) +exten => _999XXXXXX1,4,Hangup + +exten => _999XXXX112,1,Wait(8) +exten => _999XXXX112,2,Answer +exten => _999XXXX112,3,Playback(demo-instruct) +exten => _999XXXX112,4,Playback(demo-instruct) +exten => _999XXXX112,5,Hangup + +exten => _999XXXXXX2,1,Wait(8) +exten => _999XXXXXX2,2,Answer +exten => _999XXXXXX2,3,Playback(demo-instruct) +exten => _999XXXXXX2,4,Hangup + +exten => _999XXXXXX3,1,SetVar(PRI_CAUSE=1) +exten => _999XXXXXX3,2,Hangup + +exten => _999XXXXXX4,1,SetVar(PRI_CAUSE=27) +exten => _999XXXXXX4,2,Hangup + +exten => _999XXXXXX5,1,Wait(60) +exten => _999XXXXXX5,2,Hangup + +exten => _999XXXXXX6,1,Wait(10) +exten => _999XXXXXX6,2,Answer +exten => _999XXXXXX6,3,Playback(demo-instruct) +exten => _999XXXXXX6,4,Hangup + +exten => _999XXXXXX7,1,Wait(12) +exten => _999XXXXXX7,2,Answer +exten => _999XXXXXX7,3,Playback(demo-enterkeywords) +exten => _999XXXXXX7,4,Hangup + +exten => _999XXXXXX8,1,SetVar(PRI_CAUSE=17) +exten => _999XXXXXX8,2,Hangup + +exten => _999XXXXXX9,1,Wait(6) +exten => _999XXXXXX9,2,Answer +exten => _999XXXXXX9,3,Playback(demo-abouttotry) +exten => _999XXXXXX9,4,Hangup + +exten => _999XXXXXX0,1,Wait(5) +exten => _999XXXXXX0,2,Answer +exten => _999XXXXXX0,3,Playback(vm-goodbye) +exten => _999XXXXXX0,4,Hangup + +exten => 99999999999,1,Answer +exten => 99999999999,2,Playback(conf) +exten => 99999999999,3,Playback(conf) +exten => 99999999999,4,Playback(conf) +exten => 99999999999,5,Playback(conf) +exten => 99999999999,6,Playback(conf) +exten => 99999999999,7,Playback(conf) +exten => 99999999999,8,Playback(conf) +exten => 99999999999,9,Playback(conf) +exten => 99999999999,10,Playback(conf) +exten => 99999999999,11,Playback(conf) +exten => 99999999999,12,Playback(conf) +exten => 99999999999,13,Playback(conf) +exten => 99999999999,14,Hangup diff --git a/agc_2-X/branches/agc_2.0.4/docs/conf_examples/extensions.conf.sample-1.4 b/agc_2-X/branches/agc_2.0.4/docs/conf_examples/extensions.conf.sample-1.4 index de68af79..50a3529f 100644 --- a/agc_2-X/branches/agc_2.0.4/docs/conf_examples/extensions.conf.sample-1.4 +++ b/agc_2-X/branches/agc_2.0.4/docs/conf_examples/extensions.conf.sample-1.4 @@ -10,179 +10,53 @@ TRUNKIAX=IAX2/ASTtest1:test@10.10.10.16:4569 ; IAX trunk interface TRUNKIAX1=IAX2/ASTtest1:test@10.10.10.16:4569 ; IAX trunk interface TRUNKBINFONE=IAX2/1112223333:PASSWORD@iax.binfone.com ; IAX trunk interface SIPtrunk=SIP/1234:PASSWORD@sip.provider.net ; SIP trunk +TRUNKloop = IAX2/ASTloop:test@127.0.0.1:40569 ; used for blind monitoring +TRUNKblind = IAX2/ASTblind:test@127.0.0.1:41569 ; used for testing + [default] ; VICI-GROUP DIRECT SUPPORT LINE (VICIHELP[84244357]) exten => _84244XXX,1,Dial(IAX2/vicihelp/${EXTEN:5}) +; BE SURE TO CHANGE THIS LINE FOR YOUR IP ADDRESS! +exten => _010*010*010*015*.,1,Goto(default,${EXTEN:16},1) +exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) +exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) +; Local blind monitoring +exten => _08600XXX,1,Dial(${TRUNKblind}/6${EXTEN:1},55,To) + +; ### server 2 exten: +; exten => _010*010*010*016*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) + + ; Example phone extensions -; Extension 2000 Sipura line 1 -exten => 2000,1,Dial,sip/spa2000|30|to ; Ring, 30 secs max +; Extension 2000 Sipura/Linksys ATA 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 +; Extension 2001 Sipura/Linksys ATA 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 => 2020,1,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30 secs max -exten => 2020,2,Voicemail,u2000 ; Send to voicemail... -; Extension 301 rings the firefly softphone -exten => 401,1,Dial,(IAX2/firefly01@firefly01/s) +; Extension 2102 rings Grandstream phone +exten => 2102,1,Dial(sip/gs102,30,to) ; Ring, 30 secs max +exten => 2102,2,Voicemail,u2102 ; Send to voicemail... +; Extension 401 rings the firefly softphone +exten => 401,1,Dial((IAX2/firefly01@firefly01/s||t) exten => 401,2,Hangup -; extensions for other SIP and IAX call center phones -exten => 100,1,Dial,sip/cc100|20|to -exten => 101,1,Dial,sip/cc101|20|to -exten => 102,1,Dial,sip/cc102|20|to -exten => 103,1,Dial,sip/cc103|20|to -exten => 104,1,Dial,sip/cc104|20|to -exten => 105,1,Dial,sip/cc105|20|to -exten => 106,1,Dial,sip/cc106|20|to -exten => 107,1,Dial,sip/cc107|20|to -exten => 108,1,Dial,sip/cc108|20|to -exten => 109,1,Dial,sip/cc109|20|to -exten => 110,1,Dial,sip/cc110|20|to -exten => 111,1,Dial,sip/cc111|20|to -exten => 112,1,Dial,sip/cc112|20|to -exten => 113,1,Dial,sip/cc113|20|to -exten => 114,1,Dial,sip/cc114|20|to -exten => 115,1,Dial,sip/cc115|20|to -exten => 116,1,Dial,sip/cc116|20|to -exten => 117,1,Dial,sip/cc117|20|to -exten => 118,1,Dial,sip/cc118|20|to -exten => 119,1,Dial,sip/cc119|20|to -exten => 120,1,Dial,sip/cc120|20|to -exten => 121,1,Dial,sip/cc121|20|to -exten => 122,1,Dial,sip/cc122|20|to -exten => 123,1,Dial,sip/cc123|20|to -exten => 124,1,Dial,sip/cc124|20|to -exten => 125,1,Dial,sip/cc125|20|to -exten => 126,1,Dial,sip/cc126|20|to -exten => 127,1,Dial,sip/cc127|20|to -exten => 128,1,Dial,sip/cc128|20|to -exten => 129,1,Dial,sip/cc129|20|to -exten => 130,1,Dial,sip/cc130|20|to -exten => 131,1,Dial,sip/cc131|20|to -exten => 132,1,Dial,sip/cc132|20|to -exten => 133,1,Dial,sip/cc133|20|to -exten => 134,1,Dial,sip/cc134|20|to -exten => 135,1,Dial,sip/cc135|20|to -exten => 136,1,Dial,sip/cc136|20|to -exten => 137,1,Dial,sip/cc137|20|to -exten => 138,1,Dial,sip/cc138|20|to -exten => 139,1,Dial,sip/cc139|20|to -exten => 140,1,Dial,sip/cc140|20|to -exten => 141,1,Dial,sip/cc141|20|to -exten => 142,1,Dial,sip/cc142|20|to -exten => 143,1,Dial,sip/cc143|20|to -exten => 144,1,Dial,sip/cc144|20|to -exten => 145,1,Dial,sip/cc145|20|to -exten => 146,1,Dial,sip/cc146|20|to -exten => 147,1,Dial,sip/cc147|20|to -exten => 148,1,Dial,sip/cc148|20|to -exten => 149,1,Dial,sip/cc149|20|to -exten => 150,1,Dial,sip/cc150|20|to -exten => 300,1,Dial,IAX2/cc300|20|to -exten => 301,1,Dial,IAX2/cc301|20|to -exten => 302,1,Dial,IAX2/cc302|20|to -exten => 303,1,Dial,IAX2/cc303|20|to -exten => 304,1,Dial,IAX2/cc304|20|to -exten => 305,1,Dial,IAX2/cc305|20|to -exten => 306,1,Dial,IAX2/cc306|20|to -exten => 307,1,Dial,IAX2/cc307|20|to -exten => 308,1,Dial,IAX2/cc308|20|to -exten => 309,1,Dial,IAX2/cc309|20|to -exten => 310,1,Dial,IAX2/cc310|20|to -exten => 311,1,Dial,IAX2/cc311|20|to -exten => 312,1,Dial,IAX2/cc312|20|to -exten => 313,1,Dial,IAX2/cc313|20|to -exten => 314,1,Dial,IAX2/cc314|20|to -exten => 315,1,Dial,IAX2/cc315|20|to -exten => 316,1,Dial,IAX2/cc316|20|to -exten => 317,1,Dial,IAX2/cc317|20|to -exten => 318,1,Dial,IAX2/cc318|20|to -exten => 319,1,Dial,IAX2/cc319|20|to -exten => 320,1,Dial,IAX2/cc320|20|to -exten => 321,1,Dial,IAX2/cc321|20|to -exten => 322,1,Dial,IAX2/cc322|20|to -exten => 323,1,Dial,IAX2/cc323|20|to -exten => 324,1,Dial,IAX2/cc324|20|to -exten => 325,1,Dial,IAX2/cc325|20|to -exten => 326,1,Dial,IAX2/cc326|20|to -exten => 327,1,Dial,IAX2/cc327|20|to -exten => 328,1,Dial,IAX2/cc328|20|to -exten => 329,1,Dial,IAX2/cc329|20|to -exten => 330,1,Dial,IAX2/cc330|20|to -exten => 331,1,Dial,IAX2/cc331|20|to -exten => 332,1,Dial,IAX2/cc332|20|to -exten => 333,1,Dial,IAX2/cc333|20|to -exten => 334,1,Dial,IAX2/cc334|20|to -exten => 335,1,Dial,IAX2/cc335|20|to -exten => 336,1,Dial,IAX2/cc336|20|to -exten => 337,1,Dial,IAX2/cc337|20|to -exten => 338,1,Dial,IAX2/cc338|20|to -exten => 339,1,Dial,IAX2/cc339|20|to -exten => 340,1,Dial,IAX2/cc340|20|to -exten => 341,1,Dial,IAX2/cc341|20|to -exten => 342,1,Dial,IAX2/cc342|20|to -exten => 343,1,Dial,IAX2/cc343|20|to -exten => 344,1,Dial,IAX2/cc344|20|to -exten => 345,1,Dial,IAX2/cc345|20|to -exten => 346,1,Dial,IAX2/cc346|20|to -exten => 347,1,Dial,IAX2/cc347|20|to -exten => 348,1,Dial,IAX2/cc348|20|to -exten => 349,1,Dial,IAX2/cc349|20|to -exten => 350,1,Dial,IAX2/cc350|20|to +; extensions for other SIP and IAX call center phones +; cc100-cc150 SIP Phones +exten => _1[0-5]X,1,Dial(sip/cc${EXTEN},20,to) +; cc300-cc350 IAX Phones +exten => _3[0-5]X,1,Dial(IAX2/cc${EXTEN},20,to) ; extensions if using a T1 channelbank -exten => 1901,1,Dial,Zap/1|30|o -exten => 1901,2,Hangup -exten => 1902,1,Dial,Zap/2|30|o -exten => 1902,2,Hangup -exten => 1903,1,Dial,Zap/3|30|o -exten => 1903,2,Hangup -exten => 1904,1,Dial,Zap/4|30|o -exten => 1904,2,Hangup -exten => 1905,1,Dial,Zap/5|30|o -exten => 1905,2,Hangup -exten => 1906,1,Dial,Zap/6|30|o -exten => 1906,2,Hangup -exten => 1907,1,Dial,Zap/7|30|o -exten => 1907,2,Hangup -exten => 1908,1,Dial,Zap/8|30|o -exten => 1908,2,Hangup -exten => 1909,1,Dial,Zap/9|30|o -exten => 1909,2,Hangup -exten => 1910,1,Dial,Zap/10|30|o -exten => 1910,2,Hangup -exten => 1911,1,Dial,Zap/11|30|o -exten => 1911,2,Hangup -exten => 1912,1,Dial,Zap/12|30|o -exten => 1912,2,Hangup -exten => 1913,1,Dial,Zap/13|30|o -exten => 1913,2,Hangup -exten => 1914,1,Dial,Zap/14|30|o -exten => 1914,2,Hangup -exten => 1915,1,Dial,Zap/15|30|o -exten => 1915,2,Hangup -exten => 1916,1,Dial,Zap/16|30|o -exten => 1916,2,Hangup -exten => 1917,1,Dial,Zap/17|30|o -exten => 1917,2,Hangup -exten => 1918,1,Dial,Zap/18|30|o -exten => 1918,2,Hangup -exten => 1919,1,Dial,Zap/19|30|o -exten => 1919,2,Hangup -exten => 1920,1,Dial,Zap/20|30|o -exten => 1920,2,Hangup -exten => 1921,1,Dial,Zap/21|30|o -exten => 1921,2,Hangup -exten => 1922,1,Dial,Zap/22|30|o -exten => 1922,2,Hangup -exten => 1923,1,Dial,Zap/23|30|o -exten => 1923,2,Hangup -exten => 1924,1,Dial,Zap/24|30|o -exten => 1924,2,Hangup +exten => _19XX,1,Dial(Zap/${EXTEN:2},30,o) +exten => _19XX,2,Hangup + +; Extension 4001 rings Zap phone (this example for FXS on Zap port 1) +exten => 4001,1,Dial(Zap/1,30,o) ; ring Zap device 1 +exten => 4001,2,Voicemail,u4001 ; Send to voicemail... ; # timeout invalid rules @@ -195,24 +69,6 @@ exten => i,1,Playback(invalid) ; "That's not valid, try again" 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 (this example for FXS on Zap port 1) -exten => 4001,1,Dial,Zap/1|30| ; ring Zap device 1 -exten => 4001,2,Voicemail,u4001 ; Send to voicemail... - - - - ; FastAGI for VICIDIAL/astGUIclient call logging exten => h,1,DeadAGI(agi://127.0.0.1:4577/call_log--HVcauses--PRI-----NODEBUG-----${HANGUPCAUSE}-----${DIALSTATUS}-----${DIALEDTIME}-----${ANSWEREDTIME}) @@ -226,69 +82,73 @@ exten => 7275551212,1,Ringing exten => 7275551212,2,Wait(1) exten => 7275551212,3,AGI(agi://127.0.0.1:4577/call_log--fullCID--${EXTEN}-----{CALLERID(all)}-----${CALLERID(num)}-----${CALLERID(name)}) exten => 7275551212,4,Answer -exten => 7275551212,5,Dial,sip/spa2000&sip/spa2001|30|to +exten => 7275551212,5,Dial(sip/spa2000&sip/spa2001,30,To) exten => 7275551212,6,Voicemail,u2000 ; dial a long distance outbound number to the UK ; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls, exten => _901144XXXXXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _901144XXXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},55,tTo) +exten => _901144XXXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},55,To) exten => _901144XXXXXXXXXX,3,Hangup ; dial a long distance outbound number to Australia ; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls, exten => _901161XXXXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _901161XXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo) +exten => _901161XXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,To) exten => _901161XXXXXXXXX,3,Hangup +; Extensions for performance testing +exten => _91999NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) +exten => _91999NXXXXXX,2,Dial(${TRUNKloop}/${EXTEN:2},,tTo) +exten => _91999NXXXXXX,3,Hangup +exten => 999999999999,1,AGI(agi://127.0.0.1:4577/call_log) +exten => 999999999999,2,Dial(${TRUNKloop}/${EXTEN:1},,tTo) +exten => 999999999999,3,Hangup + ; dial an 800 outbound number exten => _91800NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _91800NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo) +exten => _91800NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,To) exten => _91800NXXXXXX,3,Hangup exten => _91888NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _91888NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo) +exten => _91888NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,To) exten => _91888NXXXXXX,3,Hangup exten => _91877NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _91877NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo) +exten => _91877NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,To) exten => _91877NXXXXXX,3,Hangup exten => _91866NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _91866NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo) +exten => _91866NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,To) exten => _91866NXXXXXX,3,Hangup +; 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,2,Dial(${TRUNK}/1727${EXTEN:1},,To) +exten => _9NXXXXXX,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,2,Dial(${TRUNK}/1${EXTEN:1},,tTo) +exten => _9727NXXXXXX,2,Dial(${TRUNK}/1${EXTEN:1},,To) 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,2,Dial(${TRUNK}/${EXTEN:1},,tTo) -exten => _9813NXXXXXX,3,Hangup - ; dial a long distance outbound number -; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls, +; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls exten => _91NXXNXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) -exten => _91NXXNXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo) +exten => _91NXXNXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,To) 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,2,Dial(${TRUNKIAX}/${EXTEN},55,o) +; exten => _91NXXNXXXXXX,2,Dial(${TRUNKIAX}/${EXTEN},55,To) ; 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,2,Dial(sip/${EXTEN}@SIPtrunk,55,o) ; exten => _91NXXNXXXXXX,3,Hangup -; 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,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 +; This is not part of VICIDIAL, it is for astGUIclient agent use only ; Extension 3429 - Inbound 800 number (1-800-555-3429) example of RBS T1 ; with 10 digit ANI and 4 digit DNIS star separated @@ -296,30 +156,16 @@ exten => _**3429,1,Ringing exten => _**3429,2,AGI(agi://127.0.0.1:4577/call_log) exten => _**3429,3,AGI(call_inbound.agi,spa2000-----8005553429-----Inbound 800-----x-----y-----z-----w) exten => _**3429,4,Answer -exten => _**3429,5,Dial,sip/spa2000&sip/spa2001|30|to +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,3,AGI(call_inbound.agi,spa2000-----8005553429-----Inbound 800-----x-----y-----z-----w) exten => _*NXXNXXXXXX*3429,4,Answer -exten => _*NXXNXXXXXX*3429,5,Dial,sip/spa2000&sip/spa2001|30|to +exten => _*NXXNXXXXXX*3429,5,Dial(sip/spa2000&sip/spa2001,30,to) exten => _*NXXNXXXXXX*3429,6,Voicemail,u2000 -; BE SURE TO CHANGE THESE FOR YOUR IP ADDRESS! -exten => _010*010*010*015*8600XXX,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*8600XXX*.,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*78600XXX,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*78600XXX*.,1,Goto(default,${EXTEN:16},1) -exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) -exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) - -; ### server 2 extens: -; exten => _010*010*010*016*8600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) -; exten => _010*010*010*016*8600XXX,2,Hangup -; exten => _010*010*010*016*8600XXX*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) -; exten => _010*010*010*016*8600XXX*.,2,Hangup - ; parameters for agi-VDAD_ALL_inbound.agi (9 fields separated by five dashes "-----"): ; 1. the method of call handling for the script: @@ -366,61 +212,8 @@ 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) +exten => _86120XX,1,ZapBarge(${EXTEN:5}) -; astGUIclient conferences -exten => 8600001,1,Meetme,8600001|qF -exten => 8600002,1,Meetme,8600002|qF -exten => 8600003,1,Meetme,8600003|qF -exten => 8600004,1,Meetme,8600004|qF -exten => 8600005,1,Meetme,8600005|qF -exten => 8600006,1,Meetme,8600006|qF -exten => 8600007,1,Meetme,8600007|qF -exten => 8600008,1,Meetme,8600008|qF -exten => 8600009,1,Meetme,8600009|qF -exten => 8600010,1,Meetme,8600010|qF -exten => 8600011,1,Meetme,8600011|qF -exten => 8600012,1,Meetme,8600012|qF -exten => 8600013,1,Meetme,8600013|qF -exten => 8600014,1,Meetme,8600014|qF -exten => 8600015,1,Meetme,8600015|qF -exten => 8600016,1,Meetme,8600016|qF -exten => 8600017,1,Meetme,8600017|qF -exten => 8600018,1,Meetme,8600018|qF -exten => 8600019,1,Meetme,8600019|qF -exten => 8600020,1,Meetme,8600020|qF -exten => 8600021,1,Meetme,8600021|qF -exten => 8600022,1,Meetme,8600022|qF -exten => 8600023,1,Meetme,8600023|qF -exten => 8600024,1,Meetme,8600024|qF -exten => 8600025,1,Meetme,8600025|qF -exten => 8600026,1,Meetme,8600026|qF -exten => 8600027,1,Meetme,8600027|qF -exten => 8600028,1,Meetme,8600028|qF -exten => 8600029,1,Meetme,8600029|qF exten => _X48600XXX,1,MeetMeAdmin(${EXTEN:2},T,${EXTEN:0:1}) exten => _X48600XXX,2,Hangup @@ -438,164 +231,19 @@ exten => _55558600XXX,1,MeetMeAdmin(${EXTEN:4},K) exten => _55558600XXX,2,Hangup exten => 8300,1,Hangup +; astGUIclient conferences +exten => _86000[0-4]X,1,Meetme,${EXTEN}|q ; VICIDIAL conferences -exten => 8600051,1,Meetme,8600051|F -exten => 8600052,1,Meetme,8600052|F -exten => 8600053,1,Meetme,8600053|F -exten => 8600054,1,Meetme,8600054|F -exten => 8600055,1,Meetme,8600055|F -exten => 8600056,1,Meetme,8600056|F -exten => 8600057,1,Meetme,8600057|F -exten => 8600058,1,Meetme,8600058|F -exten => 8600059,1,Meetme,8600059|F -exten => 8600060,1,Meetme,8600060|F -exten => 8600061,1,Meetme,8600061|F -exten => 8600062,1,Meetme,8600062|F -exten => 8600063,1,Meetme,8600063|F -exten => 8600064,1,Meetme,8600064|F -exten => 8600065,1,Meetme,8600065|F -exten => 8600066,1,Meetme,8600066|F -exten => 8600067,1,Meetme,8600067|F -exten => 8600068,1,Meetme,8600068|F -exten => 8600069,1,Meetme,8600069|F -exten => 8600070,1,Meetme,8600070|F -exten => 8600071,1,Meetme,8600071|F -exten => 8600072,1,Meetme,8600072|F -exten => 8600073,1,Meetme,8600073|F -exten => 8600074,1,Meetme,8600074|F -exten => 8600075,1,Meetme,8600075|F -exten => 8600076,1,Meetme,8600076|F -exten => 8600077,1,Meetme,8600077|F -exten => 8600078,1,Meetme,8600078|F -exten => 8600079,1,Meetme,8600079|F -exten => 8600080,1,Meetme,8600080|F -exten => 8600081,1,Meetme,8600081|F -exten => 8600082,1,Meetme,8600082|F -exten => 8600083,1,Meetme,8600083|F -exten => 8600084,1,Meetme,8600084|F -exten => 8600085,1,Meetme,8600085|F -exten => 8600086,1,Meetme,8600086|F -exten => 8600087,1,Meetme,8600087|F -exten => 8600088,1,Meetme,8600088|F -exten => 8600089,1,Meetme,8600089|F -exten => 8600090,1,Meetme,8600090|F -exten => 8600091,1,Meetme,8600091|F -exten => 8600092,1,Meetme,8600092|F -exten => 8600093,1,Meetme,8600093|F -exten => 8600094,1,Meetme,8600094|F -exten => 8600095,1,Meetme,8600095|F -exten => 8600096,1,Meetme,8600096|F -exten => 8600097,1,Meetme,8600097|F -exten => 8600098,1,Meetme,8600098|F -exten => 8600099,1,Meetme,8600099|F -exten => 8600100,1,Meetme,8600100|F -exten => 8600101,1,Meetme,8600101|F -exten => 8600102,1,Meetme,8600102|F -exten => 8600103,1,Meetme,8600103|F -exten => 8600104,1,Meetme,8600104|F -exten => 8600105,1,Meetme,8600105|F -exten => 8600106,1,Meetme,8600106|F -exten => 8600107,1,Meetme,8600107|F -exten => 8600108,1,Meetme,8600108|F -exten => 8600109,1,Meetme,8600109|F -exten => 8600110,1,Meetme,8600110|F -exten => 8600111,1,Meetme,8600111|F -exten => 8600112,1,Meetme,8600112|F -exten => 8600113,1,Meetme,8600113|F -exten => 8600114,1,Meetme,8600114|F -exten => 8600115,1,Meetme,8600115|F -exten => 8600116,1,Meetme,8600116|F -exten => 8600117,1,Meetme,8600117|F -exten => 8600118,1,Meetme,8600118|F -exten => 8600119,1,Meetme,8600119|F -exten => 8600120,1,Meetme,8600120|F -exten => 8600121,1,Meetme,8600121|F -exten => 8600122,1,Meetme,8600122|F -exten => 8600123,1,Meetme,8600123|F -exten => 8600124,1,Meetme,8600124|F -exten => 8600125,1,Meetme,8600125|F -exten => 8600126,1,Meetme,8600126|F -exten => 8600127,1,Meetme,8600127|F -exten => 8600128,1,Meetme,8600128|F -exten => 8600129,1,Meetme,8600129|F -exten => 8600130,1,Meetme,8600130|F -exten => 8600131,1,Meetme,8600131|F -exten => 8600132,1,Meetme,8600132|F -exten => 8600133,1,Meetme,8600133|F -exten => 8600134,1,Meetme,8600134|F -exten => 8600135,1,Meetme,8600135|F -exten => 8600136,1,Meetme,8600136|F -exten => 8600137,1,Meetme,8600137|F -exten => 8600138,1,Meetme,8600138|F -exten => 8600139,1,Meetme,8600139|F -exten => 8600140,1,Meetme,8600140|F -exten => 8600141,1,Meetme,8600141|F -exten => 8600142,1,Meetme,8600142|F -exten => 8600143,1,Meetme,8600143|F -exten => 8600144,1,Meetme,8600144|F -exten => 8600145,1,Meetme,8600145|F -exten => 8600146,1,Meetme,8600146|F -exten => 8600147,1,Meetme,8600147|F -exten => 8600148,1,Meetme,8600148|F -exten => 8600149,1,Meetme,8600149|F -exten => 8600150,1,Meetme,8600150|F -exten => 8600151,1,Meetme,8600151|F -exten => 8600152,1,Meetme,8600152|F -exten => 8600153,1,Meetme,8600153|F -exten => 8600154,1,Meetme,8600154|F -exten => 8600155,1,Meetme,8600155|F -exten => 8600156,1,Meetme,8600156|F -exten => 8600157,1,Meetme,8600157|F -exten => 8600158,1,Meetme,8600158|F -exten => 8600159,1,Meetme,8600159|F -exten => 8600160,1,Meetme,8600160|F -exten => 8600161,1,Meetme,8600161|F -exten => 8600162,1,Meetme,8600162|F -exten => 8600163,1,Meetme,8600163|F -exten => 8600164,1,Meetme,8600164|F -exten => 8600165,1,Meetme,8600165|F -exten => 8600166,1,Meetme,8600166|F -exten => 8600167,1,Meetme,8600167|F -exten => 8600168,1,Meetme,8600168|F -exten => 8600169,1,Meetme,8600169|F -exten => 8600170,1,Meetme,8600170|F -exten => 8600171,1,Meetme,8600171|F -exten => 8600172,1,Meetme,8600172|F -exten => 8600173,1,Meetme,8600173|F -exten => 8600174,1,Meetme,8600174|F -exten => 8600175,1,Meetme,8600175|F -exten => 8600176,1,Meetme,8600176|F -exten => 8600177,1,Meetme,8600177|F -exten => 8600178,1,Meetme,8600178|F -exten => 8600179,1,Meetme,8600179|F -exten => 8600180,1,Meetme,8600180|F -exten => 8600181,1,Meetme,8600181|F -exten => 8600182,1,Meetme,8600182|F -exten => 8600183,1,Meetme,8600183|F -exten => 8600184,1,Meetme,8600184|F -exten => 8600185,1,Meetme,8600185|F -exten => 8600186,1,Meetme,8600186|F -exten => 8600187,1,Meetme,8600187|F -exten => 8600188,1,Meetme,8600188|F -exten => 8600189,1,Meetme,8600189|F -exten => 8600190,1,Meetme,8600190|F -exten => 8600191,1,Meetme,8600191|F -exten => 8600192,1,Meetme,8600192|F -exten => 8600193,1,Meetme,8600193|F -exten => 8600194,1,Meetme,8600194|F -exten => 8600195,1,Meetme,8600195|F -exten => 8600196,1,Meetme,8600196|F -exten => 8600197,1,Meetme,8600197|F -exten => 8600198,1,Meetme,8600198|F -exten => 8600199,1,Meetme,8600199|F -exten => 8600200,1,Meetme,8600200|F +exten => _86000[5-9]X,1,Meetme,${EXTEN}|F +exten => _86001XX,1,Meetme,${EXTEN}|F +exten => _8600200,1,Meetme,${EXTEN}|F ; quiet entry and leaving conferences for VICIDIAL -exten => _78600XXX,1,Meetme,${EXTEN:1}|qF +exten => _78600XXX,1,Meetme,${EXTEN:1}|Fq ; quiet monitor extensions for meetme rooms (for room managers) -exten => _68600XXX,1,Meetme,${EXTEN:1}|mq +exten => _68600XXX,1,Meetme,${EXTEN:1}|Fmq ; voicelab exten -exten => _86009XX,1,Meetme,${EXTEN}|mq +exten => _86009XX,1,Meetme,${EXTEN}|Fmq ; voicelab exten moderator exten => _986009XX,1,Meetme,${EXTEN:1} @@ -633,6 +281,7 @@ 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) +; Recording is limited to 1 hour, to make longer, just change the Wait,3600 exten => 8309,1,Answer exten => 8309,2,Monitor(wav,${CALLERID(name)}) exten => 8309,3,Wait,3600 @@ -640,6 +289,7 @@ 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) +; Recording is limited to 1 hour, to make longer, just change the Wait,3600 exten => 8310,1,Answer exten => 8310,2,Monitor(gsm,${CALLERID(name)}) exten => 8310,3,Wait,3600 @@ -657,9 +307,14 @@ 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 +; prompts for recording AGI script, ID is 4321 +; first variable is format (gsm/wav) +; second variable is timeout in milliseconds (default is 720000 [12 minutes]) +exten => 8167,1,Answer +exten => 8167,2,AGI(agi-record_prompts.agi,wav-----720000) +exten => 8167,3,Hangup exten => 8168,1,Answer -exten => 8168,2,AGI(agi-record_prompts.agi) +exten => 8168,2,AGI(agi-record_prompts.agi,gsm-----720000) exten => 8168,3,Hangup ; playback of recorded prompts @@ -792,3 +447,68 @@ exten => 8372,5,Hangup ;exten => 8372,4,AGI(agi-VDADautoREMINDER.agi,${EXTEN}) ;exten => 8372,5,Hangup + + +; PERFORMANCE TESTING +exten => _999XXXXXX1,1,Answer +exten => _999XXXXXX1,2,Wait(2) +exten => _999XXXXXX1,3,Playback(beep) +exten => _999XXXXXX1,4,Hangup + +exten => _999XXXX112,1,Wait(8) +exten => _999XXXX112,2,Answer +exten => _999XXXX112,3,Playback(demo-instruct) +exten => _999XXXX112,4,Playback(demo-instruct) +exten => _999XXXX112,5,Hangup + +exten => _999XXXXXX2,1,Wait(8) +exten => _999XXXXXX2,2,Answer +exten => _999XXXXXX2,3,Playback(demo-instruct) +exten => _999XXXXXX2,4,Hangup + +exten => _999XXXXXX3,1,SetVar(PRI_CAUSE=1) +exten => _999XXXXXX3,2,Hangup + +exten => _999XXXXXX4,1,SetVar(PRI_CAUSE=27) +exten => _999XXXXXX4,2,Hangup + +exten => _999XXXXXX5,1,Wait(60) +exten => _999XXXXXX5,2,Hangup + +exten => _999XXXXXX6,1,Wait(10) +exten => _999XXXXXX6,2,Answer +exten => _999XXXXXX6,3,Playback(demo-instruct) +exten => _999XXXXXX6,4,Hangup + +exten => _999XXXXXX7,1,Wait(12) +exten => _999XXXXXX7,2,Answer +exten => _999XXXXXX7,3,Playback(demo-enterkeywords) +exten => _999XXXXXX7,4,Hangup + +exten => _999XXXXXX8,1,SetVar(PRI_CAUSE=17) +exten => _999XXXXXX8,2,Hangup + +exten => _999XXXXXX9,1,Wait(6) +exten => _999XXXXXX9,2,Answer +exten => _999XXXXXX9,3,Playback(demo-abouttotry) +exten => _999XXXXXX9,4,Hangup + +exten => _999XXXXXX0,1,Wait(5) +exten => _999XXXXXX0,2,Answer +exten => _999XXXXXX0,3,Playback(vm-goodbye) +exten => _999XXXXXX0,4,Hangup + +exten => 99999999999,1,Answer +exten => 99999999999,2,Playback(conf) +exten => 99999999999,3,Playback(conf) +exten => 99999999999,4,Playback(conf) +exten => 99999999999,5,Playback(conf) +exten => 99999999999,6,Playback(conf) +exten => 99999999999,7,Playback(conf) +exten => 99999999999,8,Playback(conf) +exten => 99999999999,9,Playback(conf) +exten => 99999999999,10,Playback(conf) +exten => 99999999999,11,Playback(conf) +exten => 99999999999,12,Playback(conf) +exten => 99999999999,13,Playback(conf) +exten => 99999999999,14,Hangup diff --git a/agc_2-X/branches/agc_2.0.4/docs/conf_examples/iax.conf.sample b/agc_2-X/branches/agc_2.0.4/docs/conf_examples/iax.conf.sample index 44302e7b..df66f71c 100644 --- a/agc_2-X/branches/agc_2.0.4/docs/conf_examples/iax.conf.sample +++ b/agc_2-X/branches/agc_2.0.4/docs/conf_examples/iax.conf.sample @@ -8,6 +8,8 @@ jitterbuffer=no tos=lowdelay ;register => 1112223333:PASSWORD@iax.binfone.com +register => ASTloop:test@127.0.0.1:40569 +register => ASTblind:test@127.0.0.1:41569 [vicihelp] host=67.134.219.20 ;voip.vicidial-group.com @@ -19,6 +21,30 @@ allow=ulaw permit=67.134.219.20/255.255.255.255 insecure=very +[ASTloop] +type=friend +accountcode=ASTloop +context=default +auth=plaintext +host=dynamic +permit=0.0.0.0/0.0.0.0 +secret=test +disallow=all +allow=ulaw +qualify=yes + +[ASTblind] +type=friend +accountcode=ASTblind +context=default +auth=plaintext +host=dynamic +permit=0.0.0.0/0.0.0.0 +secret=test +disallow=all +allow=ulaw +qualify=yes + [1112223333] auth=md5 type=friend diff --git a/agc_2-X/trunk/UPGRADE b/agc_2-X/trunk/UPGRADE index 693b8d9a..0c0c743c 100644 --- a/agc_2-X/trunk/UPGRADE +++ b/agc_2-X/trunk/UPGRADE @@ -87,6 +87,10 @@ NOTE: Upgrading from 1.1.12-3 to 2.0.1 is at the bottom [featuremap] blindxfer => D +16. Added ip_relay to allow for loopback IAX trunks that make true blind monitoring possible for all agents no matter their phone type 0860XXXX. + + + ########## UPGRADING FROM 2.0.3 TO 2.0.4 ########## diff --git a/agc_2-X/trunk/docs/BASE_INSTALL.txt b/agc_2-X/trunk/docs/BASE_INSTALL.txt index 44dea57f..1da48ef4 100644 --- a/agc_2-X/trunk/docs/BASE_INSTALL.txt +++ b/agc_2-X/trunk/docs/BASE_INSTALL.txt @@ -1,4 +1,4 @@ -Asterisk/astguiclient install from existing server. v.2.0.4 2007-12-03 +Asterisk/astguiclient install from existing server. v.2.0.5 2008-XX-XX By the astGUIclient group astguiclient@eflo.net @@ -187,12 +187,12 @@ VICIDIAL components to the system. There are two methods for downloading astGUIclient/VICIDIAL, a release and SVN 1. Go to http://astguiclient.sf.net/ and download the latest astguiclient -package(as of this writing it is 2.0.4) +package(as of this writing it is 2.0.4.1) - for 2.0.X release: mkdir /usr/src/astguiclient cd /usr/src/astguiclient - wget http://internap.dl.sourceforge.net/sourceforge/astguiclient/astguiclient_2.0.4.zip - unzip astguiclient_2.0.4.zip + wget http://internap.dl.sourceforge.net/sourceforge/astguiclient/astguiclient_2.0.4.1.zip + unzip astguiclient_2.0.4.1.zip perl install.pl - for SVN 2.0 trunk: mkdir /usr/src/astguiclient @@ -507,8 +507,17 @@ insert into vicidial_statuses values('XFER','Call Transferred','Y','Y','UNDEFINE quit - run this command from command line: - - /usr/share/astguiclient/ADMIN_area_code_populate.pl + to populate the timezone/country table run this command from command line: + - /usr/share/astguiclient/ADMIN_area_code_populate.pl + + to load the performance testing leads run these commands: + - cp /usr/src/astguiclient/trunk/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + or + - cp /usr/src/astguiclient/agc_2.0.4/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + - cp /usr/src/astguiclient_2.0.4.1/trunk/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + + - /usr/share/astguiclient/VICIDIAL_IN_new_leads_file.pl --forcelistid=107 --forcephonecode=1 + ######------ END Mysql data entry ------###### diff --git a/agc_2-X/trunk/docs/PERFORMANCE_TESTING.txt b/agc_2-X/trunk/docs/PERFORMANCE_TESTING.txt index d2e95c40..56da3108 100644 --- a/agc_2-X/trunk/docs/PERFORMANCE_TESTING.txt +++ b/agc_2-X/trunk/docs/PERFORMANCE_TESTING.txt @@ -1,11 +1,11 @@ -PERFORMANCE TESTING OF A VICIDIAL SERVER 2006-10-12 +PERFORMANCE TESTING OF A VICIDIAL SERVER 2008-03-31 OVERVIEW: This document goes over the setup of a VICIDIAL/Asterisk server that you are testing, and the control Asterisk server that will be taking the calls from the serer being tested. -It is very difficult to realistically performance test a VICIDIAL server not in production because of the randomness of call center operations. +It is very difficult to realistically performance test a VICIDIAL server not in production because of the random-ness of call center operations. How this process works is that multiple remote agents are activated and calls are placed from the server being tested to a control server that will take those calls and send various signals and play various audio files so that the randomness of outbound dialing is simulated. @@ -15,6 +15,7 @@ It is important that there are no live VICIDIAL agents or calls happening on thi If you want pretty server performance graphics you need to make sure the server record has performance logging enabled. + NOTE: as of release 2.0.4.1 Performance testing extensions are loaded in the default extensions.conf and the "loop" IAX trunk is enabled for the server to send calls back to itself, making performance testing on a default install of VICIDIAL much easier. EXAMPLE TESTING SCENARIO: @@ -74,20 +75,20 @@ exten => _999XXXXXX0,2,Answer exten => _999XXXXXX0,3,Playback(vm-goodbye) exten => _999XXXXXX0,4,Hangup -exten => 999999999999,1,Answer -exten => 999999999999,2,Playback(conf) -exten => 999999999999,3,Playback(conf) -exten => 999999999999,4,Playback(conf) -exten => 999999999999,5,Playback(conf) -exten => 999999999999,6,Playback(conf) -exten => 999999999999,7,Playback(conf) -exten => 999999999999,8,Playback(conf) -exten => 999999999999,9,Playback(conf) -exten => 999999999999,10,Playback(conf) -exten => 999999999999,11,Playback(conf) -exten => 999999999999,12,Playback(conf) -exten => 999999999999,13,Playback(conf) -exten => 999999999999,14,Hangup +exten => 99999999999,1,Answer +exten => 99999999999,2,Playback(conf) +exten => 99999999999,3,Playback(conf) +exten => 99999999999,4,Playback(conf) +exten => 99999999999,5,Playback(conf) +exten => 99999999999,6,Playback(conf) +exten => 99999999999,7,Playback(conf) +exten => 99999999999,8,Playback(conf) +exten => 99999999999,9,Playback(conf) +exten => 99999999999,10,Playback(conf) +exten => 99999999999,11,Playback(conf) +exten => 99999999999,12,Playback(conf) +exten => 99999999999,13,Playback(conf) +exten => 99999999999,14,Hangup In the test server you will need the following in your extensions.conf: @@ -102,7 +103,7 @@ exten => _91999NXXXXXX,2,Dial(${TESTTRUNK}/${EXTEN:2},,tTo) exten => _91999NXXXXXX,3,Hangup exten => 999999999999,1,Answer -exten => 999999999999,2,Dial(${TESTSIPTRUNK}/${EXTEN},,tTo) +exten => 999999999999,2,Dial(${TESTSIPTRUNK}/${EXTEN:1},,tTo) exten => 999999999999,2,Hangup diff --git a/agc_2-X/trunk/docs/REQUIRED_APPS_INSTALL.txt b/agc_2-X/trunk/docs/REQUIRED_APPS_INSTALL.txt index 77740a75..37d0bba4 100644 --- a/agc_2-X/trunk/docs/REQUIRED_APPS_INSTALL.txt +++ b/agc_2-X/trunk/docs/REQUIRED_APPS_INSTALL.txt @@ -1,4 +1,4 @@ -# Quick install of required apps v.2.0.5 2008-03-10 +# Quick install of required apps v.2.0.5 2008-XX-XX # This file is a supplement to the BASE_INSTALL document giving you simple copy/ # paste installation shell commands for required and helper apps for VICIDIAL # might need: echo '/* Linuxthreads */' >> /usr/include/pthread.h @@ -223,6 +223,30 @@ vi /usr/local/apache2/conf/httpd.conf "LoadModule php4_module module/libphp4.so" modify the index.html line and add index.php to the list + to disable logging, change: + "CustomLog logs/access_log common" + to this: + "CustomLog /dev/null common" + + to enable web browsing of Recordings on Asterisk server, add this: + Alias /RECORDINGS/ "/var/spool/asterisk/monitorDONE/" + + + Options Indexes MultiViews + AllowOverride None + Order allow,deny + Allow from all + + + OPTIONAL: USE ONLY FOR STANDALONE apache/php SERVER ONLY: + + ServerLimit 768 + StartServers 450 + MinSpareServers 250 + MaxSpareServers 500 + MaxClients 768 + MaxRequestsPerChild 1000 + vi /usr/local/lib/php.ini @@ -232,8 +256,12 @@ vi /usr/local/lib/php.ini and change it to: "memory_limit = 48M" - -/usr/local/apache2/bin/apachectl startssl + some other fields to change if using web-based lead loader: + max_execution_time = 330 + max_input_time = 360 + post_max_size = 48M + upload_max_filesize = 42M + default_socket_timeout = 360 cd /usr/local @@ -270,21 +298,21 @@ mkdir /tmp/eaccelerator chmod 0777 /tmp/eaccelerator php -v +/usr/local/apache2/bin/apachectl startssl + -cd /usr/local -wget http://superb-east.dl.sourceforge.net/sourceforge/mtop/mtop-0.6.6.tar.gz -gunzip mtop-0.6.6.tar.gz -tar xvf mtop-0.6.6.tar -cd mtop-0.6.6 cpan - install Curses install Getopt::Long install Net::Domain quit - +cd /usr/local +wget http://superb-east.dl.sourceforge.net/sourceforge/mtop/mtop-0.6.6.tar.gz +gunzip mtop-0.6.6.tar.gz +tar xvf mtop-0.6.6.tar +cd mtop-0.6.6 perl Makefile.PL make make install diff --git a/agc_2-X/trunk/docs/SCRATCH_INSTALL.txt b/agc_2-X/trunk/docs/SCRATCH_INSTALL.txt index 43d42e8b..5608ac0a 100644 --- a/agc_2-X/trunk/docs/SCRATCH_INSTALL.txt +++ b/agc_2-X/trunk/docs/SCRATCH_INSTALL.txt @@ -699,6 +699,13 @@ installation on another machine) error_reporting = E_ALL & ~E_NOTICE ; (this is default) !!! REQUIRED !!! raise the memory limit for scripts in php.ini: memory_limit = 48M + some other fields to change if using web-based lead loader: + max_execution_time = 330 + max_input_time = 360 + post_max_size = 48M + upload_max_filesize = 42M + default_socket_timeout = 360 + - vi /usr/local/apache2/conf/httpd.conf add the following lines: "AddType application/x-httpd-php .php .phtml" @@ -706,9 +713,27 @@ installation on another machine) or "LoadModule php4_module modules/libphp4.so" modify the index.html line and add index.php to the list + + to disable logging, change: + "CustomLog logs/access_log common" + to this: + "CustomLog /dev/null common" + + to enable web browsing of Recordings on Asterisk server, add this: + Alias /RECORDINGS/ "/var/spool/asterisk/monitorDONE/" + + + Options Indexes MultiViews + AllowOverride None + Order allow,deny + Allow from all + + - /usr/local/apache2/bin/apachectl start - go to http://your-new-asterisk-server-ipaddress/ to see if it worked - you are done + NOTE: If using PHP5 you may need to add the following line to php.ini: + short_open_tag = On OPTIONAL- Load eaccelerator PHP-caching application: - Go to http://eaccelerator.net and download the most recent package @@ -830,8 +855,8 @@ PHASE 4: INSTALLING ASTERISK OK, all the prep work is done, now it's time to start having fun with Asterisk. There are two basic ways to install Asterisk, an official release(at the time of -this writing the official release is 1.2.24) and the SVN_DEV version(development -branch). We recommend using Asterisk 1.2.24. These instructions are how we get +this writing the official release is 1.2.27) and the SVN_DEV version(development +branch). We recommend using Asterisk 1.2.27. These instructions are how we get our Asterisk system with it's T1 line installed with our 2 SIP VOIP devices and one IAX2 softphone. @@ -964,7 +989,7 @@ them: - If you have chosen a Sangoma T1/E1 or analog card, you will need to follow their instructions for installation of their driver software LATEST Sangoma Wanpipe drivers: - ftp://ftp.sangoma.com/linux/current_wanpipe/wanpipe-3.2.2.tgz + ftp://ftp.sangoma.com/linux/current_wanpipe/wanpipe-3.2.4.tgz - now your asterisk installation is built and loaded and it's time to configure it. @@ -1196,7 +1221,7 @@ with a pin number required for entry): [rooms] conf => 8600 conf => 8601,1234 -5. edit iax.conf (only to do IAX trunks, not required) +5. edit iax.conf - vi /etc/asterisk/iax.conf This is the IAX configuration file, below is a very simple config for having two Asterisk servers connect natively to each other, if you @@ -1508,7 +1533,7 @@ install with astguiclient to start Asterisk. SUBPHASE 5.1: setting up your SIP phones You will need to follow the instructions for the phones that you are using with -your system, but here's the way to set up a Grandstream 102 and a Sipura +your system, but here's the way to set up a Grandstream 102 and a Linksys/Sipura SPA-2000 1. Here are basic instructions for setting up a Grandstream BT 102: @@ -1642,12 +1667,12 @@ SUBPHASE 6.0: putting the files in place There are two methods for downloading astGUIclient/VICIDIAL, a release and SVN 1. Go to http://astguiclient.sf.net/ and download the latest astguiclient -package(as of this writing it is 2.0.4) +package(as of this writing it is 2.0.4.1) - for 2.0.X release: - mkdir /usr/src/astguiclient - cd /usr/src/astguiclient - - wget http://internap.dl.sourceforge.net/sourceforge/astguiclient/astguiclient_2.0.4.zip - - unzip astguiclient_2.0.4.zip + - wget http://internap.dl.sourceforge.net/sourceforge/astguiclient/astguiclient_2.0.4.1.zip + - unzip astguiclient_2.0.4.1.zip - perl install.pl (make sure you are in the directory with the install.pl file) - for SVN 2.0 trunk: - mkdir /usr/src/astguiclient @@ -1667,9 +1692,9 @@ free for download at the following two sites: Then you will need to execute this command to copy it as the park file 'cp /var/lib/asterisk/sounds/conf.gsm /var/lib/asterisk/sounds/park.gsm' Here are the steps spelled out: - - cd /var/lib/asterisk/sounds - - wget http://www.freedomphones.net/conf.gsm - - cp conf.gsm park.gsm + cd /var/lib/asterisk/sounds + wget http://www.freedomphones.net/conf.gsm + cp conf.gsm park.gsm - you are done @@ -1703,7 +1728,7 @@ use asterisk; or you may need to run this if you get an error: \. /usr/src/astguiclient/trunk/extras/MySQL_AST_CREATE_tables.sql -insert into servers (server_id,server_description,server_ip,active,asterisk_version)values('TESTasterisk','Test install of Asterisk server', '10.10.10.15','Y','1.2.17'); +insert into servers (server_id,server_description,server_ip,active,asterisk_version)values('TESTasterisk','Test install of Asterisk server', '10.10.10.15','Y','1.2.27'); insert into server_updater values('10.10.10.15',''); @@ -1743,8 +1768,17 @@ insert into conferences values('8600029','10.10.10.15',''); quit - run this command from command line: - - /usr/share/astguiclient/ADMIN_area_code_populate.pl + to populate the timezone/country table run this command from command line: + - /usr/share/astguiclient/ADMIN_area_code_populate.pl + + to load the performance testing leads run these commands: + - cp /usr/src/astguiclient/trunk/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + or + - cp /usr/src/astguiclient/agc_2.0.4/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + - cp /usr/src/astguiclient_2.0.4.1/trunk/extras/performance_test_leads.txt /usr/share/astguiclient/LEADS_IN/ + + - /usr/share/astguiclient/VICIDIAL_IN_new_leads_file.pl --forcelistid=107 --forcephonecode=1 + ######------ END Mysql data entry ------###### @@ -1822,25 +1856,39 @@ effected extension groups are show): ##### you will have problems if it is not in your dialplan! exten => h,1,DeadAGI(agi://127.0.0.1:4577/call_log--HVcauses--PRI-----NODEBUG-----${HANGUPCAUSE}-----${DIALSTATUS}-----${DIALEDTIME}-----${ANSWEREDTIME}) +; MANDITORY VDAD extens: +; In this setup, the serverIP is the prefix followed by agent conf_exten +; These lines are REQUIRED for VICIDIAL to work properly +; local server extens: +; BE SURE TO CHANGE THIS LINE FOR YOUR IP ADDRESS! + exten => _010*010*010*015*.,1,Goto(default,${EXTEN:16},1) + exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) + exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) +; Local blind monitoring + exten => _08600XXX,1,Dial(${TRUNKblind}/6${EXTEN:1},55,To) +; OPTIONAL server 2 extens, needed for load balancing: + exten => _010*010*010*016*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) + ; Extension 3429 - Inbound 800 number (1-800-555-3429) exten => _**3429,1,Ringing exten => _**3429,2,AGI(agi://127.0.0.1:4577/call_log) exten => _**3429,3,Answer -exten => _**3429,4,Dial,sip/spa2000&sip/spa2001|30|to +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,3,Answer -exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001|30|to +exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001,30,to exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000 ; Extension 7275551212 - Inbound local number from PRI with 10 digit delivery +; SEE extensions.conf.sample-1.4 for changes needed for use with Asterisk 1.4 exten => 7275551212,1,Ringing exten => 7275551212,2,Wait(1) exten => 7275551212,3,AGI(agi://127.0.0.1:4577/call_log--fullCID--${EXTEN}-----${CALLERID}-----${CALLERIDNUM}-----${CALLERIDNAME}) exten => 7275551212,4,Answer -exten => 7275551212,5,Dial,sip/spa2000&sip/spa2001|30|to +exten => 7275551212,5,Dial,sip/spa2000&sip/spa2001,30,to exten => 7275551212,6,Voicemail,u2000 ; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls, @@ -1855,6 +1903,14 @@ exten => _901161XXXXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) exten => _901161XXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,tTo) exten => _901161XXXXXXXXX,3,Hangup +; Extensions for performance testing +exten => _91999NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) +exten => _91999NXXXXXX,2,Dial(${TRUNKloop}/${EXTEN:2},,tTo) +exten => _91999NXXXXXX,3,Hangup +exten => 999999999999,1,AGI(agi://127.0.0.1:4577/call_log) +exten => 999999999999,2,Dial(${TRUNKloop}/${EXTEN:1},,tTo) +exten => 999999999999,3,Hangup + ; dial an 800 outbound number exten => _91800NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) exten => _91800NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,tTo) @@ -1874,11 +1930,6 @@ exten => _9727NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) 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,2,Dial(${TRUNK}/${EXTEN:1},,tTo) -exten => _9813NXXXXXX,3,Hangup - ; This 'o' Dial flag is VERY important for VICIDIAL on outbound calls, ; dial a long distance outbound number exten => _91NXXNXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) @@ -1919,14 +1970,6 @@ exten => _*NXXNXXXXXX*3429,3,Answer exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001|30|to exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000 -exten => _010*010*010*015*8600XXX,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*8600XXX*.,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*78600XXX,1,Goto(default,${EXTEN:16},1) -exten => _010*010*010*015*78600XXX*.,1,Goto(default,${EXTEN:16},1) -exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) -exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) - - ; parameters for agi-VDAD_ALL_inbound.agi (9 fields separated by five dashes "-----"): ; 1. the method of call handling for the script: ; - CID - CID received, add record with phone number @@ -1990,33 +2033,9 @@ exten => _990009.,3,Hangup 3. Add the ZapBarge entries for all zap lines: - here is how our sample dialplan changes for adding zapbarge line-specific entries(this is a pure addition, nothing is being modified): -######------ START extensions.conf additions for direct zapbarges ------###### + ; 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) -######------ END extensions.conf additions for direct zapbarges ------###### +exten => _86120XX,1,ZapBarge(${EXTEN:5}) 4. Add the meetme entries for astguiclient and VICIDIAL conferences to @@ -2209,37 +2228,9 @@ conf => 8600200 5. Add the conference entries for astguiclient conferences: - here is how our sample dialplan changes for adding conference entries (this is a pure addition, nothing is being modified): -######------ START extensions.conf additions for agc 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 -######------ END extensions.conf additions for agc conferences ------###### + +; astGUIclient conferences +exten => _86000[0-4]X,1,Meetme,${EXTEN}|q 6. Add the conference entries for VICIDIAL conferences: @@ -2263,160 +2254,19 @@ exten => _55558600XXX,1,MeetMeAdmin(${EXTEN:4},K) exten => _55558600XXX,2,Hangup exten => 8300,1,Hangup -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 +; VICIDIAL conferences +exten => _86000[5-9]X,1,Meetme,${EXTEN}|F +exten => _86001XX,1,Meetme,${EXTEN}|F +exten => _8600200,1,Meetme,${EXTEN}|F ; quiet entry and leaving conferences for VICIDIAL -exten => _78600XXX,1,Meetme,${EXTEN:1}|q +exten => _78600XXX,1,Meetme,${EXTEN:1}|Fq ; quiet monitor extensions for meetme rooms (for room managers) -exten => _68600XXX,1,Meetme,${EXTEN:1}|mq +exten => _68600XXX,1,Meetme,${EXTEN:1}|Fmq + +; voicelab exten +exten => _86009XX,1,Meetme,${EXTEN}|Fmq +; voicelab exten moderator +exten => _986009XX,1,Meetme,${EXTEN:1} ######------ END extensions.conf changes for VD conf ------###### @@ -2460,6 +2310,7 @@ 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) +; SEE extensions.conf.sample-1.4 for changes needed for use with Asterisk 1.4 exten => 8309,1,Answer exten => 8309,2,Monitor(wav,${CALLERIDNAME}) exten => 8309,3,Wait,3600 @@ -2467,6 +2318,7 @@ 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) +; SEE extensions.conf.sample-1.4 for changes needed for use with Asterisk 1.4 exten => 8310,1,Answer exten => 8310,2,Monitor(gsm,${CALLERIDNAME}) exten => 8310,3,Wait,3600 @@ -2481,6 +2333,7 @@ exten => 8320,4,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 +; SEE extensions.conf.sample-1.4 for changes needed for use with Asterisk 1.4 exten => 8501,1,VoicemailMain(s${CALLERIDNUM}) exten => 8501,2,Hangup @@ -2612,22 +2465,6 @@ exten => 8372,3,AGI(agi-VDADautoREMINDER.agi,${EXTEN}) exten => 8372,4,AGI(agi-VDADautoREMINDER.agi,${EXTEN}) exten => 8372,5,Hangup -; MANDITORY VDAD extens: -; In this setup, the serverIP is the prefix followed by agent conf_exten -; These lines are REQUIRED for VICIDIAL to work properly -; local server extens: - exten => _010*010*010*015*8600XXX,1,Goto(default,${EXTEN:16},1) - exten => _010*010*010*015*8600XXX*.,1,Goto(default,${EXTEN:16},1) - exten => _010*010*010*015*78600XXX,1,Goto(default,${EXTEN:16},1) - exten => _010*010*010*015*78600XXX*.,1,Goto(default,${EXTEN:16},1) - exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) - exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) - -; OPTIONAL server 2 extens, needed for load balancing: - exten => _010*010*010*016*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) - exten => _010*010*010*016*8600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) - exten => _010*010*010*016*78600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) - exten => _010*010*010*016*78600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) SUBPHASE 6.3: adding entries to your MySQL "asterisk" database for vicidial diff --git a/agc_2-X/trunk/docs/conf_examples/extensions.conf.sample b/agc_2-X/trunk/docs/conf_examples/extensions.conf.sample index 7543df7d..80aaba45 100644 --- a/agc_2-X/trunk/docs/conf_examples/extensions.conf.sample +++ b/agc_2-X/trunk/docs/conf_examples/extensions.conf.sample @@ -97,6 +97,14 @@ exten => _901161XXXXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) exten => _901161XXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,To) exten => _901161XXXXXXXXX,3,Hangup +; Extensions for performance testing +exten => _91999NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) +exten => _91999NXXXXXX,2,Dial(${TRUNKloop}/${EXTEN:2},,tTo) +exten => _91999NXXXXXX,3,Hangup +exten => 999999999999,1,AGI(agi://127.0.0.1:4577/call_log) +exten => 999999999999,2,Dial(${TRUNKloop}/${EXTEN:1},,tTo) +exten => 999999999999,3,Hangup + ; dial an 800 outbound number exten => _91800NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) exten => _91800NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,To) @@ -438,3 +446,69 @@ exten => 8372,5,Hangup ;exten => 8372,3,AGI(agi-VDADautoREMINDER.agi,${EXTEN}) ;exten => 8372,4,AGI(agi-VDADautoREMINDER.agi,${EXTEN}) ;exten => 8372,5,Hangup + + + +; PERFORMANCE TESTING +exten => _999XXXXXX1,1,Answer +exten => _999XXXXXX1,2,Wait(2) +exten => _999XXXXXX1,3,Playback(beep) +exten => _999XXXXXX1,4,Hangup + +exten => _999XXXX112,1,Wait(8) +exten => _999XXXX112,2,Answer +exten => _999XXXX112,3,Playback(demo-instruct) +exten => _999XXXX112,4,Playback(demo-instruct) +exten => _999XXXX112,5,Hangup + +exten => _999XXXXXX2,1,Wait(8) +exten => _999XXXXXX2,2,Answer +exten => _999XXXXXX2,3,Playback(demo-instruct) +exten => _999XXXXXX2,4,Hangup + +exten => _999XXXXXX3,1,SetVar(PRI_CAUSE=1) +exten => _999XXXXXX3,2,Hangup + +exten => _999XXXXXX4,1,SetVar(PRI_CAUSE=27) +exten => _999XXXXXX4,2,Hangup + +exten => _999XXXXXX5,1,Wait(60) +exten => _999XXXXXX5,2,Hangup + +exten => _999XXXXXX6,1,Wait(10) +exten => _999XXXXXX6,2,Answer +exten => _999XXXXXX6,3,Playback(demo-instruct) +exten => _999XXXXXX6,4,Hangup + +exten => _999XXXXXX7,1,Wait(12) +exten => _999XXXXXX7,2,Answer +exten => _999XXXXXX7,3,Playback(demo-enterkeywords) +exten => _999XXXXXX7,4,Hangup + +exten => _999XXXXXX8,1,SetVar(PRI_CAUSE=17) +exten => _999XXXXXX8,2,Hangup + +exten => _999XXXXXX9,1,Wait(6) +exten => _999XXXXXX9,2,Answer +exten => _999XXXXXX9,3,Playback(demo-abouttotry) +exten => _999XXXXXX9,4,Hangup + +exten => _999XXXXXX0,1,Wait(5) +exten => _999XXXXXX0,2,Answer +exten => _999XXXXXX0,3,Playback(vm-goodbye) +exten => _999XXXXXX0,4,Hangup + +exten => 99999999999,1,Answer +exten => 99999999999,2,Playback(conf) +exten => 99999999999,3,Playback(conf) +exten => 99999999999,4,Playback(conf) +exten => 99999999999,5,Playback(conf) +exten => 99999999999,6,Playback(conf) +exten => 99999999999,7,Playback(conf) +exten => 99999999999,8,Playback(conf) +exten => 99999999999,9,Playback(conf) +exten => 99999999999,10,Playback(conf) +exten => 99999999999,11,Playback(conf) +exten => 99999999999,12,Playback(conf) +exten => 99999999999,13,Playback(conf) +exten => 99999999999,14,Hangup diff --git a/agc_2-X/trunk/docs/conf_examples/extensions.conf.sample-1.4 b/agc_2-X/trunk/docs/conf_examples/extensions.conf.sample-1.4 index f1a074cb..40ca91a0 100644 --- a/agc_2-X/trunk/docs/conf_examples/extensions.conf.sample-1.4 +++ b/agc_2-X/trunk/docs/conf_examples/extensions.conf.sample-1.4 @@ -97,6 +97,14 @@ exten => _901161XXXXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) exten => _901161XXXXXXXXX,2,Dial(${TRUNKX}/${EXTEN:1},,To) exten => _901161XXXXXXXXX,3,Hangup +; Extensions for performance testing +exten => _91999NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) +exten => _91999NXXXXXX,2,Dial(${TRUNKloop}/${EXTEN:2},,tTo) +exten => _91999NXXXXXX,3,Hangup +exten => 999999999999,1,AGI(agi://127.0.0.1:4577/call_log) +exten => 999999999999,2,Dial(${TRUNKloop}/${EXTEN:1},,tTo) +exten => 999999999999,3,Hangup + ; dial an 800 outbound number exten => _91800NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log) exten => _91800NXXXXXX,2,Dial(${TRUNK}/${EXTEN:1},,To) @@ -438,3 +446,69 @@ exten => 8372,5,Hangup ;exten => 8372,3,AGI(agi-VDADautoREMINDER.agi,${EXTEN}) ;exten => 8372,4,AGI(agi-VDADautoREMINDER.agi,${EXTEN}) ;exten => 8372,5,Hangup + + + +; PERFORMANCE TESTING +exten => _999XXXXXX1,1,Answer +exten => _999XXXXXX1,2,Wait(2) +exten => _999XXXXXX1,3,Playback(beep) +exten => _999XXXXXX1,4,Hangup + +exten => _999XXXX112,1,Wait(8) +exten => _999XXXX112,2,Answer +exten => _999XXXX112,3,Playback(demo-instruct) +exten => _999XXXX112,4,Playback(demo-instruct) +exten => _999XXXX112,5,Hangup + +exten => _999XXXXXX2,1,Wait(8) +exten => _999XXXXXX2,2,Answer +exten => _999XXXXXX2,3,Playback(demo-instruct) +exten => _999XXXXXX2,4,Hangup + +exten => _999XXXXXX3,1,SetVar(PRI_CAUSE=1) +exten => _999XXXXXX3,2,Hangup + +exten => _999XXXXXX4,1,SetVar(PRI_CAUSE=27) +exten => _999XXXXXX4,2,Hangup + +exten => _999XXXXXX5,1,Wait(60) +exten => _999XXXXXX5,2,Hangup + +exten => _999XXXXXX6,1,Wait(10) +exten => _999XXXXXX6,2,Answer +exten => _999XXXXXX6,3,Playback(demo-instruct) +exten => _999XXXXXX6,4,Hangup + +exten => _999XXXXXX7,1,Wait(12) +exten => _999XXXXXX7,2,Answer +exten => _999XXXXXX7,3,Playback(demo-enterkeywords) +exten => _999XXXXXX7,4,Hangup + +exten => _999XXXXXX8,1,SetVar(PRI_CAUSE=17) +exten => _999XXXXXX8,2,Hangup + +exten => _999XXXXXX9,1,Wait(6) +exten => _999XXXXXX9,2,Answer +exten => _999XXXXXX9,3,Playback(demo-abouttotry) +exten => _999XXXXXX9,4,Hangup + +exten => _999XXXXXX0,1,Wait(5) +exten => _999XXXXXX0,2,Answer +exten => _999XXXXXX0,3,Playback(vm-goodbye) +exten => _999XXXXXX0,4,Hangup + +exten => 99999999999,1,Answer +exten => 99999999999,2,Playback(conf) +exten => 99999999999,3,Playback(conf) +exten => 99999999999,4,Playback(conf) +exten => 99999999999,5,Playback(conf) +exten => 99999999999,6,Playback(conf) +exten => 99999999999,7,Playback(conf) +exten => 99999999999,8,Playback(conf) +exten => 99999999999,9,Playback(conf) +exten => 99999999999,10,Playback(conf) +exten => 99999999999,11,Playback(conf) +exten => 99999999999,12,Playback(conf) +exten => 99999999999,13,Playback(conf) +exten => 99999999999,14,Hangup