Overview

Some things to note before you begin:

Throughout this document, we refer to the current version of the software as 8.8.X or 88X. The X should be replaced in this document with the current release number.

We HIGHLY recommend that you install this version of 8.8.X over any older version of 8.8. You should NOT have to rebuild phone files or recompile studies.

If you are installing over an older version and have made changes to the default jQuery scripts, please make a copy of your /var/www/html/cfmcweb/js/ directory contents before you begin.

As the root user, PHP settings may need to be updated in the php.ini and then apache reloaded:

“upload_max_filesize” must be at least 250M
“post_max_size” must be at least 250M

Newer versions of php require that “date.timezone” is set in the php.ini file before the date functions all work correctly. Check http://www.php.net/manual/en/timezones.php for a listing of valid timezone settings.

After changes to php.ini have been made use the following command to reload apache:

“service httpd reload”

Once you’ve obtained the latest Survent package, you will install it as the root user. The following commands will install the software:

> mkdir -p /opt/cfmc/
> cd /opt/cfmc/
> unzip /path/to/<survent_package>.zip
> cd /opt/cfmc/survent88x
> ./installer

This will initiate the installation process and prompt the user through the following phases of the install:

System Updates

Use yum to install all the OS packages that are required as well as some required perl modules, and finally start apache and mysql.

Install the Survox Survent Software

This phase will create several directories outside of the /opt/cfmc/ area, download temporary validate file for testing, store some system information, copy files under the web server, and start the Survox accounting program nsnapperd.

Install the Survox Console

This phase will install the web-base Survox Console UI.

Configure Run-Time Accounts

You’ll be prompted to set up any run-time accounts that are needed. These are basically directories where the Survox studyserver will be run. From the system side an account file will be created in /cfmc/cfg/accounts, a directory for the IPC files will be added to /opt/cfmc/ipc, a directory and cgi program for the account will be set up under the web server, and a user created if necessary. Additional run-time areas can be configured at any time by running the “/opt/cfmc/survent88x/bin/create_account” script.

From the user side a control directory will be created, and an active survey area will be set up to hold questionnaires, data files, etc. The login environment will also be set up if the user is created. This can be skipped by the sysadmin and the user can perform those tasks by running the “/opt/cfmc/survent88x/bin/setup_runtime” script.

The installer can be run as many times as you want. So if you don’t like an answer you gave, you should be able to re-run the installer and change your answers.

The installer will output a log.install.xxx (where xxx is a Julian year day and the time it was started). If you encounter issues during the install process that you need to contact support about, please include any of these files as they should help us to understand and resolve your issue. They should be located in the “/opt/cfmc/survent88x” directory

System Updates

The Survox software requires certain system libraries to run. The Survox Console UI requires a LAMP stack to be installed and running, as well as certain perl modules. The installer calls the script “bin/yummer” to perform these tasks, and you can review that script to see exactly what it’s doing.

First, you’ll be prompted to allow yum to be used to install a list of packages. The list assumes that you have a standard CentOS or Fedora install. If your OS install is non-standard, there may be packages that we’ve assumed are already installed and as such are not on our list. If you encounter errors during this phase of the install, see the “Trouble Shooting” section below for help resolving them.

Yum is used to update/install certain required packages. This may take several minutes. As noted, some packages have different names on different OS versions so we may try variations on the name of which only one will succeed. The ones that don’t succeed aren’t needed and you can proceed with the install.

Next, we set Apache and MySQL to start at system boot, and also start them. Since we may have installed MySQL, we check that the MySQL installation has a root password set and warn you if it doesn’t. The “mysql_secure_installation” script provided with MySQL is a good way to lock down the security on MySQL and we recommend that you run it once the Survox software install is complete.

Then we install any necessary Perl modules using CpamMinus, the recommended method for installing additional perl modules. CpanMinus may need to be installed using the older CPAN install, and if so there will be a number of prompts having to do with Perl. For most prompts, you can simple hit .

Once things are installed, we try running one of the Survox programs to verify that all necessary packages and system libraries are in place. If they are not, you’ll see a message about missing yum packages. If so, you can continue with the install but certain things will fail. It’s likely better to stop here and resolve any issues, then re-run the installer. See the “Trouble Shooting” section below.

Install the Survox Survent Software

There are certain files and directories that the Survent software requires outside of the /opt/cfmc/ area.

You will be prompted for some information about the system, particularly about the web server That information will be stored for later use. Also, files will be copied to the web area of the system.

If you don’t already have a licensing validate file, we attempt to get a temporary one for testing and validation of the install.

Once the validate file is in place, we start the Survox accounting program nsnapperd. We also install a cron entry for root to check and keep the nsnapperd process running, since it is required to be running.

Install the Survox Console

You’ll be prompted to install the Survox Console. If you do, then you’ll be prompted for certain information. Most of it should be verifying the web server information. The most important setting you’ll be prompted for is the admin user’s password. Be sure to write that down, as you’ll need it later. If you do not write it down, you can recover it from the “/opt/cfmc/survoxconsole88x/SurvoxConsole.conf” file.

After the prompts, files are copied to the web area of the system, a mysql user is created for the application to use, and the database schema for the application is installed/updated.

The Survox Console can be installed later by going to the /opt/cfmc/survoxconsole88x directory and running sbin/installer.

Configure Run-Time Accounts

You’ll be prompted to set up any runtime accounts. A runtime account is an area where the Survox software will be run (in particular the Survox Study server process).

To create each runtime account you set up, you’ll be prompted for the following:

  • An account name. Enter a single word which can be used to name a file and which describes what the runtime area will be used for; something like “live” or “test” or “prodweb”. You’ll be able to enter a longer description later.
  • A user to own the account. If the user doesn’t exist, you’ll be prompted for a group for the user and the user will be created.
  • The path to the runtime directory. If no such directory exists, one will be created.
  • The path to the html directory for the account. We set up such a directory in the web server document area, so that the account user can place files under the web server without opening up the permissions on the document root directory (which is a security hazard). Again, if no such directory exists one will be created. A description of the account. This will be displayed in the Survox Console where the account/environment is referenced.
  • If you want to set up the runtime account. Setting up the account will create a number of directories, copy and configure files, and set up some symbolic links. In the specified runtime directory. If you also choose to set up the Survox Console, a number of other directories will be copied.

If you skip creating the accounts during the install, you can so later by running the “bin/create_account” script. If you skip setting up the runtime account, the user can do so later by running the “/opt/cfmc/survent88x/bin/setup_account” script.

Shopwide Dialer Configuration File

After a new installation or if a dialer is added to an installation that has never had a dialer before, a default shopwide dialer configuration file (shopwide.dial) needs to be created.  This file is created in the $cfmc/control/dialer directory.

Example of a shopwide.dial file:
study:
nums_per_intv: 0
abandonment_rate: 250
number_rings: 5
rest_time: 4
have_ans_machine: 0
billingcode:
predictive_mode: yes
targeted_mode: Power
fonenumber_prefix:
fonenumber_suffix:
callerid:

Notes

1) The .cshrc file is used to execute a set of linux commands when a user logs into the system or creates a new terminal window. Survox requires that unlimit be executed in order to ensure there are no resource restrictions on the shell running the Survox software.

Add the following:

unlimit

to .cshrc file on a separate line if not already defined. For changes to take effect simply disconnect and log back in before attempting to start the study server for the first time.