Recording face-to-face interviews

Problem

You want to record face-to-face interviews using the computer microphone.

Solution

Create a CALCUL question to start and stop the recording using the record_wav function.

Discussion

To record face-to-face interviews (typically conducted using laptops or netbooks), the CallWeb computer needs:

  • a working microphone;
  • a working copy of the rec Linux program (which can be installed using any one of the Linux package managers);
  • the assurance that recording actually works from the terminal command line (which can be obtained by issuing a command such as rec -d test.wav at the command line to confirm that recording takes place).

In CallWeb, recording is initiated by a CALCUL question calling upon the record_wav function as in:

    AFILENAME = record_wav("start")

This stops any current recording, starts the recording and places the name of the recording file in AFILENAME. A second CALCUL question is used to stop recording. It also uses the record_wav function:

    PROCESSES = record_wav("stop")

The result of this call is to stop the recording and to return, in PROCESSES, the number of processes stopped.

The real difficulty in using this functionality is to give the Apache user the permission to start and stop recordings. This is done by adding lines such as the following ones to the /etc/sudoers file (assuming Apache runs under the "apache" user and that "someuser" has access to the rec and kill commands):

    apache ALL=(someuser) NOPASSWD:/usr/bin/rec
    apache ALL=(someuser) NOPASSWD:/bin/kill
    Defaults:apache !requiretty

Finally, add a line such as this one to the CallWeb usagerXXX.conf file; it contains the Linux prefix instructions necessary for the Apache user to issue the rec and kill commands):

    command_prefix_for_record_wav = sudo -u someuser

Recording face-to-face interviews

Problem

You want to record face-to-face interviews using the computer microphone.

Solution

Create a CALCUL question to start and stop the recording using the record_wav function.

Discussion

To record face-to-face interviews (typically conducted using laptops or netbooks), the CallWeb computer needs:

  • a working microphone;
  • a working copy of the rec Linux program (which can be installed using any one of the Linux package managers);
  • the assurance that recording actually works from the terminal command line (which can be obtained by issuing a command such as rec -d test.wav at the command line to confirm that recording takes place).

In CallWeb, recording is initiated by a CALCUL question calling upon the record_wav function as in:

    AFILENAME = record_wav("start")

This stops any current recording, starts the recording and places the name of the recording file in AFILENAME. A second CALCUL question is used to stop recording. It also uses the record_wav function:

    PROCESSES = record_wav("stop")

The result of this call is to stop the recording and to return, in PROCESSES, the number of processes stopped.

The real difficulty in using this functionality is to give the Apache user the permission to start and stop recordings. This is done by adding lines such as the following ones to the /etc/sudoers file (assuming Apache runs under the "apache" user and that "someuser" has access to the rec and kill commands):

    apache ALL=(someuser) NOPASSWD:/usr/bin/rec
    apache ALL=(someuser) NOPASSWD:/bin/kill
    Defaults:apache !requiretty

Finally, add a line such as this one to the CallWeb usagerXXX.conf file; it contains the Linux prefix instructions necessary for the Apache user to issue the rec and kill commands):

    command_prefix_for_record_wav = sudo -u someuser