Which OS/software is required?
What is the minimum hardware configuration?
I am getting errors when trying to convert the sound files.
The Perl Tk/Tk::JPEG installation is failing during the tests.
I get a 'this function has not been enabled' error when trying to transfer a call to VOCP from the Call Center.
Can I receive fax or data connections?
Can I get commercial support of VOCP?
I've answered a call but it is an incoming fax.
Can VOCP behave differently based on the line on which a call was received?
I'm trying run boxconf but am getting Xlib: connection refused errors.
Can I transfer a call in progress to VOCP?
Box passwords aren't being read or recognized from the boxes.conf.shadow file.
I've received a fax but I can't see it with VOCPhax.
Can I forward pager/message notifications to a "real" pager?
Which modems are compatible?
How can I get my voice modem recognized by Vgetty?
Voice Messages are being cut short, what can I do?
Where can I find help?
I'm having problem XXX with VOCP but I can't figure it out.
I am getting Internal Server Errors while trying to run VOCPweb.
Why isn't the vocpweb CGI running? I only see the VOCPweb code.
Why can't I delete messages through the web interface?
Install : Which OS/software is required?
A VOCP is known to run under linux and other Unices - if your platform can run vgetty and Perl you should be all set. Some of the additional functionality (like Text-To-Speech, ogg/mp3 encoding, etc.) requires additional software - see the appropriate sections for details.
Install : What is the minimum hardware configuration?
A The hardest part of the process on the machine is interpreting the perl code when a call is received - on a really slow machine with little ram this could take a while. With VOCP 0.9.0's new architecture, the price of all the new features and flexibility is extra compile time. While on my 1.2GHz athlon it's relatively quick:
# time perl -c vocp.pl
On an older PII 266 MHz I suffer from:
# time perl -c vocp.pl
We are currently looking into solutions to this issue which will boost performance on many levels.
Install : I am getting errors when trying to convert the sound files.
A If your are getting errors, say with a Rockwell modem, such as
/usr/bin/pvftormd: Unsupported sample speed (8000)
/usr/bin/pvftormd: Rockwell modems only support 7200 samples
You can use the included modify_sample_rate.pl to modify the default 8000Hz to something acceptable. To use the program, unzip it in the vocp-X.X.X directory and run it with:
perl modify_sample_rate.pl XXXX
where XXXX is replaced by the new sample rate (e.g. 7200).
Install : The Perl Tk/Tk::JPEG installation is failing during the tests.
A The Perl Tk module (which is used by many of the VOCP GUIs) installation process includes a number of tests. These tests will only function if an X server is running and the install process has the right to use it for display - if both these conditions are not met, the test will fail and the installation will not proceed.
The simplest fix to this is to log in as root, startx and then perform the Perl Tk install, either through the install_vocp.pl program or manually using
perl -MCPAN -e 'install Tk'
It is also possible to use the xhost command prior to the install, like so:
$ xhost + localhost
# perl -MCPAN -e 'install Tk'
Install : I get a 'this function has not been enabled' error when trying to transfer a call to VOCP from the Call Center.
A Because the Call Center must send a signal to the vgetty process, the xfer_to_vocp program must run setuid root (as the root user). This has certain security implications and is not enabled by default. To enable call in progress transfers to VOCP, you must manually change the mode of the helper program. To do so, use:
# chmod 4755 /usr/local/vocp/bin/xfer_to_vocp
as the root user.
Operation : Can I receive fax or data connections?
A When vgetty detects a fax or data connection, vocp will exit with the appropriate status code. The rest is up to how you've set up mgetty+sendfax, see their documentation for details ('info mgetty'). In order to facilitate data connections, VOCP is set up such that if you set your modem to dial into the VOCP machine using a telephone number like:
and you get the timing (number of commas) right so that the DTMF 'D' tone is played during the greeting message, VOCP will exit with the code for data connections. You need to make sure mgetty is setup to accept these connections.
Operation : Can I get commercial support of VOCP?
A Yes. The creators of VOCP do offer commercial support of installation, configuration, maintenance of and modifications to the VOCP system. Use the Request assistance form and let us know how we may be of service.
Operation : I've answered a call but it is an incoming fax.
A You may use the VOCP Call Center to transfer a call in progress to VOCP. Click the icon displaying a telephone that is off hook and VOCP will act as if it had just answered an incoming call. If you wish, you may create a receivefax box and set a branch from the root box to easily jump into fax reception mode (see the example boxes.conf included with VOCP).
Operation : Can VOCP behave differently based on the line on which a call was received?
A Yes. If you have multiple incoming lines (multiple modems or a multiport modem), you can configure VOCP to begin the call in a box other that the default root box (001) by using the rootbox_DEVICE configuration option in the vocp.conf file. For example, to have calls coming in on line ttyS3 start in box 300, you would add the line:
Operation : I'm trying run boxconf but am getting Xlib: connection refused errors.
A If, while trying to start boxconf or another GUI, you receive errors like:
Xlib: connection to "host.domain:1.0" refused by server
Xlib: Client is not authorized to connect to Server
it is because your local X server is refusing connections from the program (or the user it is running as).
Since the program needs to be run as root, you may be running it as a user other than that as which you logged in. If you are doing
$ sudo /usr/local/vocp/bin/boxconf.pl or
this may be the problem. For local operation, do:
$ xhost + localhost
$ su (not su -).
For remote operation, running the program on remotehost.com and displaying the GUI locally, you can try:
$ xhost + remotehost.com
$ ssh -C email@example.com
Operation : Can I transfer a call in progress to VOCP?
A Yes. You may now use the call center to transfer a call in progress (one for which you have already picked up the line) to the voice messaging system. Simply launch the VOCP Call Center and click the icon displaying a telephone that is off hook and VOCP will act as if it had just answered an incoming call.
Operation : Box passwords aren't being read or recognized from the boxes.conf.shadow file.
A When using xVOCP or VOCPweb, the user who is running the program and, in effect the program itself, may not have the priveleges required to read the password file. To alleviate this problem without comprimising security, VOCP uses the pwcheck program which runs with special priveleges and authenticates users.
You must ensure that the boxes.conf.shadow and pwcheck files have the correct settings. Perform the following operations (replacing 'vocp' with the actual group you created during the installation):
# chown root:vocp /etc/mgetty+sendfax/vocp/boxes.conf.shadow
# chmod 0640 /etc/mgetty+sendfax/vocp/boxes.conf.shadow
# chown root:vocp /usr/local/vocp/bin/pwcheck
# chmod 4755 /usr/local/vocp/bin/pwcheck
These operations will render the shadow file legible to members of the vocp group and ensure that pwcheck is running setgid to the vocp group - thus programs that use the pwcheck method will be able to authenticate users correctly.
Operation : I've received a fax but I can't see it with VOCPhax.
A Start by checking that the fax has really been saved using ls -l /var/spool/fax/incoming. If there are indeed files present, this is probably a permission issue - you don't have the right to read the files. Create a specific group for people who are allowed to view faxes, select a single user who can view them or set the faxes legible by all by using the
fax-owner parameters in the mgetty.config file.
Operation : Can I forward pager/message notifications to a "real" pager?
A Yes. This is possible but at the moment it depends on your pager. To do so, you need to install QuickPage. You may then integrate qpage with your email system or use fetchmail in a manner similar to that described for converting email to voicemail.
Vgetty : Which modems are compatible?
A A (partial) list of compatible modems can be found in the install section of the modem page. If your modem is not on the list, all hope in not lost, as it may be possible to work around this. Please see the Vgetty installation page, particularly the portion on using the vgetty force_detect patch included with VOCP.
Vgetty : How can I get my voice modem recognized by Vgetty?
A If you have a voice modem and it is properly set up, you may be able to have it recognised by vgetty even if it does not work automatically at first. VOCP now includes a patch to vgetty which creates a new option for voice.conf: force_detect. Instructions for applying the patch are available in the Vgetty:Install section.
Vgetty : Voice Messages are being cut short, what can I do?
A There are a few parameters in vgetty's voice.conf that you can tweak to adjust for your particular modem and line. Of particular interest are the rec_silence_threshold and dtmf_threshold. Raise the silence threshold a bit (e.g. by 10) if the vgetty is detecting silence. If you are seeing entries concerning (non-existent) DTMF key presses, up the dtmf_threshold instead. If neither work, raise the log output level and attempt to determine what is triggering the cut off.
VOCP : Where can I find help?
A There are a number of resources available. The first is obviously the VOCP website itself - make sure you have a good look around, most of the information you will need is here. There is also an official vocp-users mailing list. To subscribe, just fill out this form and reply to the confirmation email. You will be added to the list and will be able to exchange help and suggestions with other VOCP users and myself. VOCP announcements will also be made through this list. Finally, the friendly staff at Psychogenic.com is available if you need a specific enhancement to VOCP or would like to have a system installed and setup for you.
VOCP : I'm having problem XXX with VOCP but I can't figure it out.
A The first thing to do is ensure you've consulted the relevant sections of the website, the FAQ and the mailing list archives. If that doesn't help, begin by attempting to debug the program like so:
- Edit vgetty's voice.conf and set
- Edit vocp.pl and set
$Debug = 2;
- Clear the existing log files
# echo "" > /var/log/vocp.log
# echo "" > /var/log/vgetty.ttySX (replacing X appropriately)
- Restart vgetty with killall vgetty
- Call in, reproduce the problem then consult vocp.log and vgetty.ttySX
- Reset the values of voice_log_level and $Debug or your log files will become enormous.
If you've figured out the nature of the problem, great. If not, join the mailing list and explain your troubles as clearly as possible.
VOCPweb : I am getting Internal Server Errors while trying to run VOCPweb.
A The first step is to take a look at the web servers error log file (usually /usr/local/apache/logs/error_log for Apache) and try to figure out what the problem is. Make sure that the vocpweb.cgi is executable (ls -l) and that the directory it is in is configured properly (see the VOCPweb installation instructions for details).
VOCPweb : Why isn't the vocpweb CGI running? I only see the VOCPweb code.
A This may be due to a number of reasons, here are a few suggestions...
Is the vocpweb.cgi file executable (mode 755)? Can you run it from the command line? Try this:
$ cd /path/to/vocpweb
You'll normally get a bunch of html (that of the login page). If it starts with something like:
Then the cgi is running fine.
Now make sure you are accessing the file through Apache (or another web server) and not simply through your browser. If you open Netscape and say File->Open Page->Open in Navigator and go and fetch the page of your hard drive, Netscape will just read the file - it will not be processed by Apache so the cgi will not be executed (just displayed as a text file).
You must use a URL (not a file path) to get apache going. Something like http://localhost/vocpweb/ will work. If you've given your computer a name and want to do something like http://deathstar/vocpweb/ the dns needs to resolve correctly.
Just make sure that you can resolve the domain name (try `ping deathstar` in this case). If you can't ping or traceroute to the host, you can add a line in /etc/hosts like
127.0.0.1 localhost localhost.localdomain deathstar
If it still does not work, check that the httpd.conf file knows that it should be treating .cgi files as executable CGI programs and that the ExecCGI option is on for this directory. This is indicated by a lines like:
AddHandler cgi-script .cgi
VOCPweb : Why can't I delete messages through the web interface?
A The message files are owned by the box owner and can not normally be deleted by the webserver process. In order to delete files through VOCPweb, it would need to run as that user or as root (setuid). This is possible but not recommended. See the VOCPweb security and installation pages for details.