De quoi s’agit-il ?

Une question revient souvent : peut-on connecter Karuta à un LMS (Learning Management System ou plate-forme pédagogique) comme par exemple Moodle, Sakai ou Chamilo ? La réponse est : oui !

Pourquoi ?

A quoi cela peut-il bien servir de connecter le LMS à Karuta ? Cela permet deux choses :

  • intégrer Karuta à un espace de cours du LMS, comme si il s’agissait d’un outil du LMS,
  • rendre transparente l’identification de l’usager à Karuta : en effet, une fois connecté au LMS, Karuta apparaîtra dans son cours comme un simple lien ou bouton à cliquer et l’identification se fera automatiquement.

Comment ?

Grâce au protocole LTI, il est possible de lier Karuta à un LMS compatible avec ce protocole.

 

Principe de base du protocole LTI

  • consumer : client, celui qui utilise le service. Par exemple, si on connecte Karuta à Moodle, c’est ce dernier qui sera le consumer
  • producer : serveur, celui qui fournit le service. Pour nous, ça sera donc Karuta

Pour que ça fonctionne

Identifiants

  • il faut avoir les mêmes identifiants sur les deux plates-formes. Comme c’est le LMS qui est le consumer, c’est lui qui impose l’identifiant.
  • En principe, le producer devrait donc créer le compte automatiquement à partir de l’identifiant fourni par le LMS, cependant, Karuta ne le fera pas1 car, de toutes les manières, il ne saurait pas quel(s) portfolio(s) il faudrait partager avec l’usager (à supposer qu’il(s) existe(nt)). Il faut donc, avant que l’usager se connecte à Karuta via le LMS, que son compte soit déjà créé dans Karuta et qu’au moins un portfolio lui soit attribué (sinon il verra une page vide).
  • Dans Karuta, pour créer un usager, il y a plusieurs possibilités : soit à partir de l’interface de l’administrateur, soit en tant que concepteur d’eportfolio. Dans les deux cas, il faut fournir un mot de passe bien que celui-ci ne sera pas utilisé lors de la connexion LTI (on n’est donc pas obligé de le communiquer à l’usager)

Fichier de configuration de Karuta

  • il faut configurer Karuta pour qu’il accepte les connexions LTI. Cela se fait dans un fichier stocké sur le serveur, dans le dossier Tomcat : configKaruta.properties
    • On y créé une « clef » de connexion qui ressemble à ceci : basiclti.provider.NOMDELACLEF.secret=MOTSECRETDELACLEF. Il est tout à fait possible de créer plusieurs clefs, pour, par exemple, autoriser plusieurs consumers.
    • il faut également y renseigner le réglage suivant : lti_redirect_location=/karuta/application/htm/karuta.htm
  • Coté consumer (le LMS), il faut configurer l’outil. Il y a principalement 3 informations à fournir :
    • l’URL de connexion au protocole LTI de Karuta. Cela ressemble à {URL de Karuta}/karuta-backend/lti
    • la clef : elle a été définie dans le fichier configKaruta.properties
    • le mot secret : il a été défini dans le fichier configKaruta.properties
  • Autres éléments importants :
    • il faut que les deux serveurs (le consumer et le producer) utilisent le même protocole : http ou https.
    • il faut vérifier éventuellement (en cas de dysfonctionnement) que les horloges des deux serveurs sont à la même heure…
    • le protocole LTI ne semble pas aimer les accents français dans le titre du cours du LMS, voir même (pour Moodle) dans le titre du LMS et de l’activité : donc à éviter…

Plus d’informations

Compléments

  • 1 Une récente mise à jour du backend (v2.1.4.7 du 6 décembre 2019) l’autorise désormais. Deux nouveaux réglages du fichier configKaruta.properties ont fait leur apparition :
    • lti_create_user=y : qui valide le fait que si lors de la connexion LTI, le compte n’existe pas, il sera créé
    • lti_email_as_username=y : qui autorise l’utilisation de l’email comme identifiant de connexion à la place de l’identifiant au LMS envoyé par LTI
    • de plus, le nom et le prénom de l’usager sont automatiquement renseignés lors de la création du compte (si LTI les fournit bien évidemment)