2006-06-08 snapshot
git-svn-id: svn://192.168.202.10@8 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
VICIDIAL and app_conference
|
||||
(1.2 tree) EXPERIMENTAL!!!
|
||||
|
||||
app_conference offers the plusses of being able to do conferencing
|
||||
without any zaptel hardware or timers as well as doing native codec
|
||||
streaming, meaning no manditory downsampling to slin like meetme.
|
||||
These two features alone mean a rather significant performance boost
|
||||
to companies who only use VOIP for agents and trunks as well as not
|
||||
requiring the cost of zaptel hardware or the nightmare of getting
|
||||
ztdummy to work on some systems.
|
||||
|
||||
As of right now, I have a test system fully up and running using
|
||||
app_conference with VICIDIAL on Asterisk 1.2.8. I have made several
|
||||
modifications to the app_conference code to make it more of a drop-in
|
||||
replacement for meetme so that it does not require any changes to the
|
||||
VICIDIAL codebase. I have added entry and exit sounds(slightly
|
||||
different from meetme's) as well as "only one in this conference"
|
||||
message in addition to changing the default member type to speaker(S).
|
||||
So far I have tested with IAX and SIP channels only and everything
|
||||
works just like on meetme but I have not done any capacity testing or
|
||||
tested it in production yet.
|
||||
|
||||
If you want to use app_conference instead of meetme for VICIDIAL then follow these instructions:
|
||||
|
||||
cd /usr/src/asterisk
|
||||
wget http://www.eflo.net/files/VD_app_conference_0.5.zip
|
||||
unzip VD_app_conference_0.5.zip
|
||||
cd app_conference
|
||||
make clean
|
||||
make
|
||||
make install
|
||||
|
||||
|
||||
In your extensions.conf file you would replace these lines:
|
||||
exten => 8600051,1,Meetme,8600051
|
||||
exten => 8600052,1,Meetme,8600052
|
||||
...
|
||||
exten => 78600051,1,Meetme,8600051|q
|
||||
exten => 78600052,1,Meetme,8600052|q
|
||||
...
|
||||
exten => 68600051,1,Meetme,8600051|mq
|
||||
exten => 68600052,1,Meetme,8600052|mq
|
||||
...
|
||||
|
||||
|
||||
with these lines:
|
||||
exten => 8600051,1,Conference(8600051)
|
||||
exten => 8600052,1,Conference(8600052)
|
||||
...
|
||||
exten => 78600051,1,Conference(8600051|q)
|
||||
exten => 78600052,1,Conference(8600052|q)
|
||||
...
|
||||
exten => 68600051,1,Conference(8600051|Lq)
|
||||
exten => 68600052,1,Conference(8600052|Lq)
|
||||
|
||||
|
||||
NOTES:
|
||||
Here are the possible feature flags for this version of app_conference:
|
||||
o M: Moderator (presently same as speaker) [default]
|
||||
o S: Speaker
|
||||
o L: Listener
|
||||
o T: "Telephone caller" (just for stats?).
|
||||
o V: Do VAD on this caller
|
||||
o D: Use Denoise filter on this caller.
|
||||
o d: Send manager events when DTMF is received.
|
||||
o q: Do not play enter or exit sounds.
|
||||
o i: use inband dtmf broadcast.
|
||||
o t: use rfc dtmf signal broadcast.
|
||||
|
||||
@@ -381,7 +381,7 @@ the time is the same on our client computers and our servers.
|
||||
5. Go to http://www.ntp.org/ and download the ntpd package
|
||||
- to install this directly on the command line type:
|
||||
- cd /usr/local
|
||||
- wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/snapshots/ntp-stable/2006/02/ntp-stable-4.2.0a-20060224.tar.gz
|
||||
- wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-stable-4.2.0a-20060224.tar.gz
|
||||
If you get compilation errors here try 4.1.2:
|
||||
- wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.1.2.tar.gz
|
||||
- gunzip ntp-stable-4.2.0a-20060224.tar.gz
|
||||
@@ -653,10 +653,10 @@ PHASE 4: INSTALLING ASTERISK
|
||||
|
||||
OK, all the prep work is done, now it's time to start having fun with Asterisk.
|
||||
There are four basic ways to install Asterisk, an official release(at the time of
|
||||
this writing the official releases are 1.2.6 and 1.0.10), the CVS_v1-0 branch(1.0
|
||||
this writing the official release is 1.2.8), the CVS_v1-0 branch(1.0
|
||||
with bug fixes not yet packaged and released) and the SVN_DEV version(development
|
||||
branch). Because there are bugs that affect astGUIclient in releases 1.0.8 and
|
||||
1.0.9, we recommend using Asterisk 1.2.6 or 1.0.10. These instructions are how we
|
||||
1.0.9, we recommend using Asterisk 1.2.8 or 1.0.10. 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.
|
||||
|
||||
@@ -671,15 +671,15 @@ with the following patch:
|
||||
- mkdir /usr/src/asterisk
|
||||
- cd /usr/src/asterisk
|
||||
A. if you want 1.2 release (reliable with new features):
|
||||
- wget http://ftp.digium.com/pub/asterisk/old-releases/asterisk-1.2.6.tar.gz
|
||||
- wget http://ftp.digium.com/pub/zaptel/releases/zaptel-1.2.5.tar.gz
|
||||
- wget http://ftp.digium.com/pub/libpri/releases/libpri-1.2.2.tar.gz
|
||||
- gunzip asterisk-1.2.6.tar.gz
|
||||
- tar xvf asterisk-1.2.6.tar
|
||||
- gunzip zaptel-1.2.5.tar.gz
|
||||
- tar xvf zaptel-1.2.5.tar
|
||||
- gunzip libpri-1.2.2.tar.gz
|
||||
- tar xvf libpri-1.2.2.tar
|
||||
- wget http://ftp.digium.com/pub/asterisk/releases/asterisk-1.2.8.tar.gz
|
||||
- wget http://ftp.digium.com/pub/zaptel/releases/zaptel-1.2.6.tar.gz
|
||||
- wget http://ftp.digium.com/pub/libpri/releases/libpri-1.2.3.tar.gz
|
||||
- gunzip asterisk-1.2.8.tar.gz
|
||||
- tar xvf asterisk-1.2.8.tar
|
||||
- gunzip zaptel-1.2.6.tar.gz
|
||||
- tar xvf zaptel-1.2.6.tar
|
||||
- gunzip libpri-1.2.3.tar.gz
|
||||
- tar xvf libpri-1.2.3.tar
|
||||
B. If you want latest 1.0 tree stable release:
|
||||
- wget http://ftp.digium.com/pub/asterisk/old-releases/asterisk-1.0.10.tar.gz
|
||||
- wget http://ftp.digium.com/pub/zaptel/releases/zaptel-1.0.10.tar.gz
|
||||
@@ -712,39 +712,49 @@ with the following patch:
|
||||
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.5
|
||||
- cd ./zaptel-1.2.6
|
||||
- make clean
|
||||
- make
|
||||
- make install
|
||||
- cd ../libpri-1.2.2
|
||||
- cd ../libpri-1.2.3
|
||||
- make clean
|
||||
- make
|
||||
- make install
|
||||
- cd ../asterisk-1.2.6
|
||||
- cd ../asterisk-1.2.8
|
||||
- (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.freedomphones.net/files/app_amd2.c
|
||||
- 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.freedomphones.net/files/amd2.conf
|
||||
- wget http://www.eflo.net/files/amd2.conf
|
||||
- mkdir /etc/asterisk
|
||||
- mv amd2.conf /etc/asterisk/amd.conf
|
||||
- cd ../
|
||||
|
||||
-(1.2 tree) apply the cli delimiter patch
|
||||
- wget http://www.freedomphones.net/files/cli_chan_concise_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
|
||||
- make clean
|
||||
- make
|
||||
- make install
|
||||
- make samples # this makes sample conf files
|
||||
- (1.2 tree) EXPERIMENTAL!!! If you want to use app_conference
|
||||
instead of meetme for VICIDIAL then follow these instructions
|
||||
- cd /usr/src/asterisk
|
||||
- wget http://www.eflo.net/files/VD_app_conference_0.5.zip
|
||||
- unzip VD_app_conference_0.5.zip
|
||||
- cd app_conference
|
||||
- make clean
|
||||
- make
|
||||
- make install
|
||||
|
||||
- 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:
|
||||
@@ -1822,6 +1832,7 @@ exten => 8600029,1,Meetme,8600029|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):
|
||||
NOTE: see below these entries for app_conference instructions is used
|
||||
######------ START extensions.conf changes for VD conf ------######
|
||||
exten => 8600051,1,Meetme,8600051
|
||||
exten => 8600052,1,Meetme,8600052
|
||||
@@ -1977,6 +1988,33 @@ exten => 68600099,1,Meetme,8600099|mq
|
||||
exten => 68600100,1,Meetme,8600100|mq
|
||||
######------ END extensions.conf changes for VD conf ------######
|
||||
|
||||
NOTE: If you want to use app_conference instead of meetme and you already have
|
||||
it installed, you will need to do the following:
|
||||
|
||||
In your extensions.conf file you would replace these lines:
|
||||
exten => 8600051,1,Meetme,8600051
|
||||
exten => 8600052,1,Meetme,8600052
|
||||
...
|
||||
exten => 78600051,1,Meetme,8600051|q
|
||||
exten => 78600052,1,Meetme,8600052|q
|
||||
...
|
||||
exten => 68600051,1,Meetme,8600051|mq
|
||||
exten => 68600052,1,Meetme,8600052|mq
|
||||
...
|
||||
|
||||
with these lines:
|
||||
exten => 8600051,1,Conference(8600051)
|
||||
exten => 8600052,1,Conference(8600052)
|
||||
...
|
||||
exten => 78600051,1,Conference(8600051|q)
|
||||
exten => 78600052,1,Conference(8600052|q)
|
||||
...
|
||||
exten => 68600051,1,Conference(8600051|Lq)
|
||||
exten => 68600052,1,Conference(8600052|Lq)
|
||||
|
||||
NOTE: If you want to do DTMF passthru with app_conference bee sure to add the
|
||||
"i" and "t" flags to the 8600XX lines: Conference(8600051|it)
|
||||
|
||||
|
||||
7. Add the more entries for astGUIclient specific uses:
|
||||
- here are some more dialplan additions needed to use astGUIclient(this is a
|
||||
@@ -2274,6 +2312,9 @@ AST_CRON_mix_recordings_BASIC.pl file in it's place)
|
||||
## adjust time on the server with ntp
|
||||
30 * * * * /usr/local/bin/ntpdate -u 18.145.0.30 2>/dev/null 1>&2
|
||||
|
||||
### VICIDIAL agent time log weekly summary report generation
|
||||
2 0 * * 0 /home/cron/AST_agent_week.pl
|
||||
|
||||
- once your system starts up you can attach to the screen running asterisk by
|
||||
typing "screen -r <screen>" find which screen by typing "screen -r" and
|
||||
looking for the lowest screen number. Then to detach again from the screen
|
||||
|
||||
@@ -62,7 +62,18 @@
|
||||
|
||||
- DONE Add number of leads in hopper, link to admin.php campaign modify screen(and link from admin to this screen) and hopper and leads stats as well as drops and drop percentage to the AST_timeonVDADall page.
|
||||
|
||||
- DONE Convert the AST_VDhopper.pl script to DBD::MySQL perl library in place of Net::MySQL. DBD::MySQL is faster because it uses the MySQL client libs on the machine. One problem is that you need the mysqlclientlibs installed on every Asterisk server and the default installation of only the MySQL client libs will result in having to do a force install of cpan DBD::MySQL(because it tries to test with the local DB). Not to mention all of the code changes that would need to be made. There are also MySQL client licensing issues for certain installation circumstances(Net::MySQL doesn't use mysql client libs so it doesn't have those issues) but I really don't want to get into that discussion. The reason for this change is that Net::MySQL is limiting in the capacity of the queries that you can use because of how it's connection to MySQL is used. DBI doesn't have those issues and is much better supported. This is the first script to be converted to DBI, you can find the Net version in the main directory and the DBI version in the new DBI-scripts directory.
|
||||
- DONE Convert the AST_VDhopper.pl script to DBD::MySQL perl library in place of Net::MySQL. DBD::MySQL is faster because it uses the MySQL client libs on the machine. One problem is that you need the mysqlclientlibs installed on every Asterisk server and the default installation of only the MySQL client libs will result in having to do a force install of cpan DBD::MySQL(because it tries to test with the local DB). Not to mention all of the code changes that would need to be made. There are also MySQL client licensing issues for certain installation circumstances(Net::MySQL doesn't use mysql client libs so it doesn't have those issues) but I really don't want to get into that discussion. The reason for this change is that Net::MySQL is limiting in the capacity of the queries that you can use because of how it's connection to MySQL is used. DBI doesn't have those issues and is much better supported. This is the first script to be converted to DBI, you can find the Net::MySQL version in the main directory and the DBI(DBD::mysql) version in the new DBI-scripts directory.
|
||||
|
||||
- DONE Test and package app_conference for beta usage with VICIDIAL as a meetme replacement. This has many performance benefits including not having to use a zaptel timer. Packaged and released on the project site. Tested in medium to low capacity VICIDIAL server, some random infrequent bugs. In contact with app_conference developers working on stabilizing code. Added instructions to SCRATCH_INSTALL on how to get app_conferenc working with VICIDIAL.
|
||||
|
||||
- DONE Add a link from the campaign-based reports pages to go back to the campaign screen.
|
||||
|
||||
- DONE Create a script to grab the login time stats from vicidial_agent_log and create a day-by-day timesheet log each week AST_agent_week.pl script. Add script to the cron instructions in SCRATCH_INSTALL doc.
|
||||
|
||||
- DONE Fix issues with ast_VDauto_dial script when you have two CLOSER campaigns in Blended mode dialing at the same time. To fix this we need to change many things in how the CLOSER campaigns work. We need to add a new field to the vicidial_auto_calls table to denote whether the call is from inbound or outbound(call_type ENUM('IN','OUT') default 'OUT'). For each CLOSER campaign, a special field needs to be added to vicidial_campaigns for allowable inbound groups. This will change what in-groups an agent logging into the campaign can select from as well as changing how the auto_dial script calculates how many calls to place on CLOSER campaigns in blended mode. the vicidial.php script needs to be changed as well as several changes in the admin.php script. The AST_VDauto_dial.pl script needs to be changed as well as all of the agi-VDAD....closer.agi scripts.
|
||||
|
||||
- DONE Fix active calls stats for multiple CLOSER campaigns in Realtime Campaign screen.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user