Installation Guide

Requirements

You need

  • A timeslot larger than a few minutes ;-)
  • Linux configuration know how
  • Linux with current 2.4 or 2.6 kernel and development tools (gcc et. al)
  • A supported ISDN controller (see ISDN Controller Page)
  • A SIP User-Agent for testing (e.g. kphone)

    Setup Instructions

    Step 1: Download SER, the SIP EXpress Router

    You need SER, the SIP Express Router. You can generally use any version that is at least 0.8.12. Since some configuration options have changed and especially the way databases are handled varies from one SER version to another it is highly recommended to use the latest tested tarball provided on the download page.

    Step 2: Build and Install SER

    Unpack ser by running (as any user):

    tar -xvzf ser-0.8.13-dev-29_src.tar.gz

    Build SER and all default modules:

    cd ser-0.8.13-dev-29_src
    make all

    Become superuser and install SER:

    su

    (enter root password)

    make install

    Step 3: Download SEMS, the SIP EXpress Media Server

    SEMS includes the isdngw. You must use a recent version of SEMS, it is recommended to get the SEMS sources from CVS. If you don't want to use CVS for any reason, pick the latest tested tarball provided on the download page.

    To get SEMS from CVS, enter the following (as any user):

    export CVSROOT=:pserver:anonymous@cvs.sems.berlios.de:/cvsroot/sems
    cvs login

    (hit return if prompted for a password)

    cvs co answer_machine

    SEMS is now in the directory answer_machine (the name might be confusing, but it is legacy from the orgigin of SEMS as a pure SIP answering machine)

    If you use the tarball of SEMS, do the following to unpack:

    tar -xvzf sems-2004-05-08.tar.gz

    SEMS is now in the directory sems-2004-05-08

    Step 4: Build and Install SEMS

    Change to the SEMS directory:

    cd answer_machine

    (if you took SEMS directly from CVS)

    cd sems-2004-05-08

    (if you took SEMS from the provided tarball)

    If you want to use CAPI 2.0 drivers with the isdngw, i.e. you have a ISDN controller with CAPI support available, you have to manually edit the Makefile located in plug-in/isdngw/Makefile, and uncomment the following two lines:

    module_ldflags = -lcapi20
    module_cflags = -DUSE_CAPI20

    You also have to make shure, the libcapi headers are installed on your system. Install the required CAPI packages on your system (for Debian as an example you have to install the isdnactivecards package). You should find the following files on your system (most likely in the directory /usr/include):

    capi20.h
    capicmd.h
    capiutils.h

    To compile and install SEMS enter

    make
    su

    (enter password for root)

    make install

    Note: While compiling SEMS some errors may be shown. Errors that arise in SEMS extension modules like ivr and mp3 can be ignored, those modules require additional libraries to compile. If you want to use any of these modules refer to the README file in their directories.

    Step 5: Configure SER

    A working sample SER configuration file is included in the isdngw directory of sems (answer_machine/plug-in/isdngw/ser-isdngw.conf).
    You can also download the latest version from CVS.
    You might need to setup a few things in this file, detailed description is included as comments.
    Copy the ser-isdngw.conf file to /usr/local/etc/ser/ser.cfg (as user root)

    cp answer_machine/plug-in/isdngw/ser-isdngw.conf /usr/local/etc/ser/ser.cfg

    Use your favorite text editor to modify this file according to your needs. All possible setting are commented in the file.

    Step 6: Start SER

    To start SER enter as user root:

    /usr/local/sbin/ser

    Check the file /var/log/syslog for possible errors. On successful startup the following should be printed on the console after you started se:

    Listening on
     udp: 127.0.0.1 [127.0.0.1]:5060
     udp: 10.0.0.28 [10.0.0.28]:5060
     tcp: 127.0.0.1 [127.0.0.1]:5060
     tcp: 10.0.0.28 [10.0.0.28]:5060
    Aliases:
     tcp: hostname:5060
     tcp: hostname.domain.com:5060
     tcp: localhost:5060
     udp: hostname:5060
     udp: hostname.domain.com:5060

    Step 7: Configure SEMS and isdngw

    A sample sems configuration file has already been installed at /etc/sems/sems.conf. The isdngw has its own configuration file in plug-in/isdngw/isdngw.conf.sample, you can also download the latest version from CVS. Copy this file to /etc/sems/isdngw.conf (as user root):

    cp plug-in/isdngw/isdngw.conf.sample /etc/sems/isdngw.conf

    Add the following line to /etc/sems/sems.conf to reference this configuration:

    config.isdngw=/etc/sems/isdngw.conf

    You might want to edit /etc/sems/isdngw.conf according to your needs, all parameters are described in the sample configuration file. The default file should work for outbound calls (from SIP to PSTN) out-of-the-box, for inbound calls you need at least a valid setting for callerdomain and calleedomain. If you want to use CAPI you must enable it in this file, too.

    Step 8: Start SEMS

    To start SEMS enter as user root:

    /usr/local/sbin/sems

    Check the file /var/log/syslog for possible errors. On successful startup the following should be printed on the console after you started se:

    Configuration:

     configuration file: /etc/sems/sems.conf
     Ser's FIFO: /tmp/ser_fifo
     our FIFO: /tmp/am_fifo
     plug-in path: /usr/local/lib/sems/plug-in/
     daemon mode: 1
     local IP: 10.0.0.28

    Step 9: Test the PSTN Gateway

    Launch a SIP Client (e.g. kphone) and configure as follows (replace hostname with the name of your gateway machine):

    SIP Proxy Server: hostname
    Username: any or a telephone number to use for PSTN connections
    Registrar Server: hostname

    If you want to accept call from the PSTN at you SIP client, use the desired MSN as SIP username and register to the SER Server.

    If it does not work...

    Please refer to the troubleshooting page if you experience any problems. If you need help with your configuration see the support page for details.