How CapiSuite works, how it is configured and started

First, let's start with a short introduction what CapiSuite actually is and how it works. After that, the configuration and startup of CapiSuite will be explained in short.

How does CapiSuite work?

CapiSuite is a daemon (program which runs in the background) whos main task is to sit around and wait until a call is incoming. If this happens it will start a special Python script - the incoming script - and do what this script tells it, for example record a voice call to implement an answering machine.

To also be able to issue outgoing calls, another script is called at regular intervals - the idle script. It can check any resource to get instructions for placing a call - one can for example imagine to check a special mail account or watch a special directory where tasks are placed by the user.

So all user-visible actions and the behaviour of CapiSuite are defined in these two scripts.

You'll need to do two things now:

  • provide scripts by either

    • using and configuring the default scripts distributed with CapiSuite or

    • writing your own scripts (perhaps by using the default ones as templates)

  • configure CapiSuite itself and tell it where to find the two scripts

This page concentrates on the general configuration of CapiSuite - that consists mainly of options telling it which scripts to use and where and how to log its activities. After that, some details about starting CapiSuite are described.

The next pages will then introduce the standard scripts you already installed along with CapiSuite and tell you how to use the answering maching and fax functions provided by them.

The details on how to write your own scripts are covered in another part of the documentation (Chapter 2, Users Guide).

Configuration of CapiSuite

CapiSuite uses a general configuration file for the core functions. This file should be located in /etc/capisuite/capisuite.conf or /usr/local/etc/capisuite/capisuite.conf depending on how you installed CapiSuite. It's described in detail in capisuite.conf(5). Most options are set to reasonable defaults already for using the standard scripts - so if you want you can also skip this section.

Startup of CapiSuite

As CapiSuite is a daemon, it is normally activated during the system startup process. Just add a call to

/path/to/capisuite -d

in your startup scripts. In LSB conforming Linux distributions, you'll find the startup scripts in /etc/init.d. For detailled documentation how to add a service there please refer to the documentation of your distribution. There's an example startup script written for SUSE Linux included in the source distribution (see rc.capisuite) which should (hopefully) work with other LSB compliant distributions, too. If you need to modify it, I'll welcome your feedback and happily add instructions for other distributions here.

If you use the right RPM packages of CapiSuite, the necessary scripts should already be included. For activating them, please use your distributors config tool. If you use the RPM distributed with SUSE Linux and want to stay with the default scripts, everything should work "out of the box". As soon as you have configured the default scripts, simply run rccapisuite restart.

For debug purposes, you can also start CapiSuite manually at any time by just calling

/path/to/capisuite

There are also some other commandline options available:

commandline options of CapiSuite

--help, -h

show a short summary of commandline options

--config=file, -c file

use a custom configuration file instead of /etc/capisuite/capisuite.conf or /usr/local/etc/capisuite/capisuite.conf.

--daemon, -d

run as daemon (used in your startup script, see above)

CapiSuite can run as any user you want theoretically. It only needs read/write permissions to /dev/capi20. If you use the default scripts, however, CapiSuite must run as root.