<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.7.1 at 2016-09-23 
 | Rendered using Apache Maven Fluido Skin 1.5
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="author" content="Apache OpenMeetings Team" />
    <meta name="Date-Revision-yyyymmdd" content="20160923" />
    <meta http-equiv="Content-Language" content="en" />
    <title>Apache OpenMeetings Project &#x2013; SIP-Transport Integration</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.5.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />

      
    <script type="text/javascript" src="./js/apache-maven-fluido-1.5.min.js"></script>

          <script type="text/javascript" src="http://openmeetings.apache.org/js/site.js"></script>
                      </head>
        <body class="topBarDisabled">
          
                
                    
    
        <div class="container-fluid">
          <div id="banner">
        <div class="pull-left">
                                                  <a href="index.html" id="bannerLeft">
                                                                                                <img src="images/logo.png"  alt="Apache OpenMeetings"/>
                </a>
                      </div>
        <div class="pull-right">                  <a href="http://apache.org" id="bannerRight">
                                                                                        <img src="http://apache.org/img/asf_logo.png"  alt="Apache"/>
                </a>
      </div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
              
                  <li id="publishDate">Last Published: 2016-09-23
                   </li>
                      
              
      
                                    
    <li class="pull-right">
        <span class="divider">|</span>
                      <a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS" class="externalLink" title="Wiki">
        Wiki</a>
      </li>

  
    <li class="pull-right">
        <span class="divider">|</span>
                      <a href="installation.html" title="Installation">
        Installation</a>
      </li>

  
    <li class="pull-right">
        <span class="divider">|</span>
                      <a href="downloads.html" title="Download">
        Download</a>
      </li>

  
    <li class="pull-right">
                      <a href="demo.html" title="Demo">
        Demo</a>
      </li>

                    </ul>
      </div>

            
      <div class="row-fluid">
        <div id="leftColumn" class="span2">
          <div class="well sidebar-nav">
              
                <ul class="nav nav-list">
                                                                                                                                                                                                                      
      <li>
  
                          <a href="#general" title="General">
          <span class="icon-chevron-down"></span>
        General</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="index.html" title="Home">
          <span class="none"></span>
        Home</a>
            </li>
                    
      <li>
  
                          <a href="demo.html" title="Demo">
          <span class="none"></span>
        Demo</a>
            </li>
                    
      <li>
  
                          <a href="license.html" title="License">
          <span class="none"></span>
        License</a>
            </li>
                    
      <li>
  
                          <a href="http://www.apache.org/" class="externalLink" title="ASF">
          <span class="none"></span>
        ASF</a>
            </li>
                    
      <li>
  
                          <a href="downloads.html" title="Downloads">
          <span class="none"></span>
        Downloads</a>
            </li>
                    
      <li>
  
                          <a href="CallForLogo.html" title="Call For Logo">
          <span class="none"></span>
        Call For Logo</a>
            </li>
                    
      <li>
  
                          <a href="NewsArchive.html" title="News archive">
          <span class="none"></span>
        News archive</a>
            </li>
                    
      <li>
  
                          <a href="security.html" title="Security">
          <span class="none"></span>
        Security</a>
            </li>
                    
      <li>
  
                          <a href="commercial-support.html" title="Commercial Support">
          <span class="none"></span>
        Commercial Support</a>
            </li>
              </ul>
        </li>
                                                                                                                  
      <li>
  
                          <a href="#installation" title="Installation and Upgrade">
          <span class="icon-chevron-down"></span>
        Installation and Upgrade</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="installation.html" title="Installation">
          <span class="none"></span>
        Installation</a>
            </li>
                    
      <li>
  
                          <a href="Upgrade.html" title="Upgrade">
          <span class="none"></span>
        Upgrade</a>
            </li>
                    
      <li>
  
                          <a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools" class="externalLink" title="Tutorials">
          <span class="none"></span>
        Tutorials</a>
            </li>
                    
      <li>
  
                          <a href="CommandLineAdmin.html" title="Command Line Admin">
          <span class="none"></span>
        Command Line Admin</a>
            </li>
              </ul>
        </li>
                                                                                                                  
      <li>
  
                          <a href="#community" title="Community">
          <span class="icon-chevron-down"></span>
        Community</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="get-involved.html" title="Get Involved">
          <span class="none"></span>
        Get Involved</a>
            </li>
                    
      <li>
  
                          <a href="team-list.html" title="Committers">
          <span class="none"></span>
        Committers</a>
            </li>
                    
      <li>
  
                          <a href="mail-lists.html" title="Mailing Lists">
          <span class="none"></span>
        Mailing Lists</a>
            </li>
                    
      <li>
  
                          <a href="http://cwiki.apache.org/confluence/display/OPENMEETINGS/" class="externalLink" title="Wiki">
          <span class="none"></span>
        Wiki</a>
            </li>
              </ul>
        </li>
                                                                                                                                                                                                                              
      <li>
  
                          <a href="#dev" title="Development">
          <span class="icon-chevron-down"></span>
        Development</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="source-repository.html" title="Source Code">
          <span class="none"></span>
        Source Code</a>
            </li>
                    
      <li>
  
                          <a href="issue-tracking.html" title="Bugs / Issues">
          <span class="none"></span>
        Bugs / Issues</a>
            </li>
                    
      <li>
  
                          <a href="dependencies.html" title="Dependencies">
          <span class="none"></span>
        Dependencies</a>
            </li>
                    
      <li>
  
                          <a href="integration.html" title="Continuous Integration">
          <span class="none"></span>
        Continuous Integration</a>
            </li>
                    
      <li>
  
                          <a href="BuildInstructions_3.0.x.html" title="Build Instructions 3.0.x">
          <span class="none"></span>
        Build Instructions 3.0.x</a>
            </li>
                    
      <li>
  
                          <a href="BuildInstructions.html" title="Build Instructions">
          <span class="none"></span>
        Build Instructions</a>
            </li>
                    
      <li>
  
                          <a href="JUnitTesting.html" title="JUnit Testing">
          <span class="none"></span>
        JUnit Testing</a>
            </li>
                    
      <li>
  
                          <a href="ManualTesting.html" title="Manual Testing">
          <span class="none"></span>
        Manual Testing</a>
            </li>
                    
      <li>
  
                          <a href="ReleaseGuide.html" title="Release Guide">
          <span class="none"></span>
        Release Guide</a>
            </li>
                    
      <li>
  
                          <a href="WebsiteGuide.html" title="Website Guide">
          <span class="none"></span>
        Website Guide</a>
            </li>
              </ul>
        </li>
                                                                                                                                                      
      <li>
  
                          <a href="#integration" title="Integration">
          <span class="icon-chevron-down"></span>
        Integration</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="openmeetings-webservice/apidocs/index.html" target="_blank" title="SOAP/REST API">
          <span class="none"></span>
        SOAP/REST API</a>
            </li>
                    
      <li>
  
                          <a href="RestAPISample.html" title="REST API Sample">
          <span class="none"></span>
        REST API Sample</a>
            </li>
                    
      <li>
  
                          <a href="LdapAndADS.html" title="Ldap and ADS">
          <span class="none"></span>
        Ldap and ADS</a>
            </li>
                    
      <li>
  
                          <a href="oauth2.html" title="OAuth2">
          <span class="none"></span>
        OAuth2</a>
            </li>
                    
      <li>
  
                          <a href="voip-sip-integration.html" title="VoIP and SIP">
          <span class="none"></span>
        VoIP and SIP</a>
            </li>
                    
      <li>
  
                          <a href="errorvalues.html" title="Errors table">
          <span class="none"></span>
        Errors table</a>
            </li>
              </ul>
        </li>
                                                                                                                                                                                                            
      <li>
  
                          <a href="#plugins" title="Plugins">
          <span class="icon-chevron-down"></span>
        Plugins</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="MoodlePlugin.html" title="Moodle Plugin">
          <span class="none"></span>
        Moodle Plugin</a>
            </li>
                    
      <li>
  
                          <a href="SakaiPlugin.html" title="Sakai Plugin">
          <span class="none"></span>
        Sakai Plugin</a>
            </li>
                    
      <li>
  
                          <a href="JiraPlugin.html" title="Jira Plugin">
          <span class="none"></span>
        Jira Plugin</a>
            </li>
                    
      <li>
  
                          <a href="JoomlaPlugin.html" title="Joomla Plugin">
          <span class="none"></span>
        Joomla Plugin</a>
            </li>
                    
      <li>
  
                          <a href="DrupalPlugin.html" title="Drupal Plugin">
          <span class="none"></span>
        Drupal Plugin</a>
            </li>
                    
      <li>
  
                          <a href="BitrixPlugin.html" title="Bitrix Plugin">
          <span class="none"></span>
        Bitrix Plugin</a>
            </li>
                    
      <li>
  
                          <a href="ConfluencePlugin.html" title="Confluence Plugin">
          <span class="none"></span>
        Confluence Plugin</a>
            </li>
                    
      <li>
  
                          <a href="SugarCRMPlugin.html" title="SugarCRM Plugin">
          <span class="none"></span>
        SugarCRM Plugin</a>
            </li>
                    
      <li>
  
                          <a href="RedminePlugin.html" title="Redmine Plugin">
          <span class="none"></span>
        Redmine Plugin</a>
            </li>
              </ul>
        </li>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
      <li>
  
                          <a href="#config" title="Configuration">
          <span class="icon-chevron-down"></span>
        Configuration</a>
                    <ul class="nav nav-list">
                                                                                                                                                          
      <li>
  
                          <a href="#db" title="DB Sample Configurations">
          <span class="icon-chevron-down"></span>
        DB Sample Configurations</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="ApacheDerbyConfig.html" title="Apache Derby">
          <span class="none"></span>
        Apache Derby</a>
            </li>
                    
      <li>
  
                          <a href="IBMDB2Config.html" title="IBM DB2">
          <span class="none"></span>
        IBM DB2</a>
            </li>
                    
      <li>
  
                          <a href="OracleConfig.html" title="Oracle">
          <span class="none"></span>
        Oracle</a>
            </li>
                    
      <li>
  
                          <a href="MySQLConfig.html" title="MySQL">
          <span class="none"></span>
        MySQL</a>
            </li>
                    
      <li>
  
                          <a href="PostgresConfig.html" title="Postgres">
          <span class="none"></span>
        Postgres</a>
            </li>
                    
      <li>
  
                          <a href="MSSQLConfig.html" title="MSSQL">
          <span class="none"></span>
        MSSQL</a>
            </li>
              </ul>
        </li>
                                                                                                                      
      <li>
  
                          <a href="#localization" title="Localization and languages">
          <span class="icon-chevron-down"></span>
        Localization and languages</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="Internationalisation.html" title="Internationalisation">
          <span class="none"></span>
        Internationalisation</a>
            </li>
                    
      <li>
  
                          <a href="LanguageEditor.html" title="LanguageEditor">
          <span class="none"></span>
        LanguageEditor</a>
            </li>
                    
      <li>
  
                          <a href="TimeZoneHandling.html" title="TimeZoneHandling">
          <span class="none"></span>
        TimeZoneHandling</a>
            </li>
                    
      <li>
  
                          <a href="EditTemplates.html" title="EditTemplates">
          <span class="none"></span>
        EditTemplates</a>
            </li>
              </ul>
        </li>
                                                                
      <li>
  
                          <a href="#port" title="NAT Port Settings">
          <span class="icon-chevron-down"></span>
        NAT Port Settings</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="PortSettings.html" title="Port settings">
          <span class="none"></span>
        Port settings</a>
            </li>
              </ul>
        </li>
                                                                                  
      <li>
  
                          <a href="#performance" title="Performance">
          <span class="icon-chevron-down"></span>
        Performance</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="JVMPerformanceTuning.html" title="JVM performance tuning">
          <span class="none"></span>
        JVM performance tuning</a>
            </li>
                    
      <li>
  
                          <a href="NetworkCalculator.html" title="Network bandwidth calculator">
          <span class="none"></span>
        Network bandwidth calculator</a>
            </li>
              </ul>
        </li>
                                                                                                                                        
      <li>
  
                          <a href="#interface" title="User Interface">
          <span class="icon-chevron-down"></span>
        User Interface</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="themes-and-branding.html" title="Themes">
          <span class="none"></span>
        Themes</a>
            </li>
                    
      <li>
  
                          <a href="Dashboard.html" title="Dashboard">
          <span class="none"></span>
        Dashboard</a>
            </li>
                    
      <li>
  
                          <a href="WebcamResolutions.html" title="Webcam resolutions">
          <span class="none"></span>
        Webcam resolutions</a>
            </li>
                    
      <li>
  
                          <a href="ConferenceRoomLayoutOptions.html" title="Room layout options">
          <span class="none"></span>
        Room layout options</a>
            </li>
                    
      <li>
  
                          <a href="HotKeys.html" title="Hot Keys">
          <span class="none"></span>
        Hot Keys</a>
            </li>
              </ul>
        </li>
                                                                                                                                                          
      <li>
  
                          <a href="#customize" title="Customization">
          <span class="icon-chevron-down"></span>
        Customization</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="WebappNamePath.html" title="Webapp name/path">
          <span class="none"></span>
        Webapp name/path</a>
            </li>
                    
      <li>
  
                          <a href="Navigation.html" title="Navigation">
          <span class="none"></span>
        Navigation</a>
            </li>
                    
      <li>
  
                          <a href="CalendarAndTimezone.html" title="Calendar and timezone">
          <span class="none"></span>
        Calendar and timezone</a>
            </li>
                    
      <li>
  
                          <a href="CustomRoomTypeHowTo.html" title="Custom room type">
          <span class="none"></span>
        Custom room type</a>
            </li>
                    
      <li>
  
                          <a href="CustomCryptMechanism.html" title="Custom crypt mechanism">
          <span class="none"></span>
        Custom crypt mechanism</a>
            </li>
                    
      <li>
  
                          <a href="GeneralConfiguration.html" title="General Configuration">
          <span class="none"></span>
        General Configuration</a>
            </li>
              </ul>
        </li>
                                                                                  
      <li>
  
                          <a href="#security" title="Security">
          <span class="icon-chevron-down"></span>
        Security</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="RestrictedAccess.html" title="Restricted Access">
          <span class="none"></span>
        Restricted Access</a>
            </li>
                    
      <li>
  
                          <a href="RTMPSAndHTTPS.html" title="RTMPS and HTTPS">
          <span class="none"></span>
        RTMPS and HTTPS</a>
            </li>
              </ul>
        </li>
                                                                                  
      <li>
  
                          <a href="#convert" title="Converters">
          <span class="icon-chevron-down"></span>
        Converters</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="OpenOfficeConverter.html" title="OpenOffice Converter">
          <span class="none"></span>
        OpenOffice Converter</a>
            </li>
                    
      <li>
  
                          <a href="FFMPEGVersionSwitch.html" title="FFMPEG Version Switch">
          <span class="none"></span>
        FFMPEG Version Switch</a>
            </li>
              </ul>
        </li>
                                                                
      <li>
  
                          <a href="#cluster" title="Clustering">
          <span class="icon-chevron-down"></span>
        Clustering</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="Clustering.html" title="Clustering">
          <span class="none"></span>
        Clustering</a>
            </li>
              </ul>
        </li>
                                                                
      <li>
  
                          <a href="#misc" title="Misc">
          <span class="icon-chevron-down"></span>
        Misc</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="GetVersionInfo.html" title="Get version info">
          <span class="none"></span>
        Get version info</a>
            </li>
              </ul>
        </li>
              </ul>
        </li>
                      </ul>
              
                
          <hr />

           <div id="poweredBy">
                            <div class="clear"></div>
                            <div class="clear"></div>
                            <div class="clear"></div>
                            <div class="clear"></div>
                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
      </a>
                  </div>
          </div>
        </div>
        
                
        <div id="bodyColumn"  class="span10" >
                                  
            
	
		<div class="section">
<h2><a name="SIP-Transport_Integration"></a>SIP-Transport Integration</h2>
			
<p>You need Apache OpenMeetings <b>version 3.0+</b> to apply this guide!</p>
			
<p>You need Asterisk <b>version 13+</b> to apply this guide!</p>
			
<p>Here is instruction how-to set up red5sip transport integration with OpenMeetings on Ubuntu 12.10.</p>
		</div>
		
<div class="section">
<h2><a name="Prerequisites"></a>Prerequisites</h2>
			
<div>
				Run the commands
				
<div class="source"><pre class="prettyprint">

sudo apt-get update &amp;&amp; sudo apt-get upgrade

				</pre></div>
			</div>
		</div>
		
<div class="section">
<h2><a name="Building_and_setting_up_Asterisk"></a>Building and setting up Asterisk</h2>
			
<div>
				Run the commands
				
<div class="source"><pre class="prettyprint">

sudo mkdir /usr/src/asterisk &amp;amp;&amp;amp; cd /usr/src/asterisk
sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-13.9.0.tar.gz
sudo tar -xvzf asterisk-13.9.0.tar.gz
cd ./asterisk-13.9.0
sudo make clean
sudo contrib/scripts/install_prereq install
sudo ./configure
sudo make menuconfig

				</pre></div>
				Make sure you have selected  <tt>Add-ons -&gt; res_config_mysql</tt>, Press F12 to save
				
<div class="source"><pre class="prettyprint">

sudo make
sudo make install
sudo make samples
sudo make config
sudo service asterisk start

				</pre></div>
			</div>
		</div>
		
<div class="section">
<h2><a name="Configure_Asterisk"></a>Configure Asterisk</h2>
			
<div>
				Enable asterisk MySQL module:<br /><br />
				Modify &quot;[modules]&quot; section of <tt>/etc/asterisk/modules.conf</tt> as follows:<br />
				<b>Add/uncomment the following lines</b>
				
<div class="source"><pre class="prettyprint">

preload =&gt; res_config_mysql.so

				</pre></div>
			</div><br />
			
<div>
				Configure MySQL module:<br /><br />
				Set valid data for MySQL in <tt>/etc/asterisk/res_config_mysql.conf</tt> :<br />
				<b>Example</b>
				
<div class="source"><pre class="prettyprint">

[general]
dbhost = 127.0.0.1
dbname = openmeetings
dbuser = root
dbpass =
dbport = 3306
dbsock = /var/lib/mysql/mysql.sock
dbcharset = utf8
requirements=warn

				</pre></div>
			</div><br />
			
<div>
				Modify <tt>/etc/asterisk/sip.conf</tt><br />
				<b>Add/uncomment the following line</b>:<br />
				
<div class="source"><pre class="prettyprint">

videosupport=yes
rtcachefriends=yes

				</pre></div>
				<b>Increase maxexpiry value to 43200</b>:<br />
				
<div class="source"><pre class="prettyprint">

maxexpiry=43200

				</pre></div>
				<b>Add user for the &quot;SIP Transport&quot;</b>:<br />
				
<div class="source"><pre class="prettyprint">

[red5sip_user]
type=friend
secret=12345
disallow=all
allow=ulaw
allow=h263
host=dynamic
nat=force_rport,comedia
context=rooms-red5sip

				</pre></div>
			</div><br />
			
<div>
				Add next lines into the <tt>/etc/asterisk/extconfig.conf</tt>:
				
<div class="source"><pre class="prettyprint">

[settings]
sippeers =&gt; mysql,general,sipusers

				</pre></div>
			</div><br />
			
<div>
				Modify <tt>/etc/asterisk/extensions.conf</tt><br />
				<b>Add the following section</b>:<br />
				
<div class="source"><pre class="prettyprint">

; *****************************************************
; 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 &#x2013;rx &#x201c;database show&#x201d;
; If you do not receive an output with that resembles openmeetings/rooms/400## where &#x201c;##&#x201d; 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.
; *****************************************************

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

[rooms-originate]
exten =&gt; _400X!,1,Confbridge(${EXTEN},default_bridge,sip_user)
exten =&gt; _400X!,n,Hangup

[rooms-out]
; *****************************************************
; Extensions for outgoing calls from Openmeetings room.
; *****************************************************

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

				</pre></div>
			</div><br />
			
<div>
				Modify <tt>/etc/asterisk/confbridge.conf</tt><br />
				<b>Add/Modify the following secions</b>:<br />
				
<div class="source"><pre class="prettyprint">

[general]

[red5sip_user]
type=user
marked=yes
dsp_drop_silence=yes
denoise=true

[sip_user]
type=user
end_marked=yes
wait_marked=yes
music_on_hold_when_empty=yes
dsp_drop_silence=yes
denoise=true

[default_bridge]
type=bridge
video_mode=follow_talker 

				</pre></div>
			</div><br />
			
<div>
				To enable Asterisk Manager API modify <tt>/etc/asterisk/manager.conf</tt><br />
				<b>Add/Modify the following sections</b>:<br />
				
<div class="source"><pre class="prettyprint">

[general]
enabled = yes
webenabled = no
port = 5038
bindaddr = 127.0.0.1

[openmeetings]
secret = 12345
deny=0.0.0.0/0.0.0.0
permit=127.0.0.1/255.255.255.0
read = all
write = all

				</pre></div>
			</div><br />
			
<div>
				Update Openmeetings with creadentials for Asterisk manager. 
				Modify <tt>/opt/red5/webapps/openmeetings/WEB-INF/classes/openmeetings-applicationContext.xml</tt><br />
				find <b>&lt;bean id=&quot;sipDao&quot; class=&quot;org.apache.openmeetings.db.dao.room.SipDao&quot;&gt;</b>
				uncomment its parameters and set it to your custom values.
				
<p style="font-size: larger; color: blue;">
					IMPORTANT: this step should be done <b>BEFORE</b> system install/restore
					otherwise all SIP related room information will be lost
				</p>   
			</div><br />
			
<div>
				Restart asterisk:
				
<div class="source"><pre class="prettyprint">

service asterisk restart

				</pre></div>
			</div><br />
		</div>

		
<div class="section">
<h2><a name="Setup_red5sip_transport"></a>Setup red5sip transport</h2>
			
<div>
				Download red5sip from <tt>https://github.com/solomax/red5phone/tree/red5sip_3.0</tt>, switch to the branch red5sip_3.0
			</div>
			
<div>
				switch to the branch red5sip_3.0
				
<div class="source"><pre class="prettyprint">

git clone https://github.com/solomax/red5phone.git
git checkout red5sip_3.0

				</pre></div>
			</div>
			
<div>
				Build with Apache Ant
				
<div class="source"><pre class="prettyprint">

ant

				</pre></div>
			</div>
			
<div>
				Insert proper values to the <tt>/opt/red5sip/settings.properties</tt>

				
<div class="source"><pre class="prettyprint">

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

				</pre></div>
			</div>
			
<div>
				Add red5sip to autostart:
				
<div class="source"><pre class="prettyprint">

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

				</pre></div>
			</div>
			
<div>
				Start openmeetings
				
<div class="source"><pre class="prettyprint">

service red5 start

				</pre></div>
			</div>
			
<div>
				Start red5sip
				
<div class="source"><pre class="prettyprint">

service red5sip start

				</pre></div>
			</div>
		</div>
	

                  </div>
            </div>
          </div>

    <hr/>

    <footer>
            <div class="container-fluid">
                      <div class="row-fluid">
                                      <p >Copyright &copy;                    2012&#x2013;2016
                        <a href="http://apache.org">Apache Software Foundation</a>.
            All rights reserved.    
      </p>
                </div>

        
                </div>
    </footer>
        </body>
</html>
