esup-pod

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.

...

  • 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,



    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.

    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 chat tchat public : En cas d'activation, le chat 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 chattchat : 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 chat tchat de cette page de direct se retrouveront dans le chat 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.


...

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 :

...

Une fois PHP installé, il suffit de :

  • créer un Récupérer le répertoire bbb-pod-live via la commande : mkdir bbb-pod-live de Pod, se trouvant dans le répertoire scripts (à la racine).


Info
titleRépertoire bbb-pod-live

Ce répertoire bbb-pod-live va contenir les différentes instances de BigBlueButton-liveStreaming, qui peuvent contenir les vidéos enregistrées (lorsque l'enseignant a sélectionné l'enregistrement du direct).

Il faut donc prévoir un stockage suffisant (typiquement un minimum de 5Go par instance de BigBlueButton-liveStreaming souhaitée).


  • positionner Vérifier qu'il y ait bien le script bbb-pod-live.php et le fichier docker-compose.default.yml dans ce répertoire, avec les bons droits utilisateurs.

Configuration de bbb-pod-live

...

ParamètreValeurs possibles / ExemplesCommentaires
Paramétrage nécessaire pour bbb-pod-live
DEBUGtrue/falseApplication en mode débogage (true - on logue toutes les lignes) ou en production (false - on logue seulement les erreurs et infos).
PHYSICAL_BASE_ROOT"/home/user/bbb-pod-live/"

Répertoire de base de l'application et avoir suffisamment d'espace disque pour l'enregistrement de quelques vidéos (stockage temporaire)
(info)Ce répertoire doit être sur un disque dur de la machine serveur.

PHYSICAL_LOG_ROOT"/home/user/bbb-pod-live/logs/"

Constante permettant de définir le chemin physique du répertoire contenant les logs applicatifs.
(info)L'arborescence doit être sur un disque dur local de la machine serveur.

ADMIN_EMAIL"administrateur@univ.fr"Mail de l'administrateur de BBB-POD-LIVE, qui recevra les mails en cas d'erreur
SERVER_HOSTNAME"server.infra.univ.fr"Hostname de ce serveur BBB-POD-LIVE (utile pour Redis et le chat)
NUMBER_SERVERS2Nombre de serveurs BBB-POD-LIVE
SERVER_NUMBER1

Numéro unique de ce serveur dans la liste des serveurs BBB-POD-LIVE
Par exemple: s'il y a 2 serveurs BBB-POD-LIVE (NUMBER_SERVERS = 2), alors un serveur devra avoir SERVER_NUMBER=1 et l'autre SERVER_NUMBER=2

NUMBER_LIVES2Nombre de directs gérés par ce serveur (à adapter selon les ressources du serveur)
Paramétrage nécessaire pour BigBlueButton-liveStreaming (cf. https://github.com/aau-zid/BigBlueButton-liveStreaming)
BBB_URL"https://bbb.univ.fr/bigbluebutton/api"URL du serveur BigBlueButton/Scalelite, avec la notion d'API
BBB_SECRET"xxxxxxxxxxxxxxxxxxxxxxxxxxxx"Clé secrète du serveur BigBlueButton/Scalelite
BBB_RESOLUTION"1280x720"Résolution pour diffuser / télécharger au format WxH (Défaut: 1920x1080). cf. BBB_RESOLUTION
FFMPEG_STREAM_VIDEO_BITRATE"3000"Bitrate de la vidéo (Défaut: 4000). cf. FFMPEG_STREAM_VIDEO_BITRATE
FFMPEG_STREAM_THREADS"0"Threads utilisés pour le flux (Défaut: 0). 0 signifie auto. cf. FFMPEG_STREAM_THREADS
BBB_STREAM_URL"rtmp://liveX.univ.fr/live/"

Serveur RTMP qui va gérer les directs pour ce serveur bbb-pod-live cf. BBB_STREAM_URL
Format, sans authentification : rtmp://serveurRTMP.domaine.fr:port/application/
Format, avec authentification : rtmp://user@password:serveur.domaine.fr:port/application/
Exemple : rtmp://live.univ.fr:1935/live/

BBB_ATTENDEE_PASSWORD"JAMHEVcAdpoSxxxxxxx"

Mot de passe des participants cf. BBB_ATTENDEE_PASSWORD
(info)Doit être défini comme le mot de passe du participant de Moodle / Greenlight ou de tout autre frontend pour permettre la participation via leurs liens

BBB_MODERATOR_PASSWORD"AOcEHxFFDtrDxxxxxxx"

Mot de passe des modérateurs cf. BBB_ATTENDEE_PASSWORD
(info) Doit être défini comme le mot de passe du modérateur de Moodle / Greenlight ou de tout autre frontend pour permettre la participation via leurs liens

Paramétrage nécessaire pour Pod
POD_HLS_STREAM"https://liveX.univ.fr/hls/"Flux HLS, dépend de la configuration du serveur RTMP Nginx utilisé
POD_URL"https://pod.univ.fr"URL du serveur Pod
POD_TOKEN"xxxxxxxxxxxxxxxxxxxxxxxxxxxx"Token de sécurité de Pod, utile pour attaquer Pod via les API Rest (cf. administration de Pod / Jeton)
POD_ID_BUILDING1Identifiant du bâtiment POD (au sens live/building de POD) de rattachement des diffuseurs créés par bbb-pod-live
POD_DEFAULT_BBB_PATH"/data/www/user/bbb-recorder/"

Répertoire dans lequel copier les fichiers vidéo générés par BigBlueButton-liveStreaming
(avertissement) Ce répertoire - typiquement un partage NFS - doit être accessible aussi par POD et correspondre à DEFAULT_BBB_PATH du fichier settings_local.py.
(info)Si ce n'est pas possible, laisser ce champ vide "" et positionner USE_BBB_LIVE_DOWNLOADING = False dans le settings_local de POD.

...

Fichier docker-compose.yml


(avertissement) Il est primordial de ne pas modifier le fichier docker-compose.default.yml : il servira de modèle pour les containers bbb-liveStreaming.


Lors de la première exécution, le fichier de référence docker-compose.default.yml suivant va être copié en tant que fichier docker-compose.yml  et sera positionné dans chaque répertoire bbb-live-streaming créé :

...

  • de la configuration bbb-pod-live (DEBUG, BBB_URL, BBB_SECRET, BBB_STREAM_URL...),

  • des options sélectionnées par l'enseignant dans l'interface de Pod (BBB_ENABLE_CHAT, BBB_SHOW_CHAT, ...),

  • du script bbb-pod-live.php selon le contexte (ports, BBB_MEETING_ID, BBB_MEETING_TITLE...).

Explications concernant l'utilisation du

...

tchat

Le fichier docker-compose ci-dessus permet d'utiliser un chat tchat sur la page de direct, si l'enseignant le souhaite.

...