Wondering how to install vicidial scratch on Centos 7?We can help you.
VICIDIAL is an enterprise class, open source, call center suite in use by many large call centers around the world.
As part of our Server Management Services, we assist our customers with similar queries.
Today, let us see how our Support techs perform this task.
How to Install Vicidial scratch on Centos 7?
Asterisk is software that turns an ordinary computer into a voice communications server.
Together, you have a full featured predictive dialer.
It can also function as an ACD for inbound calls, or closer calls coming from VICIDIAL outbound fronters.
It is capable of inbound, outbound, and blended call handling.
VICIDIAL even allows you to have agents logged in from remote locations.
Today, let us see the steps followed by our Support Techs for the installation:
Step 1:
Updating the operating system
yum check-update
yum update -y
yum -y install epel-release
Step 2:
Then, disable firewall
yum groupinstall ‘Development Tools’
sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/g’ /etc/selinux/config
systemctl disable firewalld
reboot
Step 3:
Next, install all the dependencies.
yum install make patch gcc gcc-c++ subversion php php-devel php-gd gd-devel php-mbstring php-mcrypt php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel httpd libpcap libpcap-devel libnet ncurses ncurses-devel screen mysql-devel ntp kernel* mutt glibc.i686 wget nano unzip sipsak sox –y libss7* libopen*
yum install sqlite-devel –y
yum install mariadb-server mariadb -y
Step 4:
Setup mariadb configuration files
cp /etc/my.cnf /etc/my.cnf.original echo “” > /etc/my.cnf
vi /etc/my.cnf
after opening the my.cnf file in vi editor copy these lines below and paste it there
[mysql.server]
user = mysql #basedir = /var/lib
[client]
port = 3306 socket = /var/lib/mysql/mysql.sock
[mysqld]
datadir = /var/lib/mysql #tmpdir = /home/mysql_tmp socket = /var/lib/mysql/mysql.sock user = mysql old_passwords = 0 ft_min_word_len = 3 max_connections = 800 max_allowed_packet = 32M skip-external-locking log-error = /var/log/mysqld/mysqld.log query-cache-type = 1 query-cache-size = 32M long_query_time = 1 #slow_query_log = 1 #slow_query_log_file = /var/log/mysqld/slow-queries.log tmp_table_size = 128M table_cache = 1024 join_buffer_size = 1M key_buffer = 512M sort_buffer_size = 6M read_buffer_size = 4M read_rnd_buffer_size = 16M myisam_sort_buffer_size = 64M max_tmp_tables = 64 thread_cache_size = 8 thread_concurrency = 8 # If using replication, uncomment log-bin below #log-bin = mysql-bin
[mysqldump]
quick max_allowed_packet = 16M
[mysql]
no-auto-rehash
[isamchk]
key_buffer = 256M sort_buffer_size = 256M read_buffer = 2M write_buffer = 2M
[myisamchk]
key_buffer = 256M sort_buffer_size = 256M read_buffer = 2M write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
[mysqld_safe]
#log-error = /var/log/mysqld/mysqld.log #pid-file = /var/run/mysqld/mysqld.pid
After pasting the above simple close the editor by pressing esc and then :wq and press enter
Step 5:
Then, activate the services and enable them in our os for auto-start
systemctl enable httpd.service systemctl enable mariadb.service systemctl start httpd.service systemctl start mariadb.service
Step 6:
Next, update the timezone
cp /usr/share/zoneinfo/America/Mexico /etc/localtime
Step 7:
Then, install all the required CPAN modules
yum install perl-CPAN -y yum install perl-YAML -y yum install perl-libwww-perl -y yum install perl-DBI -y yum install perl-DBD-MySQL -y yum install perl-GD -y cd /usr/bin/ curl -LOk http://xrl.us/cpanm chmod +x cpanm cpanm -f File::HomeDir cpanm -f File::Which cpanm CPAN::Meta::Requirements cpanm -f CPAN cpanm YAML cpanm MD5 cpanm Digest::MD5 cpanm Digest::SHA1 cpanm readline cpanm Bundle::CPAN cpanm DBI cpanm -f DBD::mysql cpanm Net::Telnet cpanm Time::HiRes cpanm Net::Server cpanm Switch cpanm Mail::Sendmail cpanm Unicode::Map cpanm Jcode cpanm Spreadsheet::WriteExcel cpanm OLE::Storage_Lite cpanm Proc::ProcessTable cpanm IO::Scalar cpanm Spreadsheet::ParseExcel cpanm Curses cpanm Getopt::Long cpanm Net::Domain cpanm Term::ReadKey cpanm Term::ANSIColor cpanm Spreadsheet::XLSX cpanm Spreadsheet::Read cpanm LWP::UserAgent cpanm HTML::Entities cpanm HTML::Strip cpanm HTML::FormatText cpanm HTML::TreeBuilder cpanm Time::Local cpanm MIME::Decoder cpanm Mail::POP3Client cpanm Mail::IMAPClient cpanm Mail::Message cpanm IO::Socket::SSL cpanm MIME::Base64 cpanm MIME::QuotedPrint cpanm Crypt::Eksblowfish::Bcrypt cpanm Crypt::RC4 cpanm Text::CSV cpanm Text::CSV_XS
Step 8:
Installation of asterisk perl
cd /usr/src wget http://download.vicidial.com/required-apps/asterisk-perl-0.08.tar.gz tar xzf asterisk-perl-0.08.tar.gz cd asterisk-perl-0.08 perl Makefile.PL make all make install
Step 9:
Installation of sipsak
cd /usr/src wget http://download.vicidial.com/required-apps/sipsak-0.9.6-1.tar.gz tar -zxf sipsak-0.9.6-1.tar.gz cd sipsak-0.9.6 ./configure make make install
/usr/local/bin/sipsak –version
Step 10:
Then, installation of LAME
cd /usr/src wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz tar -zxf lame-3.99.5.tar.gz cd lame-3.99.5 ./configure make
make install
Step 11:
Next, installation of jasson
cd /usr/src/ wget http://www.digip.org/jansson/releases/jansson-2.5.tar.gz tar -zxf jansson-2.5.tar.gz cd jansson* ./configure make clean make make install
ldconfig
Step 12:
Then, installation of eaccelerator
cd /usr/src wget https://github.com/eaccelerator/eaccelerator/zipball/master -O eaccelerator.zip unzip eaccelerator.zip cd eaccelerator-* export PHP_PREFIX=”/usr” $PHP_PREFIX/bin/phpize ./configure –enable-eaccelerator=shared –with-php-config=$PHP_PREFIX/bin/php-config make
make install
Step 13:
Then, search and replace the values of these in php.ini file
vi /etc/php.ini
Change the following values in php.ini file.
error_reporting = E_ALL & ~E_NOTICE memory_limit = 48M short_open_tag = On max_execution_time = 330 max_input_time = 360 post_max_size = 48M upload_max_filesize = 42M default_socket_timeout = 360 date.timezone = Asia/Kolkata
;Dynamic Extensions zend_extension=”/usr/lib64/php/modules/eaccelerator.so” ;For CentOS 32-bit: zend_extension=”/usr/lib/php/modules/eaccelerator.so” eaccelerator.shm_size=”48″ eaccelerator.cache_dir=”/tmp/eaccelerator” eaccelerator.enable=”1″ eaccelerator.optimizer=”1″ eaccelerator.check_mtime=”1″ eaccelerator.debug=”0″ eaccelerator.filter=”” eaccelerator.shm_max=”0″ eaccelerator.shm_ttl=”0″ eaccelerator.shm_prune_period=”0″ eaccelerator.shm_only=”0″ eaccelerator.compress=”1″
eaccelerator.compress_level=”9″
mkdir /tmp/eaccelerator
chmod 0777 /tmp/eaccelerator
Step 14:
Httpd configuration
vi /etc/httpd/conf/httpd.conf CustomLog logs/access_log combined to this: CustomLog /dev/null common
Alias /RECORDINGS/ “/var/spool/asterisk/monitorDONE/”
<Directory “/var/spool/asterisk/monitorDONE”> Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all Require all granted <files *.mp3> Forcetype application/forcedownload </files>
</Directory>
Step 15:
Asterisk, Dahdi and Libpri installation
mkdir /usr/src/asterisk cd /usr/src/asterisk wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz wget http://download.vicidial.com/required-apps/asterisk-13.29.2-vici.tar.gz
tar xzf asterisk-* tar xzf dahdi-linux-complete-* tar xzf libpri-*
cd /usr/src/asterisk/dahdi-linux-complete-* make #if error occurs do following: #yum update -y #yum install kernel-devel -y #reboot
make install make config cd tools ./configure make make install make install-config cd /usr/src/asterisk/libpri-* make clean make make install
cd /usr/src/asterisk/asterisk* ./configure –libdir=/usr/lib64 make clean make menuselect ; note you need to select application then find and select app_meetme then PRESS X or ESC and s make make install make samples make config
mkdir /usr/src/astguiclient cd /usr/src/astguiclient svn checkout svn://svn.eflo.net:43690/agc_2-X/trunk
cd /usr/src/astguiclient/trunk
Step 15:
Asterisk, Dahdi and Libpri installation
mkdir /usr/src/asterisk cd /usr/src/asterisk wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz wget http://download.vicidial.com/required-apps/asterisk-13.29.2-vici.tar.gz
tar xzf asterisk-* tar xzf dahdi-linux-complete-* tar xzf libpri-*
cd /usr/src/asterisk/dahdi-linux-complete-* make #if error occurs do following: #yum update -y #yum install kernel-devel -y #reboot
make install make config cd tools ./configure make make install make install-config cd /usr/src/asterisk/libpri-* make clean make make install
cd /usr/src/asterisk/asterisk* ./configure –libdir=/usr/lib64 make clean make menuselect ; note you need to select application then find and select app_meetme then PRESS X or ESC and s make make install make samples make config
mkdir /usr/src/astguiclient cd /usr/src/astguiclient svn checkout svn://svn.eflo.net:43690/agc_2-X/trunk
cd /usr/src/astguiclient/trunk
Step 16:
Then, creating database
mysql
CREATE DATABASE `asterisk` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; CREATE USER ‘cron’@’localhost’ IDENTIFIED BY ‘1234’; GRANT SELECT,INSERT,UPDATE,DELETE,LOCK TABLES on asterisk.* TO cron@’%’ IDENTIFIED BY ‘1234’;
GRANT SELECT,INSERT,UPDATE,DELETE,LOCK TABLES on asterisk.* TO cron@localhost IDENTIFIED BY ‘1234’; GRANT RELOAD ON *.* TO cron@’%’; GRANT RELOAD ON *.* TO cron@localhost; flush privileges; use asterisk; \. /usr/src/astguiclient/trunk/extras/MySQL_AST_CREATE_tables.sql \. /usr/src/astguiclient/trunk/extras/first_server_install.sql
quit
Step 17:
Next, installation of vicidial
cd /usr/src/astguiclient/ cd trunk perl install.pl
#select asterisk version 13.x and yes to copy sample configuration option
#update your server ip also to the ip of your server
/usr/share/astguiclient/ADMIN_area_code_populate.pl
/usr/share/astguiclient/ADMIN_update_server_ip.pl –old-server_ip=10.10.10.15
Step 18:
Then, cronjobs settlement
crontab -e ### recording mixing/compressing/ftping scripts #0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57 * * * * /usr/share/astguiclient/AST_CRON_audio_1_move_mix.pl 0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57 * * * * /usr/share/astguiclient/AST_CRON_audio_1_move_mix.pl –MIX 0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57 * * * * /usr/share/astguiclient/AST_CRON_audio_1_move_VDonly.pl 1,4,7,10,13,16,19,22,25,28,31,34,37,40,43,46,49,52,55,58 * * * * /usr/share/astguiclient/AST_CRON_audio_2_compress.pl –GSM #2,5,8,11,14,17,20,23,26,29,32,35,38,41,44,47,50,53,56,59 * * * * /usr/share/astguiclient/AST_CRON_audio_3_ftp.pl –GSM
### keepalive script for astguiclient processes * * * * * /usr/share/astguiclient/ADMIN_keepalive_ALL.pl –cu3way
### kill Hangup script for Asterisk updaters * * * * * /usr/share/astguiclient/AST_manager_kill_hung_congested.pl
### updater for voicemail * * * * * /usr/share/astguiclient/AST_vm_update.pl
### updater for conference validator * * * * * /usr/share/astguiclient/AST_conf_update.pl
### flush queue DB table every hour for entries older than 1 hour 11 * * * * /usr/share/astguiclient/AST_flush_DBqueue.pl -q
### fix the vicidial_agent_log once every hour and the full day run at night 33 * * * * /usr/share/astguiclient/AST_cleanup_agent_log.pl 50 0 * * * /usr/share/astguiclient/AST_cleanup_agent_log.pl –last-24hours ## uncomment below if using QueueMetrics #*/5 * * * * /usr/share/astguiclient/AST_cleanup_agent_log.pl –only-qm-live-call-check
## uncomment below if using Vtiger #1 1 * * * /usr/share/astguiclient/Vtiger_optimize_all_tables.pl –quiet
### updater for VICIDIAL hopper * * * * * /usr/share/astguiclient/AST_VDhopper.pl -q
### adjust the GMT offset for the leads in the vicidial_list table 1 1,7 * * * /usr/share/astguiclient/ADMIN_adjust_GMTnow_on_leads.pl –debug
### reset several temporary-info tables in the database 2 1 * * * /usr/share/astguiclient/AST_reset_mysql_vars.pl
### optimize the database tables within the asterisk database 3 1 * * * /usr/share/astguiclient/AST_DB_optimize.pl
## adjust time on the server with ntp 30 * * * * /usr/sbin/ntpdate -u pool.ntp.org 2>/dev/null 1>&2
### VICIDIAL agent time log weekly and daily summary report generation 2 0 * * 0 /usr/share/astguiclient/AST_agent_week.pl 22 0 * * * /usr/share/astguiclient/AST_agent_day.pl
### VICIDIAL campaign export scripts (OPTIONAL) #32 0 * * * /usr/share/astguiclient/AST_VDsales_export.pl #42 0 * * * /usr/share/astguiclient/AST_sourceID_summary_export.pl ### remove old recordings more than 7 days old #24 0 * * * /usr/bin/find /var/spool/asterisk/monitorDONE -maxdepth 2 -type f -mtime +7 -print | xargs rm -f
### roll logs monthly on high-volume dialing systems #30 1 1 * * /usr/share/astguiclient/ADMIN_archive_log_tables.pl
### remove old vicidial logs and asterisk logs more than 2 days old 28 0 * * * /usr/bin/find /var/log/astguiclient -maxdepth 1 -type f -mtime +2 -print | xargs rm -f 29 0 * * * /usr/bin/find /var/log/asterisk -maxdepth 3 -type f -mtime +2 -print | xargs rm -f 30 0 * * * /usr/bin/find / -maxdepth 1 -name “screenlog.0*” -mtime +4 -print | xargs rm -f
### cleanup of the scheduled callback records 25 0 * * * /usr/share/astguiclient/AST_DB_dead_cb_purge.pl –purge-non-cb -q
### GMT adjust script – uncomment to enable #45 0 * * * /usr/share/astguiclient/ADMIN_adjust_GMTnow_on_leads.pl –list-settings
### Dialer Inventory Report 1 7 * * * /usr/share/astguiclient/AST_dialer_inventory_snapshot.pl -q –override-24hours
### inbound email parser
* * * * * /usr/share/astguiclient/AST_inbound_email_parser.pl
Step 19:
Finally, enabling the startup scripts
vi /etc/rc.d/rc.local
/usr/share/astguiclient/ip_relay/relay_control start 2>/dev/null 1>&2 /usr/bin/setterm -blank /usr/bin/setterm -powersave off /usr/bin/setterm -powerdown systemctl start mariadb.service systemctl start httpd.service /usr/share/astguiclient/ADMIN_restart_roll_logs.pl /usr/share/astguiclient/AST_reset_mysql_vars.pl modprobe dahdi modprobe dahdi_dummy /usr/sbin/dahdi_cfg -vvvvvvvvvvvvv sleep 20 /usr/share/astguiclient/start_asterisk_boot.pl chmod +x /etc/rc.d/rc.local systemctl enable rc-local systemctl start rc-local
reboot
Start using vicidial
1.Firstly, login to vicidial and configure it.
2.Add users, campaigns, in-group, DID’s, server, etc….
3.Go to: http://youripaddress/vicidial/admin.php
The default username is: 6666 and the password is: 1234
[Need help with similar queries? We’d be happy to assist you]
Conclusion
In short, we saw how our Support Techs Install vicidial scratch on centos 7.
PREVENT YOUR SERVER FROM CRASHING!
Never again lose customers to poor server speed! Let us help you.
Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.
0 Comments