|
@@ -1,5 +1,11 @@
|
1
|
1
|
# Server Installation for jitmeet
|
2
|
2
|
|
|
3
|
+This describes configuring a server `jitmeet.example.com`. You will nedd to
|
|
4
|
+change references to that to match your host, and generate some passwords for
|
|
5
|
+`YOURSECRET1` and `YOURSECRET2`.
|
|
6
|
+
|
|
7
|
+There are also some complete [example config files](https://www.dropbox.com/sh/jgp4s8kp6xuyubr/5FACgJmqLD) available..
|
|
8
|
+
|
3
|
9
|
## Install prosody and otalk modules
|
4
|
10
|
```sh
|
5
|
11
|
echo deb http://packages.prosody.im/debian $(lsb_release -sc) main | sudo tee -a /etc/apt/sources.list
|
|
@@ -40,13 +46,18 @@ Component "conference.jitmeet.example.com" "muc"
|
40
|
46
|
Component "jitsi-videobridge.jitmeet.example.com"
|
41
|
47
|
component_secret = "YOURSECRET1"
|
42
|
48
|
```
|
43
|
|
-- check the example config file, next to the document (prosody.cfg.lua)
|
|
49
|
+- check the example config file, next to the document (`prosody.cfg.lua`)
|
44
|
50
|
|
45
|
51
|
Generate certs for the domain:
|
46
|
52
|
```sh
|
47
|
53
|
prosodyctl cert generate jitmeet.example.com
|
48
|
54
|
```
|
49
|
55
|
|
|
56
|
+Restart prosody XMPP server with the new config
|
|
57
|
+```sh
|
|
58
|
+prosodyctl restart
|
|
59
|
+```
|
|
60
|
+
|
50
|
61
|
## Install nginx
|
51
|
62
|
```sh
|
52
|
63
|
apt-get install nginx
|
|
@@ -93,7 +104,7 @@ Add link for the added configuration
|
93
|
104
|
cd /etc/nginx/sites-enabled
|
94
|
105
|
ln -s ../sites-available/jitmeet.example.com jitmeet.example.com
|
95
|
106
|
```
|
96
|
|
-check the example config files, next to the document (nginx.conf and jitmeet.example.com)
|
|
107
|
+check the example config files for more info.
|
97
|
108
|
|
98
|
109
|
## Fix firewall if needed
|
99
|
110
|
```sh
|
|
@@ -123,7 +134,7 @@ Start the videobrdige with:
|
123
|
134
|
```
|
124
|
135
|
Or autostart it by adding the line in `/etc/rc.local`:
|
125
|
136
|
```sh
|
126
|
|
-/bin/bash /root/jitsi-videobridge-linux-x64-74/jvb.sh --host=localhost --domain=jitmeet.example.com --port=5347 --secret=YOURSECRET1 </dev/null >> /var/log/jvb.log 2>&1
|
|
137
|
+/bin/bash /root/jitsi-videobridge-linux-{arch-buildnum}/jvb.sh --host=localhost --domain=jitmeet.example.com --port=5347 --secret=YOURSECRET1 </dev/null >> /var/log/jvb.log 2>&1
|
127
|
138
|
```
|
128
|
139
|
|
129
|
140
|
Checkout and configure jitmeet:
|
|
@@ -133,7 +144,7 @@ git clone https://github.com/jitsi/jitmeet.git
|
133
|
144
|
mv jitmeet/ jitmeet.example.com
|
134
|
145
|
```
|
135
|
146
|
|
136
|
|
-Edit `/srv/jitmeet.example.com/config.js`:
|
|
147
|
+Edit host names in `/srv/jitmeet.example.com/config.js`:
|
137
|
148
|
```
|
138
|
149
|
var config = {
|
139
|
150
|
hosts: {
|
|
@@ -143,10 +154,18 @@ var config = {
|
143
|
154
|
},
|
144
|
155
|
useNicks: false,
|
145
|
156
|
bosh: '//jitmeet.example.com/http-bind' // FIXME: use xep-0156 for that
|
|
157
|
+ desktopSharing: 'ext', // Desktop sharing method. Can be set to 'ext', 'webrtc' or false to disable.
|
|
158
|
+ chromeExtensionId: 'diibjkoicjeejcmhdnailmkgecihlobk', // Id of desktop streamer Chrome extension
|
|
159
|
+ minChromeExtVersion: '0.1' // Required version of Chrome extension
|
146
|
160
|
};
|
147
|
161
|
```
|
148
|
162
|
check the example config file, next to the document (config.js)
|
149
|
163
|
|
|
164
|
+Restart nginx to get the new configuration:
|
|
165
|
+```sh
|
|
166
|
+invoke-rc.d nginx restart
|
|
167
|
+```
|
|
168
|
+
|
150
|
169
|
|
151
|
170
|
## Install [Turn server](https://github.com/andyet/otalk-server/tree/master/restund)
|
152
|
171
|
```sh
|
|
@@ -155,14 +174,14 @@ wget http://creytiv.com/pub/re-0.4.7.tar.gz
|
155
|
174
|
tar zxvf re-0.4.7.tar.gz
|
156
|
175
|
ln -s re-0.4.7 re
|
157
|
176
|
cd re-0.4.7
|
158
|
|
-make install PREFIX=/usr
|
|
177
|
+sudo make install PREFIX=/usr
|
159
|
178
|
cd ..
|
160
|
179
|
wget http://creytiv.com/pub/restund-0.4.2.tar.gz
|
161
|
180
|
wget https://raw.github.com/andyet/otalk-server/master/restund/restund-auth.patch
|
162
|
181
|
tar zxvf restund-0.4.2.tar.gz
|
163
|
182
|
cd restund-0.4.2/
|
164
|
183
|
patch -p1 < ../restund-auth.patch
|
165
|
|
-make install PREFIX=/usr
|
|
184
|
+sudo make install PREFIX=/usr
|
166
|
185
|
cp debian/restund.init /etc/init.d/restund
|
167
|
186
|
chmod +x /etc/init.d/restund
|
168
|
187
|
cd /etc
|
|
@@ -184,7 +203,7 @@ Configure prosody to use it in `/etc/prosody/prosody.cfg.lua`. Add to your virt
|
184
|
203
|
```
|
185
|
204
|
turncredentials_secret = "YOURSECRET2";
|
186
|
205
|
turncredentials = {
|
187
|
|
- { type = "turn", host = "turn.address.ip.configured", port = 80, transport = "tcp" }
|
|
206
|
+ { type = "turn", host = "turn.address.ip.configured", port = 3478, transport = "tcp" }
|
188
|
207
|
}
|
189
|
208
|
```
|
190
|
209
|
|
|
@@ -196,3 +215,16 @@ module:reload("turncredentials", "jitmeet.example.com")
|
196
|
215
|
quit
|
197
|
216
|
```
|
198
|
217
|
|
|
218
|
+## Running behind NAT
|
|
219
|
+In case of videobridge being installed on a machine behind NAT, add the following extra lines to the file `~/.sip-communicator/sip-communicator.properties` (in the home of user running the videobridge):
|
|
220
|
+```
|
|
221
|
+org.jitsi.videobridge.NAT_HARVESTER_LOCAL_ADDRESS=<Local.IP.Address>
|
|
222
|
+org.jitsi.videobridge.NAT_HARVESTER_PUBLIC_ADDRESS=<Public.IP.Address>
|
|
223
|
+```
|
|
224
|
+
|
|
225
|
+So the file should look like this at the end:
|
|
226
|
+```
|
|
227
|
+org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
|
|
228
|
+org.jitsi.videobridge.NAT_HARVESTER_LOCAL_ADDRESS=<Local.IP.Address>
|
|
229
|
+org.jitsi.videobridge.NAT_HARVESTER_PUBLIC_ADDRESS=<Public.IP.Address>
|
|
230
|
+```
|