64bit-demian¶
How To Install Goautodial From Scratch CentOS 64bit (CentOS 7)¶
Install minimal version of CentOS 7 64bit¶
Install the Goautodial yum repository¶
cd /etc/yum.repos.d/ wget http://downloads2.goautodial.org/centos/7/goautodial.repo
Update system¶
yum install -y epel-release yum update -y
Install required packages:¶
yum -y groupinstall "Development Tools" yum install -y httpd php-common php-pdo php php-pear php-mbstring php-cli php-gd php-imap php-devel \ phpsysinfo php-mysql phpmyadmin mod_ssl mariadb mariadb-server mariadb-devel perl-DBI perl-DBD-MySQL \ perl-Digest-HMAC perl-YAML perl-ExtUtils-ParseXS perl-NetAddr-IP perl-Crypt-SSLeay perl-Curses \ perl-DBD-Pg perl-Module-ScanDeps perl-Text-CSV perl-HTML-Template perl-IO-Compress perl-Text-Glob \ perl-Jcode perl-Test-Script perl-Archive-Tar perl-Test-Base perl-OLE-Storage_Lite perl-Archive-Zip \ perl-Net-Server perl-Convert-ASN1 perl perl-Compress-Raw-Zlib perl-Digest-SHA1 perl-Data-Dumper \ perl-Error perl-ExtUtils-CBuilder perl-Test-Tester perl-Parse-RecDescent perl-Spiffy perl-IO-Zlib \ perl-Module-Build perl-HTML-Parser perl-Net-SSLeay perl-Proc-ProcessTable perl-TermReadKey \ perl-Term-ReadLine-Gnu perl-Digest-SHA perl-Tk perl-Net-SNMP perl-Test-NoWarnings perl-XML-Writer \ perl-Proc-PID-File perl-Compress-Raw-Bzip2 perl-libwww-perl perl-XML-Parser perl-File-Remove \ perl-Parse-CPAN-Meta perl-Set-Scalar perl-Probe-Perl perl-File-Which perl-Package-Constants \ perl-Module-Install perl-File-HomeDir perl-Spreadsheet-ParseExcel perl-Mail-Sendmail perl-Spreadsheet-XLSX \ asterisk-perl perl-version perl-Crypt-DES perl-URI perl-Net-Daemon perl-IO-stringy perl-YAML-Tiny \ perl-HTML-Tagset perl-Socket6 perl-BSD-Resource perl-PlRPC perl-IPC-Run3 perl-Text-CSV_XS perl-Unicode-Map \ perl-Module-CoreList perl-Net-Telnet perl-PAR-Dist perl-Date-Manip perl-JSON perl-Proc-Daemon \ perl-Spreadsheet-WriteExcel perl-rrdtool install lame screen sox ntp iftop subversion asterisk \ asterisk-configs dahdi-tools dahdi-linux-devel php-xcache
Enable HTTPD and MariaDB services:¶
systemctl enable httpd.service; systemctl enable mariadb.service; systemctl start httpd.service; systemctl start mariadb.service
Install additional CPAN modules:¶
cpan -i String::CRC Tk::TableMatrix Net::Address::IP::Local Term::ReadLine::Gnu Spreadsheet::Read \ Net::Address::IPv4::Local RPM::Specfile Spreadsheet::XLSX Spreadsheet::ReadSXC
Install Asterisk Perl module:¶
cd /root wget http://asterisk.gnuinter.net/files/asterisk-perl-0.08.tar.gz cd /usr/src/ tar zxvf /root/asterisk-perl-0.08.tar.gz cd asterisk-perl-0.08 perl Makefile.PL && make all && make install cd /root
Download and manually install Vicidial and GOautodial RPMS:¶
wget http://downloads2.goautodial.org/centos/7/current/x86_64/RPMS/vicidial-2.9.441a-140612.1628.2.go.noarch.rpm wget http://downloads2.goautodial.org/centos/7/current/x86_64/RPMS/goautodial-ce-3.3-1406088000.noarch.rpm wget http://downloads2.goautodial.org/centos/7/current/x86_64/RPMS/goautodial-ce-config-3.3-1.noarch.rpm
Install the RPMS:¶
rpm -ivh --nodeps vicidial-2.9.441a-140612.1628.2.go.noarch.rpm rpm -ivh --nodeps goautodial-ce-3.3-1406088000.noarch.rpm rpm -ivh --nodeps goautodial-ce-config-3.3-1.noarch.rpm
Edit MYSQL configurations:¶
cp /etc/my.cnf /etc/my.cnf-gad-orig cat /etc/my.cnf.old > /etc/my.cnf nano /etc/my.cnf
Add the following lines below under [mysqld]
old_passwords=1 skip-name-resolve skip-host-cache max_connections=500
Reboot¶
reboot
Vicidial default URLs¶
Admin: http://$ip_address/vicidial/admin.php Agent: http://$ip_address/agc/vicidial.php
Edit PHP and HTTPD configuration file:¶
nano /etc/php.ini
Make sure the entries below have the same value:
memory_limit = 128M short_open_tag = On max_execution_time = 360 max_input_time = 360 post_max_size = 64M upload_max_filesize = 64M default_socket_timeout = 360
sed -i 's/AllowOverride None/AllowOverride All/' /etc/httpd/conf/httpd.conf
Restart HTTPD:¶
systemctl restart httpd
Edit startup file¶
nano /etc/rc.local
Paste the following entries:
# OPTIONAL enable ip_relay(for same-machine trunking and blind monitoring) /usr/share/astguiclient/ip_relay/relay_control start 2>/dev/null 1>&2 ### Disable console blanking and powersaving /usr/bin/setterm -blank /usr/bin/setterm -powersave off /usr/bin/setterm -powerdown ### start time server /usr/sbin/ntpdate -u pool.ntp.org ### roll the Asterisk logs upon reboot /usr/share/astguiclient/ADMIN_restart_roll_logs.pl 2>/dev/null 1>&2 ### clear the server-related records from the database /usr/share/astguiclient/AST_reset_mysql_vars.pl 2>/dev/null 1>&2 ### start up asterisk /usr/share/astguiclient/start_asterisk_boot.pl 2>/dev/null 1>&2 ### set message of the day /usr/local/bin/motd.sh > /etc/motd ### update server IP address in Vicidial tables on first boot (reboot on upgrade) if [ -e /.firstboot ]; then /usr/share/astguiclient/ADMIN_update_server_ip.pl --auto --old-server_ip="" 2>/dev/null 1>&2 rm /.firstboot fi ### make sure SELINUX is turned off echo 0 > /selinux/enforce touch /var/lock/subsys/local
If the crontab is empty apply the entries below¶
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 --MP3 #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 ### 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 * * * /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 ORIG recordings more than 2 days old 24 0 * * * /usr/bin/find /var/spool/asterisk/monitorDONE/ORIG/ -maxdepth 2 -type f -mtime +2 -print | xargs rm -f ### remove all recordings more than 6 months old 30 0 * * * /usr/bin/find /var/spool/asterisk/monitorDONE/ -maxdepth 2 -type f -mtime +180 -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 ### daily backup database and web folder and upload to FTP server 1 2 * * * /usr/share/astguiclient/ADMIN_backup.pl --db-without-logs --without-conf --ftp-transfer 2>/dev/null 1>&2 ### keepalive script for GoAutoDial processes * * * * * /usr/share/goautodial/keepalive_goautodial.pl ### logs cleanup for GoAutoDial 8 1 * * * /usr/share/goautodial/go_clean.pl ### asterisk logs access for GoAutoDial * * * * * /usr/share/goautodial/go_astlogs.pl
12. Reboot¶
# reboot
That's it folks!
Go to top