SIP-Transport Integration

You need Apache OpenMeetings version 3.0 to apply this guide!

You need Asterisk version 11 to apply this guide!

Here is instruction how-to set up red5sip transport integration with OpenMeetings on Ubuntu 12.10.


Run the commands

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install build-essential linux-headers-`uname -r` libxml2-dev libncurses5-dev libsqlite3-dev sqlite3 openssl libssl-dev


ODBC Setup

Run the commands

sudo apt-get update
sudo apt-get install unixODBC unixODBC-dev libmyodbc

Set up Asterisk connector:

Modify file /etc/odbc.ini as follows: (replace USER, PASSWORD and Socket with values relative to your system)

Description = MySQL connection to 'openmeetings' database
Driver = MySQL
Database = openmeetings
Server = localhost
USER = root
Port = 3306
Socket = /var/run/mysqld/mysqld.sock

Modify file /etc/odbcinst.ini as follows: (replace the path to the *.so files below with the real paths on your system)
(The path below is for x32 server, x64 version is most probably located at /usr/lib/x86_64-linux-gnu/odbc)

Description = ODBC for MySQL
Driver = /usr/lib/i386-linux-gnu/odbc/
Setup = /usr/lib/i386-linux-gnu/odbc/
FileUsage = 1

Run the following command to ensure everything works as expected:

echo "select 1" | isql -v asterisk-connector


Building and setting up Asterisk

Run the commands

sudo mkdir /usr/src/asterisk && cd /usr/src/asterisk
sudo wget
sudo tar -xvzf asterisk-11.2.1.tar.gz
cd ./asterisk-11.2.1
sudo make clean
sudo ./configure
sudo make
sudo make install
sudo make samples
sudo make config
sudo service asterisk start


Configure Asterisk

Enable asterisk ODBC module:

Modify "[modules]" section of /etc/asterisk/modules.conf as follows:
Add/uncomment the following lines

preload =>
preload =>


Create/update "[asterisk]" section in /etc/asterisk/res_odbc.conf:

enabled => yes
dsn => asterisk-connector
pre-connect => yes


Modify /etc/asterisk/sip.conf
Add/uncomment the following line:


Increase maxexpiry value to 43200:


Add user for the "SIP Transport":



Add next lines into the /etc/asterisk/extconfig.conf:

sippeers => odbc,asterisk,sipusers


Modify /etc/asterisk/extensions.conf
Add the following section:

; *****************************************************
; The below dial plan is used to dial into a Openmeetings Conference room
; The first line DB_EXISTS(openmeetings/room/ does not belong to the openmeetings application but is the name of astDB containing the astDB family/key pair and values
; To Check if your astDB has been created do the following in a terminal window type the following:
; asterisk –rx “database show”
; If you do not receive an output with that resembles openmeetings/rooms/400## where “##” will equal the extension assigned when you created your room
; If you do not receive the above output check your parameters in /opt/red5/webapps/openmeetings/WEB-INF/classes/openmeetings-applicationContext.xml
; Go back into the Administrator Panel and remove the PIN number in each room save the record with no PIN number and then re-enter the pin again resave the record.
; *****************************************************

exten => _400X!,1,GotoIf($[${DB_EXISTS(openmeetings/rooms/${EXTEN})}]?ok:notavail)
exten => _400X!,n(ok),SET(PIN=${DB(openmeetings/rooms/${EXTEN})})
exten => _400X!,n,Set(CONFBRIDGE(user,template)=sip_user)
exten => _400X!,n,Set(CONFBRIDGE(user,pin)=${PIN})
exten => _400X!,n(ok),Confbridge(${EXTEN},default_bridge,)
exten => _400X!,n,Hangup
exten => _400X!,n(notavail),Answer()
exten => _400X!,n,Playback(invalid)
exten => _400X!,n,Hangup

exten => _400X!,1,Confbridge(${EXTEN},default_bridge,sip_user)
exten => _400X!,n,Hangup

; *****************************************************
; Extensions for outgoing calls from Openmeetings room.
; *****************************************************

exten => _400X!,1,GotoIf($[${DB_EXISTS(openmeetings/rooms/${EXTEN})}]?ok:notavail)
exten => _400X!,n(ok),Confbridge(${EXTEN},default_bridge,red5sip_user)
exten => _400X!,n(notavail),Hangup


Modify /etc/asterisk/confbridge.conf
Add/Modify the following secions:






To enable Asterisk Manager API modify /etc/asterisk/manager.conf
Add/Modify the following sections:

enabled = yes
webenabled = no
port = 5038
bindaddr =

secret = 12345
read = all
write = all


Update Openmeetings with creadentials for Asterisk manager. Modify /opt/red5/webapps/openmeetings/WEB-INF/classes/openmeetings-applicationContext.xml
find <bean id="sipDao" class=""> uncomment its parameters and set it to your custom values.

IMPORTANT: this step should be done BEFORE system install/restore otherwise all SIP related room information will be lost

Restart asterisk:

service asterisk restart


Setup red5sip transport

Download red5sip from, switch to the branch red5sip_3.0
switch to the branch red5sip_3.0

git clone
git checkout red5sip_3.0

Build with Apache Ant


Insert proper values to the /opt/red5sip/ # red5 server address
om.context=openmeetings # Openmeetings context 
red5.codec.rate=22 # should correlate with mic settings in public/config.xml
sip.obproxy= # asterisk adderss # sip phone number
sip.authid=red5sip_user # sip auth id
sip.secret=12345 # sip password
sip.realm=asterisk # sip realm
sip.proxy= # address of sip proxy
rooms.forceStart=no # TBD
rooms=1 # TBD (not in use)

Add red5sip to autostart:

sudo cp /opt/red5sip/red5sip /etc/init.d/
sudo chmod a+x /etc/init.d/red5sip
sudo update-rc.d red5sip defaults

Start openmeetings

service red5 start

Start red5sip

service red5sip start