Synchronisation de cohortes et de rôles dans Moodle

Synchronisation de cohortes et de rôles dans Moodle

Contexte

Les cohortes permettent de regrouper des utilisateurs d'un site Moodle et ainsi faciliter des opérations avec ces ensembles de comptes. Il est aussi possible d'automatiser l'ajout d'utilisateurs dans ces cohortes selon une logique précise et de lier l'appartenance à une cohorte pour y octroyer automatiquement un rôle système aux utilisateurs correspondants. Cet article présente comment il est possible d'automatiser cet ajout aux cohortes et l'octroi d'un rôle à l'aide de plugins tiers.

Pour l'ajout automatique d'utilisateurs dans des cohortes, deux plugins sont suggérés par Collecto: Membres de cohorte selon les champs de profil (local_profilecohort) et Cohortes dynamiques (tool_dynamic_cohorts). Pour assigner un rôle système automatiquement selon l'appartenance à une cohorte, nous suggérons l'utilisation de Synchronisation de rôles par cohortes (local_cohortrole).

Membres de cohorte selon les champs de profil (local_profilecohort)

Ce plugin permet d'ajouter automatiquement des utilisateurs à une cohorte selon des informations contenues dans un champ personnalisé d'un profil Moodle. L'ajout à une cohorte se fait sur la base de règles que l'admin d'un site met en place. Une fois la règle mise en place, les utilisateurs sont ajoutés automatiquement dans la cohorte correspondante. Cela comprend aussi les utilisateurs nouvellement créés.

Info
Pour vérifier si votre site Moodle possède ce plugin, vous devez consulter la Vue d'ensemble des plugins et chercher pour local_profilecohort. Vous pouvez atteindre cette vue en ajoutant /admin/plugins.php à votre domaine de site (par exemple, https://monsitemoodle.qc.ca/admin/plugins.php) ou par le chemin d'accès Administration du site → Plugins → Vue d'ensemble des plugins. Pour en faire la demande d'installation, veuillez nous écrire à partir de notre portail d'aide.
Notes
Un champ personnalisé est un champ ajouté aux profils des utilisateurs d'un site Moodle. Pour plus d'informations, veuillez consulter la documentation officielle de Moodle: https://docs.moodle.org/4x/fr/Champs_du_profil

Pour débuter la mise en place, vous pouvez atteindre la page de configuration du plugin en ajoutant /local/profilecohort/cohorts.php à votre domaine de site (par exemple, https://monsitemoodle.qc.ca/local/profilecohort/cohorts.php) ou par le chemin d'accès Administration du site → Utilisateurs → Comptes → Membres de cohorte selon les champs de profil. À partir de cette page, quatre onglets sont disponibles:


Afficher / Modifier une règle: cet onglet permet de modifier des règles existantes.
Ajouter une nouvelle règle: c'est ici qu'on peut créer de nouvelles règles.
Membres des cohortes: c'est à partir de cet onglet qu'on peut voir le nombre d'utilisateurs ajoutés dans chaque cohorte gérée par le plugin
Sélectionnez les cohortes à gérer: c'est ici qu'on détermine quelle cohorte le plugin peut gérer.

Sélectionnez les cohortes à gérer

La première étape est de vérifier que des cohortes existent afin de pouvoir les gérer. Celles-ci doivent être créées dans la section Cohortes de l'administration de votre site Moodle. Elles seront ensuite disponibles dans l'onglet Sélectionnez les cohortes à gérer.

Dans Sélectionnez les cohortes à gérer, cochez la ou les cohortes que vous voulez rendre disponibles afin d'être sélectionnées lorsque vous créez une nouvelle règle. Cliquez sur le bouton Enregistrer en bas de page pour confirmer votre sélection.

Alert
Lorsqu'une cohorte est sélectionnée ainsi, il n'est plus possible de gérer celle-ci à partir de la page Cohortes. Il faudra venir décocher cette cohorte dans Sélectionnez les cohortes à gérer afin de pouvoir la gérer à partir de la page Cohortes (par exemple, pour la supprimer ou la cacher).

Ajouter une nouvelle règle

Dans Ajouter une nouvelle règle, composez la règle selon la logique qui correspond. Vous devez commencer par choisir un champ personnalisé qui sera utilisé par cette règle en cliquant sur le menu déroulant Ajouter une règle pour les champs de profil d'utilisateur personnalisés.... Après avoir choisi un champ personnalisé, vous devrez compléter la règle avec la logique qui déterminera si un utilisateur doit être ajouté à la cohorte choisie ou non. Les options peuvent varier selon la nature du champ personnalisé.

Quelques exemples

Champ personnalisé de type menu déroulant - Un champ de profil dont l'utilisateur doit sélectionner une valeur dans un menu déroulant ne permettra que de choisir les valeurs disponibles dans ce menu ou les options Est défini et N'est pas défini. On doit ensuite choisir à quelle cohorte ajouter les utilisateurs correspondants. Dans la capture suivante, tous utilisateurs pour lesquels aucune valeur n'a été sélectionnée pour le champ exemple seront ajoutés à cohorte1.


Champ personnalisé de type Saise de texte ou Zone de texte - Un champ de profil dans lequel l'utilisateur peut inscrire du texte brut ou enrichi offre plus de critères dans la logique de la règle. Ainsi, le premier menu déroulant de la règle permet de choisir les critères suivants: Correspond (la valeur exacte), Contient (inclut cette valeur), Ne correspond pas (pas cette valeur exacte), Ne contient pas (n'inclus pas cette valeur), Est défini / N'est pas vide, N'est pas défini / Vide.

Lorsque la seconde zone de saisie est disponible, on peut y inscrire une valeur. Selon le critère précédent, Moodle inclura les utilisateurs dont la valeur inscrite apparaît ou n'apparaît pas dans le champ personnalisé correspondant. On doit ensuite choisir à quelle cohorte ajouter les utilisateurs correspondants. Dans la capture suivante, tous les utilisateurs pour lesquels la valeur @etu-cegep.qc.ca apparaît pour le champ Type Saisie de texte seront ajoutés à Cohorte exemple.

Info
Une règle est appliquée et les utilisateurs correspondants ajoutés à une cohorte selon la fréquence déterminée dans la tâche programmée Mettre à jour les cohortes d’après les champs de profil d’utilisateur personnalisés. \local_profilecohort\task\update_cohorts. Cette tâche est configurée par défaut pour se répéter à chaque 5 minutes.

Afficher / Modifier une règle

Après avoir créé une règle, celle-ci apparaît dans cet onglet. Ici, vous pouvez modifier les règles que vous et les autres admin de votre site Moodle avez créées. Vous pouvez aussi lier plusieurs règles ensemble, changer l'ordre de celles-ci ou les supprimer. Chaque règle est traitée dans l'ordre indiqué sur cette page. Un utilisateur dont les champs de profil personnalisés correspondent à plusieurs règles sera ajouté aux différentes cohortes correspondantes.

Modifier une règle

On peut modifier une règle comme à sa création. On peut également modifier plusieurs règles simultanément avant d'Enregistrer nos modifications avec le bouton en bas de page. Si après avoir modifié une règle, des utilisateurs ne correspondent plus aux critères de celle-ci, ils seront retirés de la cohorte.

Changer l'ordre des règles

Sous les critères d'une règle, un paramètre supplémentaire permet de déterminer l'ordre selon lequel les règles sont appliquées. En modifiant dans le menu déroulant le nombre associé à déplacer à la position, la page affichera le nouvel ordre désiré en déplaçant toutes les règles après la position modifiée d'un rang vers le bas. Il faut quand même Enregistrer les modifications pour que ce nouvel ordonnancement prenne effet.


Lier plusieurs règles

On peut lier plusieurs règles ensemble afin d'avoir une logique plus complexe. Selon l'ordre des règles, on peut cocher l'option La prochaine règle doit aussi correspondre pour rejoindre la cohorte. Après avoir été cochée, cette option modifiera la règle suivante, placée en dessous. La cohorte associée à cette seconde règle sera retirée et une tuile viendra encadrer les deux règles liées ainsi. On peut ensuite répéter cette action sur la seconde règle de cette paire, ce qui viendra ajouter une troisième règle placée en dessous. Comme pour les autres modifications, il faudra cliquer sur le bouton Enregistrer en bas de page pour que les liaisons prennent effet.

En liant plusieurs règles, cela vient ajouter des critères supplémentaires ou des champs additionnels à la logique de la règle. Ainsi, une combinaison de règles peut requérir d'un utilisateur qu'il ait une combinaison de valeurs précises dans plus d'un champ personnalisé. Dans la capture d'écran suivante, un utilisateur ne devra avoir dans son profil Moodle aucune valeur définie pour le champ exemple, devra avoir une valeur qui contient @etu-cegep.qc.ca dans le champ Type Saisie de texte et avoir la case correspondante cochée pour le champ nouveau champ pour être ajouté dans la cohorte Cohorte exemple.


Supprimer une règle

Lorsqu'on coche l'option Supprimer une règle placée sous les critères de celle-ci, Moodle vient rayer le texte des critères de cette règle et y ajouter une couleur rouge. Après avoir cliqué sur le bouton Enregistrer en bas de page, la règle sera supprimée et n'apparaîtra plus dans cet onglet. Si après avoir supprimé une règle, des utilisateurs ne correspondent plus à une règle indiquant qu'ils d'être ajoutés dans une cohorte, ils seront retirés de celle-ci.

Idea
Il est possible que l'utilisation de champs de profil personnalisés ou les critères offerts dans les règles de ce plugin ne conviennent pas à votre besoin. Nous suggérons alors d'utiliser le plugin de Cohortes dynamiques (tool_dynamic_cohorts).

Cohortes dynamiques (tool_dynamic_cohorts)

Ce plugin permet d'ajouter automatiquement des utilisateurs à une cohorte selon des informations contenues dans un champ personnalisé d'un profil Moodle. L'ajout à une cohorte se fait sur la base de règles que l'administrateur d'un site met en place. Une fois la règle mise en place, les utilisateurs sont ajoutés automatiquement dans la cohorte correspondante.

Il est pratique pour procéder à l’inscription automatique dans un cours Moodle, notamment pour les formations obligatoires.

Info
Info

Pour vérifier si votre site Moodle possède ce plugin, vous devez consulter la Vue d’ensemble des plugins et rechercher le plugin Cohortes dynamiques (tool_dynamic_cohorts).
Vous pouvez atteindre cette vue à partir de l'Administration du site → l'onglet Plugins → Vue d’ensemble des plugins.
Le plugin est absent et vous souhaitez l'utiliser? Veuillez nous écrire 
à partir de notre portail d’aide, pour en faire une demande d’installation.
Notes
Un champ personnalisé est un champ ajouté aux profils des utilisateurs d'un site Moodle. Pour plus d'informations, veuillez consulter la documentation officielle de Moodle: https://docs.moodle.org/4x/fr/Champs_du_profil

Pour utiliser ce plugin, les cohortes (https://docs.moodle.org/4x/fr/Cohortes) que vous souhaitez utiliser doivent être préalablement créées. Le plugin permet ensuite d’alimenter ces cohortes par une suite logique de conditions. 

Pour débuter la mise en place, vous pouvez atteindre la page de configuration du plugin à partir de l’Administration du site → Onglet Utilisateurs → Section Comptes. Sous cohorte dynamique, deux sections sont disponibles : Paramètres et Gérer les règles.

Paramètres


Deux configurations sont affichées dans le menu Paramètres
  1. Retirer les membres : Fonctionnalité qui permet le retrait automatique des membres d’une cohorte lorsqu’elle est supprimée. Nous recommandons de laisser cette option désactivée pour éviter la perte de données lors d’une suppression par erreur.
  2. Traitement en temps réel : Permet d’ajouter les membres à une cohorte immédiatement. Dans le cas d’un traitement massif d’un grand nombre d’utilisateurs, cette fonctionnalité peut entraîner des ralentissements du site. Nous recommandons de désactiver cette fonction pour le traitement de cohorte de 100 utilisateurs et plus.

Gérer les règles

Cette page liste l'ensemble des règles de votre site Moodle, qu'elles soient actives ou non.

Ajouter une nouvelle règle

En appuyant sur le bouton Ajouter une nouvelle règle, une fenêtre contextuelle s'affiche




  1. Nom de la règle (obligatoire) : Inscrivez un nom significatif pour la règle
  2. Description (facultatif) : Champ textuel dans lequel il peut être pertinent d’inscrire la logique et le besoin de la règle.
  3. Cohorte : Sélectionnez la cohorte préalablement créée. Si vous n’avez pas créé votre cohorte, appuyez sur gérer les cohortes qui vous redirigera vers la page de gestion des cohortes.
  4. Condition : Le plugin permet l’utilisation de multiples conditions. Ces conditions sont basées sur les métadonnées et les champs de profil des utilisateurs Moodle.
Premier niveau des conditions d'une règle

La condition la plus commune est celle du champ de profil standard de l’utilisateur. Une fois cette condition sélectionnée, vous devez indiquer le champ spécifique ainsi que la logique.

Exemple des choix pour les champs de profil standard de l'utilisateur


Pour sauvegarder la règle, appuyez sur Enregistrer.
Notes
Le menu déroulant s’adapte en fonction du champ sélectionné. Par exemple, les champs à choix multiples comme la méthode d’authentification, ne proposent qu’une logique « égal ou n’est pas égal », tandis que les champs textuels, comme l’adresse courriel, offrent plus de possibilités de restrictions.
Exemple des restrictions pour un champ textuel

Ajoutez le nombre de conditions pertinentes selon le contexte de votre cohorte en appuyant de nouveau sur Ajouter une condition. Une fois les conditions sélectionnées, il est nécessaire d’implémenter une logique entre elles. Les opérateurs disponibles sont les suivants :
ET (AND) : l’utilisateur doit remplir l’ensemble des conditions listées pour être automatiquement membre de la cohorte.
OU (OR) : L’utilisateur doit remplir l’une des conditions listées pour être automatiquement membre de la cohorte.

Appuyez sur enregistrer pour créer la règle.

La règle s’affiche désormais dans la liste des règles.


  1. Pour activer ou désactiver la règle, appuyer sur les points de suspension verticaux puis sur l’icône de l’œil.
  2. Pour modifier la configuration de la règle, appuyer sur les points de suspension verticaux > Modifier.
  3. Pour supprimer la règle, appuyer sur les points de suspension verticaux > Supprimer.

Synchronisation de rôle selon une cohorte (local_cohortrole)

Info
Ce plugin est en attente de traduction. Les captures d'écrans et le nom des éléments du plugin seront corrigés lorsque la traduction en français sera disponible.
Ce plugin permet de synchroniser l'attribution d'un rôle système aux utilisateurs qui font partie d'une cohorte. Ainsi, on peut octroyer ou retirer des permissions au niveau système à des utilisateurs selon leur appartenance à une cohorte.

Pour vérifier si votre site Moodle possède ce plugin, vous devez consulter la Vue d'ensemble des plugins et chercher pour local_cohortrole. Vous pouvez atteindre cette vue en ajoutant /admin/plugins.php à votre domaine de site (par exemple, https://monsitemoodle.qc.ca/admin/plugins.php) ou par le chemin d'accès Administration du site → Plugins → Vue d'ensemble des plugins. Pour en faire la demande d'installation, veuillez nous écrire à partir de notre portail d'aide.

Idea
Si vous avez créé un rôle système personnalisé et que vous désirez rapidement ajouter ce rôle à des utilisateurs, ce plugin permet d'automatiser l'attribution de ce rôle. Ainsi, dans le cas où vous avez déjà automatisé l'ajout des utilisateurs à une cohorte, vous aurez complètement automatisé l'attribution du rôle après la mise en place de cette synchronisation, car celle-ci s'appliquera aussi aux utilisateurs nouvellement créés.

Créer une nouvelle synchronisation de rôle

Pour débuter la création d'une nouvelle synchronisation, vous devrez vous rendre sur la page Cohort role synchronization. Vous pouvez l'atteindre en ajoutant /local/cohortrole/index.php à votre domaine de site (par exemple, https://monsitemoodle.qc.calocal/cohortrole/index.php) ou par le chemin d'accès Administration du site → Utilisateurs → Cohort role synchronization.

Sur cette page, vous pourrez voir les synchronisations de rôle selon une cohorte déjà actives pour votre site. Pour en créer une nouvelle, cliquez sur le bouton Ajouter.

Pour définir une nouvelle synchronisation, vous devrez sélectionner une cohorte dans le menu déroulant correspondant et le rôle système à synchroniser dans le second menu déroulant. Dans la capture d'écran suivante, cette nouvelle synchronisation viendra attribuer le rôle Gérer les questions au niveau système à tous les utilisateurs qui font partie de Cohorte exemple. Cela comprend aussi les utilisateurs qui seront ajoutés plus tard à cette cohorte.


Info
Pour voir quels utilisateurs ont un rôle système d'attribué, il faudra consulter la page Attribution des rôles système pour le rôle correspondant. On peut atteindre cette page en ajoutant /admin/roles/assign.php?contextid=1 à son domaine de site (par exemple, https://monsitemoodle.qc.ca/admin/roles/assign.php?contextid=1) ou par le chemin d'accès Administration du site → Utilisateurs → Permissions → Attribuer les rôles dans Système)

Supprimer une synchronisation

À partir de la page Cohort role synchronization, il est possible de supprimer une synchronisation en cliquant sur l'icône de la corbeille  à la ligne correspondante. Supprimer une synchronisation viendra retirer aux utilisateurs le rôle système que la synchronisation leur a attribué.

    • Related Articles

    • FAQ thématique pour les Administrateurs de Moodle

      AVERTISSEMENT: Ce document a été rédigé et enrichi au fil du temps et des différentes versions de Moodle. Il se peut que certaines informations ne soient pas à jour ou soient devenues caduques. Nous n’avons malheureusement le temps de tout valider ...
    • Tableau de bord et Mes cours - comment paramétrer ces deux pages dans Moodle

      Avant d'en faire un article officiel, je lance ici ce que j'ai compris du bidule grâce entre autres à Olivier Valentin (https://moodle.org/mod/forum/discuss.php?d=454251). Considérer ce texte comme un work in progress livré sans garantie. À partir de ...
    • Désigner l'administrateur principal dans Moodle

      Pour faciliter nos communications lors d'interventions techniques (mise à jour, redémarrage, intervention d'urgence ou tout autre situation), nous invitons tous les établissements à bien désigner l'administrateur principal de chacun de ses sites ...
    • Ajouter en lot un attribut dans Moodle (profil)

      Voici comment régler le problème de champs manquants dans le profil de certains utilisateurs dans Moodle. Ici, on se réfère spécifiquement au problème d'OpenID Connect qui ne laisse plus passer le champ numéro d'identification. Sélectionner les ...
    • Tâches en échec après passage à Moodle 4.5

      Contexte À la suite de la mise à jour majeure de Moodle vers la version 4.5, des notifications de tâches en échec sont transmises aux personnes ayant un compte administrateur. Souvent, ces tâches étaient déjà en échec avant le changement de version, ...