How To Install GOautodial From Scratch Using 64bit and 32bit CentOS 5.X

This is useful for hosted servers that can't or won't install a custom ISO (GOautodial CE 3.0 ISO).

1. Install minimal version of CentOS 5.X 64bit/32bit (CentOS 5.10 is latest as of this writing)

2. Install the GOautodial yum repository

# cd /etc/yum.repos.d/
# wget http://downloads2.goautodial.org/centos/5/goautodial.repo

3. Update system and install kernel development files

# yum update -y
# yum install kernel-devel glibc-devel -y

4. Install GOautodial applications and configurations

# yum -y install goautodial-ce goautodial-ce-config
This will automatically install the GOautodial applications and it's dependencies. Easy huh? :D

5. Edit PHP 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

6. 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

7. Edit root crontab

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

8. Reboot

# reboot

9. Optional (only if you're using a Sangoma card):

Install Sangoma Wanpipe drivers

# yum install wanpipe

That's it folks!