Following tutorial will guide you to install Jitsi Jibri for Cloud Recording in your own on-premises, cloud, or dedicated servers.
This guide is using Ubuntu 16.04 LTS as the operating system, to start the installation you can follow the guide below.
Before we begin you must make sure that you own the administration / root permission access by running following command:
sudo suwget -qO - https://gist.githubusercontent.com/dimaskiddo/da6dfe184ce54db7293f128cf8eb7039/raw/61e1b02a4877d637edc8518d6e201e7424f1e1d9/jitsi-jibri-setup.sh | bash -e -mv /etc/jitsi/jibri/config.json /etc/jitsi/jibri/config.json.orig~
nano /etc/jitsi/jibri/config.json// Add following line
...
{
"recording_directory":"/srv/recordings",
"finalize_recording_script_path": "/bin/true",
"xmpp_environments": [{
"name": "your-domain-name",
"xmpp_server_hosts": [
"your-domain-name"
],
"xmpp_domain": "your-domain-name",
"control_login": {
"domain": "auth.your-domain-name",
"username": "jibri",
"password": "<your_jibri_password>"
},
"control_muc": {
"domain": "internal.auth.your-domain-name",
"room_name": "JibriBrewery",
"nickname": "<your_jibri_nickname>"
},
"call_login": {
"domain": "recorder.your-domain-name",
"username": "recorder",
"password": "<your_recorder_password>"
},
"room_jid_domain_string_to_strip_from_start": "conference.",
"usage_timeout": "0"
}]
}
...systemctl restart jibri
systemctl status jibritail -n 100 -f /var/log/jitsi/jibri/log.0.txtnano /etc/prosody/conf.d/your-domain-name.cfg.luga-- Add or change to following line
...
Component "internal.auth.your-domain-name" "muc"
storage = "memory"
modules_enabled = {
"ping";
}
muc_room_cache_size = 1000
...
-- Add following line
...
VirtualHost "recorder.your-domain-name"
modules_enabled = {
"ping";
}
c2s_require_encryption = false
authentication = "internal_plain"
...systemctl restart prosody
systemctl status prosodyprosodyctl register jibri auth.your-domain-name <your_jibri_password>
prosodyctl register recorder recorder.your-domain-name <your_recorder_password>nano /etc/jitsi/jicofo/sip-communicator.properties# Add following line
...
org.jitsi.jicofo.jibri.BREWERY=JibriBrewery@internal.auth.your-domain-name
org.jitsi.jicofo.jibri.PENDING_TIMEOUT=90
...systemctl restart jicofo
systemctl status jicofonano /etc/jitsi/meet/your-domain-name-config.js// Find and change following line
....
fileRecordingsEnabled: true,
liveStreamingEnabled: true,
...
// Add following line
...
hiddenDomain: 'recorder.your-domain-name',
...nano /usr/share/jitsi-meet/interface_config.js// Make sure 'recording' and 'livestreaming' are available in TOOLBAR_BUTTONS