This is an automated email from the ASF dual-hosted git repository.

solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git


The following commit(s) were added to refs/heads/master by this push:
     new d83df26  [OPENMEETINGS-2239] initial steps are documented
d83df26 is described below

commit d83df260226cf2c98abefb0ace8878a7199c9a7d
Author: Maxim Solodovnik <solomax...@gmail.com>
AuthorDate: Sat Oct 3 21:32:43 2020 +0700

    [OPENMEETINGS-2239] initial steps are documented
---
 .../src/site/markdown/AsteriskIntegration.md       | 259 +++++++++++++++++++++
 .../src/site/markdown/ExternalVideo.md             |   3 +-
 openmeetings-server/src/site/markdown/HTTPS.md     |   3 +-
 .../src/site/markdown/InstallMediaServer.md        |   3 +-
 .../src/site/markdown/LdapAndADS.md                |   3 +-
 .../src/site/markdown/PortSettings.md              |   3 +-
 .../src/site/markdown/RestrictedAccess.md          |   3 +-
 7 files changed, 271 insertions(+), 6 deletions(-)

diff --git a/openmeetings-server/src/site/markdown/AsteriskIntegration.md 
b/openmeetings-server/src/site/markdown/AsteriskIntegration.md
new file mode 100644
index 0000000..44107ce
--- /dev/null
+++ b/openmeetings-server/src/site/markdown/AsteriskIntegration.md
@@ -0,0 +1,259 @@
+<!-- 
+Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0
+-->
+
+# Not implemented
+
+<div class="bd-callout bd-callout-danger">
+       Please NOTE: this functionality is not yet implemented in 5.0.x
+</div>
+
+# VoIP and SIP Integration
+
+There are multiple ways to integrate with VoIP and or SIP.
+OpenMeetings does not provide out of the box a ready to run VoIP
+integration / integration to cell phone or usual land lane.
+The nature of such integrations is that it depends heavily on the
+infrastructure that you are using and where you would like to
+integrate OpenMeetings into.
+
+
+It also depends on a number of factors of which OpenMeetings is
+impossible to set up for you, for example setting up your VoIP
+server or provide you with a range of telephone numbers reserved for
+conference calls in your national phone network.
+Such an integration
+project is likely to become a consulting job for a
+telecommunications consultant.
+
+
+To get help on the integration you can contact the
+<a href="mailing-lists.html">mailing lists</a>
+or for example somebody from the list of
+<a href="commercial-support.html">commercial support</a>.
+
+# Asterisk Integration
+
+You need Apache OpenMeetings <strong>version 5.1+</strong> to apply this guide!
+
+You need Asterisk <strong>version 16+</strong> to apply this guide!
+
+Here is the instruction how-to set up integration between OpenMeetings and 
Asterisk on Ubuntu 18.04.
+
+## Prerequisites
+
+```
+sudo apt update && sudo apt upgrade
+```
+
+## Building and setting up Asterisk
+
+```
+sudo apt install build-essential
+
+sudo mkdir /usr/src/asterisk && cd /usr/src/asterisk
+sudo wget 
http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-16.13.0.tar.gz
+sudo tar -xvzf asterisk-16.13.0.tar.gz
+cd ./asterisk-16.13.0
+sudo make clean
+sudo contrib/scripts/install_prereq install
+sudo ./configure
+sudo make menuconfig
+```
+
+Make sure you have selected (<a 
href="https://wiki.asterisk.org/wiki/display/AST/Configuring+Asterisk+for+WebRTC+Clients";>Asterisk
 WebRTC Config</a>)
+
+* Add-ons -> res_config_mysql
+* Codec Translators -> codec_opus
+* Resource Modules -> res_crypto
+* Resource Modules -> res_http_websocket
+* Resource Modules -> res_pjsip_transport_websocket
+
+Press F12 to save
+
+```
+sudo make
+sudo make install
+sudo make samples
+sudo make config
+
+```
+
+## Configure Asterisk
+
+### Enable asterisk MySQL module:
+
+Modify `[modules]` section of `/etc/asterisk/modules.conf`
+**Add/uncomment the following lines**
+
+```
+preload => res_config_mysql.so
+```
+
+### Configure MySQL module:
+
+Set valid data for MySQL in `/etc/asterisk/res_config_mysql.conf`:
+
+**Example**
+
+```
+[general]
+dbhost = 127.0.0.1
+dbname = openmeetings
+dbuser = root
+dbpass =
+dbport = 3306
+dbsock = /var/lib/mysql/mysql.sock
+dbcharset = utf8
+requirements=warn
+```
+
+### Configure SIP module:
+
+Modify `/etc/asterisk/sip.conf`
+
+**Add/uncomment the following lines**
+
+```
+videosupport=yes
+rtcachefriends=yes
+```
+
+**Increase maxexpiry value to 43200**
+
+```
+maxexpiry=43200
+```
+
+** FIXME TODO Add user for the "SIP Transport"**
+
+```
+; FIXME TODO commented for now
+; [red5sip_user]
+; type=friend
+; secret=12345
+; disallow=all
+; allow=ulaw
+; allow=h263
+; host=dynamic
+; nat=force_rport,comedia
+; context=rooms-red5sip
+```
+
+### Configure extensions:
+
+Add next lines into the `/etc/asterisk/extconfig.conf`:
+
+```
+[settings]
+sippeers => mysql,general,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/om/webapps/openmeetings/WEB-INF/classes/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 => 
_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
+
+[rooms-originate]
+exten => _400X!,1,Confbridge(${EXTEN},default_bridge,sip_user)
+exten => _400X!,n,Hangup
+
+[rooms-out]
+; *****************************************************
+; Extensions for outgoing calls from Openmeetings room.
+; *****************************************************
+
+; FIXME TODO commented for now
+;[rooms-red5sip]
+;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
+```
+
+### Configure Confbridge
+
+Modify `/etc/asterisk/confbridge.conf`
+
+**Add/Modify the following sections:**
+
+```
+[general]
+
+; FIXME TODO commented for now
+;[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
+```
+
+### Configure Asterisk Manager
+
+To enable Asterisk Manager API modify `/etc/asterisk/manager.conf`
+
+**Add/Modify the following sections:**
+
+```
+[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
+```
+
+Update OpenMeetings with credentials for Asterisk manager.
+Modify `/opt/om/webapps/openmeetings/WEB-INF/classes/applicationContext.xml`
+
+find **&lt;bean id="sipDao" 
class="org.apache.openmeetings.db.dao.room.SipDao"&gt;**
+uncomment its parameters and set it to your custom values.
+
+set value for `uid` property to unique secret value (can be generated here <a 
href="https://www.uuidtools.com";>https://www.uuidtools.com</a>)
+
+<p style="font-size: larger; color: blue;">
+       IMPORTANT: this step should be done <strong>BEFORE</strong> system 
install/restore
+       otherwise all SIP related room information will be lost
+</p>
+
diff --git a/openmeetings-server/src/site/markdown/ExternalVideo.md 
b/openmeetings-server/src/site/markdown/ExternalVideo.md
index 7551d7c..e7a04c0 100644
--- a/openmeetings-server/src/site/markdown/ExternalVideo.md
+++ b/openmeetings-server/src/site/markdown/ExternalVideo.md
@@ -1,5 +1,6 @@
 <!-- 
-# Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0 -->
+Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0
+-->
 
 # External Video/Camera
 
diff --git a/openmeetings-server/src/site/markdown/HTTPS.md 
b/openmeetings-server/src/site/markdown/HTTPS.md
index fb6518b..3ca5261 100644
--- a/openmeetings-server/src/site/markdown/HTTPS.md
+++ b/openmeetings-server/src/site/markdown/HTTPS.md
@@ -1,5 +1,6 @@
 <!-- 
-# Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0 -->
+Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0
+-->
 
 # Using OpenMeetings with HTTPS
 
diff --git a/openmeetings-server/src/site/markdown/InstallMediaServer.md 
b/openmeetings-server/src/site/markdown/InstallMediaServer.md
index 4341307..3034ca7 100644
--- a/openmeetings-server/src/site/markdown/InstallMediaServer.md
+++ b/openmeetings-server/src/site/markdown/InstallMediaServer.md
@@ -1,5 +1,6 @@
 <!-- 
-# Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0 -->
+Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0
+-->
 
 # Media Server Installation
 
diff --git a/openmeetings-server/src/site/markdown/LdapAndADS.md 
b/openmeetings-server/src/site/markdown/LdapAndADS.md
index fc32b7c..2077d69 100644
--- a/openmeetings-server/src/site/markdown/LdapAndADS.md
+++ b/openmeetings-server/src/site/markdown/LdapAndADS.md
@@ -1,5 +1,6 @@
 <!-- 
-# Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0 -->
+Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0
+-->
 
 # LDAP and Active Directory Integration
 
diff --git a/openmeetings-server/src/site/markdown/PortSettings.md 
b/openmeetings-server/src/site/markdown/PortSettings.md
index 854a457..bd3b5d0 100644
--- a/openmeetings-server/src/site/markdown/PortSettings.md
+++ b/openmeetings-server/src/site/markdown/PortSettings.md
@@ -1,5 +1,6 @@
 <!-- 
-# Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0 -->
+Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0
+-->
 
 # Port settings
 
diff --git a/openmeetings-server/src/site/markdown/RestrictedAccess.md 
b/openmeetings-server/src/site/markdown/RestrictedAccess.md
index c7739fe..78da57a 100644
--- a/openmeetings-server/src/site/markdown/RestrictedAccess.md
+++ b/openmeetings-server/src/site/markdown/RestrictedAccess.md
@@ -1,5 +1,6 @@
 <!-- 
-# Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0 -->
+Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0
+-->
 
 #How to restrict access to your Openmeetings server
 

Reply via email to