eXosip: The eXtended osip library

March 23 , 2022
Introduction to the GNU oSIP library and eXosip
oSIP is an LGPL implementation of SIP. It's stable, portable, flexible and compliant! -may be more-! It is used mostly with eXosip2 stack (GPL) which provides simpler API for User-Agent implementation.

SIP stands for the Session Initiation Protocol and is described by the rfc3261 (wich deprecates rfc2543). This library aims to provide multimedia and telecom software developers an easy and powerful interface to initiate and control SIP based sessions in their applications. SIP is a open standard replacement from IETF for H323.


eXosip: This is a library based on oSIP. It contains a high layer easier to use for implementing SIP End point.e. Tonmind IP Speaker, IP audio devices develop SIP protocol based on eXosip framework. They can be compatible to VoIP, SIP devices (IPPBX, IP Phone) due to SIP prototol.

eXosip is a library that hides the complexity of using the SIP protocol for mutlimedia session establishement. This protocol is mainly to be used by VoIP telephony applications (endpoints or conference server) but might be also usefull for any application that wish to establish sessions like multiplayer games.

Tonmind Audio Mangement Software Tonmind PA System Lite and Tonmind PA System Pro also developed SIP protocol based on eXosip framework. Due to SIP protocol, they can be compatible to SIP devices (IP Speaker, IP Phone).


Examples of compiling eXosip, osip, and UAC and UAS under Windows
The first step is to download osip and eXosip
osip:    http://ftp.twaren.net/Unix/NonGNU//osip/libosip2-3.6.0.tar.gz
eXosip: http://download.savannah.gnu.org/releases/exosip/libeXosip2-3.6. 0.tar.gz The
second step, unzip and compile osip:

1. Enter the libosip2-3.6.0\platform\vsnet directory, directly open the osip.sln file with VS2010, the project is automatically converted

2. Change libosip2-3.6.0\platform\vsnet\osip2.def file, append osip_transaction_set_naptr_record @138


3. Change libosip2-3.6.0\platform\vsnet\osipparser2.def file, append at the end of the file
osip_realloc @416
osip_strcasestr @417
__osip_uri_escape_userinfo @418

4. First compile osipparser2, then compile osip2, and finally generate library files under libosip2-3.6.0\platform\vsnet\Debug DLL:
osip2.lib
osip2.dll
osipparser2.lib
osipparser2.dll

unzip, compile eXosip into libeXosip2-3.6.0\platform\vsnet directory, open the eXosip.sln file directly with VS2010, the project is automatically converted:

1. convert osip2.lib, osip2 .dll, osipparser2.lib, osipparser2.dll copied to the Debug directory 2.C
/C ++-> preprocessor-> preprocessor definition: delete HAVE_OPENSSL_SSL_H
3.C/C ++-> general- > additional inclusion Directory: include the osip header file libosip2-3.6.0\include
4. Compile and generate eXosip.lib
The fourth step is to create a new UAC example project

1. Linker-> Input-> Additional Dependencies: Add static library reference: Dnsapi.lib; Iphlpapi.lib; Ws2_32.lib; osip2.lib; osipparser2.lib; exosip. lib;

2.C/C ++-> General-> additional include directory: include the osip and eXosip header files libosip2-3.6.0\include, libeXosip2-3.6.0\include

3. Linker-> General-> Additional library directory: include osip and eXosip libraries, libeXosip2-3.6.0\platform\vsnet\Debug

4. Compile UAC code.


In conclusion, eXosip plays an important role in developing Tonmind IP PA System products. oSIP is opensource SIP library, eXosip is open framwork  of extended SIP protocol based on oSIP. Tonmind SIP Speaker, PA System software develop SIP protocol based on eXosip.



Leave A Message
Leave A Message
If you are interested in our products and want to know more details,please leave a message here,we will reply you as soon as we can.

Home

Products

skype

whatsapp