Table of contents
Quick start
This page provides brief instructions on how to set up your first CallWeb CATI project. It is assumed that you have access to a Web server equipped with CallWeb and to an FTP program to transfer files to the server.
General introduction
CallWeb CATI comprises a series of computer programs which add structured control and access to CallWeb questionnaires in the context of telephone interviewing.
CallWeb CATI includes a set of supervision modules to define active projects and their behaviour, to describe active interviewers and manage their time, to feed telephone numbers to the call queue and to control the state of the data collection.
CallWeb CATI also includes a set of interviewing modules which control the attribution of telephone numbers to interviewers, dial the numbers on behalf of interviewers and manage the collection of information on call results.
This documentation is organized accordingly.
Supervision — Introduction
CallWeb CATI includes a set of supervision modules for the following functions:
Defining active projects
All CallWeb CATI projects must be defined and activated in the BASEprojets CallWeb project. Projects that are not declared or activated in the BASEprojets CallWeb project are not available to supervisors and interviewers — this way Web-only projects can be managed along with CATI projects, without interference.
Defining a project simply requires
Also, projects
The BASEprojets CallWeb project is most easily viewed and edited from the cwnav.cgi utility which is accessible from the integrated module.
Describing interviewers
Before they are admitted into the CallWeb CATI system, interviewers must be granted permission. This is done in the BASEpasse CallWeb project.
Describing an interviewer simply requires
The BASEpasse CallWeb project is most easily viewed and edited from the cwnav.cgi utility which is accessible from the integrated module.
If the auto-dialer is used, each connected work station must be defined in the BASEposte CallWeb project — which is most easily edited in the cwnav.cgi utility.
Finally, the CallWeb CATI project automatically cumulates interviewer time spent on each project. The time data are stored in the BASEtemps CallWeb project. If an interviewer does not properly exit the system, an error is displayed next time they attempt to re-enter the system and a supervisor has to locate the time slip in the BASEtemps CallWeb project using cwnav.cgi and edit the transaction to correct it.
Setting up the script
There are some CallWeb script requirements that are specific to the CATI environment. They are explained below.
PRESTRATE question
Very early in the questionnaire there must be a question named PRESTRATE which stores the stratum membership of every case in the data base; every case must be assigned a value for this question via prepopulation. If the project does not use strata, PRESTRATE must still be present and contain a single category.
The text of the PRESTRATE question must document the maximum number of cases which will be allowed to be used in each stratum. The syntax is as follows:
This limits stratum 1 to 100 cases drawn from the entire data base into the list of active telephone numbers, 50 for stratum 2 and 90 for stratum 3. Using this mechanism, one can prepopulate the data base with a large number of telephone numbers and "open the tap" as required without having to perform additional prepopulation.
Strata are defined using response categories; there shall be as many response categories as there are strata.
The PRESTRATE question should be given the NEVERUPDATE characteristic so that it is never displayed to the interviewers and that it cannot be modified once prepopulated. A typical PRESTRATE definition would look as follows:
CALCTESTQUOTAS question
CallWeb CATI demands that quotas be defined. The basis for quota definition can simply be membership to the original strata defined in PRESTRATE but quotas can also be based on any other criterion or combination of criteria. CallWeb supports quotas for groups that are defined on-the-fly during the interview and based on responses to the questionnaire as well as prepopulated or calculated data. Refer to the CallWeb base documentation for a description of quota management.
The simplest CALCTESTQUOTAS question simply transfers PRESTRATE stratum membership over to the TESTQUOTAS as follows:
TESTQUOTAS question
As early as possible into the questionnaire, a question named TESTQUOTAS (of type QUOTA) must be inserted to test whether required completions have been reached for the stratum to which the current case belongs. Refer to the CallWeb base documentation for a description of quota management.
Actual quota groups must be defined as categories of this question.
In the following typical example, the project manager is striving for 40 completions in stratum 1, 25 in stratum 2 and 60 in stratum 3. Once a stratum has reached its quota, based on the presence of data in a sufficient number of cases in question QCOMPLETE, interviews are routed to question QUOTAFILLED and terminated.
Call results
Call results that will be offered to interviewers are defined using the cwcodescati.cgi utility which is accessible from the integrated module. Call results can also be copied from one project to the next by copy the file named project1.ccw to project2.ccw (make sure to give write access permissions to the world si that cwcodescati.cgi can modify this file).
There can be any number of result codes; each is defined, in cwcodescati.cgi, on the basis of the following characteristics:
Populate the data set
Before telephone interviewing can take place, the project data set must be prepopulated with at least the following information for each case:
During prepopulation, the offset between the time zone of each number (based on area code) and GMT is calculated and stored in the data file. Therefore, the GMT offset of each area code used in a project must be defined in the CallWeb installation file.
Additional fields may be required on a project by project basis, such as a contact name or a substitute telephone number. Such additional information would be prepopulated into separate questions which would be given the INFOCATI characteristic so that they are displayed to the interviewer in the case management interface.
Data prepopulation is documented in the main CallWeb documentation.
Control data collection
The cwsuper.cgi interface gives access to field management actions for each project that is defined as "active" in BASEprojets. The following paragraphs describe each column of cwsuper.cgi interface.
Define or stop updatesThis column may contain an open folder icon or a skull icon. The open folder icon indicates that there is no update planned for the project; clicking on this icon brings up the update planning interface (cwsuperpro.cgi). The skull icon indicates that there is an update planned for the project; clicking on this icon stops the automatic update and brings up the update planning interface.
Most recent updateThis column indicates when then most recent project update has taken place — as long as a call queue exists for the project.
Next updateThis column documents in how many minutes the next project update will take place.
Additions with the most recent updateThis column informs about the number of telephone numbers which were added to the call queue at the last project update (e.g., new numbers, appointments, numbers brought back after a pause).
Numbers available to interviewersThis column contains the number of telephone numbers currently available for interviewers to use (the call queue). Note that numbers in time zones which are currently closed (because of the project start and end times) are included in this total.
Number of interviewersThis column reports on the number of open BASEtemps slips for each project. A value followed by a question mark refers to time slips opened before the current day. The numbers are hyperlinked to a cwnav.cgi list of the corresponding time slips.
Completes according to cwstatsThis column reports the numbers of completed questionnaires according to the cwstats data base which is updated every hour.
Condition of the fieldworkthis icon produces a large table describing the state of the fieldwork based on the last call result; the table comprises three parts:
State of the call queueThis icon displays a table describing the state of call queue: it offers a breakdown of numbers by strata and last call result. The page also reports the parameters of every update performed since the last reinitialization of the call queue. A red (rather than yellow) icon indicates that the most recent update encountered some constraints (e.g., closed strata, strate where the maximum number of allowed numbers is reached).
Case groupsThis icons brings up a listing of existing groups of cases that were predefined for use by the interviewers in selecting the cases they will be provided from the call queue.
Cases by resultsThis icon calls cwfreq.cgi and automatically builds a table according to call results and strata; each combination of a call result and a stratum is hyperlinked to the underlying list in the cwnav.cgi program.
ProductivityThe Gantt chart icon opens cwprod.cgi with a selection for the current project. Productivity stats are available from there.
Entry in BASEprojetsThis icon opens the BASEprojets entry for a given project.
UtilitiesThis icon brings up a cw.cgi menu with the project already selected.
Automatic quota closure
If the required conditions are fulfilled, CallWeb automatically closes PRESTRATE-based quotas as soon as the first interviewer reaches the quota-filled situation. Thereafter, no more cases from this newly-closed quota is dispatched or added to the call queue. The conditions that are necessary for this automation are as follows:
To re-open a quota that was closed after being reached, perform the following actions:
Manage telephone numbers
In a CATI context, managing telephone numbers means identifying which telephone numbers must be made available to interviewers, and repeating this identification so as to make the most efficient use of the sample. In CallWeb CATI, this is accomplished in supervision modules which are entered via the cwsuper.cgi program. Any number of projects may by managed from one supervision workstation.
Principles
The principles of telephone number management implemented in CallWeb are as follows:
Supervision interface
From the cwsuper.cgi module, the supervisor selects one project to manage. Then, a menu such as the following is displayed.
This main supervision and field management menu is comprised of three areas:
Attribution of telephone numbers
There are two ways to attribute telephone numbers to interviewers: manually via the Search function or automatically. In the manual Search, the interviewer is provided with a list of numbers to call and they use them to query the data base. This is an adequate approach to focus specifically on certain cases (say, in-bound calls) but it is not an efficient way to manage the call queue or interviewer time. For this, use the automated attribution of cases.
When numbers are attributed automatically (by the interviewer simply requesting a New number), CallWeb scans the call queue and identifies the next priority number. The following logic is applied:
Analyse productivity
cwprod.cgi, the productivity reporting module, works hand in hand with cwappels.pl to create and to exploit a data base of time spent on projects and results obtained.
Sources of information
cwappels.pl draws information from two sources to create the BASEprod data base (a CallWeb-format data base):
cwappels.cgi matches time transactions to call results at the interviewer + project + time level and stores the resulting data in BASEprod; it is normally called once a day, at night. Once a time transaction from BASEtemps has been processed, it is not re-analyzed. Therefore, modifications to time transactions after cwappels.cgi has processed them are disallowed.
Producing reports
The cwprod.cgi module queries the BASEprod data base according to projects or interviewers or dates or shifts and returns a number of self-explanatory indicators of performance (e.g., the number of completed questionnaires per hour).
One final composite index requires some explanation. Labelled "index", it accounts simultaneously for completes and refusals while recognizing that there are circumstances when completes and refusals have differing values. Specifically, the default index equation is as follows:
This default index can be redefined by entering a new calculation in the productivity_index installation option, which affects all projects, or by adding a new calculation as part of a # Productivity index pound instruction, on a project by project basis.
Interviewing — Introduction
Interviewers are responsible for the selection of the types of calls they will make during their shift. CallWeb CATI then feeds them one number after the other, as soon as they have provided a call result code for the number they were provided. Much of the interviewer work is done from a single screenful of information.
Log-in procedure
Interviewers must log into the CallWeb CATI system every time they start their shift and every time they need to change project or change the nature of the telephone numbers they want to handle within a project.
Interviewers enter the CallWeb CATI system using the int1acces.cgi script. They enter their user name and password as they were supplied in BASEpasse by the supervisor. They also specify in which language they want the interface to appear to them — the system default language is pre-selected.
Validation of the log-in is done immediately.
If they select the demonstration mode, interviewers are taken through exactly the same steps as they would in real mode (project selection, case selection, etc.) except none of their selections are saved, either in the call history or in the questionnaire itself.
Selecting a project, strata and types of calls
Once logged-in, the interviewer is shown the list of all active projects. He/she clicks on the button corresponding to the project he/she was attributed for the shift.
The interviewer then needs to identify the cases he/she was told to work on. The case selection is always based on the stratum membership and on call dispositions, at a minimum. It is possible to add a third selection criterion, as is displayed below and as is explained on the next page.
If call groups are defined for the project, the interviewer case selection windows includes a radio group (as in the exemple above) which includes each of the groups defined as well as the capacity to make an ad hoc selection. Interviewers are expected to make the selection which corresponds to the instructions they were given.
The system asks for confirmation and validates these entries before proceeding with the interviewing process.
The selection made by the interviewer on this menu is stored in the BASEtemps data base for eventual audit.
Selecting cases according to a third criterion
The previous page explained how interviewers are called upon to select a project to work on, and cases to access according to the project strata and the most recent call disposition.
Interviewers can also be offered a third criterion (beyond the strata and call dispositions) to select cases within a project. Interviewers could then select cases on the basis of, say, the respondent language or gender or any other (known or yet unknown) characteristic.
In order to activate this feature, the following steps must be taken:
Once this feature is activated, the following happens:
Automatic number, particular number or terminate
The interviewer now faces a decision as to the next task:
Managing a call
Whether the interviewer has requested an automatic number or a specific case, a menu resembling the one below is displayed.
This menu is made up of four areas:
A contact script (text) may be supplied in HTML format in file consigne.html in the CallWeb project directory. If such a file exists, it is hyperlinked to a button displayed in the middle left portion of the menu.
A better solution for contact scripts, though, is to use a CONTACT-type question. Such a question is not displayed as part of the normal questionnaire operation. If present in the questionnaire script, a button is added to the interviewer case management interface (labelled "contact script"). Clicking it pops a new window with the CONTACT question text. This text may contain recalled values (e.g., the name of the person to interview or any other information available in the data record).
If a # Historique = oui or # Historique = yes pound instruction exists in the questionnaire, the entire call history is hyperlinked to a button displayed in the middle left portion of the menu. Since this is an interviewer productivity killer, it is customarily not used. It is possible to display the call history without identification of the interviewers who logged the previous calls using this variation on this pound instructions: # Historique = oui, sans interviewer or # Historique = oui, without interviewer.
Time keeping
Interviewers enter the CallWeb CATI time reporting module using the int4temps.cgi script. They enter a start date and an end date for the report to be produced as well a their user name and password as they were supplied in BASEpasse by the supervisor.
CallWeb CATI then produces a daily report of hours logged for the requested period.
Appendix A
CATI Project initiation checklist
The following checklist is offered as a guide to control that all steps of the project installation process have been completed.
Appendix B
Recent changes and additions
Appendix C
Time data in CallWeb
There are two types of time data in CallWeb:
Appendix D
Audio-visual supervision
Technical requirements. Audio supervision is accomplished via the telephone system. Using the Asterisk PBX system, CallWeb offers a way to easily connect with an on-going call. Video supervision is implemented using a VNC server installed on each interviewer station and a VNC client running on the supervisor station. TightVNC is a free implementation of the VNC protocol which has performed well in various installations. Refer to the TightVNC documentation for installation instructions relative to that software. The following assume the pre-installation of the Asterisk PBX and of TightVNC.
Operations. cwphone.cgi lists the phones lines in use and matches them with interviewer station IP addresses, interviewer name and project. The duration of the on-going call is also indicated. Once the supervisor station phone extension is supplied to cwphone.cgi, magnifying glass links are added to the page; clicking on one of them connects the supervisor phone to the on-going interview and pops a window showing the current state of the interviewer display.
Accessing recordings. If interview recording is activated in BASEprojets, corresponding .wav and .mp3 files are accessible from cwnav.cgi. Usual cwnav.cgi case selection tools can be used to focus on the cases of interest (e.g. completed interviews or cases handled by a certain interviewer). Selecting the "Display .wav/.mp3 files" checkbox adds a .wav/.mp3 column in the case-by-case output. Sound files are hyperlinked such that left-clicking opens the file with the sound application available on the local computer; it is also possible to save a local copy of the sound file by selecting the "Save target as" (or equivalent) command in the right-click context menu.
To the extent possible, sound file names give some indication about the content of the file. The name displayed starts with the date and time of the call, followed by the call sequence number (1 for the first call in a case), the language of the call (if available) and an indication of whether the call was a completed interview (CO) or not (UN). For example, in the image to the right, the last case contains a call made on October 14, 2009 at 8:22PM; it was the first call to the case and it led to a completed interview in French.
The real name of the file is longer than that displayed in cwnav.cgi. The underlying complete file name is prefixed with the project name and the case _telkey.
Installation. Assuming Asterisk and TightVNC are up and running, the rest of the installation required is as follows.
Appendix E
Playing sound files during an interview
Technical requirements. Playing sound files during an interview is accomplished via the telephone system. Using the Asterisk PBX system, CallWeb offers a way to easily start and stop playing such sound files. Sound files must be saved on .gsm format. Under Linux, several sound file editors can save files in this format. Under Windows, WavPad does it too.
Operations. Start playing a sound file by inserting a CALCUL question in the questionnaire and performing the following calculation: PLAY = start_wav("sound_file") where "sound_file" is the name of the file on the Asterisk server, typically custom/some_name without extension (since Asterisk will select the most relevant file format). The sound file will stop playing at the end of the file; it can be stopped using another CALCUL: STOP = stop_wav().
Installation. Assuming Asterisk is up and running, the rest of the installation required is as follows.
Appendix F
Batch dialer installation
Technical requirements. The batch dialer requires an Asterisk 1.6 server. The CallWeb server needs to be able to connect to the MySQL server on the Asterisk machine.
Operations. Batch dialing is requested in BASEprojets by specifying the number of telephone numbers to dial in a batch (setting the batch size to 1 deactivates the batch dialer). When the interviewer requests the next case, that many calls are issued. Non-human contacts are identified and stored in the call historically automatically. Human calls are passed on to the interiewer. If more than one human contact are identified in a batch, the excessive ones are dropped and entered an "extra" result is stored in the call history.
Installation