Shared Views Could Not Get a Valid Session Try Sharing Again 3ds Max

    BigBlueButton has many configuration files that offer you opportunities to customize your installation. This document covers common customizations of BigBlueButton two.two.

    apply-conf.sh

    Whenever you upgrade a server to the latest version of BigBlueButton, either using the manual upgrade steps or the bbb-install.sh script, if you take made custom changes to BigBlueButton's configuration files, the packaging scripts may overwrite these changes.

    To make it easier to employ your configuration changes, y'all can create a Bash script at /etc/bigbluebutton/bbb-conf/utilize-config.sh that contains commands to apply your changes. The bbb-conf script, which is run as part of the terminal steps in a transmission upgrade steps or using bbb-install.sh, volition observe utilize-config.sh and invoke information technology only before starting all of BigBlueButton's components.

    In this manner, you can use apply-conf.sh to apply your custom configuration changes later on all packages have updated merely just before BigBlueButton starts.

    For example, if you create /etc/bigbluebutton/bbb-conf/employ-config.sh with the following contents and get in executable with chmod +x /etc/bigbluebutton/bbb-conf/apply-config.sh

                              #!/bin/fustigate              # Pull in the helper functions for configuring BigBlueButton              source              /etc/bigbluebutton/bbb-conf/use-lib.sh  enableUFWRules              echo              " - Disable screen sharing"              yq w              -i              $HTML5_CONFIG              public.kurento.enableScreensharing              false chown              meteor:meteor              $HTML5_CONFIG                      

    then when called past bbb-conf, the to a higher place apply-conf.sh script will

    • use the helper function enableUFWRules to restrict admission to specific ports, and
    • gear up enableScreensharing to false in the HTML5 configuration file at /usr/share/meteor/bundle/programs/server/avails/app/config/settings.yml.

    Notice that apply-conf.sh includes a helper script apply-lib.sh. This helper script contains some functions to brand it piece of cake to apply common configuratino changes, forth with some helper variables, such as HTML5_CONFIG.

    The contents of utilize-config.sh are non owned by whatever package, so it will never be overwritten.

    Mutual Customizations

    Recording

    Delete raw data from published recordings

    When a meeting finishes, the BigBlueButton server athenaeum the meeting information (referred to equally the "raw" data).

    Retaining the raw information lets you lot rebuild a recording if it was accidentally deleted by a user; however, the tradeoff is the storage of raw information will swallow more disk infinite over fourth dimension.

    By default, BigBlueButton server automatically remove the raw data for a recording after xiv days of its being published. To disable this, edit the BigBlueButton cron job, located at /etc/cron.daily/bigbluebutton, and comment the post-obit line

                remove_raw_of_published_recordings                      

    The default duration (days)

    is defined near the elevation of the BigBlueButton cron job.

    Delete recordings older than Northward days

    To delete recordings older than 14 days, create the file /etc/cron.daily/bbb-recording-cleanup with the contents

                              #!/bin/bash              MAXAGE              =14              LOGFILE              =/var/log/bigbluebutton/bbb-recording-cleanup.log              shopt              -s              nullglob              NOW              =              $(              appointment              +%south)              echo              "              $(              date              --rfc-3339              =seconds)                              Deleting recordings older than                            ${              MAXAGE              }                              days"              >>              "              ${              LOGFILE              }              "              for              donefile              in              /var/bigbluebutton/recording/status/published/*              -presentation.done              ;              do                            MTIME              =              $(              stat              -c              %Y              "              ${              donefile              }              "              )              # Check the age of the recording              if              [              $((              (              $Now              -              $MTIME              )              /              86400              ))              -gt              $MAXAGE              ]              ;              then                            MEETING_ID              =              $(              basename              "              ${              donefile              }              "              )              MEETING_ID              =              ${              MEETING_ID              %-presentation.done              }              echo              "              ${              MEETING_ID              }              "              >>              "              ${              LOGFILE              }              "              bbb-tape              --delete              "              ${              MEETING_ID              }              "              >>              "              ${              LOGFILE              }              "              fi done  for              eventsfile              in              /var/bigbluebutton/recording/raw/*/events.xml              ;              practise                            MTIME              =              $(              stat              -c              %Y              "              ${              eventsfile              }              "              )              # Check the age of the recording              if              [              $((              (              $NOW              -              $MTIME              )              /              86400              ))              -gt              $MAXAGE              ]              ;              then                            MEETING_ID              =              "              ${              eventsfile              %/events.xml              }              "              MEETING_ID              =              "              ${              MEETING_ID              ##*/              }              "              echo              "              ${              MEETING_ID              }              "              >>              "              ${              LOGFILE              }              "              bbb-record              --delete              "              ${              MEETING_ID              }              "              >>              "              ${              LOGFILE              }              "              fi done                      

    Change the value for MAXAGE to specify how many days to retain the presentation format recordings on your BigBlueButton server. After you lot create the file, make it executable.

                              $                            chmod              +x /etc/cron.daily/bbb-recording-cleanup                      

    Motion recordings to a dissimilar sectionalisation

    Most of BigBlueButton'southward storage occurs in the /var/bigbluebutton directory (this is where all the recordings are stored). If yous want to movement this directory to another partition, say to /mnt/data, do the following

                              $                            sudo              bbb-conf              --stop              $                            mv              /var/bigbluebutton /mnt/data              $                            ln              -southward              /mnt/data/bigbluebutton /var/bigbluebutton              $                            sudo              bbb-conf              --kickoff                      

    Migrate recordings from a previous version

    Depending of the previous version there may exist some differences in the metadata generated. In gild to fix that it will be necessary to execute the respective scripts for updating the migrated recordings.

                              $                            cd              /usr/local/bigbluebutton/cadre/scripts                      

    From version 0.9

                              $                            sudo              ./bbb-0.9-beta-recording-update              $                            sudo              ./bbb-0.9-recording-size                      

    From version 1.0

                              $                            sudo              ./bbb-i.one-meeting-tag                      

    If for some reason the scripts have to be run more than once, employ the –force modifier.

                              $                            sudo              ./bbb-x.ten-script              --force                      

    Enable playback of recordings on iOS

    The presentation playback format encodes the video shared during the session (webcam and screen share) as .webm (VP8) files; however, iOS devices only support playback of .mp4 (h.264) video files. To enable playback of the presentation recording format on iOS devices, edit /usr/local/bigbluebutton/core/scripts/presentation.yml and uncomment the entry for mp4.

                              video_formats              :              -              webm              -              mp4                      

    This change will cause BigBlueButton to generate an boosted .mp4 file for the video components (webcam and screen share) that was shared during the session. This modify only applies to new recordings. If you desire this change to apply to any existing recordings, you lot need employ the bbb-record command to rebuild them.

    This change will increase the processing time and storage size of recordings with video files every bit it volition at present generate two videos: .webm and .mp4 for the webcam and screen share videos.

    E'er record every meeting

    By default, the BigBlueButton server will produce a recording when (one) the meeting has been created with tape=truthful in the create API call and (ii) a moderator has clicked the Kickoff/Terminate Record push (at least in one case) during the coming together.

    However, you can configure a BigBlueButton server to record every coming together, edit /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.backdrop and change

                              # Start recording when first user joins the meeting. # For backward compatibility with 0.81 where whole meeting # is recorded.                            autoStartRecording              =              false              # Let the user to start/terminate recording.                            allowStartStopRecording              =              truthful                      

    to

                              # Start recording when first user joins the coming together. # For backward compatibility with 0.81 where whole meeting # is recorded.                            autoStartRecording              =              truthful              # Permit the user to start/end recording.                            allowStartStopRecording              =              fake                      

    To apply the changes, restart the BigBlueButton server using the command

                              $                            sudo              bbb-conf              --restart                      

    To e'er record every coming together, add together the following to apply-config.sh.

                              echo              "  - Prevent viewers from sharing webcams"              sed              -i              's/autoStartRecording=.*/autoStartRecording=true/g'              /usr/share/bbb-web/Web-INF/classes/bigbluebutton.properties              sed              -i              'due south/allowStartStopRecording=.*/allowStartStopRecording=simulated/g'              /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.backdrop                      

    Transfer recordings

    When setting upward BigBlueButton on a server, yous may want to transfer recordings from an older server. If your quondam server has all of the original recording files in the /var/bigbluebutton/recording/raw directory, so you can transfer these files to the new server using rsync.

    For example, running this rsync command new server will re-create over the recording file from the quondam server.

                              $              rsync              -rP              root@old-bbb-server.case.com:/var/bigbluebutton/recording/raw/ /var/bigbluebutton/recording/raw/                      

    Alternatively, you could create a tar archive of the /var/bigbluebutton/recording/raw directory, and copy it with scp, or use a shared NFS mount.

    Later you re-create over the files (either through rsync or tar-and-re-create), you lot will then demand to set the permissions on the new server using the following chown command.

                              $                            chown              -R              bigbluebutton:bigbluebutton /var/bigbluebutton/recording/raw                      

    Subsequently transfer of recordings, view a sampling of the recordings to ensure they playback correctly (they should).

    Re-process raw recordings

    If you lot have transferred over the raw content, y'all tin also reprocess the recordings using the newer scripts to rebuild them with the latest playback format (including any bug fixes made in the latest version). Annotation: Re-processing can take a long fourth dimension (around 25% to 50% of the original length of the recordings), and volition use a lot of CPU on your new BigBlueButton server while you lot await for the recordings to procedure.

    If you lot are interested in reprocessing the older recordings, try it starting time with 1 or ii of the larger recordings. If there is no perceptible departure, you don't demand to reprocess the others.

    And initiate the re-processing of a single recording, you can do

                              $                            sudo              bbb-record              --rebuild              <recording_id>                      

    where <recording_id> is the the file name of the raw recording in /var/bigbluebutton/recording/raw, such as

                              $                            sudo              bbb-record              --rebuild              f4ae6fd61e2e95940e2e5a8a246569674c63cb4a-1517234271176                      

    If your former server has all of the original recording files in the /var/bigbluebutton/recording/raw directory, then yous can transfer these files to the new server, for example with rsync:

    If you lot want to rebuild all your recordings, enter the command

    Alert: If you take a large number of recordings, this will rebuild all of them, and not procedure any new recordings until the rebuild process finishes. Do not do this unless this is you intent. Do not do this command to troubleshoot recording errors, instead come across Recording Troubleshooting.

                              $                            sudo              bbb-record              --rebuildall                      

    The BigBlueButton server will automatically go through the recordings and rebuild and publish them. You can employ the bbb-record --sentry control to see the progress.

    Transfer published recordings from another server

    If you desire to do the minimum corporeality of piece of work to speedily make your existing recordings on an older BigBlueButton server, transfer the contents of the /var/bigbluebutton/published and /var/bigbluebutton/unpublished directories. In add-on, to preserve the backup of the original raw media, you should transfer the contents of the /var/bigbluebutton/recording/raw directory.

    Hither is an example set of rsync commands that would accomplish this; run these on the new server to copy the files from the one-time server.

                              $              rsync              -rP              root@old-bbb-server:/var/bigbluebutton/published/ /var/bigbluebutton/published/              $              rsync              -rP              root@old-bbb-server:/var/bigbluebutton/unpublished/ /var/bigbluebutton/unpublished/              $              rsync              -rP              root@old-bbb-server:/var/bigbluebutton/recording/raw/ /var/bigbluebutton/recording/raw/                      

    Other methods of transferring these files tin also exist used; for example, you could create a tar archive of each of the directories, and transfer information technology via scp, or use a shared NFS mount.

    You will then need to fix the permissions on the newly copied recordings:

                              $                            chown              -R              bigbluebutton:bigbluebutton /var/bigbluebutton/published /var/bigbluebutton/unpublished /var/bigbluebutton/recording/raw                      

    If the recordings were copied from a server with a unlike hostname, you will accept to run the following command to fix the stored hostnames. (If you don't practice this, it'll either return a 404 fault, or attempt to load the recordings from the one-time server instead of the new server!)

    Notation that this command will restart the BigBlueButton server, interrupting any live sessions.

                              $                            sudo              bbb-conf              --setip              <ip_address_or_hostname>                      

    For case,

                              $                            sudo              bbb-conf              --setip              bigbluebutton.example.com                      

    The transferred recordings should be immediately visible via the BigBlueButton recordings API.

    Modify processing time

    On a two.2.x BigBlueButton server, the server will process recordings every bit meetings finish. You can restrict the recording processing interval to specific hours by creating the file /etc/systemd/system/bbb-record-core.timer.d/override.conf with the contents

                [Timer] OnActiveSec= OnUnitInactiveSec= OnCalendar=21,22,23,00,01,02,03:*:00 Persistent=simulated                      

    and do systemctl daemon-reload. This file overrides the timing of when systemd runs bbb-record-core.target. In the above example, recordings will get-go processing betwixt 21:00 and 03:59.

    Video

    Reduce bandwidth from webcams

    You can utilise a banwidth usage on your BigBlueButton server using a tool such equally bmon (sudo apt-get install bmon). Yous can modify the maximum bandwidth settings for each webcam options (low, medium, high, high definition) past editing /usr/share/shooting star/parcel/programs/server/avails/app/config/settings.yml and modifying the entries for

                              cameraProfiles              :              -              id              :              low              name              :              Low quality              default              :              false              bitrate              :              100              -              id              :              medium              proper noun              :              Medium quality              default              :              truthful              bitrate              :              200              -              id              :              high              name              :              High quality              default              :              false              bitrate              :              500              -              id              :              hd              name              :              Loftier definition              default              :              false              bitrate              :              800                      

    The settings for bitrate are in kbits/sec (i.e. 100 kbits/sec). Subsequently your alter the values, save the file, restart your BigBlueButton server sudo bbb-conf --restart to have the settings accept effect. The lowest setting allowed for WebRTC is thirty Kbits/sec.

    If you take sessions that similar to share lots of webcams, such as ten or more, and then then setting the bitrate for low to l and medium to 100 will help reduce the overall bandwidth on the server. When many webcams are shared, the size of the webcams go so small that the reduction in bitrate volition not be noticable during the live sessions.

    Disable webcams

    Y'all can disable webcams by setting enableVideo to false in the settings.yml file for the HTML5 customer.

    To do this automatically between package upgrades and restarts of BigBlueButton, add the following lines to apply-conf.sh.

                              echo              " - Disable webcams"              yq w              -i              $HTML5_CONFIG              public.kurento.enableVideo              faux chown              meteor:shooting star              $HTML5_CONFIG                      

    and run bbb-conf --restart

    Disable screen sharing

    You tin disable screen sharing past setting enableScreensharing to false in the settings.yml file for the HTML5 client.

    To do this automatically between package upgrades and restarts of BigBlueButton, add the following lines to employ-conf.sh.

                              echo              " - Disable screen sharing"              yq due west              -i              $HTML5_CONFIG              public.kurento.enableScreensharing              faux chown              meteor:shooting star              $HTML5_CONFIG                      

    Reduce bandwidth for webcams

    If you expect users to share many webcams, yous can reduce bandwidth for webcams.

    To do this automatically between bundle upgrades and restarts of BigBlueButton, add together the following lines to use-conf.sh.

                              echo              "  - Setting photographic camera defaults"              yq w              -i              $HTML5_CONFIG              'public.kurento.cameraProfiles.(id==low).bitrate'              l yq w              -i              $HTML5_CONFIG              'public.kurento.cameraProfiles.(id==medium).bitrate'              100 yq w              -i              $HTML5_CONFIG              'public.kurento.cameraProfiles.(id==high).bitrate'              200 yq w              -i              $HTML5_CONFIG              'public.kurento.cameraProfiles.(id==hard disk).bitrate'              300  yq w              -i              $HTML5_CONFIG              'public.kurento.cameraProfiles.(id==depression).default'              true              yq due west              -i              $HTML5_CONFIG              'public.kurento.cameraProfiles.(id==medium).default'              false              yq due west              -i              $HTML5_CONFIG              'public.kurento.cameraProfiles.(id==high).default'              faux              yq west              -i              $HTML5_CONFIG              'public.kurento.cameraProfiles.(id==hard disk).default'              faux chown              meteor:meteor              $HTML5_CONFIG                      

    Run three parallel Kurento media servers

    [ Available since BigBluebutton 2.ii.24+ ]

    Kurento media server handles 3 different types of media streams: listen only, webcams, and screen share.

    Running three parallel Kurento media servers (KMS) – one dedicated to each type of media stream – should increment the stability of media handling as the load for starting/stopping media streams spreads over 3 separate KMS processes. Also, it should increase the reliability of media handling equally a crash (and automatic restart) by one KMS will not touch the 2.

    To configure your BigBlueButton server to run three KMS processes, add the following line to apply-conf.sh

    and run sudo bbb-conf --restart, you should see

                              - Configuring three Kurento Media Servers: one for heed only, webcam, and screeshare Generating a 2048 scrap RSA private primal ....................+++ ......+++ writing new individual key to '/tmp/dtls-srtp-key.pem' ----- Created symlink from /etc/systemd/system/kurento-media-server.service.wants/kurento-media-server-8888.service to /usr/lib/systemd/system/kurento-media-server-8888.service. Created symlink from /etc/systemd/system/kurento-media-server.service.wants/kurento-media-server-8889.service to /usr/lib/systemd/arrangement/kurento-media-server-8889.service. Created symlink from /etc/systemd/arrangement/kurento-media-server.service.wants/kurento-media-server-8890.service to /usr/lib/systemd/system/kurento-media-server-8890.service.                      

    Later BigBlueButton finishes restarting, you lot should come across iii KMS processes running using the netstat -antp | grep kur command.

                # netstat -antp | grep kur tcp6       0      0 :::8888                 :::*                    Mind      5929/kurento-media- tcp6       0      0 :::8889                 :::*                    LISTEN      5943/kurento-media- tcp6       0      0 :::8890                 :::*                    Listen      5956/kurento-media- tcp6       0      0 127.0.0.1:8888          127.0.0.1:49132         ESTABLISHED 5929/kurento-media- tcp6       0      0 127.0.0.1:8890          127.0.0.1:55540         ESTABLISHED 5956/kurento-media- tcp6       0      0 127.0.0.ane:8889          127.0.0.1:41000         ESTABLISHED 5943/kurento-media-                      

    Each process has its own log file (distinguished by its procedure ID).

                # ls -alt /var/log/kurento-media-server/ total 92 -rw-rw-r--  i kurento kurento 11965 Sep xiii 17:10 2020-09-13T170908.00000.pid5929.log -rw-rw-r--  1 kurento kurento 10823 Sep 13 17:ten 2020-09-13T170908.00000.pid5943.log -rw-rw-r--  1 kurento kurento 10823 Sep 13 17:x 2020-09-13T170908.00000.pid5956.log                      

    At present, if y'all now join a session and choose listen only (which causes Kurento setup a single listen just stream to FreeSWITCH), share your webcam, or share your screen, you'll meet updates occuring independently to each of the above log files every bit each KMS process handles your request.

    To revert dorsum to running a single KMS server (which handles all three meida streams), alter the above line in /etc/bigbluebutton/bbb-conf/apply-config.sh to

    and run sudo bbb-conf --restart again.

    Limit overall media streams

    On a typical BigBlueButton server Kurento tin handle about 1000 media streams. A media stream is created when a user broadcasts or receives a webcam or screen share video, or when a user joins audio listening just. If your server will exist using webcams, you can prepare limits per user, per room, and an overall limit per server in /usr/local/bigbluebutton/bbb-webrtc-sfu/config/default.yml. The default is no limit.

                mediaThresholds:   global: 0   perRoom: 0   perUser: 0                      

    For example, the following settings would limit the overall number of media across all meetings to yard streams, the maximum number of webcam streams per meeting to 300, and no limit on the number of webcam streams per user.

                mediaThresholds:   global: yard   perRoom: 300   perUser: 0                      

    On a BigBlueButton 2.iii (or later) server, you can place the above in /etc/bigbluebutton/bbb-webrtc-sfu/production.yml, which bbb-webrtc-sfu will utilise to override the settings in default.yml (even afterward bundle upgrades).

    If any of these thresholds are reached, so a user will receive a "Media resources non bachelor (2002)" mistake when sharing webcams.

    Thus, we recommend you enable multiple Kurento servers, thereby having one Kurento server for webcams, 1 for screen share, and one for mind just streams. The settings apply to each Kurento server, and so in the above example each Kurento server would have a maximum of 1000 media streams.

    BigBlueButton will dynamically reduce the number of webcams in a coming together as the meeting grows larger. These are set in /usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml, but yous can override them by placing them in /etc/bigbluebutton/bbb-html5.yml.

    For example, the follwing /etc/bigbluebutton/bbb-html5.yml file would ensure that no single coming together volition have more than than 300 streams. For example, in a meeting with 30 users, the moderator will run across 25 webcams and the viewers vi webcams. This gives 25 + 29 _ 6 = 196 webcam streams. If the meeting grows to 100 users, the moderator will meet eight webcams and viewers will come across two webcams. This gives eight + 99 _ 2 = 206 webcam streams.

                public:     app:         defaultSettings:             application:                 paginationEnabled: true     kurento:         pagination:             desktopPageSizes:                 moderator: 0                 viewer: 5             mobilePageSizes:                 moderator: two                 viewer: 2             paginationToggleEnabled: false         paginationThresholds:             enabled: truthful             thresholds:             -   desktopPageSizes:                     moderator: 25                     viewer: six                 users: xxx             -   desktopPageSizes:                     moderator: 20                     viewer: 5                 users: 40             -   desktopPageSizes:                     moderator: xvi                     viewer: 4                 users: l             -   desktopPageSizes:                     moderator: 12                     viewer: four                 users: 60             -   desktopPageSizes:                     moderator: 8                     viewer: 3                 users: seventy             -   desktopPageSizes:                     moderator: 8                     viewer: 2                 users: fourscore             -   desktopPageSizes:                     moderator: 8                     viewer: ii                 users: 90             -   desktopPageSizes:                     moderator: 8                     viewer: 2                 users: 100 Here                      

    Apply custom images for virtual background

    Starting from version two.iv BigBlueButton offers virtual background for webcams. To employ your own groundwork images copy them into the directory /usr/share/meteor/bundle/programs/web.browser/app/resources/images/virtual-backgrounds. For each image copy a thumbnail of the prototype of 50x50 pixels size into /usr/share/shooting star/parcel/programs/web.browser/app/resources/images/virtual-backgrounds/thumbnails.

    To generate thumbnails you can utilize the following shell snippet:

                              #!/bin/bash              FULL              =              "/usr/share/falling star/bundle/programs/web.browser/app/resource/images/virtual-backgrounds"              THUMB              =              "              ${              Total              }              /thumbnails"              cd              "              $FULL              "              for              pic              in              *.jpg;              do              convert              "              $motion picture              "              -resize              50x50^              -gravity              Center              -extent              50x50              "              ${              THUMB              }              /              ${              movie              }              "              done                      

    Reference them in the configuration file /etc/bigbluebutton/bbb-html5.yml:

                public:   virtualBackgrounds:     fileNames:       - image1.jpg       - image2.jpg       - image3.jpg                      

    Background images should not be too large as clients take to download them. You tin can optimize them using the jpegoptim command which is bachelor as an Ubuntu package.

    Audio

    Mute all users on startup

    If yous want to accept all users join muted, you tin can alter /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties and ready this every bit a server-wide configuration.

                              # Mute the meeting on start                            muteOnStart              =              imitation                      

    Subsequently making them modification, restart your server with sudo bbb-conf --restart to apply the changes.

    Plow off "yous are at present muted"

    You tin can remove this sound for all users past editing /opt/freeswitch/etc/freeswitch/autoload_configs/conference.conf.xml and moving the lines containing muted-sound and unmuted-sound into the commented section.

                              <profile              proper name=              "cdquality"              >              <param              name=              "domain"              value=              "$${domain}"              />              <param              proper name=              "rate"              value=              "48000"              />              <param              name=              "interval"              value=              "twenty"              />              <param              proper noun=              "energy-level"              value=              "100"              />              <!-- <param name="sound-prefix" value="$${sounds_dir}/en/the states/callie"/> -->              <param              proper noun=              "muted-sound"              value=              "conference/conf-muted.wav"              />              <param              proper name=              "unmuted-sound"              value=              "conference/conf-unmuted.wav"              />              <param              proper noun=              "alone-sound"              value=              "conference/conf-alone.wav"              />              <!--       <param proper name="moh-sound" value="$${hold_music}"/>       <param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>       <param name="exit-sound" value="tone_stream://%(500,0,300,200,100,fifty,25)"/> -->              <param              proper name=              "kicked-sound"              value=              "briefing/conf-kicked.wav"              />              <param              name=              "locked-sound"              value=              "conference/conf-locked.wav"              />              <param              name=              "is-locked-sound"              value=              "conference/conf-is-locked.wav"              />              <param              name=              "is-unlocked-sound"              value=              "conference/conf-is-unlocked.wav"              />              <param              name=              "pin-audio"              value=              "briefing/conf-pivot.wav"              />              <param              name=              "bad-pin-sound"              value=              "conference/conf-bad-pin.wav"              />              <param              proper noun=              "caller-id-name"              value=              "$${outbound_caller_name}"              />              <param              proper name=              "caller-id-number"              value=              "$${outbound_caller_id}"              />              <param              proper name=              "comfort-racket"              value=              "true"              />              <!-- <param name="conference-flags" value="video-flooring-only|rfc-4579|livearray-sync|auto-3d-position|minimize-video-encoding"/> -->              <!-- <param proper name="video-mode" value="mux"/> -->              <!-- <param proper name="video-layout-proper name" value="3x3"/> -->              <!-- <param name="video-layout-name" value="group:grid"/> -->              <!-- <param name="video-canvass-size" value="1920x1080"/> -->              <!-- <param name="video-canvas-bgcolor" value="#333333"/> -->              <!-- <param name="video-layout-bgcolor" value="#000000"/> -->              <!-- <param proper name="video-codec-bandwidth" value="2mb"/> -->              <!-- <param proper noun="video-fps" value="15"/> -->              </profile>                      

    Enable background music when only i person is in a session

    p FreeSWITCH enables y'all to accept music play in the background when simply one users is in the vox conference. To enable background music, edit /opt/freeswitch/conf/autoload_configs/conference.conf.xml (every bit root) and around line 204 y'all'll come across the music on hold (moh-sound) commented out

                              <!--       <param proper noun="moh-sound" value="$${hold_music}"/>       <param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>       <param proper noun="get out-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/> -->                      

    Uncomment it and relieve this file.

                              <param              name=              "moh-sound"              value=              "$${hold_music}"              />              <!--       <param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>       <param name="go out-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/> -->                      

    The default BigBlueButton installation does not come with any music files. Yous'll need to upload a music file in WAV format to the server and change a reference in /opt/freeswitch/conf/vars.xml.

    For example, to use the file /opt/freeswitch/share/freeswitch/sounds/en/us/callie/ivr/48000/ivr-to_listen_to_moh.wav as music on hold, edit /opt/freeswitch/conf/vars.xml and change the line

                              <X-PRE-Procedure              cmd=              "set"              data=              "hold_music=local_stream://moh"              />                      

    to

                              <X-PRE-Procedure              cmd=              "set"              data=              "hold_music=/opt/freeswitch/share/freeswitch/sounds/en/us/callie/ivr/48000/ivr-to_listen_to_moh.wav"              />                      

    and so restart BigBlueButton

    and bring together an audio session. Y'all should now hear music on concur if at that place is only one user in the session.

    Add a telephone number to the briefing bridge

    The built-in WebRTC-based audio in BigBlueButton is very high quality sound. Still, there may be cases where you desire users to be able to punch into the conference span using a telephone number.

    Before you can configure FreeSWITCH to route the telephone call to the right conference, yous demand to first obtain a phone number from a Net Phone Service Providers and configure FreeSWITCH appropriately to receive incoming calls via session initiation protocol (SIP) from that provider. Ensure that the context is public and that the file is called /opt/freeswitch/conf/sip_profiles/external/YOUR-PROVIDER.xml. Hither is an example; of course, hostname and ALL-CAPS values need to be changed:

                              <include>              <gateway              name=              "Any-Proper name-FOR-YOUR-PROVIDER"              >              <param              name=              "proxy"              value=              "sip.example.net"              />              <param              proper noun=              "username"              value=              "PROVIDER-Business relationship"              />              <param              name=              "countersign"              value=              "PROVIDER-PASSWORD"              />              <param              name=              "extension"              value=              "EXTERNALDID"              />              <param              name=              "annals"              value=              "true"              />              <param              proper name=              "context"              value=              "public"              />              </gateway>              </include>                      

    To road the incoming phone call to the right BigBlueButton audio conference, you need to create a dialplan which, for FreeSWITCH, is a set up of instructions that information technology runs when receiving an incoming telephone call. When a user calls the phone number, the dialplan will prompt the user to enter a five digit number associated with the briefing.

    To create the dialplan, utilise the XML below and save it to /opt/freeswitch/conf/dialplan/public/my_provider.xml. Replace EXTERNALDID with the value specified every bit the extension in the SIP contour (such as 6135551234, but see higher up).

                              <extension              name=              "from_my_provider"              >              <condition              field=              "destination_number"              expression=              "^EXTERNALDID"              >              <action              application=              "start_dtmf"              />              <action              awarding=              "answer"              />              <action              application=              "sleep"              data=              "m"              />              <action              application=              "play_and_get_digits"              data=              "five 7 3 30000 # briefing/conf-pin.wav ivr/ivr-that_was_an_invalid_entry.wav pivot \d+"              />              <!-- Uncomment the post-obit block if y'all want to mask the phone number in the listing of participants. -->              <!-- Instead of `01711233121` it volition and so prove `xxx-thirty-3121`. -->              <!--    <action application="set_profile_var" data="caller_id_name=${regex(${caller_id_name}|^.*(.{4})$|xxx-xxx-%one)}"/>    -->              <activity              application=              "transfer"              data=              "SEND_TO_CONFERENCE XML public"              />              </condition>              </extension>              <extension              name=              "check_if_conference_active"              >              <condition              field=              "${briefing ${pin} listing}"              expression=              "/sofia/k"              />              <status              field=              "destination_number"              expression=              "^SEND_TO_CONFERENCE$"              >              <action              application=              "set"              data=              "bbb_authorized=truthful"              />              <action              awarding=              "transfer"              data=              "${pin} XML default"              />              </condition>              </extension>              <extension              name=              "conf_bad_pin"              >              <condition              field=              "${pin}"              expression=              "^\d{5}$"              >              <activeness              application=              "answer"              />              <action              application=              "sleep"              data=              "1000"              />              <action              application=              "play_and_get_digits"              data=              "5 seven 3 30000 # briefing/conf-bad-pivot.wav ivr/ivr-that_was_an_invalid_entry.wav pin \d+"              />              <action              awarding=              "transfer"              data=              "SEND_TO_CONFERENCE XML public"              />              </condition>              </extension>                      

    Change buying of this file to freeswitch:daemon

                              $                            chown              freeswitch:daemon /opt/freeswitch/conf/dialplan/public/my_provider.xml                      

    and and so restart FreeSWITCH:

                              $                            sudo              systemctl restart freeswitch                      

    Endeavor calling the phone number. Information technology should connect to FreeSWITCH and you should hear a vocalization prompting you to enter the 5 digit PIN number for the conference. Please annotation, that dialin will currently only work if at to the lowest degree one web participant has joined with their microphone.

    To ever show users the phone number along with the 5-digit Pin number within BigBlueButton, not only while selecting the microphone participation, edit /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties and change 613-555-1234 to the telephone number provided by your Internet Telephone Service Provider

                              #---------------------------------------------------- # Default dial access number                            defaultDialAccessNumber              =              613-555-1234                      

    and modify defaultWelcomeMessageFooter to

                              defaultWelcomeMessageFooter              =              <br><br>To join this meeting by phone, dial:<br>  %%DIALNUM%%<br>So enter %%CONFNUM%%# as the conference PIN number.                      

    Save bigbluebutton.backdrop and restart BigBlueButton again. Each user that joins a session will see a bulletin in the chat like to.

                To join this meeting by phone, dial:    613-555-1234 and enter 12345 as the conference Pin number.                      

    Finally, setup the firewall rules so you are only accepting incoming calls from the IP accost of your SIP provider. For example, if your SIP provider forwards incoming calls from 64.2.142.33, so setup the following firewall rules on your server.

                iptables              -A              INPUT              -i              eth0              -p              tcp              --dport              5060              -s              0.0.0.0/0              -j              Turn down iptables              -A              INPUT              -i              eth0              -p              udp              --dport              5060              -s              0.0.0.0/0              -j              Pass up iptables              -A              INPUT              -i              eth0              -p              tcp              --dport              5080              -s              0.0.0.0/0              -j              Reject iptables              -A              INPUT              -i              eth0              -p              udp              --dport              5080              -due south              0.0.0.0/0              -j              Decline iptables              -I              INPUT              -p              udp              --dport              5060              -due south              64.ii.142.33              -j              ACCEPT                      

    With these rules, you won't go spammed by bots scanning for SIP endpoints and trying to connect.

    Turn on the "condolement racket" when no 1 is speaking

    FreeSWITCH has the power to add a "comfort dissonance" that is a slight groundwork hiss to let users know they are withal in a voice briefing even when no ane is talking (otherwise, they may forget they are continued to the briefing bridge and say something unintended for others).

    If you want to enable, edit /opt/freeswitch/conf/autoload_configs/briefing.conf.xml, await for the block <profile proper name="cdquality">, and modify the value for comfort-noise. You tin can specify a level of noise, such every bit 0 (no dissonance), 350, 1400, etc. Try different values to get the level you desire.

                              <param              proper name=              "comfort-racket"              value=              "1400"              />                      

    Yous need to restart BigBlueButton betwixt each change. For more data, encounter comfort-dissonance in FreeSWITCH documentation.

                              $                            sudo              bbb-conf              --restart                      

    Connect BigBlueButton to an external FreeSWITCH Server

    BigBlueButton bundles in FreeSWITCH, but y'all tin can configure BigBlueButton to employ an external FreeSWITCH server.

    First, edit /usr/share/red5/webapps/bigbluebutton/WEB-INF/bigbluebutton.properties

                              freeswitch.esl.host              =              127.0.0.1              freeswitch.esl.port              =              8021              freeswitch.esl.password              =              ClueCon                      

    Change freeswitch.esl.host to signal to your external FreeSWITCH IP address. Modify the default freeswitch.esl.countersign to the ESL countersign for your server.

    You can use http://strongpasswordgenerator.com/ to generate passwords.

    In your external FreeSWITCH server, edit /opt/freeswitch/conf/autoload_configs/event_socket.conf.xml.

                              <configuration              name=              "event_socket.conf"              description=              "Socket Client"              >              <settings>              <param              name=              "nat-map"              value=              "simulated"              />              <param              proper noun=              "listen-ip"              value=              "127.0.0.1"              />              <param              name=              "listen-port"              value=              "8021"              />              <param              name=              "password"              value=              "ClueCon"              />              <!-- param name="apply-inbound-acl" value="localnet.auto"/ -->              </settings>              </configuration>                      

    Change the listen-ip to your external FreeSWITCH server IP and besides change the password to be the same equally freeswitch.esl.password.

    Edit /usr/share/red5/webapps/sip/WEB-INF/bigbluebutton-sip.backdrop

                              bbb.sip.app.ip              =              127.0.0.1              bbb.sip.app.port              =              5070              sip.server.username              =              bbbuser              sip.server.password              =              secret              freeswitch.ip              =              127.0.0.1              freeswitch.port              =              5060                      

    Change bbb.sip.app.ip to your BigBlueButton server ip.

    Modify sip.server.countersign to something else.

    Change freeswitch.ip to your external FreeSWITCH ip.

    In your external FreeSWITCH server.

    Edit /opt/freeswitch/conf/directory/default/bbbuser.xml

                              <user              id=              "bbbuser"              >              <params>              <!-- omit countersign for authless registration -->              <param              name=              "password"              value=              "secret"              />              <!-- What this user is immune to admission -->              <!--<param name="http-allowed-api" value="jsapi,voicemail,status"/> -->              </params>                      

    Change password to match the password yous set in sip.server.password.

    Presentation

    Change the default presentation

    When a new meeting starts, BigBlueButton displays a default presentation. The file for the default presentation is located in /var/www/bigbluebutton-default/default.pdf. You tin replace the contents of this file with your presentation. Whenever a coming together is created, BigBlueButton will automatically load, convert, and display this presentation for all users.

    Alternatively, you tin modify the global default by editing /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties and changing the URL for beans.presentationService.defaultUploadedPresentation.

                              # Default Uploaded presentation file                            beans.presentationService.defaultUploadedPresentation              =              ${bigbluebutton.web.serverURL}/default.pdf                      

    Yous'll need to restart BigBlueButton afterwards the modify with sudo bbb-conf --restart.

    If you want to specify the default presentation for a given meeting, y'all can besides pass a URL to the presentation as function of the create meeting API call.

    Increase the 200 page limit for uploads

    BigBlueButton, by default, restricts uploads to 200 pages. To increase this value, open /usr/share/bbb-web/Spider web-INF/classes/bigbluebutton.backdrop and change the maxNumPages value:

                              #---------------------------------------------------- # Maximum number of pages immune for an uploaded presentation (default 200).                            maxNumPages              =              200                      

    After y'all salve the changes to bigbluebutton.backdrop, restart the BigBlueButton server with

                              $                            sudo              bbb-conf              --restart                      

    Increase the file size for an uploaded presentation

    The default maximum file upload size for an uploaded presentation is 30 MB.

    The first step is to change the size restriction in nginx. Edit /etc/bigbluebutton/nginx/spider web.nginx and alter the values for client_max_body_size.

                              location              ~              "^\/bigbluebutton\/presentation\/(?<prestoken>[a-zA-Z0-9_-]+)/upload$"              {              ....              # Allow 30M uploaded presentation certificate.              client_max_body_size              30m              ;              ....              }              location              =              /bigbluebutton/presentation/checkPresentation              {              ....              # Allow 30M uploaded presentation document.              client_max_body_size              30m              ;              ....              }                      

    Side by side alter the restriction in bbb-spider web. Edit /usr/share/bbb-spider web/Spider web-INF/classes/bigbluebutton.properties and modify the value maxFileSizeUpload.

                              # Maximum file size for an uploaded presentation (default 30MB).                            maxFileSizeUpload              =              30000000                      

    The next changes are for the client-side checks and it depends on which clients you have it use. To increase the size for the Wink client, edit /var/www/bigbluebutton/client/conf/config.xml and modify maxFileSize to the new value (note: if you have the development surround you demand to edit ~/dev/bigbluebutton/bigbluebutton-client/src/conf/config.xml and and then rebuild the client). To increase the size for the HTML5 client, edit /usr/share/meteor/package/programs/server/assets/app/config/settings.yml and modify uploadSizeMax.

    Restart BigBlueButton with sudo bbb-conf --restart. You lot should now be able to upload larger presentations within the new limit.

    Add together custom fonts for presentation conversion

    Starting with BigBlueButton 2.three we added support for using additional fonts when converting presentation files.

    On the server where yous want the new fonts supported you would want to download the fonts (.ttf) file. For instance:

                wget https://github.com/bigbluebutton/bigbluebutton/files/6391912/Street.Ruler.zip unzip Street.Ruler.zip                      

    Then copy the font (.ttf) to /usr/share/fonts/

    sudo cp 'Street Ruler.ttf' /usr/share/fonts/

    That's all! The font volition be bachelor on adjacent presentations.

    Frontends

    Remove the API demos

    If you have earlier installed the API demos for testing (which makes it possible for anyone to use your BigBlueButton server without authentication) and desire to now remove them, enter the command:

                              $                            sudo              apt-become purge bbb-demo                      

    Modify the default landing page

    The default HTML landing folio is located in

                /var/www/bigbluebutton-default/index.html                      

    Modify this page to create your own landing page (and go on a redundancy copy of information technology as information technology will be overwritten during package updates to bbb-conf).

    Use the Greenlight front-end

    BigBlueButton comes with Greenlight, a front-end application written in Ruby on Track that makes it easy for users to create meetings, invite others, start meetings, and manage recordings.

    greenlight-start

    For more data see Installing Greenlight.

    Networking

    Setup a firewall

    Configuring IP firewalling is essential for securing your installation. By default, many services are reachable across the network. This allows BigBlueButton operate in clusters and individual data middle networks – but if your BigBlueButton server is publicly bachelor on the internet, y'all need to run a firewall to reduce access to the minimal required ports.

    If your server is backside a firewall already – such as running within your company or on an EC2 case behind a Amazon Security Group – and the firewall is enforcing the higher up restrictions, you don't need a 2nd firewall and can skip this section.

    BigBlueButton comes with a UFW based ruleset. It it can be applied on restart (c.f. Automatically apply configuration changes on restart) and restricts access merely to the following needed ports:

    • TCP/IP port 22 for SSH
    • TCP/IP port 80 for HTTP
    • TCP/IP port 443 for HTTPS
    • UDP ports 16384 to 32768 for media connections

    Note: if you take configured sshd (the OpenSSH daemon) to employ a different port than 22, so before running the commands below, modify ufw allow OpenSSH to ufw allow <port>/tcp where <port> is the port in use by sshd. You can come across the listening port for sshd using the control # netstat -antp | grep sshd. Here the command shows sshd listening to the standard port 22.

                              $              netstat              -antp              |              grep              sshd tcp        0      0 0.0.0.0:22              0.0.0.0:*              Heed      1739/sshd tcp6       0      0 :::22                   :::*              Mind      1739/sshd                      

    To restrict external access minimal needed ports for BigBlueButton (with HTML5 customer set equally default). BigBlueButton supplies a helper office that you can call in /etc/bigbluebutton/bbb-conf/apply-conf.sh to setup a minimal firewall (come across Setup Firewall.

    You tin can also do it manually with the following commands

                              $              apt-become              install              -y              ufw ufw allow OpenSSH ufw let              "Nginx Total"              ufw allow 16384:32768/udp ufw              --force              enable                      

    These ufw firewall rules volition exist automatically re-practical on server reboot.

    Besides IP-based firewalling, you can explore web application firewalls such as ModSecurity that provide additional security by checking requests to various web-based components.

    Setup Firewall

    To configure a firewall for your BigBlueButton server (recommended), add enableUFWRules to /etc/bigbluebutton/bbb-conf/apply-config.sh, as in

    With enableUFWRule added to apply-config.sh, whenever yous do bbb-conf with --restart or --setip, y'all'll see the following output

                              sudo              bbb-conf              --restart              Restarting BigBlueButton .. Stopping BigBlueButton  Applying updates              in              /etc/bigbluebutton/bbb-conf/apply-config.sh:   - Enable Firewall and opening 22/tcp, 80/tcp, 443/tcp and 16384:32768/udp Rules updated Rules updated              (v6)              Rules updated Rules updated              (v6)              Rules updated Rules updated              (v6)              Rules updated Rules updated              (v6)              Firewall is active and enabled on organization startup  Starting BigBlueButton                      

    Alter UDP ports

    By default, BigBlueButton uses the UDP ports 16384-32768 which are used by FreeSWITCH and Kurento to send real-time packets (RTP).

    Specifically, FreeSWITCH uses the range 16384 - 24576, which is defined in /opt/freeswitch/etc/freeswitch/autoload_configs/switch.conf.xml

                              <!-- RTP port range -->              <param              name=              "rtp-start-port"              value=              "16384"              />              <param              name=              "rtp-terminate-port"              value=              "24576"              />                      

    Kurento uses the range 24577 - 32768, which is divers in /etc/kurento/modules/kurento/BaseRtpEndpoint.conf.ini

                              minPort              =              24577              maxPort              =              32768                      

    Apply custom settings for Plow server

    If ever want a specific TURN server configuration, the following to use-config.sh and modify aaa.bbb.ccc.ddd and surreptitious with your values.

                              echo              "  - Update Plough server configuration turn-stun-servers.xml"              cat              <<              Here                              > /usr/share/bbb-web/WEB-INF/classes/bound/plow-stun-servers.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xsi:schemaLocation="http://world wide web.springframework.org/schema/beans         http://www.springframework.org/schema/beans/bound-beans-2.5.xsd">     <bean id="stun0" class="org.bigbluebutton.spider web.services.turn.StunServer">         <constructor-arg index="0" value="stun:aaa.bbb.ccc.ddd"/>     </edible bean>     <bean id="turn0" course="org.bigbluebutton.web.services.turn.TurnServer">         <constructor-arg index="0" value="secret"/>         <constructor-arg index="1" value="turns:aaa.bbb.ccc.ddd:443?transport=tcp"/>         <constructor-arg index="2" value="86400"/>     </bean>     <bean id="stunTurnService"             course="org.bigbluebutton.web.services.plough.StunTurnService">         <property proper noun="stunServers">             <fix>                 <ref bean="stun0"/>             </set up>         </property>         <property proper noun="turnServers">             <fix>                 <ref bean="turn0"/>             </set>         </belongings>     </edible bean> </beans>                            HERE                                    

    HTML5 customer

    Change the default welcome message

    The default welcome message is built from iii parameters: two organization-wide parameters (meet below) and the welcome parameter from the BigBlueButton create API call.

    You'll find the two system-wide welcome parameters defaultWelcomeMessage and defaultWelcomeMessageFooter in /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties.

                              defaultWelcomeMessage              =              <default welcome message>              defaultWelcomeMessageFooter              =              <default welcome bulletin footer>                      

    When a front-end creates a BigBlueButton session, information technology may as well pass a welcome parameter in the create API call.

    The final welcome message shown to the user (as blue text in the Chat window) is a composite of welcome + defaultWelcomeMessage + defaultWelcomeMessageFooter.

    The welcome message is fixed for the duration of a meeting. If you want to see the effect of irresolute the welcome parameter, you must end the electric current meeting or expect until the BigBlueButton server removes it from memory (which occurs about two minutes after the last person has left). If you modify the parameters in bigbluebutton.properties, you must restart BigBlueButton with sudo bbb-conf --restart for the new values to take outcome.

    Change the default locale

    Xxx - Needs updating

    By default, the BigBlueButton client should discover the browser's locale and use that default language accordingly. The default linguistic communication is English, simply yous can change that by editing bigbluebutton/client/BigBlueButton.html and change the value

    You can see the listing of languages installed with BigBlueButton in the directory /usr/share/meteor/bundle/programs/server/assets/app/locales.

    Change favicon

    To modify the favicon, overwrite the file /var/www/bigbluebutton-default/favicon.ico.

    You'll need to update file each time the bbb-config bundle updates.

    Modify championship in the HTML5 client

    The configuration file for the HTML5 client is located in /usr/share/falling star/package/programs/server/avails/app/config/settings.yml. It contains all the settings for the HTML5 client.

    To change the title, edit settings.yml and change the entry for public.app.clientTitle

                              public              :              app              :              ...              clientTitle              :              BigBlueButton                      

    You'll need to update this entry each time the package bbb-html5 updates. The post-obit script can help automate the change

                              $ TARGET              =/usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml              $              yq w              -i              $TARGET              public.app.clientTitle              "New Title"              $                            chown              meteor:falling star              $TARGET                      

    Apply lock settings to restrict webcams

    To enable lock settings for Share webcam by default (viewers are unable to share their webcam), add the post-obit to apply-config.sh.

                              repeat              "  - Prevent viewers from sharing webcams"              sed              -i              's/lockSettingsDisableCam=.*/lockSettingsDisableCam=true/g'              /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties                      

    Subsequently restart, if you open the lock settings y'all'll see Share webcam lock enabled.

    Make the HTML5 client default

    To brand the HTML5 customer the default client (and no longer load the Flash client), edit /usr/share/bbb-web/Spider web-INF/classes/bigbluebutton.properties and set both attendeesJoinViaHTML5Client and moderatorsJoinViaHTML5Client to true, as in

                              # Forcefulness all attendees to bring together the coming together using the HTML5 client                            attendeesJoinViaHTML5Client              =              true              # Force all moderators to join the meeting using the HTML5 client                            moderatorsJoinViaHTML5Client              =              truthful                      

    In BigBlueButton ii.two-beta-10, you tin also decrease the slide conversion time by disabling creation of SWF files by setting swfSlidesRequired=imitation.

                              #---------------------------------------------------- # Conversion of the presentation slides to SWF to exist # used in the Flash customer                            swfSlidesRequired              =              fake                      

    The SWF files are not needed by the HTML5 customer.

    Alter the default path for HTML5 client

    The default URL path for the customer is /html5client, and it can exist changed to friction match your preferences.

    Edit nginx configuration file (/etc/bigbluebutton/nginx/bbb-html5.nginx), replacing all instances of /html5client with the new path;

    Do the same in /usr/share/bbb-spider web/WEB-INF/classes/bigbluebutton.properties in the following lines:

                defaultHTML5ClientUrl=${bigbluebutton.spider web.serverURL}/html5client/join  defaultGuestWaitURL=${bigbluebutton.web.serverURL}/html5client/guestWait                      

    In configuration file for the HTML5 client, located in /usr/share/meteor/package/programs/server/assets/app/config/settings.yml, alter the entry for public.app.basename:

                public:   app:     ...     basename: '/html5client'                      

    Edit systemd_start.sh and systemd_start_frontend.sh files, located in /usr/share/meteor/bundle, replacing /html5client with the new path in both files;

    Finally, run the post-obit command to reload configuration:

    sudo service nginx reload && sudo bbb-conf --restart

    Configuration of global settings

    The configuration file for the HTML5 client is located in /usr/share/meteor/package/programs/server/assets/app/config/settings.yml. It contains all the settings for the HTML5 client.

    Modify the HTML5 client title

    All changes to global HTML5 customer settings are washed in the file above. And then to change the title, edit settings.yml and change the entry for public.app.clientTitle

    Configure invitee policy

    There is piece of work underway to add the ability for moderators to approve incoming viewers in the HTML5 client (see #5979; however, this feature is not notwithstanding implemented.

    The policy for guest management on the server is is set in the backdrop file for bbb-spider web, which is at /usr/share/bbb-web/Web-INF/classes/bigbluebutton.properties.

                              # Default Guest Policy # Valid values are ALWAYS_ACCEPT, ALWAYS_DENY, ASK_MODERATOR #                            defaultGuestPolicy              =              ALWAYS_ACCEPT                      

    Currently, if this value is set every bit ASK_MODERATOR (which may occur in some upgrades from two.0 to two.ii), it will foreclose HTML5 users from joining the session.

    For now, to enable HTML5 users to join, change it to ALWAYS_ACCEPT and restart BigBlueButton server with sudo bbb-conf --restart.

    Show a custom logo on the client

    Ensure that the parameter displayBrandingArea is fix to true in bbb-html5's configuration, restart BigBlueButton server with sudo bbb-conf --restart and laissez passer logo=<epitome-url> in Custom parameters when creating the meeting.

    Passing custom parameters to the customer on bring together

    The HTML5 client supports a list of parameters that can be added to the join API call which change the look and default behaviour of the client. This list is authentic as of BigBlueButton version 2.two.17 (build 937). These parameters override the global defaults set in settings.yml. Equally the parameters are passed on call to bring together, it allows for some powerful customization that tin can vary depending on which user is joining the session.

    Useful tools for development:

    • A tool like (https://meyerweb.com/eric/tools/dencoder/) is useful in the encoding-decoding process for the fields expecting encoded value passed (see below).
    • The API mate allows you to directly experiment with these custom parameters. To use the API mate, run the post-obit command on your BigBlueButton car: sudo bbb-conf --secret. This creates a link for you with your secret equally a parameter so you can go started experimenting correct away.

    Application parameters

    Parameter Clarification Default value
    userdata-bbb_ask_for_feedback_on_logout= If set to true, the client will display the ask for feedback screen on logout false
    userdata-bbb_auto_join_audio= If set to true, the client will first the process of joining the sound bridge automatically upon loading the client false
    userdata-bbb_client_title= Specifies a cord to set up as the HTML5 customer title BigBlueButton
    userdata-bbb_force_listen_only= If ready to true, attendees volition exist not be able to join with a microphone every bit an choice (does not employ to moderators) fake
    userdata-bbb_listen_only_mode= If set to false, the user will not be able to join the audio role of the meeting without a microphone (disables listen-simply manner) truthful
    userdata-bbb_skip_check_audio= If set to truthful, the user will not see the "echo test" prompt when sharing audio imitation
    userdata-bbb_skip_check_audio_on_first_join= (Introduced in BigBlueButton two.3) If set to true, the user volition not see the "echo test" when sharing sound for the offset fourth dimension in the session. If the user stops sharing, next time they try to share audio the echo exam window will be displayed, allowing for configuration changes to be made prior to sharing sound once again false
    userdata-bbb_override_default_locale= (Introduced in BigBlueButton 2.3) If prepare to de, the user'southward browser preference will exist ignored - the client will be shown in 'de' (i.due east. German) regardless of the otherwise preferred locale 'en' (or other) null

    Branding parameters

    Parameter Description Default value
    userdata-bbb_display_branding_area= If set to true, the customer will display the branding expanse in the upper left hand corner false

    Shortcut parameters

    Parameter Description Default value
    userdata-bbb_shortcuts= The value passed has to exist URL encoded. For case if you would like to disable shortcuts, pass %5B%5D which is the encoded version of the empty assortment [] Meet settings.yml

    Kurento parameters

    Parameter Clarification Default value
    userdata-bbb_auto_share_webcam= If set to truthful, the client volition get-go the procedure of sharing webcam (if any) automatically upon loading the customer faux
    userdata-bbb_preferred_camera_profile= Specifies a preferred camera profile to use out of those defined in the settings.yml none
    userdata-bbb_enable_video= If set to false, the client will brandish the webcam sharing button (in effect disabling/enabling webcams) true
    userdata-bbb_record_video= If gear up to fake, the user won't take her/his video stream recorded truthful
    userdata-bbb_skip_video_preview= If set to truthful, the user will not meet a preview of their webcam before sharing it faux
    userdata-bbb_skip_video_preview_on_first_join= (Introduced in BigBlueButton two.3) If set to truthful, the user will not run across a preview of their webcam earlier sharing it when sharing for the first time in the session. If the user stops sharing, next time they attempt to share webcam the video preview will be displayed, allowing for configuration changes to be made prior to sharing imitation
    userdata-bbb_mirror_own_webcam= If gear up to true, the client will see a mirrored version of their webcam. Doesn't affect the incoming video stream for other users. false

    Presentation parameters

    Parameter Clarification Default value
    userdata-bbb_force_restore_presentation_on_new_events= If prepare to true, new events related to the presentation volition be pushed to viewers. See this PR for more data false

    Whiteboard parameters

    Parameter Description Default value
    userdata-bbb_multi_user_pen_only= If set to true, only the pen tool volition be available to non-participants when multi-user whiteboard is enabled false
    userdata-bbb_presenter_tools= Laissez passer in an assortment of permitted tools from settings.yml all enabled
    userdata-bbb_multi_user_tools= Pass in an assortment of permitted tools for not-presenters from settings.yml all enabled

    Themeing & styling parameters

    Parameter Description Default value
    userdata-bbb_custom_style= URL encoded string with custom CSS none
    userdata-bbb_custom_style_url= This parameter acts the same way every bit userdata-bbb_custom_style except that the CSS content comes from a hosted file none

    Layout parameters

    Parameter Description Default value
    userdata-bbb_auto_swap_layout= If set to true, the presentation area will be minimized when a user joins a coming together. fake
    userdata-bbb_hide_presentation= If set to true, the presentation area will not be displayed. false
    userdata-bbb_show_participants_on_login= If set to false, the participants panel (and the chat panel) will not exist displayed until opened. true
    userdata-bbb_show_public_chat_on_login= If prepare to false, the chat panel volition non be visible on folio load until opened. Not the same as disabling chat. truthful
    userdata-bbb_hide_nav_bar= If set to true, the navigation bar (the acme portion of the client) will not be displayed. Introduced in BBB 2.4-rc-iii. false
    userdata-bbb_hide_actions_bar= If set to truthful, the deportment bar (the bottom portion of the customer) will not exist displayed. Introduced in BBB 2.4-rc-three. fake

    Examples

    Changing the background colour of the HTML customer

    Yous can alter the groundwork color of the HTML5 client with the following stylesheet:

                              :root              {              --loader-bg              :              #000              ;              }              .overlay--1aTlbi              {              groundwork-color              :              #000              !important              ;              }              body              {              background-color              :              #000              !important              ;              }                      

    You can add together this code to a hosted .css file and pass userdata-bbb_custom_style_url=https://someservice.com/customStyles.css

    Alternatively (for simple changes) you lot tin accomplish the same without hosted file.

    You can try this in API-MATE - yous demand the non-encoded version of the CSS

                userdata-bbb_custom_style=:root{--loader-bg:#000;}.overlay--1aTlbi{groundwork-color:#000!of import;}trunk{groundwork-color:#000!important;}                      

    If yous are adding this to a join-url y'all need to URI encode the string (run into a sample encoding tool to a higher place)

                %3Aroot%7B--loader-bg%3A%23000%3B%7D.overlay--1aTlbi%7Bbackground-color%3A%23000!important%3B%7Dbody%7Bbackground-colour%3A%23000!important%3B%7D                      

    Send client logs to the server

    Step-past-stride instructions for how to configure logs from clients to be logged in a server log file are located in Assistants -> Configuration Files

    Collect feedback from the users

    The BigBlueButton client can inquire the user for feedback when they leave a session. This feedback gives the ambassador insight on a user's experiences within a BigBlueButton sessions.

    To enable the feedback and it'due south logging to your server, run the post-obit script.

                              #!/bin/bash              HOST              =              $(              true cat              /usr/share/bbb-spider web/Web-INF/classes/bigbluebutton.properties |              grep              -v              '#'              |              sed              -northward              '/^bigbluebutton.spider web.serverURL/{due south/.*\///;p}'              )              HTML5_CONFIG              =/usr/share/meteor/packet/programs/server/assets/app/config/settings.yml              PROTOCOL              =              $(              cat              /usr/share/bbb-spider web/WEB-INF/classes/bigbluebutton.properties |              grep              -v              '#'              |              grep              '^bigbluebutton.web.serverURL'              |              sed              's/.*\(http[s]*\).*/\1/'              )              apt-get              install              -y              nginx-full  yq west              -i              $HTML5_CONFIG              public.clientLog.external.enabled              true              yq w              -i              $HTML5_CONFIG              public.clientLog.external.url              "              $PROTOCOL              ://              $HOST              /html5log"              yq westward              -i              $HTML5_CONFIG              public.app.askForFeedbackOnLogout              truthful chown              falling star:meteor              $HTML5_CONFIG              cat              >              /etc/bigbluebutton/nginx/html5-client-log.nginx              <<              HERE                              location /html5log {         access_log /var/log/nginx/html5-client.log postdata;         echo_read_request_body; }                            Hither                            cat              >              /etc/nginx/conf.d/html5-customer-log.conf              <<              Here                              log_format postdata '              \$              remote_addr [              \$              time_iso8601]                            \$              request_body';                            Here                            # Nosotros need nginx-total to enable postdata log_format              if              !              dpkg              -l              |              grep              -q              nginx-full;              and then              apt-go              install              -y              nginx-total              fi                            bear on              /var/log/nginx/html5-customer.log              chown              bigbluebutton:bigbluebutton /var/log/nginx/html5-client.log                      

    The feedback will exist written to /var/log/nginx/html5-client.log, which you would need to extract and parse. You can besides utilize the following command to monitor the feedback

                              tail              -f              /var/log/nginx/html5-client.log |              sed              -u              's/\\x22/"/g'              |              sed              -u              's/\\x5C//g'                      

    There used to be an wrong version of the script to a higher place on the docs. If you confront any bug after updating it, refer to this event for solutions.

    Other configuration changes

    Any front-end to BigBlueButton needs two pieces of information: the hostname for the BigBlueButton server and its shared secret (for authenticating API calls). To print out the hostname and shared secret for you BigBlueButton server, enter the control bbb-conf --secret:

                              $              bbb-conf              --secret              URL: http://bigbluebutton.example.com/bigbluebutton/     Hole-and-corner: 577fd5f05280c10fb475553d200f3322        Link to the API-Mate:       http://mconf.github.io/api-mate/#server=http://ten.0.3.132/bigbluebutton/&sharedSecret=577fd5f05280c10fb475553d200f3322                      

    The final line gives a link API-Mate, an excellent tool provided past Mconf Technologies (a company that has made many contributions to the BigBlueButton projection over the years) that makes it easy to create API calls.

    Change the shared secret

    To validate incoming API calls, all external applications making API calls must checksum their API call using the aforementioned surreptitious every bit configured in the BigBlueButton server.

    You'll notice the shared secret in /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.backdrop

                              beans.dynamicConferenceService.securitySalt              =              <value_of_salt>                      

    To change the shared secret, do the following:

    1. Generate a new Universal Unique ID (UUID) from a UUID generator such equally at http://world wide web.somacon.com/p113.php. This volition give a long string of random numbers that will be impossible to contrary engineer.
    2. Run the command sudo bbb-conf --setsecret new_secret.

    Notation: If you have created you own forepart-end or are using a tertiary-party plug-in to connect to BigBlueButton, its shared secret; otherwise, if the shared secrets exercise non match, the checksum for the incoming API calls volition not match and the BigBlueButton server volition reject the API call with an error.

    Install callback for events (webhooks)

    Desire to receive callbacks to your application when an event occurs in BigBlueButton? BigBlueButton provides an optional web hooks package that installs a node.js application listens for all events on BigBlueButton and sends POST requests with details about these events to hooks registered via an API. A hook can be any external URL that tin receive HTTP POST requests.

    To install bbb-webhooks

                              $                            sudo              apt-go              install              bbb-webhooks                      

    For information on cofiguring bbb-webhooks, meet bbb-webhooks.

    cardenasevied1952.blogspot.com

    Source: https://docs.bigbluebutton.org/admin/customize.html

    0 Response to "Shared Views Could Not Get a Valid Session Try Sharing Again 3ds Max"

    Post a Comment

    Iklan Atas Artikel

    Iklan Tengah Artikel 1

    Iklan Tengah Artikel 2

    Iklan Bawah Artikel