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.

...

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

...

  • USE_BBB_LIVE : utilisation (True/False) de la gestion des directs BBB pour Pod

  • USE_BBB_LIVE_DOWNLOADING : utilisation (True/False) de l'enregistrement des directs BBB pour Pod

  • BBB_NUMBER_MAX_LIVES : nombre maximum de directs BBB simultanées gérés par le système (calculé par rapport au nombre de serveurs et d'instances de bbb-liveStreaming que vous avez configuré).

Exploitation

Dans le cas normal, où tout se passe bien, ce système ne devrait pas engendrer d'exploitation particulière et vous ne recevrez d'emails de la part du système qu'en cas d'erreurs.

Cependant, une interface d'administration a été prévue afin de suivi des directs BigBlueButton mais également pour réaliser l'exploitation en cas d'incidents.

L'interface d'administration

Via l'administration de Pod, vous aurez accès au menu, BBB, qui contient - en plus des options Sessions et Participants (cf. le système de publication) - l'option Directs.

Image Removed

Les directs BigBlueButton

Voici l'interface de listing des directs réalisés dans BigBlueButton :

Image Removed

Il est possible de modifier les données si nécessaire.

Image Removed

Exploitation du script lancé par le job CRON du serveur Pod

Pour la gestion des directs BigBlueButton, ce job CRON permet d'associer un utilisateur de Pod à un utilisateur de BigBlueButton.

Pour voir ce que ce script réalise, il est possible de :

...


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.

Image Added

Exploitation

Dans le cas normal, où tout se passe bien, ce système ne devrait pas engendrer d'exploitation particulière et vous ne recevrez d'emails de la part du système qu'en cas d'erreurs.

Cependant, une interface d'administration a été prévue afin de suivi des directs BigBlueButton mais également pour réaliser l'exploitation en cas d'incidents.

L'interface d'administration

Via l'administration de Pod, vous aurez accès au menu, BBB, qui contient - en plus des options Sessions et Participants (cf. le système de publication) - l'option Directs.

Image Added


Les directs BigBlueButton

Voici l'interface de listing des directs réalisés dans BigBlueButton :

Image Added

Il est possible de modifier les données si nécessaire.

Image Added

Exploitation

Il ne reste plus qu'à exécuter ce script /django_projects/podv2/pod/video/management/commands/bbb.py manuellement via la commande python manage.py bbb main :

Bloc de code
languagebash
titleExécution du script manuellement, compte %userpod%
cd /data/www/%userpod%/django_projects/podv2
workon django_pod
python manage.py bbb main

En mode débug, le script affiche l'ensemble des traitements réalisés :

Image Removed

...

du script lancé par le job CRON du serveur

...

Pod

Pour la gestion des directs BigBlueButton, ce job CRON permet d'associer un utilisateur de Pod à un utilisateur de BigBlueButton.

Pour voir ce que ce script réalise, il est possible de :

  • soit il faut configurer Pod pour être en mode debug (cf. settings_local.py).
    (avertissement) Attention : le mode debug ne doit pas être activé dans un environnement de production.

  • soit modifier directement le script /django_projects/podv2/pod/video/management/commands/bbb.py pour qu'il affiche directement les traitements réalisés (cf. fonction print_if_debug).

Il ne reste plus qu'à exécuter ce script /django_projects/podv2/pod/video/management/commands/bbb.py manuellement via la commande python manage.py bbb main :

Bloc de code
languagebash
titleExécution du script manuellement, compte %userpod%
cd /data/www/%userpod%/django_projects/podv2
workon django_pod
python manage.py bbb main

En mode débug, le script affiche l'ensemble des traitements réalisés :

Image Added

Exploitation du script lancé par le job CRON du serveur bbb-pod-live

Le script PHP bbb-pod-live.php écris dans un fichier de log (1 fichier par jour) dans le répertoire de logs (cf. PHYSICAL_LOG_ROOT).

En mode débug :

  • le fichier de log (AAAA-MM-JJ_bbb-pod-live.log) contient l'ensemble des requêtes réalisées (création de diffuseur, connexion à l'API Pod, démarrage du direct...)
  • un autre fichier de log (id.log) est créé et contient les logs du container Docker bbb-liveStreaming. Son id correspond au numéro de direct dans la base de Pod.

Exploitation courante/exceptionnelle

Un enseignant ne voit aucune session BBB en cours

Typiquement, si un enseignant lance une session dans BigBlueButton, se connecte à Pod et ne voit aucune session en cours dans la partie "Réaliser un direct BigBlueButton" dans les 2 minutes, c'est que le job CRON de Pod n'a pas réussi à trouver une correspondance entre l'utilisateur BBB et l'utilisateur dans Pod.

Image Added


Il est alors possible de modifier directement cette assignation dans l'administration, module BBB / Participants.

Image Added


Arrêter un direct BigBlueButton manuellement

Si nécessaire, il est possible d'arrêter un direct BigBlueButton manuellement via la procédure suivante :

  • Accéder, dans l'administration, au module BBB / Directs puis cliquer sur le direct concerné (profitez en pour identifier le serveur et le process ayant réalisé le direct) :

Image Added

  • Positionner une date de fin et mettez le statut du direct à 2 : direct arrêté.

  • Sur le serveur concerné, dans le répertoire bbb-liveStreaming concerné, exécuté la commande : docker-compose down.

Bloc de code
languagebash
titleExemple de commande d'arrêt
# Exemple de commande à exécuter sur le serveur bbb-pod-live n°1, pour le processus 1 (Serveur : 1/1 en base de données Pod).
cd /home/%USER/bbb-pod-live/bbb-live-streaming1
docker-compose down

Le script PHP bbb-pod-live.php écris dans un fichier de log (1 fichier par jour) dans le répertoire de logs (cf. PHYSICAL_LOG_ROOT).

En mode débug :

  • le fichier de log (AAAA-MM-JJ_bbb-pod-live.log) contient l'ensemble des requêtes réalisées (création de diffuseur, connexion à l'API Pod, démarrage du direct...)
  • un autre fichier de log (id.log) est créé et contient les logs du container Docker bbb-liveStreaming. Son id correspond au numéro de direct dans la base de Pod.

Exploitation courante

Un enseignant ne voit aucune session BBB en cours

Typiquement, si un enseignant lance une session dans BigBlueButton, se connecte à Pod et ne voit aucune session en cours dans la partie "Réaliser un direct BigBlueButton" dans les 2 minutes, c'est que le job CRON de Pod n'a pas réussi à trouver une correspondance entre l'utilisateur BBB et l'utilisateur dans Pod.

Image Removed

Il est alors possible de modifier directement cette assignation dans l'administration, module BBB / Participants.

...