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.

Sommaire

Avertissement
titlePod 3.5.1 minimum

Cette documentation ne concerne que la version 3.5.1 et supérieure de Pod.

Contexte et solution apportée

...

  • Pod : changer le paramétrage du module des Réunions dans le fichiers custom/settings_local.py, à savoir BBB_API_URL et BBB_SECRET_KEY

  • Moodle (v4) : changer le paramétrage, accessible via le module d'Administration du site, à savoir l'URL du serveur BigBlueButton et le Secret partagé BigBlueButton.

  • Greenlight : changer le paramétrage dans le fichier .env, à savoir BIGBLUEBUTTON_ENDPOINT et BIGBLUEBUTTON_SECRET

...

  • le système de revendication des enregistrements de Pod ,(cf. https://www.esup-portail.org/wiki/x/DgB8Lw)

  • le système d'import des vidéos externes pour y ajouter la possibilité de convertir des enregistrements BBB, de type présentation, en vidéo (via le plugin bbb-recorder, cf. ci-dessous),

  • un script de migration, qui offre plusieurs possibilités.

...

Bien sûr, s'il y a déjà des présentations en vidéo, le fichier vidéo sera directement copié.

Une fois que toutes les vidéos ont été encodées, l'architecture BBB locale peut être arrêtée. Les usagers devront aller chercher leurs vidéos dans l'onglet Revendication des enregistrements dans Pod.


  • 2° possibilité, pour ceux 2° possibilité, pour ceux qui ont beaucoup d'enregistrements à récupérer

...

Avertissement

Si bbb-recorder n'a pas été installé avec le bon utilisateur (pod), les fichiers vidéos générés ne seront sûrement pas accessibles par l'utilisateur Pod et ne pourront alors être encodés par les serveurs d'encodage.

Dans les faits, cela se traduit par un 1° encodage réussi : la présentation Web de BBB sera convertie en fichier vidéo, mais ce fichier vidéo ne sera pas accessible à Pod et ne pourra être converti en vidéo Pod.

Paramétrage de bbb-

...

recorder

  • Édition du fichier de configuration ~/bbb-recorder/.env pour paramétrer le RTMP (inutile ici) et surtout le répertoire des vidéos.

...

  • USE_IMPORT_VIDEO : utilisation (True/False) du module d'import des vidéos pour Pod

  • USE_IMPORT_VIDEO_BBB_RECORDER : utilisation (True/False) du plugin bbb-recorder pour le module import-vidéo; utile pour convertir une présentation BigBlueButton en fichier vidéo.

  • IMPORT_VIDEO_BBB_RECORDER_PLUGIN : Répertoire du plugin bbb-recorder (voir la documentation https://github.com/jibon57/bbb-recorder).
    bbb-recorder doit être installé dans ce répertoire, sur tous les serveurs d'encodage.
    bbb-recorder crée un répertoire Downloads, au même niveau, qui nécessite de l'espace disque.

  • IMPORT_VIDEO_BBB_RECORDER_PATH : Répertoire qui contiendra les fichiers vidéo générés par bbb-recorder.

...

Script migrate_bbb_recordings

Ce script est accessible dans Pod, dans le répertoire pod/video/management/commands/migrate_bbb_recordings.


Avertissement
titleCe script nécessite d'être modifié

Ce script ne peut être exécuté comme cela, il est indispensable de réaliser un paramétrage, indépendant de la configuration de Pod, supplémentaire directement dans ce fichier.

Fonctionnement du script

Comme évoqué ci-dessus, ce script offre 2 possibilités, à savoir :

  • 1° possibilité, pour ceux qui ont peu d'enregistrements à récupérer

Ce script va convertir les présentations, de l'ancienne architecture BBB, en fichiers vidéo (via le plugin bbb-recorder) et positionner ces fichiers dans le répertoire d'un enregistreur pour la Revendication des enregistrements (cf. https://www.esup-portail.org/wiki/x/DgB8Lw)

Bien sûr, s'il y a déjà des présentations en vidéo, le fichier vidéo sera directement copié.

Une fois que toutes les vidéos ont été encodées, l'architecture BBB locale peut être arrêtée. Les usagers devront aller chercher leurs vidéos dans l'onglet Revendication des enregistrements dans Pod.

Ceci est possible en utilisant le paramètre --use-manual-claim et la configuration directement dans ce fichier.

Info
titleImpact de l'architecture

Veuillez noter qu'en fonction de l'architecture de votre Pod, l'encodage sera effectué soit via des tâches Celery, soit directement, l'un après l'autre.

N'hésitez pas à tester sur quelques enregistrements et de lancer ce script en arrière-plan (en utilisant &).


  • 2° possibilité, pour ceux qui ont beaucoup d'enregistrements à récupérer

L'idée est de laisser le temps aux usagers de choisir par eux-mêmes les enregistrements qu'ils souhaitent conserver (il n'est pas possible et utile de tout convertir).

Pour cela, il faudra laisser l'ancien serveur BBB/Scalelite ouvert au moins pendant quelques mois (juste pour accéder aux enregistrements).

Côté script, si besoin, il faudra un accès à la base de données de Moodle pour savoir qui a réalisé quoi.

Ainsi, pour chaque enregistrement BBB, le script va créer une ligne dans Mes vidéos externes, de type BigBlueButton, pour les modérateurs (qui seront créés si besoin dans la base de Pod).
Ils pourront alors par eux-mêmes importer ces enregistrements dans Pod. Au cas où, si des enregistrements ne sont pas identifiables (par exemple en provenance d'autres sources que Pod ou Moodle), ils seront associés à un administrateur (à paramétrer dans le script).

De plus, si l'accès à la base de Moodle le permet, un message d'information sera positionné directement dans Moodle, au niveau des sessions BBB concernées.

Ceci est possible en utilisant le paramètre --use-import-video, le paramètre --use-database-moodle (optionnel) et la configuration directement dans ce fichier.


Ce script vous permet également de :

  • simuler ce qui sera fait via le paramètre --dry

  • de ne traiter que certaines lignes via les paramètres --min-value-record-process  et --max-value-record-process.


Info
titleScript testé avec Moodle 4
Ce script a été testé avec Moodle 4.

Paramétrage interne au script

ParamètreDescriptionValeur par défaut / Format
SCRIPT_BBB_SERVER_URLAncienne URL du serveur BigBlueButton/Scalelite'https://bbb.univ.fr/'
SCRIPT_BBB_SECRET_KEYClé BigBlueButton ou Scalelite LOADBALANCER_SECRET'xxxxxxxxxx'
SCRIPT_PLAYBACK_URL_23

Est-ce que la version de BBB est supérieure à 2.3, vis-à-vis des URLs de playback ?

Utile pour la lecture de présentations au format 2.0 (pour BBB <= 2.2) ou 2.3 (pour BBB >= 2.3)

True
SCRIPT_RECORDER_IDEnregistreur utilisé pour obtenir les enregistrements BBB (utile avec --use-manual-claim)1
SCRIPT_ADMIN_ID

Administrateur auquel les enregistrements seront ajoutés si les modérateurs n'ont pas été identifiés (utile avec --use-import-video)

1
DB_PARAMSParamètres de connexion à la base de données Moodle (utile avec --use-import-video et --use-database-moodle){
    'host': 'bddmoodle.univ.fr',
    'database': 'moodle',
    'user': 'moodle',
    'password': '',
    'port': '',
    'connect_timeout': '10'
}
SCRIPT_INFORMMessage d'information qui sera défini dans la base de données Moodle, table mdl_bigbluebuttonbn, champ intro (utile avec --use-import-video et --use-database-moodle)Message prévisionnel pour l'université de Montpellier

Arguments du script

ArgumentDescriptionValeur par défaut / Format
--use-manual-claimUtiliser la revendication manuelleFalse
--use-import-videoUtiliser le module d'importation vidéo pour obtenir des enregistrementsFalse
--use-database-moodleUtiliser la base de données Moodle pour rechercher des modérateurs. N'est utile que lorsque --use-import-video a été mis à True.False
--min-value-record-processValeur minimale des enregistrements à traiter1
--max-value-record-processValeur maximale des enregistrements à traiter10000
--drySimule ce qui sera réaliséFalse

Exemples et cas d'utilisation

Voici quelques exemples et cas d'utilisation de ce script, à ne lancer qu'après avoir réalisé le paramétrage interne. N'hésitez pas à faire des essais sur quelques lignes et d'utiliser le mode dry pour comprendre ce qui sera réalisé.

Avertissement
titleSauvegarde

Comme dans toute migration, penser à réaliser les sauvegardes adéquates avant d'exécuter ce script sans simulation.

Typiquement, à minima la base de données de Pod, voire la base de Moodle (si vous y accédez en écriture) dans le cas de --use_import-video et --use-database-moodle.



Info

Ne pas hésiter à ignorer le warnings en mettant -W ignore.


 * Utilisation de la réclamation pour tous les enregistrements, en simulation uniquement :
 python -W ignore manage.py migrate_bbb_recordings --use-manual-claim --dry

 * Utilisation de la revendication d'enregistrement pour seulement 2 enregistrements, en simulation uniquement :
 python -W ignore manage.py migrate_bbb_recordings --min-value-record-process=1
 --max-value-record-process=2 --use-manual-claim --dry &

 - Utilisation d'un module d'importation vidéo externe, avec accès à la base de données Moodle pour
 pour tous les enregistrements, en simulation uniquement :
 * python -W ignore manage.py migrate_bbb_recordings --use-import-video
 --use-database-moodle --dry

Exploitation

Interface d'administration

...