SIP daemon for Lantiq devices with owsip

The aim of this project is to provide a working SIP daemon for Lantiq SoCs with MIPS CPU.

owsip utilizes available FXS hardware ports for making calls.

  • fails to work on units with more than 32MiB RAM
  • only the primary voice channel works
  • handling for incoming calls, while making calls does not exist
  • missing answering machine
  • missing fax
  • missing srtp/ssl login
  • missing kpi - kernel acceleration

Once owsip is only and registered you can start to make and answer calls. SIP can dial landline and sip numbers. Currently a number dialed on a key pad is interpreted as a landline. If you want to call a sip account, you need to add a contact entry for this. To dial a contact, simply press the “*” key followed by the “code” sequence. Note that owsip can do keypad letter → number conversion (for example → 3926753).

The “#” key is also mapped to handle dial backends, however “contact” is the only backend we currently have. it is mapped to “#1code”.

Name Type Required Default Description
name string yes owsip the daemon announces this name
backend string yes ltq_tapi tell the daemon which backend to use
log_level int yes 3 verbosity
interface string yes nas0 bound to this interface, if unsure use nas0
local_port int yes 5060 define port for SIP
rtp_port int yes 4000 define port for RTP
outbound string no (none) outbound proxy server, define like <sip:192.168.1.1:9060;lr;transport=udp>
cid string no (none) enable support for CID. Possible valued: telecordia, etsi_fsk, etsi_dtmf, sin, ntt, kpn_dtmf and kpn_dtmf_fsk
locale string no (none) currently supporting only germany and croatia
revert int no 0 switch FXS port0 ↔ port1 (work around 2nd port not working)

This section describes our STUN server.

Name Type Required Default Description
host string no (none) STUN host
port int no (none) STUN port

This section describes our SIP credentials/server.

Name Type Required Default Description
realm string yes (none) SIP realm to connect to
username string yes (none) SIP username
password string yes (none) SIP password
disabled string no 0 by default accounts are enabled
port int yes -1 bind account to a specific port
default int no 0 use account as default one

This section describes a physical FXS port.

Name Type Required Default Description
id int yes 0 the physical port described by the section
noring int no 0 if set to 1 the phone will never ring
nodial int no 0 if set to 1 then port may not dial numbers
led string no (none) set to sysfs path of the led matching the port

This section describes a contact for short dial.

Name Type Required Default Description
desc string yes (none) the name of the contact
code string yes (none) the short dial code to match (0-9a-zA-Z)
dial string yes (none) the actual number to dial
type string yes (none) sip/realm
account string no (none) the account to use when making the call

This section describes a relay on the pcb that activates the fxs port

Name Type Required Default Description
gpio int yes (none) gpio to use
value int yes (none) value to set gpio to

The owsip configuration file is located at /etc/conf/telephony. This is the default configuration:

config general
        option 'name'           'owsip'
        option 'backend'        'ltq_tapi'
        option 'ossdev'         0
        option 'log_level'      3
        option 'interface'      'nas0'
        option 'local_port'     5060
        option 'rtp_port'       4000
        option 'locale'         'germany'
        option 'revert'         0

config account 'fxs1'
        option 'realm'          'myrealm1.com'
        option 'username'       'myuser1'
        option 'password'       'mypass1'
        option 'disabled'       1

config account 'fxs2'
        option 'realm'          'myrealm2.com'
        option 'username'       'myuser2'
        option 'password'       'mypass2'
        option 'disabled'       1

config stun
        option 'host'           'stun.myrealm.com'
        option 'port'           '3478'

config 'relay' 'relay_31'
        option 'gpio'           '31'
        option 'value'          '1'

config 'port' 'port0'
        option 'id'             '0'
        option 'led'            'soc:green:fxs1'
        option 'noring'         '0'
        option 'nodial'         '0'

config 'contact'
        option 'desc'           'example contact description'
        option 'code'           'example'
        option 'dial'           '0123456789'
        option 'type'           'realm'
This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • Last modified: 2018/04/13 14:34
  • by tmomas