Configurer la connexion avec Moodle pour la formation
Smartosh permet de transmettre des données de formation entre Smartosh et Moodle. Smartosh calcule les formations que chaque personne doit suivre en fonction des EPI qu’elle utilise, du poste qu’elle occupe, du centre de travail, etc. À partir de ce calcul, il inscrit l’utilisateur dans Moodle, lance la convocation et récupère ensuite la date de présence et les résultats des évaluations lorsque cela est nécessaire.
Le circuit des besoins de formation est identique à celui des besoins de formation manuels : la génération des certificats et les autres étapes sont régies exactement par les mêmes règles.
Prérequis dans Moodle
Section intitulée « Prérequis dans Moodle »Bien que la configuration interne de Moodle soit hors du cadre de ce guide, certains points sont indispensables pour que l’intégration fonctionne :
- Activer les services web (extensions dans Moodle).
- Créer un utilisateur, un ensemble de services et un token qui seront utilisés pour la connexion.
- Les protocoles définis doivent être REST et XML-RPC.
- Les conditions d’achèvement du cours doivent être correctement définies dans Moodle, car c’est Moodle qui détermine si un utilisateur a terminé un cours.
Le détail de ces opérations est expliqué dans la documentation officielle de Moodle : Paramètres des services web.
Configurer la connexion dans Smartosh
Section intitulée « Configurer la connexion dans Smartosh »Chaque connexion relie de manière biunivoque un cours d’un serveur Moodle spécifique à une convocation Smartosh.
Étape préalable : définir la convocation
Section intitulée « Étape préalable : définir la convocation »Avant de créer la connexion, la formation et la convocation à relier à Moodle doivent exister dans Smartosh. Il est recommandé de définir une convocation avec une formation et une session de formation pour simplifier la gestion.
Créer la connexion
Section intitulée « Créer la connexion »Accéder à Configuration → Connexion Moodle et remplir les champs suivants :
| Champ | Description |
|---|---|
| Nom | Nom interne identifiant cette connexion. |
| Formation | Choisie parmi les formations définies dans Smartosh. |
| Convocation | Seules les convocations incluant la formation du champ précédent peuvent être sélectionnées. |
| URL du service | Fournie par l’administrateur Moodle. Page où la requête du webservice est lancée. |
| Token | Token pour accéder au service, défini dans Moodle. |
| Identifiant de la formation dans Moodle | Numéro identifiant le cours dans Moodle. |
| État | Lors du lancement de l’opération, passe à Importation en cours et à la fin affiche : Terminée avec erreur, Terminée avec avertissements ou Terminée correctement. |
| Email pour notification des erreurs | Si défini, lorsqu’un processus quotidien détecte des erreurs, un avis est envoyé par email (sans détail ; il faut consulter l’historique). |
| Moodle exclusif pour ce tenant | Active des alertes supplémentaires qui n’ont de sens que lorsque les employés de Smartosh correspondent à ceux de Moodle. |
| Désactivé | Si coché, le processus nocturne ne s’exécute pas. La connexion peut néanmoins être lancée manuellement. |
| Historique | Détail des dates et résultats de chaque exécution. |
| Fonctions | Réservé pour usages futurs et autres versions de Moodle. |
Exécuter la synchronisation
Section intitulée « Exécuter la synchronisation »Une fois la connexion Moodle configurée, la formation, la convocation et les paramétrages nécessaires dans Moodle (cours, enquêtes, etc.) en place, le processus de synchronisation peut être lancé de trois manières :
- Automatiquement chaque nuit via le processus
ConexionDatosWorker.SincronizarTodasConexiones, à condition que la case Désactivé soit décochée. - Manuellement depuis Configuration → Connexions Moodle, en utilisant l’opération Effectuer la connexion. Le résultat s’affiche dans l’Historique de la connexion.
- Depuis Formation → Convocations, en sélectionnant une convocation avec une connexion Moodle active. Le bouton Synchroniser avec Moodle apparaît ainsi qu’un onglet avec l’état et l’historique.
Le processus de transfert se divise en deux blocs clairement différenciés : exportation des participants vers Moodle et récupération des résultats depuis Moodle.
Bloc 1 : exporter les participants vers Moodle
Section intitulée « Bloc 1 : exporter les participants vers Moodle »Le système examine tous les besoins de formation marqués comme Non Convocés pour la formation liée à la connexion et, pour chacun, exécute :
1. Recherche de l’employé dans Moodle
Section intitulée « 1. Recherche de l’employé dans Moodle »L’application recherche l’employé dans Moodle en utilisant l’identifiant qu’il a dans Smartosh (DNI, NIE, etc.). La recherche se fait par :
- Identifiant = username
- Identifiant = IdNumber (champ additionnel de Moodle)
- email = email de Smartosh
Si l’employé n’est pas trouvé, Smartosh envoie à Moodle les données suivantes pour l’inscrire :
- Username (identifiant)
- Mot de passe (généré par l’application)
- Prénom
- Nom de famille 1
- Email (obligatoire dans Moodle et ne peut être dupliqué ; le système le vérifie)
- Identifiant
- Ordre de réinitialiser le mot de passe au premier accès
Le log enregistre : Utilisateur {Prénom et nom1} ({Identifiant}) - inscription dans le système.
2. Inscription au cours
Section intitulée « 2. Inscription au cours »Il est vérifié si l’employé est déjà inscrit au cours. Sinon, l’application l’inscrit.
Le log enregistre : Utilisateur {Prénom et nom1} ({Identifiant}) - inscription au cours dans Moodle.
3. Mise à jour dans Smartosh
Section intitulée « 3. Mise à jour dans Smartosh »Le besoin de formation est mis à jour avec la convocation et la date de convocation, et est marqué comme En cours.
Le log enregistre : Utilisateur {Prénom et nom1} ({Identifiant}) - convoqué dans SmartOSH.
4. Notification par email à l’utilisateur
Section intitulée « 4. Notification par email à l’utilisateur »Un email est envoyé à chaque employé convoqué, sauf si la case “Désactiver l’envoi d’emails” est cochée :
- Nouvel utilisateur → modèle «Inscription utilisateur dans Moodle», avec utilisateur et mot de passe pour commencer la formation.
- Utilisateur existant, nouvelle formation → modèle «Inscription dans Moodle».
Bloc 2 : récupérer les résultats depuis Moodle
Section intitulée « Bloc 2 : récupérer les résultats depuis Moodle »L’application interroge Moodle pour obtenir les participants du cours et, pour chacun :
- Identification de l’utilisateur dans Smartosh dans cette convocation, par
idnumber(NIF) ou parusername. - Récupération de la date de présence et du score : l’information est enregistrée comme note d’évaluation et date de présence, marquant la présence à la session correspondante. Si la formation est marquée “doit être évaluée”, la date d’évaluation et la note sont aussi enregistrées.
- Récupération de la finalisation : si Moodle indique que le cours est terminé, l’action est marquée comme complétée dans Smartosh et la personne est désinscrite du cours dans Moodle (elle ne pourra plus y accéder).
À la fin, le système enregistre la liste des opérations et incidents générés dans l’historique de la connexion Moodle.
Permissions nécessaires dans Moodle
Section intitulée « Permissions nécessaires dans Moodle »L’utilisateur associé au token doit avoir les permissions pour lancer les fonctions suivantes de l’API Moodle :
core_completion_get_activities_completion_statuscore_completion_get_course_completion_statuscore_course_get_coursescore_enrol_get_enrolled_userscore_enrol_get_users_coursescore_grades_get_gradesougradereport_user_get_grade_items(pour versions supérieures à 3.2)core_webservice_get_site_infoenrol_manual_enrol_usersenrol_manual_unenrol_userscore_user_create_userscore_user_get_userscore_user_update_users
Considérations générales
Section intitulée « Considérations générales »- Lorsqu’une convocation est liée à Moodle, les examens d’évaluation se déroulent dans Moodle.
- À la fin d’une action de formation, le système génère le certificat (si ainsi paramétré), exactement comme dans une convocation manuelle.
Considérations pour SmartOSH SPA PRO
Section intitulée « Considérations pour SmartOSH SPA PRO »Dans les environnements SPA, il faut créer une convocation et une connexion Moodle par cours dans chaque environnement, même lorsque le cours Moodle existe uniquement en espagnol.
Source : KB029 «Configuration et fonctionnement de la connexion Moodle pour formation», module Formation, version 1.0.00, 17-09-2025.