Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

Avertissement
Cette documentation ne concerne que la future version de Pod v2.8, prévue en mars avril 2021.

Sommaire

Contexte et solution apportée

...

  • Récupérer régulièrement les informations concernant les sessions en cours, ainsi que les usagers, dans BigBlueButton pour les insérer dans la base de données de Pod.
    Cf. le système de publication des présentations Web de BigBlueButton vers Podv2 : https://www.esup-portail.org/wiki/x/AgCBNg

  • Traiter ces données pour permettre aux utilisateurs, connectés dans Pod, de pouvoir réaliser un direct de leur session BigBlueButton en cours,
    Image Removed



    Avertissement

    Il ne faut pas que l'utilisateur utilise de salles privées dans BigBlueButton. En effet, le système de salles privées de BigBlueButton ouvre des popups, et il pourrait arriver que le direct n'affiche que l'appel de la popup.

    Image Added

    Il faut également que l'utilisateur mette fin à la réunion pour que le direct s'arrête (une déconnexion n'est pas suffisante et le direct continue alors).



  • Pour réaliser ce direct, l'utilisateur devra valider les options possibles en validant un formulaire :



    Ces options sont les suivantes :

    • Accès restreint : Mettre l'accès restreint permet que le direct ne soit accessible qu'aux utilisateurs authentifiés, typiquement via le système d'authentification CAS de l'université. Sans accès restreint, le direct peut être accessible à tous.

    • Affichage du tchat public : En cas d'activation, le tchat public sera affiche dans la partie gauche du direct.

    • Enregistrer la session dans Mes vidéos : Cette option permet l'enregistrement de la vidéo du direct en même temps. Cela signifie qu'une fois le direct réalisé, le fichier vidéo sera automatiquement publié en mode Brouillon pour cet utilisateur et sera alors mis automatiquement dans la file d'attente pour encodage.

      Info

      Cette option peut être désactivée dans le paramétrage de Pod et ne sera alors pas affiché aux utilisateurs (cf. explications techniques ci-dessous).


    • Activer le tchat : Via cette option, un tchat sera affiché dans la page de ce direct de Pod, sous la vidéo en direct. Les messages envoyés dans le tchat de cette page de direct se retrouveront dans le tchat public de BigBlueButton. Ainsi, les étudiants qui consultent la page de direct pourront communiquer avec l'enseignant et autres usagers de BigBlueButton.

      Info

      Pour informations, seuls les utilisateurs authentifiés sur la page de direct pourront envoyer des messages, même si le direct est accessible à tous.

      Non authentifié, l'utilisateur obtiendra ce message :

      Une fois authentifié, l'utilisateur pourra envoyer un message :

      Dans BigBlueButton, le nom de l'utilisateur qui a envoyé le message sera bien entendu affiché :


    Une fois le formulaire validé, le direct sera lancé en moins d'une minute.

  • Les étudiants pourront accéder au direct créé automatiquement, via l'onglet des directs de Pod.



    Info

    Le système va créer automatiquement un diffuseur (terminologie Pod) dont le nom correspond à une concaténation de (BBB) et du nom de la session dans BigBlueButton.

    Bien entendu, ce diffuseur sera automatiquement supprimé lors de l'arrêt de la session BigBlueButton.


...

Astuce
titleInstallation de Docker sous CentOS 7

Personnellement, sous Cent OS 7, j'ai utilisé les documentations suivantes : 

Au final, voici les commandes utilisées :

sudo yum check-update

curl -fsSL https://get.docker.com/ | sh

sudo systemctl start docker

sudo systemctl status docker

sudo systemctl enable docker

sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

docker-compose --version

chown %USER% /usr/local/bin/docker-compose -R

En cas d'erreur type Permission denied :

sudo groupadd docker

sudo usermod -aG docker %USER%

...

Avertissement
titleInformations importantes concernant bigbluebutton-liveStreaming

La solution reposant sur le projet Github bigbluebutton-liveStreaming, il est indispensable de s'assurer que ce dernier fonctionne correctement avant d'installer bbb-pod-live

...

.

Pour ce faire, le mieux est de vérifier, au plus tôt, qu'il n'y ait pas de problème en lien avec ce projet et de réaliser un test simple, dès que possible, en suivant la documentation fournie :  https://github.com/aau-zid/BigBlueButton-liveStreaming

Pour informations, lors de l'exécution de la commande docker-compose up -d, si vous obtenez une erreur de ce style : ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running?

Cela signifie que docker nécessite d'être exécuté avec des privilèges. Dans ce cas, 2 possibilités :

  • faire en sorte de pouvoir exécuter docker avec le user connecté.

  • exécuter sudo docker-compose up -d. Par contre, dans ce cas, il sera nécessaire de faire lancer le script bbb-pod-live.php via un CRON installé sous le compte root.


Installation de bbb-pod-live

bbb-pod-live se présente sous la forme d'un simple script PHP (et d'un fichier de référence docker-bbb-pod-live se présente sous la forme d'un simple script PHP (et d'un fichier de référence docker-compose.default.yml). Il faut donc avoir à minima :

...

Bloc de code
languagebash
titleJob CRON
crontab -e
*/1 * * * * /usr/bin/bash -c 'cd /home/user/bbb-pod-live/; php -f ./bbb-pod-live.php'

(avertissement) Ce CRON tourne dans mon environnement. Il est possible que vous deviez le modifier à votre convenance, selon votre environement (typiquement /usr/bin/bash ne correspond pas à votre environnement).

Installation et configuration à réaliser sur Pod

...

Bloc de code
languagebash
titleJob CRON
crontab -e
*/2 * * * * /usr/bin/bash -c 'export WORKON_HOME=/data/www/%userpod%/.virtualenvs; export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3.6; cd /data/www/%userpod%/django_projects/podv2; source /usr/bin/virtualenvwrapper.sh; workon django_pod; python manage.py bbb main'_pod; python manage.py bbb main'

(avertissement) Ce CRON tourne dans mon environnement. Il est possible que vous deviez le modifier à votre convenance, selon votre environement (typiquement /usr/bin/bash ne correspond pas à votre environnement).


Configuration dans Pod

(info) Ne pas oublier d'avoir réalisé au préalable la configuration pour la publication des présentations Web (cf. Mise en place de la publication des présentations Web de BigBlueButton vers Pod v2#ConfigurationdansPod).

Dans le fichier settings_local.py, ce système n'utilise que peu de nouveaux paramètres, à savoir :

Bloc de code
languagetext
titleSettings_local.py
# Allow the users to perform a BigBlueButton live
USE_BBB_LIVE = True
# Allow users to record their BigBlueButton live
USE_BBB_LIVE_DOWNLOADING = True
# Number maximum of BBB lives simultaneous managed by the system
BBB_NUMBER_MAX_LIVES = 5

...

Info

Par exemple, si vous avez configuré BBB_NUMBER_MAX_LIVES = 5, et qu'il y a déjà 5 directs BBB en cours, le prochain utilisateur qui souhaitera démarrer un direct BigBlueButton ne pourra pas le faire; il obtiendra un message correspondant à l'image ci-dessous et devra alors attendre qu'un autre direct soit arrêté. Il est alors important de bien dimensionner l'architecture selon vos besoins.

Voici alors les 2 possibilités en lien avec le paramétrage :

J'ai déjà configuré la publication des présentations Web en vidéo

J'ajoute alors les 3 paramètres ci-dessus :

  • USE_BBB_LIVE, USE_BBB_LIVE_DOWNLOADING (j'ai la possibilité d'utiliser ce , BBB_NUMBER_MAX_LIVES.


Récapitulatif des étapes à réaliser pour l'installation

...