opensips  2.4.3
About: OpenSIPS is a multi-functional, multi-purpose signaling SIP Server (Session Initiation Protocol). It can act as SIP Router/Switch, SIP Registrar, Application Server, Redirect Server, Load Balancer / Dispatcher, Back-to-Back User Agent, Presence Server, IM Server, Session Border Controller, SIP Front-End, NAT traversal Server, IP Gateway (SMS, XMPP) and others.
  Fossies Dox: opensips-2.4.3.tar.gz  ("inofficial" and yet experimental doxygen-generated source code documentation)  

Developer documentation

Introduction

This is the OpenSIPS developer documentation. At the moment most information here is autogenerated from the sources. Additional content will be added over time, any help is of course welcome.

This page tries to give some starting points for developers that want to understand the server structure and create their own extensions or modules.

Database interface

The server uses a own database interface to hide the differences of the supported db engines. Every module that implementst this API can use all database drivers, as long as they implement the needed capabilities.

The file db.h defines the database API.

Server start

The implementation of the server start process can be found in the main.c file.

Important data structures

hdr_field - represents a SIP header
str - contains text variables

Todo:
incomplete