Updated install documentation

Changed default server version to asterisk_version='1.4.21.2'

git-svn-id: svn://192.168.202.10@1171 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
mattf
2009-06-28 22:07:02 +00:00
parent f09d128cb7
commit bda5c4362b
5 changed files with 166 additions and 490 deletions
+48 -82
View File
@@ -1,4 +1,4 @@
Asterisk/astguiclient install from existing server. v.2.2.0 2009-04-03
Asterisk/astguiclient install from existing server. v.2.2.0 2009-06-28
By the VICIDIAL group info@vicidial.com
@@ -6,8 +6,16 @@ This document is meant to be more of an overview of a VICIDIAL/astGUIclient
installation. If you are looking for more detail or are having problems with
installation please read the SCRATCH_INSTALL.txt document.
End-user Manuals for Agents and Managers are available from http://www.eflo.net
There is also an easier Ubuntu install doc: Ubuntu_Install.txt
If you want to skip the experience of installing step-by-step completely, take
a look at our ISO installer: http://www.vicibox.com
REQUIREMENTS:
- root access on the server you want to install asGUIclient/VICIDIAL on to.
- Zap trunks(T1/E1 or PSTN lines), IAX2 trunks or SIP trunks required
@@ -18,10 +26,10 @@ REQUIREMENTS:
- GNU screen 3.9.15 or greater must be installed
- ntp must be installed and syncd to same time source as any other servers
- Perl5 with several CPAN modules(Time::HiRes, DBI, DBD::mysql, Net::Telnet, Net::Server etc)
- asterisk-perl 0.08, do NOT use the 0.09 version, it does not work with VICIDIAL
- MySQL server or mysqlclientlibs, must be version 4.0.X or higher
- asterisk-perl 0.08, do NOT use newer versions, they do not work with VICIDIAL
- MySQL server or mysqlclientlibs, must be version 5.0.X or higher
- If you will be installing Asterisk 1.4 releases you need Gnu Make 3.81
- Apache/PHP server with php.ini memory_limit set to 48M
- Apache/PHP server with php.ini memory_limit set to 48M or higher
@@ -29,86 +37,42 @@ REQUIREMENTS:
PHASE 1: INSTALLING ASTERISK
1. follow these command line steps:
mkdir /usr/src/asterisk
cd /usr/src/asterisk
wget http://downloads.digium.com/pub/asterisk/releases/asterisk-1.2.30.2.tar.gz
wget http://downloads.digium.com/pub/zaptel/releases/zaptel-1.2.27.tar.gz
wget http://downloads.digium.com/pub/libpri/releases/libpri-1.2.8.tar.gz
gunzip asterisk-1.2.30.2.tar.gz
tar xvf asterisk-1.2.30.2.tar
gunzip zaptel-1.2.27.tar.gz
tar xvf zaptel-1.2.27.tar
gunzip libpri-1.2.8.tar.gz
tar xvf libpri-1.2.8.tar
cd ./zaptel-1.2.27
wget http://download.vicidial.com/packages/newt-0.51.6.tar.gz
gunzip newt-0.51.6.tar.gz
tar xvf newt-0.51.6.tar
cd newt-0.51.6
./configure
make
make install
cd ../
ln -s /usr/lib/libnewt.so.0.51.6 /usr/lib/libnewt.so.0.51
make clean
make zttool
make
make install
cd ../libpri-1.2.8
make clean
make
make install
cd ../asterisk-1.2.30.2
(1.2 tree) If you want to include Answering Machine Detection ability
you will need to download app_amd.c and amd.conf and alter the
apps/Makefile to compile it properly
cd apps
wget http://www.eflo.net/files/app_amd2.c
mv app_amd2.c app_amd.c
vi Makefile
replace this line(line 32):
app_mixmonitor.so app_stack.so
with this line:
app_mixmonitor.so app_stack.so app_amd.so
wget http://www.eflo.net/files/amd2.conf
mkdir /etc/asterisk
mv amd2.conf /etc/asterisk/amd.conf
*OPTIONAL*(1.2.23 thru 1.2.30.2) apply the meetme DTMF passthru patch
wget http://www.eflo.net/files/meetme_DTMF_passthru-1.2.23.patch
patch -p1 < ./meetme_DTMF_passthru-1.2.23.patch
- File to patch: app_meetme.c
*OPTIONAL*(1.2.12.1 thru 1.2.30.2) apply the meetme volume control patch
*Different patches available for 1.2.7.1 through 1.2.14
wget http://www.eflo.net/files/meetme_volume_control_1.2.16.patch
patch -p1 < ./meetme_volume_control_1.2.16.patch
- File to patch: app_meetme.c
cd ../
(1.2 tree) apply the cli delimiter patch
wget http://www.eflo.net/files/cli_chan_concise_delimiter.patch
patch -p1 < ./cli_chan_concise_delimiter.patch
- File to patch: cli.c
*OPTIONAL*(1.2.14 thru 1.2.30.2) rewrite of waitforsilence
wget http://download.vicidial.com/asterisk-patches/app_waitforsilence.c
mv -f app_waitforsilence.c apps/app_waitforsilence.c
* REQUIRED for gcc 4.2 systems*
wget http://download.vicidial.com/asterisk-patches/1.2-gsm-gcc4.2.patch
patch -p1 ./codecs/gsm/Makefile 1.2-gsm-gcc4.2.patch
*OPTIONAL* shorter enter and leave sounds for meetme
mkdir /usr/src/asterisk-1.4
cd /usr/src/asterisk-1.4
wget http://downloads.digium.com/pub/asterisk/old-releases/asterisk-1.4.21.2.tar.gz
wget http://downloads.digium.com/pub/zaptel/zaptel-1.4.12.1.tar.gz
wget http://downloads.digium.com/pub/libpri/libpri-1.4.9.tar.gz
tar xzf asterisk-1.4.21.2.tar.gz
tar xzf zaptel-1.4.12.1.tar.gz
tar xzf libpri-1.4.9.tar.gz
cd libpri-1.4.9
make clean; make; make install
cd ../zaptel-1.4.12.1
./configure; make clean; make; make install
cd ../asterisk-1.4.21.2
wget http://www.eflo.net/files/enter.h
wget http://www.eflo.net/files/leave.h
mv -f enter.h apps/enter.h
mv -f leave.h apps/leave.h
wget http://download.vicidial.com/asterisk-patches/1.4-gsm-gcc4.2.patch
patch -p1 ./codecs/gsm/Makefile 1.4-gsm-gcc4.2.patch
wget http://download.vicidial.com/conf/res_agi_defunct.patch
patch -p1 < res_agi_defunct.patch
File to patch: res/res_agi.c
cd apps/
rm -f app_waitforsilence.c
wget http://download.vicidial.com/conf/app_waitforsilence.c
cd ../channels/
rm chan_sip.c
wget http://download.vicidial.com/conf/chan_sip.c
cd ../
./configure; make clean; make; make install
# this makes sample conf files (only use for new installs)
make samples
modprobe zaptel
modprobe ztdummy (if you have no timer)
make clean
make
make install
make samples # this makes sample conf files (only use for new installs)
modprobe zaptel # this loads the zaptel module
- install the module for the digium device that you are using, we are
using the T100P single span T1 card so we use:
modprobe wct1xxp
@@ -158,6 +122,10 @@ Digium/Clone T100P EXAMPLE, also works for TE4xxp cards
PHASE 2: CONFIGURING ASTERISK
### Mostly depricated, ViciDial now allows you to configure phones in the admin
web interface
Sample conf files for a system with:
- astGUIclient and VICIDIAL
- two SIP phones
@@ -560,13 +528,11 @@ NEW and submit. Now your system is ready to dial.
PHASE 8: astGUIclient and VICIDIAL WEB CLIENTS
The browser requirements for the web-client interfaces are:
- Firefox 0.9 or greater (Firefox 1.0.7 is the recommended browser)
- Firefox 1.0 or greater *** RECOMMENDED***
- Mozilla 1.7 or greater
- Netscape 8 or greater
- Opera 8.5 or greater
- Microsoft Internet Explorer 5.0 or greater (we have noticed some serious
memory leaks in IE5 and IE6 when using this program, they do not occur in
Firefox which is why we recommend it overall.)
- Microsoft Internet Explorer 6.0 or greater
To log into this app you will need a login setup in the vicidial_users table
as well as an entry for the phone you are using in the phones table. You will
+28 -24
View File
@@ -336,7 +336,8 @@ make install
#### OPTIONAL NEWEST VERSIONS OF ASTERISK ####
#### OPTIONAL 1.2.X VERSIONS OF ASTERISK ####
(1.4.X instructions are further down)
mkdir /usr/src/asterisk
cd /usr/src/asterisk
@@ -511,34 +512,37 @@ rm -f /usr/lib/asterisk/modules/res_speech.so
mkdir /usr/src/asterisk-1.4
cd /usr/src/asterisk-1.4
wget http://downloads.digium.com/pub/asterisk/releases/asterisk-1.4.21.2.tar.gz
wget http://downloads.digium.com/pub/zaptel/releases/zaptel-1.4.12.1.tar.gz
wget http://downloads.digium.com/pub/libpri/releases/libpri-1.4.7.tar.gz
gunzip asterisk-1.4.21.2.tar.gz
tar xvf asterisk-1.4.21.2.tar
gunzip zaptel-1.4.12.1.tar.gz
tar xvf zaptel-1.4.12.1.tar
gunzip libpri-1.4.7.tar.gz
tar xvf libpri-1.4.7.tar
cd ./zaptel-1.4.12.1
./configure
make
make install
cd ../libpri-1.4.7
make clean
make
make install
wget http://downloads.digium.com/pub/asterisk/old-releases/asterisk-1.4.21.2.tar.gz
wget http://downloads.digium.com/pub/zaptel/zaptel-1.4.12.1.tar.gz
wget http://downloads.digium.com/pub/libpri/libpri-1.4.9.tar.gz
tar xzf asterisk-1.4.21.2.tar.gz
tar xzf zaptel-1.4.12.1.tar.gz
tar xzf libpri-1.4.9.tar.gz
cd libpri-1.4.9
make clean; make; make install
cd ../zaptel-1.4.12.1
./configure; make clean; make; make install
cd ../asterisk-1.4.21.2
wget http://download.vicidial.com/asterisk-patches/1.4-gsm-gcc4.2.patch
patch -p1 ./codecs/gsm/Makefile 1.4-gsm-gcc4.2.patch
wget http://www.eflo.net/files/enter.h
wget http://www.eflo.net/files/leave.h
mv -f enter.h apps/enter.h
mv -f leave.h apps/leave.h
./configure
make
make install
wget http://download.vicidial.com/asterisk-patches/1.4-gsm-gcc4.2.patch
patch -p1 ./codecs/gsm/Makefile 1.4-gsm-gcc4.2.patch
wget http://download.vicidial.com/conf/res_agi_defunct.patch
patch -p1 < res_agi_defunct.patch
File to patch: res/res_agi.c
cd apps/
rm -f app_waitforsilence.c
wget http://download.vicidial.com/conf/app_waitforsilence.c
cd ../channels/
rm chan_sip.c
wget http://download.vicidial.com/conf/chan_sip.c
cd ../
./configure; make clean; make; make install
make samples
modprobe zaptel
modprobe ztdummy
+88 -382
View File
@@ -1,4 +1,4 @@
Asterisk/astguiclient install from scratch. v.2.2.0 2009-04-03
Asterisk/astguiclient install from scratch. v.2.2.0 2009-06-28
By the VICIDIAL group info@vicidial.com
**** IMPORTANT - In order for vicidial/astguiclient to function correctly please
@@ -6,6 +6,11 @@ read the REQUIREMENTS.txt for a minimum requirements list. ***
End-user Manuals for Agents and Managers are available from http://www.eflo.net
There is also an easier Ubuntu install doc: Ubuntu_Install.txt
If you want to skip the experience of installing step-by-step completely, take
a look at our ISO installer: http://www.vicibox.com
This document is meant to be a very in-depth step-by-step explanation of
installing the Asterisk open-source PBX on a Linux system and also installing
@@ -15,46 +20,40 @@ in choices of hardware and software.
The actual installation that I am doing as I write these instructions will be on
the following hardware:
(Changed to more realistic modern hardware)
- Intel Core 2 Quad CPU
- SuperMicro Motherboard
- 4GB RAM
- 160GB Western Digital SATA ES drive
- Sangoma VoiceTime USB hardware timer
- 2U rackmount case with 450W power supply
- VOIP Phone will be a Zoiper softphone because it's free and does both IAX/SIP
- Pentium 3 500MHz
- Intel motherboard D815BN
- 256MB PC133 RAM
- 80GB IBM deskstar 7200RPM Hard Drive
- Digium Wildcard Single Span T1 Card T100P
- 2U rackmount case with 250W power supply
- Phone hardware will be a Grandstream BT102 and a Sipura SPA-2000 because they
are so cheap and readily available
All of these parts cost less than $1500 together.
All of these parts, aside from the Digium card and the two SIP VOIP devices,
were purchased from ebay and the entire package(with the two VOIP devices and
all server hardware included) cost me about $1100 to put together including the
phones and Digium adapter.
We have many other Asterisk servers at our main office, but this one can be
experimented with easily because it was so cheap to make and has a relatively
small capacity when compared with a multi-processor server with a quad span T1
card.
This is our test Asterisk server and functions well for a dozen or so extensions
This is our test Asterisk server and functions well for 100 or so extensions
in use if it were to be used in production. A size that is optimal for many
small offices operating with a fractional data/voice T1 for instance.
small offices operating with a fractional data/voice T1 for instance. This
hardware would also be good for a stand-alone ViciDial system with about 50
agents handling inbound calls with full recording, or 25 agents doing heavy
predictive outbound dialing.
For hardware you can use almost any Pentium-class processor(PII, PIII, Athlon,
Xeon, etc), and you can use any digium telco interface card. Both of these
choices will determine what the capacity of your Asterisk server will be. If you
want to do simple IVR or conference calling and a few extensions, then a PIII
with a single Digium T1 card will work just fine for you. If you want to use the
VICIDIAL application, you will want to get as high-powered of a machine as you
can afford and get a digium quad-span T1 card.
For hardware you can use almost any modern CPU processor(Intel core2, Xeon, etc)
, and you can use any Digium or Sangoma telco interface card or USB timer. Both
of these choices will determine what the capacity of your Asterisk/ViciDial
server will be. If you want to do simple IVR or conference calling and a few
extensions, then an Intel Celeron 2GHz with a single Sangoma USB VoiceTime
dongle will work just fine for you. If you want to use the ViciDial applications
, you will usually want to get as high-powered of a machine as you can afford.
The following is assumed for these installation procedures:
- You have access to a CD burner and 3 blank CDs
- You have access to a CD burner and 3 blank CDs(or 1 CD and 1 DVD)
- You have some sort of broadband internet connection
- You understand basic linux commands and can use a file editor like vi
- You have all of the necessary hardware:
- a pentium-class computer
- a digium telco interface card with appropriate telco lines
- at least 1 SIP VOIP device
- at least 1 SIP/IAX VOIP device(this can be a softphone too)
- a Local Area Network(LAN) with extra ports enough for the new server
and the number of phones you want
@@ -65,7 +64,7 @@ and the number of phones you want
PHASE 1: INSTALLING AN OPERATING SYSTEM
This installation will be using Slackware 11 for the linux distribution,
This installation will be using Slackware 12 for the linux distribution,
Slackware 12.X will also work with these instructions. There are several easier
linux distributions and there are others that are more popular, but Slackware is
a nice non-commercial distro that has been around for a long time and proven
@@ -83,7 +82,7 @@ to it. You will select "filesystem utilities" and then "XFDISK"
3. Select any old partitions and delete them and then create 2 new
partitions:
- 70000 MB, select yes to validate, change partition type to "Linux Native"
- 150000 MB, select yes to validate, change partition type to "Linux Native"
- 3332 MB, select yes to validate, change partition type to "Linux Swap"
- press F3 to exit and let it do it's thing, this will take an hour or so.
@@ -172,10 +171,9 @@ If you are using a newer Digium Octasic-based echo-cancellation quad T1/E1 card
then you need to use a 2.6 Linux kernel in order to use the echo-cancellation
functionality of the card.
If you want to compile a 2.6 kernel then start with OPTION 1, otherwise to
compile the 2.4 kernel that comes with Slackware(2.4.33) start with OPTION 2:
If you want to compile a 2.6 kernel then start with OPTION 1:
OPTION 1: compile Linux kernel 2.6.17 *RECOMMENDED*
OPTION 1: compile Linux kernel 2.6.17 *NOT REQUIRED*
1. cd /usr/src
2. wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.17.11.tar.gz
@@ -273,44 +271,6 @@ OPTION 1: compile Linux kernel 2.6.17 *RECOMMENDED*
tmpfs /var/spool/asterisk/monitor tmpfs rw 0 0
21. shutdown -r 0 # reboot machine and hope it worked
OPTION 2: compile Linux kernel 2.4.33.3 (not recommended, very old)
1. cd /usr/src/linux # move to your linux source directory
2. cp .config config.save # copy old config to a save file
3. make mrproper # prep for kernel assembly
4. make menuconfig # launch configuration menu app
(this part is very dependant upon your own hardware)
enable processor version # select the processor that you have
enable SMP # if more than 1 processor or Intel HT
enable high memory () # if more than 1GB of RAM
enable SCSI Multiple # if SCSI drives
enable SCSI devices AMI Megaraid # if SCSI Megaraid adapter
enable 3com network devices # if 3com network card
enable ext3 file system # for ext3 to work
enable all ACPI options # for SMP to work
enable Enhanced Real Time Clock Support in Character devices section
# for SMP to work
enable any other hardware specific options
exit and save configuration
5. make dep # build the kernel dependancies
6. make clean # clean up the kernel build areas
7. make bzImage # create a kernel bzImage
8. make modules # build the modules into the image
9. make modules_install # install kernel modules
10. # nothing# mkinitrd /boot/initrd-XXXXXX.img XXXXXX *not needed on Slackware*
11. cp arch/i386/boot/bzImage /boot/bzImage-XXXXXX # copy image
(put whatever you want in XXXXXX, that is your new kernel name)
12. cp System.map /boot/System.map-XXXXXXN # copy system map
13. mv -f /boot/System.map /boot/System.map-orig
14. ln -s /boot/System.map-XXXXXX /boot/System.map # symlink map
15. vi /etc/lilo.conf # edit the lilo boot config file
image=/boot/bzImage-XXXXXX # add the new image in above-
label=test-XXXXXX # the previous one
root=/dev/hda1 # device of root partition
read-only
16. /sbin/lilo # run the lilo reload script
17. shutdown -r 0 # reboot machine and hope it worked
After compiling your kernel you can run a few commands to verify that you are
running your new kernel and that devices are running as they are supposed to:
@@ -397,6 +357,7 @@ a more loaded system.
skip-name-resolve
# comment out the line 'log-bin=mysql-bin'
max_connections = 200
connect_timeout=60
**** For some systems you may need to add the mysql/bin directory to your PATH:
- PATH=$PATH:$HOME/bin:/usr/local/mysql/bin/
@@ -423,12 +384,10 @@ a more loaded system.
SUBPHASE 3.2: Installing Perl Modules
NOTE - you can install ActiveState http://www.activestate.com perl which may
improve performance, but it is not required. Here's the source for ActiveState
NOTE - you can install ActiveState http://www.activestate.com perl, but it is
not required. Here's the source for ActiveState
Perl 5.8: (it's free)
http://downloads.activestate.com/ActivePerl/src/5.8/AP817_source.tgz
I hope to add the lengthy steps for installing it as your default perl on your
server but I need some time and a free machine to do that.
cpan is the "Comprehensive Perl Archive Network". It's a mirrored archive of
most of the perl modules out there complete with a installation and management
@@ -475,7 +434,7 @@ following modules first: (say YES if asked to install prerequisites)
- then quit cpan, you are done
5. Go to http://asterisk.gnuinter.net/ and download the asterisk-perl module
(backup link: http://download.vicidial.com/packages/asterisk-perl-0.08.tar.gz)
NOTE: Do NOT use the 0.09 version, it does not work with VICIDIAL
NOTE: Do NOT use the 0.09 or any newer version, they do not work with VICIDIAL
- to install this directly on the command line type:
- cd /usr/local
- wget http://asterisk.gnuinter.net/files/asterisk-perl-0.08.tar.gz
@@ -886,121 +845,54 @@ 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.30.2) and the SVN_DEV version(development
branch). We recommend using Asterisk 1.2.30.2. 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.
this writing the recommended release is 1.4.21.2). These instructions are how we
get our Asterisk system with it's T1 line installed with our Zoiper softphone.
NOTE: If you want to use Asterisk 1.4, you will need to make sure that you set
NOTE: If you want to use Asterisk 1.2, you will need to make sure that you set
the servers table "asterisk_version" field to the proper version number and you
can use the docs/conf_examples/extensions.conf.sample-1.4 file for your default
can use the docs/conf_examples/extensions.conf.sample file for your default
dialplan
NOTE: If you want to use release 1.0.8 or 9 we would recommend either using the
CVS_v1-0 branch where the issues are fixed, or patching your 1.0.8/1.0.9 code
with the following patch:
(http://astguiclient.sourceforge.net/experimental_code/localmasq.patch)
- If you do patch your system make sure you put the asterisk version
field for the server on the admin pages as '1.0.11.1'
1. follow these command line steps:
- mkdir /usr/src/asterisk
- cd /usr/src/asterisk
A. if you want 1.2 release (reliable with new features):
- wget http://downloads.digium.com/pub/asterisk/releases/asterisk-1.2.30.2.tar.gz
- wget http://downloads.digium.com/pub/zaptel/releases/zaptel-1.2.27.tar.gz
- wget http://downloads.digium.com/pub/libpri/releases/libpri-1.2.5.tar.gz
- gunzip asterisk-1.2.30.2.tar.gz
- tar xvf asterisk-1.2.30.2.tar
- gunzip zaptel-1.2.27.tar.gz
- tar xvf zaptel-1.2.27.tar
- gunzip libpri-1.2.5.tar.gz
- tar xvf libpri-1.2.5.tar
B. if you want latest SVN_1.2 version (release tree with new patches)
- svn checkout http://svn.digium.com/svn/asterisk/branches/1.2 asterisk-1.2
- svn checkout http://svn.digium.com/svn/zaptel/branches/1.2 zaptel-1.2
- svn checkout http://svn.digium.com/svn/libpri/branches/1.2 libpri-1.2
C. if you want latest SVN_DEV version (not recommended) [1.6 tree]
- svn checkout http://svn.digium.com/svn/asterisk/trunk asterisk
- svn checkout http://svn.digium.com/svn/zaptel/trunk zaptel
- svn checkout http://svn.digium.com/svn/libpri/trunk libpri
- ALL ->
- (1.0 tree)if you want to allow for more than 100 voicemail messages in a
mailbox(warning this will slightly increase memory usage when a call
is in voicemail) edit the voicemail source code file:
- vi /usr/src/asterisk/asterisk/apps/app_voicemail.c
edit this line and change 100 to 999:
#define MAXMSG 100
- (1.0 tree)if you have no X server installed on your Asterisk machine, then you
will need to comment out the gtk console lib(only affects 1.0 releases)
edit the voicemail source code file:
- vi /usr/src/asterisk/asterisk/pbx/Makefile
edit this line at the top and just add a hash # in front of it as shown:
#PBX_LIBS+=$(shell $(CROSS_COMPILE_BIN)gtk-config --cflags >/dev/null 2>/dev/null && echo "pbx_gtkconsole.so")
- cd ./zaptel-1.2.27
- make clean
- make
- make install
- cd ../libpri-1.2.5
- make clean
- make
- make install
- cd ../asterisk-1.2.30.2
- (1.2 tree) If you want to include Answering Machine Detection ability
you will need to download app_amd.c and amd.conf and alter the
apps/Makefile to compile it properly
- cd apps
- wget http://www.eflo.net/files/app_amd2.c
- mv app_amd2.c app_amd.c
- vi Makefile
replace this line(line 32):
app_mixmonitor.so app_stack.so
with this line:
app_mixmonitor.so app_stack.so app_amd.so
- wget http://www.eflo.net/files/amd2.conf
- mkdir /etc/asterisk
- mv amd2.conf /etc/asterisk/amd.conf
*OPTIONAL*(1.2.23 thru 1.2.30.2) apply the meetme DTMF passthru patch
- wget http://www.eflo.net/files/meetme_DTMF_passthru-1.2.23.patch
- patch -p1 < ./meetme_DTMF_passthru-1.2.23.patch
- File to patch: app_meetme.c
*OPTIONAL*(1.2.12.1 thru 1.2.30.2) apply the meetme volume control patch
*Different patches available for 1.2.7.1 through 1.2.14
- wget http://www.eflo.net/files/meetme_volume_control_1.2.16.patch
- patch -p1 < ./meetme_volume_control_1.2.16.patch
- File to patch: app_meetme.c
- cd ../
-(1.2 tree) apply the cli delimiter patch
- wget http://www.eflo.net/files/cli_chan_concise_delimiter.patch
- patch -p1 < ./cli_chan_concise_delimiter.patch
- File to patch: cli.c
-(gcc version 4.2) apply the gsm audio codec patch to fix gsm
- wget http://download.vicidial.com/asterisk-patches/1.2-gsm-gcc4.2.patch
- patch -p1 ./codecs/gsm/Makefile 1.2-gsm-gcc4.2.patch
*OPTIONAL*(1.2.14 thru 1.2.30.2) rewrite of waitforsilence
- wget http://download.vicidial.com/asterisk-patches/app_waitforsilence.c
- mv -f app_waitforsilence.c apps/app_waitforsilence.c
*OPTIONAL* shorter enter and leave sounds for meetme
- wget http://www.eflo.net/files/enter.h
- wget http://www.eflo.net/files/leave.h
- mv -f enter.h apps/enter.h
- mv -f leave.h apps/leave.h
- make clean
- make
- make install
- make samples # this makes sample conf files (only use for new installs)
mkdir /usr/src/asterisk-1.4
cd /usr/src/asterisk-1.4
wget http://downloads.digium.com/pub/asterisk/old-releases/asterisk-1.4.21.2.tar.gz
wget http://downloads.digium.com/pub/zaptel/zaptel-1.4.12.1.tar.gz
wget http://downloads.digium.com/pub/libpri/libpri-1.4.9.tar.gz
tar xzf asterisk-1.4.21.2.tar.gz
tar xzf zaptel-1.4.12.1.tar.gz
tar xzf libpri-1.4.9.tar.gz
cd libpri-1.4.9
make clean; make; make install
cd ../zaptel-1.4.12.1
./configure; make clean; make; make install
cd ../asterisk-1.4.21.2
wget http://www.eflo.net/files/enter.h
wget http://www.eflo.net/files/leave.h
mv -f enter.h apps/enter.h
mv -f leave.h apps/leave.h
wget http://download.vicidial.com/asterisk-patches/1.4-gsm-gcc4.2.patch
patch -p1 ./codecs/gsm/Makefile 1.4-gsm-gcc4.2.patch
wget http://download.vicidial.com/conf/res_agi_defunct.patch
patch -p1 < res_agi_defunct.patch
File to patch: res/res_agi.c
cd apps/
rm -f app_waitforsilence.c
wget http://download.vicidial.com/conf/app_waitforsilence.c
cd ../channels/
rm chan_sip.c
wget http://download.vicidial.com/conf/chan_sip.c
cd ../
./configure; make clean; make; make install
# this makes sample conf files (only use for new installs)
make samples
modprobe zaptel
- modprobe zaptel # this loads the zaptel module
- install the module for the digium device that you are using, we are
using the T100P single span T1 card so we use:
- modprobe wct1xxp
or if you have no timer, just "modprobe ztdummy"
Here's the list of all digium cards and the modules you use with
them:
Card Module
@@ -1429,141 +1321,8 @@ files, so be warned:
- vi /etc/asterisk/extensions.conf
You should be using the sample extensions.conf that is included with the
release of VICIDIAL that you installed, below is just an explanation of what
most of those entries do and why they are there.
This is known as the dialplan. Since we are installing a
Long-Distance T1 with one 800 number on it, we will need to put that
800 number in the plan, as well as how to dial out through the T1
lines and we will need to add an entry for each of the phones that we
have just set up in the sip.conf file. There are many examples both
in the sample file and online for what to put in your dialplan, here
is the simplified dialplan that we are using:
######------ START extensions.conf example ------######
[general]
static=yes
writeprotect=no
[globals]
CONSOLE=Console/dsp ; Console interface for demo
TRUNK=Zap/g1 ; Trunk interface
TRUNKX=Zap/g2 ; 2nd trunk interface
TRUNKIAX=IAX2/ASTtest1:test@10.10.10.16:4569 ; IAX trunk interface
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]
; Extension 8600 + 8601 conference rooms
exten => 8600,1,Meetme,8600
exten => 8601,1,Meetme,8601
; Extension 102 - Grandstream hardphone
exten => 102,1,Playback,transfer|skip ; "Please hold while..."
exten => 102,2,Dial,sip/gs102|20|to ; Ring, 20 secs max
exten => 102,3,Voicemail,u102 ; Send to voicemail...
; Extension 2000 Sipura line 1
exten => 2000,1,Dial,sip/spa2000|30|to ; Ring, 30 secs max
exten => 2000,2,Voicemail,u2000 ; Send to voicemail...
; Extension 2001 Sipura line 2
exten => 2001,1,Dial,sip/spa2001|30|to ; Ring, 30 secs max
exten => 2001,2,Voicemail,u2001 ; Send to voicemail...
; Extension 2020 rings both sipura lines
exten => 2001,1,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30 secs max
exten => 2001,2,Voicemail,u2000 ; Send to voicemail...
; Extension 301 rings the firefly softphone
exten => 301,1,Dial,(IAX2/firefly01@firefly01/s)
exten => 301,2,Hangup
; Extension 3429 - Inbound 800 number (1-800-555-3429)
exten => _**3429,1,Ringing
exten => _**3429,2,Answer
exten => _**3429,3,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30 secs max
exten => _**3429,4,Voicemail,u2000 ; Send to voicemail...
; Extension 3429 - with ANI [callerID]
exten => _*NXXNXXXXXX*3429,1,Ringing
exten => _*NXXNXXXXXX*3429,2,Answer
exten => _*NXXNXXXXXX*3429,3,Dial,sip/spa2000&sip/spa2001|30|to ; Ring, 30
secs max
exten => _*NXXNXXXXXX*3429,4,Voicemail,u2000 ; Send to voicemail...
; dial a long distance outbound number to the UK
exten => _901144XXXXXXXXXX,1,Dial(${TRUNKX}/${EXTEN:1},55,tTo)
exten => _901144XXXXXXXXXX,2,Hangup
; dial a long distance outbound number to Australia
exten => _901161XXXXXXXXX,1,Dial(${TRUNKX}/${EXTEN:1},,tTo)
exten => _901161XXXXXXXXX,2,Hangup
; dial an 800 outbound number
exten => _91800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _91800NXXXXXX,2,Hangup
exten => _91888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _91888NXXXXXX,2,Hangup
exten => _91877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _91877NXXXXXX,2,Hangup
exten => _91866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _91866NXXXXXX,2,Hangup
; dial a local 727 outbound number with area code
exten => _9727NXXXXXX,1,Dial(${TRUNK}/1${EXTEN:1},,tTo)
exten => _9727NXXXXXX,2,Hangup
; dial a local 813 outbound number with area code
exten => _9813NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},,tTo)
exten => _9813NXXXXXX,2,Hangup
; dial a long distance outbound number
exten => _91NXXNXXXXXX,1,Dial(${TRUNKX}/${EXTEN:1},,tTo)
exten => _91NXXNXXXXXX,2,Hangup
; dial a local outbound number (modified because of only LD T1)
exten => _9NXXXXXX,1,Dial(${TRUNK}/1727${EXTEN:1},,tTo)
exten => _9NXXXXXX,2,Hangup
; barge monitoring extension
exten => 8159,1,ZapBarge
exten => 8159,2,Hangup
; # timeout invalid rules
exten => #,1,Playback(invalid) ; "Thanks for trying the demo"
exten => #,2,Hangup ; Hang them up.
exten => t,1,Goto(#,1) ; If they take too long, give up
exten => i,1,Playback(invalid) ; "That's not valid, try again"
; Give voicemail at extension 8500
exten => 8500,1,VoicemailMain
exten => 8500,2,Goto(s,6)
; ASTERISK AGENTS LOGINS FOR QUEUES (NOT part of VICIDIAL)
; the following assumes phone agent login and exten are 3 digits and the same
; also assumes that 3-digit login is present in agents.conf and queueus.conf
;Agent Logout then stay onhook, DIAL 54 + 3-digit ID
exten => _54XXX,1,AgentCallbackLogin(||)
; the following are used to login and logout of Asterisk Queues from phone
;Agent Login then stay offhook on the phone, DIAL 55 + 3-digit ID
exten => _55XXX,1,AgentLogin(${EXTEN:1})
;Agent Login then stay onhook, phones will ring, DIAL 56 + 3-digit ID
exten => _56XXX,1,AgentCallbackLogin(||${EXTEN:1}@default)
######------ END extensions.conf example ------######
### OPTIONAL IAX trunk extensions entries for long distance dialing over IAX
exten => _91NXXNXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
exten => _91NXXNXXXXXX,2,Dial(${TRUNKIAX}/${EXTEN:1},55,o)
exten => _91NXXNXXXXXX,3,Hangup
### OPTIONAL SIP trunk extensions entries for long distance dialing over SIP
exten => _91NXXNXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
exten => _91NXXNXXXXXX,2,Dial(sip/${EXTEN:1}@SIPtrunk,55,o)
exten => _91NXXNXXXXXX,3,Hangup
### OPTIONAL IAX Load Balance extens to allow for Overflow and Balanced VDAD
### In this setup, the serverIP is the prefix followed by agent conf_exten
### FOR MORE INFORMATION, READ THE LOAD_BALANCING.txt DOCUMENT
### server 1 extens:
exten => _010*010*010*016*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)
### server 2 extens:
exten => _010*010*010*015*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o)
release of VICIDIAL that you installed. There is also an auto-generated
extensions-vicidial.conf file that contains dynamic dialplan entries.
10. edit dnsmgr.conf: # It is very helpful to enable dnsmgr
[general]
@@ -1781,7 +1540,7 @@ create database asterisk;
NOTE: if you will be using lead files with a language that does not use the
standard latin character set then you will want to use UTF8 for your default
characterset in the MySQL database. This requires at least MySQL 4.1.11 and you
characterset in the MySQL database. This requires at least MySQL 5.0.X and you
can use the following query to create the database:
CREATE DATABASE `asterisk` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
@@ -1794,9 +1553,6 @@ GRANT RELOAD ON *.* TO cron@localhost;
flush privileges;
# NOTE: if using MySQL 4.1.X or higher(not 5.X) you may need to run this query too:
UPDATE mysql.user set password=OLD_PASSWORD('1234') where user='cron';
# To make sure that new processes can connect to the Database under load we should
# increase the global connect_timeout
@@ -1909,7 +1665,9 @@ to work with it.
Again, if you have selected to use the sample conf files during installation
then you do not have to add any of these lines to your conf files, they should
already be included.
already be included. There is also an auto-generated
extensions-vicidial.conf file that contains dynamic dialplan entries.
1. Add the call_log entries to all incoming/outgoing extensions entries:
- here is how our sample dialplan changes for adding call_log entries(only
@@ -2009,7 +1767,9 @@ exten => _9NXXXXXX,3,Hangup
2. Add the call_inbound entries to all incoming extensions entries that you want
CallerID popups on:
CallerID popups on(ONLY WORKS IN astguiclient.php APPLICATION):
(Using the DID configuration is the preferred method of call routing in ViciDial)
- here is how our sample dialplan changes for adding call_inbound
entries(only effected extension groups are show):
######------ START extensions.conf changes for call_inbound ------######
@@ -2034,61 +1794,6 @@ exten => _*NXXNXXXXXX*3429,3,Answer
exten => _*NXXNXXXXXX*3429,4,Dial,sip/spa2000&sip/spa2001|30|to
exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000
; 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
; - 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 - <default> 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 call with CID delivery through T1 PRI
exten => 1234,1,Answer ; Answer the line
exten => 1234,2,AGI(agi-VDAD_ALL_inbound.agi,CID-----LB-----CL_GALLERIA-----7274515134-----Closer-----park----------999-----1)
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
### follow these instructions if you plan to have VICIDIAL agents take inbound or closer calls:
1. in VICIDIAL web admin "add a new in-group" (the above examples would be "CL_GALLERIA")
- group IDs cannot contain spaces ' ' or dashes '-' or plusses '+'
- if you are using a HEX color value make sure to include the hash '#' at the beginning
2. create a new campaign in VICIDIAL called "CLOSER" and set "allow inbound blended" to Y
3. check the CL_GALLERIA checknox in the "Allowed In-Groups" section
4. have agents log in to the CLOSER campaign and select the CL_GALLERIA in-group
5. they will now start receiving inbound calls
6. as calls come in, each call is inserted into the vicidial_list table under the
list specified int the AGI string, In the above example that would be list 999
7. if you want to take closer calls from the campaign "TEST" you will need to create
an in-group called "CL_TEST_" for internal closing(on the same system) or "CL_TEST_L"
for local closing(closer on different system from fronter) and then the fronter will
click on the "internal closer" button to send the call to a closer
* NOTE, you need to set the dial_level of the CLOSER campaign to 1 or higher for inbound/closers to work
######------ END extensions.conf changes for call_inbound ------######
@@ -2320,7 +2025,7 @@ exten => _86000[0-4]X,1,Meetme,${EXTEN}|q
6. Add the conference entries for VICIDIAL conferences:
- here is how our sample dialplan changes for adding VICIDIAL conference
entries(this is a pure addition, nothing is being modified):
entries(this is already in the sample extensions.conf file):
NOTE: see below these entries for app_conference instructions is used
######------ START extensions.conf changes for VD conf ------######
exten => _X48600XXX,1,MeetMeAdmin(${EXTEN:2},T,${EXTEN:0:1})
@@ -2364,6 +2069,7 @@ NOTE: If you want to do DTMF passthru with app_conference bee sure to add the
7. Add the more entries for astGUIclient specific uses:
- here are some more dialplan additions needed to use astGUIclient(this is a
pure addition, nothing is being modified):
(this is already in the sample extensions.conf file)
######------ START extensions.conf other additions ------######
; park channel for client GUI parking, hangup after 30 minutes
; create a GSM formatted audio file named "park.gsm" that is 30 minutes long
@@ -2808,7 +2514,7 @@ SUBPHASE 6.8: astGUIclient web-only client:
With 1.1.1 release of astguiclient we have completely rewritten the astGUIclient
client app in AJAX(PHP/Javascript/XMLHTTPRequest) to enable a full, real-time
GUI interface using only a web browser. The browser requirements for this are:
- Firefox 0.9 or greater (Firefox 1.0.7 is the recommended browser)
- Firefox 1.0 or greater *** RECOMMENDED ***
- Mozilla 1.7 or greater
- Netscape 8 or greater
- Opera 8.5 or greater
@@ -2856,7 +2562,7 @@ With 1.1.6 release of astguiclient we have finished the rewrite of the VICIDIAL
client app in AJAX(PHP/Javascript/XMLHTTPRequest) to enable a full, real-time
GUI interface using only a web browser like we have done with astGUIclient.
The browser requirements for this are:
- Firefox 0.9 or greater (Firefox 1.0.7 is the recommended browser)
- Firefox 1.0 or greater *** RECOMMENDED ***
- Mozilla 1.7 or greater
- Netscape 8 or greater
- Opera 8.5 or greater
+1 -1
View File
@@ -81,7 +81,7 @@ server_id VARCHAR(10) NOT NULL,
server_description VARCHAR(255),
server_ip VARCHAR(15) NOT NULL,
active ENUM('Y','N'),
asterisk_version VARCHAR(20) default '1.2.9',
asterisk_version VARCHAR(20) default '1.4.21.1',
max_vicidial_trunks SMALLINT(4) default '23',
telnet_host VARCHAR(20) NOT NULL default 'localhost',
telnet_port INT(5) NOT NULL default '5038',
+1 -1
View File
@@ -1,4 +1,4 @@
INSERT INTO servers (server_id,server_description,server_ip,active,asterisk_version)values('TESTast','Test install of Asterisk server', '10.10.10.15','Y','1.2.26.2');
INSERT INTO servers (server_id,server_description,server_ip,active,asterisk_version)values('TESTast','Test install of Asterisk server', '10.10.10.15','Y','1.4.21.2');
INSERT INTO server_updater SET server_ip='10.10.10.15', last_update='';