Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Chamilo offre une fonctionnalité discrète mais pratique dans le cas de l'utilisation du portail pour plusieurs catégories d'utilisateurs, pour lesquels il faut considérer la disponibilité du portail sur un nom de domaine distinct, avec un style visuel distinct et une pré-sélection de seulement certains cours et certains utilisateurs.
Imaginez que les 12 facultés de votre université veuillent montrer leur portail sous une apparence distincte (chacune veut sa variation de logo dans l'en-tête et une couleur de fond légèrement différente). De plus, chacune d'entre elles dispose de ses propres enseignants, qui « parfois » donnent cours dans plus d'une faculté. Les étudiants également sont des étudiants uniquement de cette faculté (sauf exceptions). Enfin, les cours sont différents, sauf dans certains cas particuliers pour des cours très génériques.
Imaginez que votre entreprise propose des cours de sécurité du travail à plusieurs clients. Imaginez maintenant que l'un de ces clients soit Coca-Cola, et que l'autre soit Pepsi. Évidemment, vous voulez éviter que ces deux clients se rendent compte que vous utilisez le même portail pour leur enseigner la sécurité du travail. Évidemment aussi, vous voudriez réutiliser le même cours, mais sans que les apprenants ne voient les contributions des apprenants de l'autre entreprise.
Nous appelons cette solution le multi-URL. En activant le multi-URL, vous activez en réalité le mécanisme suivant :
vous utilisez la même base de code
vous utilisez la même base de données
un portail « maître » (qui n'est pas utilisé directement par vos clients) permet de définir les portails « esclaves »
chaque cours est créé dans un portail « esclave » et n'est visible que dans ce portail esclave
chaque utilisateur est créé dans un portail esclave, et n'est visible que dans ce portail esclave et n'a accès qu'à ce portail
chaque portail esclave utilise un nom de domaine (ou de sous-domaine) différent
chaque portail peut utiliser son propre style graphique
un (ou plusieurs) administrateur peut être assigné à chaque portail esclave. Cet administrateur n'a pas accès aux paramètres de configuration globaux ni aux utilisateurs des autres portails
une session peut utiliser un cours global, mais chaque session n'existe jamais que dans un et un seul portail
L'utilisation de la même base de données permet cependant certaines fonctionnalités « bonus ».
un cours peut être rendu « global » et accessible depuis d'autres plates-formes (selon sélection) par l'administrateur global
un utilisateur (apprenant, enseignant ou administrateur) peut se voir donner accès à d'autres portails par l'administrateur global
Pour configurer le mode multi-URL, vous aurez besoin
d'un accès à la configuration de votre serveur Web
d'un accès à la définition de vos noms de domaines
d'un accès au fichier de configuration de Chamilo
La marche à suivre est :
de modifier app/conf/configuration.php et dé-commenter la ligne qui dit : $_configuration['multiple_access_urls']=true;
d'ajouter des directives SiteAlias dans votre VirtualHost d'Apache HTTPd (rien de plus)
de définir les noms de domaines ou sous-domaines pour qu'ils dirigent vers le même serveur
d'aller dans votre page d'administration de Chamilo et de suivre le lien « Configurer l'accès via URLs différents (branding) »
de définir votre URL principal (renommer localhost)
d'ajouter les sous-portails voulus et y activer un administrateur local pour chacun
Illustration : Administration - Multi-URLs
Vous avez déjà un serveur CAS et un LDAP (ou Active Directory) et vous voulez que Chamilo utilise ces 2 ressources, cette page vous guide pour mettre en place une configuration standard avec les valeurs recommandées par défaut.
Comme utilisateur "administrateur", allez dans Chamilo sur la page d'administration et dans le bloc "plateforme" et cliquez sur le lien "Paramètres de configuration de Chamilo", cliquez sur l'icône CAS.
On obtient ainsi la liste des options de configuration liées à CAS que l'on peut configurer ainsi :
Enable CAS authentication : Yes
Main CAS server : URL.DEVOTRESERVEUR.CAS
Main CAS server URI :
Main CAS server port : 443
Main CAS server protocol : CAS 2 (à adapter en fonction de ce que vous avez comme configuration de votre serveur)
Enable CAS user addition : Create a user account for any new CAS-authenticated user, from LDAP
Update CAS-authenticated user account information from LDAP : Yes
Si vous voulez tester la connexion par CAS indépendamment du LDAP, il est possible de mettre la configuration suivante pour ces 2 dernières options :
Enable CAS user addition : Create a user account for any new CAS-authenticated user, from scratch
Update CAS-authenticated user account information from LDAP : No
Pour tester, nous vous conseillons d'activer le plugin permettant d'ajouter un bouton sur la page de login (il sera désactivé quand on mettra la redirection automatique vers le serveur CAS si l'utilisateur n'est pas encore authentifié). Pour se faire, allez sur la page d'administration dans le bloc plateforme et cliquez sur le lien "plugin" puis activez le plugin "Add a button to login using CAS" et entrez la configuration suivante :
title : "CAS Connexion"
region : "login_bottom"
Une fois que la connexion CAS est validée avec cette configuration on peut finaliser la mise ne œuvre en adaptant la configuration dans le fichier app/config/auth.conf.php On trouve l'ensemble des options possibles dans le fichier app/config/auth.conf.dist.php On peut voir un bloc CAS à la fin qui contient ceci :
Nous vous conseillons de modifier ceci une fois que vous êtes en production et que la connexion avec le bouton CAS en page d'accueil fonctionne correctement :
'force_redirect' => true,
Ceci forcera la redirection automatique vers le serveur CAS si l'utilisateur n'est pas déjà authentifié. Attention qu'il faudra mettre en place une page de login local si vous avez besoin d'accéder à Chamilo en vous connectant avec des comptes qui ne sont pas sur CAS.
'noCasServerValidation' => false,
Pour que la création des comptes puisse se faire en récupérant les champs des utilisateurs depuis le LDAP, il faut pour cela configurer la connexion LDAP. Ceci se fait également dans le fichier de configuration app/config/auth.conf.php pour lequel on trouve toutes les options possibles dans le fichier app/config/auth.conf.dist.php Voici un exemple avec le mail comme identifiant dans le LDAP et également pour le CAS.
Il faut donc adapter cette configuration pour la connexion au LDAP et pour la correspondance des champs entre le LDAP et Chamilo. La configuration de la connexion se fait dans le tableau extldap_config. La correspondance des champs se fait dans le tableauextldap_user_correspondance. On peut voir pour la langue de l'utilisateur que l'on a une valeur fixe "english" qui est précédée d'un "!" pour indiquer qu'il faut prendre cette valeur fixe. Il faut savoir que pour mettre une autre langue, il faut mettre son nom en anglais et tel qu'il apparait dans le dossier main/lang/ de Chamilo. Donc, si l'on veut que les utilisateurs qui seront créés à partir du LDAP aient la langue française, il faut mettre : 'language' => '!french', On peut voir dans la partie 'extra' le dernier élément qui nommé cas_user, c'est un champs extra d'utilisateur qui est créé automatiquement quand on active l'authentification CAS et qui est utilisé pour stocker la valeur de l'authentifiant CAS de l'utilisateur. C'est ce qui permettra de faire le lien entre l'utilisateur LDAP et l'utilisateur CAS.
Pour la définition du rôle des utilisateurs en fonction de règles du LDAP, il faut adapter les fonctions correspondantes que l'on peut trouver dans main/auth/external_login/ldap.inc.php
Pour tester votre configuration LDAP, vous pouvez activer temporairement l'authentification par LDAP en allant dans le fichier de configuration app/config/configuration.php et en dé-commentant les deux dernières lignes du bloc ci-dessous :
Vous aurez alors un nouveau lien "Importer des utilisateurs" sur la page d'administration dans le bloc "Utilisateurs". En suivant ce lien vous aurez accès à un formulaire permettant de faire une recherche d'utilisateurs dans votre LDAP. Si vous retrouvez vos utilisateurs c'est que la connexion est correcte. Une fois que tout est bien configuré, vous pouvez alors désactiver à nouveau cette option en remettant en commentaire les 2 dernières lignes du bloc ci-dessus.
Une fois la connexion LDAP configurée n'oubliez pas de revenir à votre configuration CAS comme vu au dessus pour permettre de récupérer les attributs des utilisateurs depuis le LDAP lors de la connexion par CAS.
Les styles dans Chamilo peuvent être modifiés au travers de la copie simple de n'importe quel répertoire de styles de chamilo/app/Resources/public/css/themes/. Vous trouverez dans ce répertoire une série de répertoires de styles, comme par exemple chamilo_green, qui peuvent être copiés, renommés et modifiés à souhait. Pour les tester, il vous suffit d'aller dans la section Feuilles de styles de votre page de paramètres de configuration de Chamilo et de sélectionner le style qui porte le nom du répertoire que vous aurez rajouté.
Ensuite, et seulement depuis la version 1.10, il faudra veiller à lancer la commande composer install dans la racine de Chamilo pour transférer les nouveaux styles vers web/css/themes/.
Il existe dans Chamilo un agenda personnel auquel on peut accéder depuis le menu principa sour l'onglet Agenda. Celui-ci montre les évènements personnel de l'utilisateur mais également les évènements de la plateforme et les évènements des cours et sessions dans lesquels l'utilisateur est inscrit. Ici nous allons expliquer comment permettre aux administrateurs de Chamilo de créer des évènements qui seront visible par tous le monde ou uniquement à une classe spécifique et dans lequel les utilisateurs pourront s'inscrire pour indiquer qu'ils vont participer. On aura la possibilité de limiter le nombre maximum d'inscription.
Cette fonctionnalité a été rajouté dans la version 1.11.20 de Chamilo et nécessite une activation manuelle par l'administrateur de l'hébergement de votre Chamilo. Il faut ajouter au fichier de configuration app/config/configuration.php les lignes suivantes et réalisé les actions indiquées dans ces lignes :
Nous considérons ici que vous avez un compte administrateur et que vous êtes connectés à Chamilo.
Aller dans l'agenda perso en cliquant sur l'onglet correspondant du menu en haut de votre Chamilo.
Remplir les champs "Titre de l'évènement", "Rang de dates" et "Description".
Pour le champs "Autoriser les inscriptions" il est sur "Non" par défaut et l'évènement est uniquement pour l'utilisateur en cours. On peut alors choisir une des deux autres options : ** "Tous les utilisateurs du portail" et dans ce cas tous les utilisateurs verront l'évènement apparaitre dans leur agenda et pourront s'y inscrire. ** "Utilisateurs dans la classe" dans ce cas l'évènement n'apparaitra que pour les utilisateurs de la classe sélectionnée en dessous.
Le champs "Groupe social / Classe" permet sélectionner la classe dont les membres verront l'évènement.
Le dernier champs permet de sélectionner le nombre maximum de participant à l'évènnement et bloquera automatiquement l'inscription dès que l'on aura atteint le nombre maximum d'inscrit.
Notre évènement est créé.
On se connecte maintenant comme un apprenant de la classe et dans l'agenda perso on voit l'évènement et si on clique dessus ça ouvre la fenêtre du détails de l'évènement dans laquelle on peut voir que l'inscription est autorisée pour les membres de la classe avec le bouton s'inscrire en bas de la fenêtre. Une fois inscrit le bouton "S'inscrire" devient "Se désinscrire" pour se retirer de l'événement.
On peut alors se reconnecter comme administrateur et quand on édite son évènement on peut voir le nom des inscrits et on peut les désélectionner du champs pour les désinscrire.
Le support de xAPI a été inclus dans Chamilo depuis la version 1.11.16 en tant que plugin et sera inclus dans le noyau plus tard.
L'activation du plugin active plusieurs fonctionnalités dans Chamilo
L'activation du plugin permet d'abord d'envoyer une instruction xAPI à un LRS externe lors de l'exécution d'activités dans Chamilo. Vous devez donc d'abord activer le plugin.
Dans la configuration, il faut indiquer les données du LRS externe et les activités que vous voulez suivre depuis Chamilo.
Lorsqu'il y a un événement qui doit générer une instruction xAPI se passe dans Chamilo alors l'information est enregistrée dans la table "xapi_shared_statement" afin que l'enregistrement ne prenne pas trop longtemps, car l'envoi à un LRS peut prendre du temps donc cet envoi au LRS se fait de manière asynchrone avec un cron qui appelle plugin/xapi/cron/send_statements.php toutes les heures par exemple. Ce script envoie 100 instructions à chaque fois qu'il est appelé, vous devez donc adapter la fréquence cron en fonction de l'utilisation de votre plate-forme.
A partir de ce moment, les déclarations des événements sélectionnés seront envoyées au LRS externe.
Chamilo peut être le LRS qui stocke les données de Chamilo ou d'autres applications externes. C'est pourquoi sur la page d'administration de Chamilo un bloc Plugins apparaît avec un lien pour "Experience API (xAPI).
Sur cette page cliquez sur le + pour créer un nouveau compte pour vous connecter au LRS de votre Chamilo. À partir de ce moment le LRS de votre Chamilo est disponible et peut être utilisé avec votre Chamilo ou avec tout outil compatible xAPI en indiquant les données utilisateur que vous venez de créer et l'URL de votre Chamilo avec /plugin/xapi/lrs.php à la fin.
L'activation du plugin xAPI ajoute un outil activité à chaque cours de Chamilo. Dans cet outil, vous pouvez importer un package de contenu compatible xAPI.
Ces activités peuvent être lancées à partir de cet outil ou peuvent être incluses dans un élément de parcours de Chamilo.
Dans l'outil d'activité, l'enseignant peut voir ce qui a été enregistré à partir de l'activité xAPI.
Comme indiqué antérieurement dans la section plugins de ce guide, la vidéoconférence est un outil séparé de Chamilo. Vous pouvez facilement l'installer et faire le lien avec Chamilo grâce au plugin BigBlueButton, mais cela requiert un serveur dédié (ou en tout cas un serveur dédié à autre chose sur lequel il vous reste suffisamment de ressources).
Pour installer le serveur de vidéoconférence BigBlueButton, nous vous recommandons de suivre les instructions (en anglais) sur la page du projet :
Une fois la vidéoconférence installée et fonctionnelle, vous devrez en connaître l'URL publique (parfois une simple adresse IP) et la clef secrète.
Vous trouverez la clef secrète dans /var/lib/tomcat6/webapps/bigbluebutton/WEB-INF/classes/bigbluebutton.properties (cherchez Salt).
Une fois ces deux données connues, dirigez-vous vers la page de configuration des paramètres de Chamilo, section Plugins. Activez le plugin BigBlueButton et sauvegardez. Rechargez la page (pour que le nouvel élément de menu apparaisse) et cliquez sur l'icône de la nouvelle section appelée « Extra ». Là, entrez les informations de votre serveur de vidéoconférence.
Dans les versions suivantes, le plugin de vidéoconférence s'est étoffé de nouvelles fonctionnalités :
version 2.4 de 2016-05
ajout du support pour des conférences globales (en dehors du contexte du cours)
ajout de la possibilité de faire des conférences au niveau des groupes dans les cours.
version 2.5 de 2016-07
possibilité pour chaque utilisateur de lancer une conférence globale indépendante
version 2.6 de 2017-05
Possibilité de définir des limites de nombre de participants dans les salles de conférence.
version 2.7 de 2018-07
Possibilité de choisir entre interface HTML5 ou Flash au niveau du plugin ou de donner le choix aux utilisateurs (nécessite une plateforme BBB en version 2.0 Beta ou supérieure)
version 2.8 de 2020-05
Possibilité cacher les options de l'administration du cours. Compatible avec BBB 2.2.
Il ne vous reste plus qu'à vous diriger dans l'un de vos cours ou sur la page d'accueil si vous avez activer les conférences globales pour tester l'intégration.
Dans le contexte d'un cours, les enseignants sont les seuls à pouvoir démarrer une salle de vidéoconférence. Ils sont également les seuls à disposer du statut de modérateur dans Chamilo.
Les apprenants ne peuvent se connecter en vidéoconférence d'un cours que si leur enseignant a démarré une salle précédemment (sinon, cliquer sur le lien vers la vidéoconférence n'a aucun effet).
Si vous ne parvenez pas à l'installer, n'hésitez pas à faire appels aux fournisseurs officiels de Chamilo qui vous loueront volontiers un accès à leurs serveurs de vidéoconférence pré-configurés.
Cliquer sur l'icône "Ajouter un évènement" pour arriver sur la page de création d'évènement