L'API SCORM 1.2 se décompose en 3 groupes de méthodes.

  1. Gestion de la session
    • LMSInitialize() : Cette méthode est utilisée pour initialiser la communication entre le SCO et le LMS. Tous les SCO doivent obligatoirement appeler cette méthode.
    • LMSFinish() : Cette méthode est appelée lors de la fermeture du SCO. C'est la dernière action réalisée par le SCO. Il n'y a pas de spécifications concernant l'action à réaliser lorsque le LMS reçoit la méthode LMSFinish(). En fonction des implémentations, soit c'est la dernière page du SCO qui reste affichée, soit le LMS reprend le contrôle. Dans tous les cas, si le SCO a lancé une nouvelle fenêtre, il a la responsabilité de la fermer après l'appel à la méthode LMSFinish().
    • LMSCommit() : Cette méthode permet de forcer l'envoi des informations remontées par le SCO jusqu'au LMS. En effet, il se peut que certaines implémentations de l'API SCORM (c'est le cas de GANESHA) utilise un cache pour accélérer le transfert d'informations entre le SCO et le LMS. Cependant, la prise en compte de ces informations nécessitera de toute façon l'appel à la méthode LMSFinish().
  2. Méthodes de transfert
    • LMSGetValue() : Cette méthode permet au SCO de lire des informations contenues dans le LMS. Le modèle de données utilisé lors de cet échange est appelé RTE Data Model.
    • LMSSetValue() : Cette méthode permet au SCO de remonter des informations vers le LMS. Le modèle de données utilisé lors de cet échange est appelé RTE Data Model.
  3. Gestion des erreurs
    • LMSGetLastError() : Lors d'un appel aux méthodes précédentes, le LMS peut vérifier si la dernière communication a engendré une erreur ou non. Cette méthode fournie un code Erreur défini par SCORM 1.2.
    • LMSGetErrorString() : En cas d'erreur, le SCO peut récupérer via cette méthode un message pour le diffuser à l'apprenant.
    • LMSGetDiagnostic() : Cette méthode permet de retourner un message d'erreur plus précis de la dernière erreur rencontrée par le LMS.


Code erreur API SCORM 1.2 :

Description des erreurs Valeur Utilisation

0 L'appel à l'API a réussi.
General Exception 101
Indique une erreur générale.
Invalid argument error 201 Utilisation d'un élément inexistant du modèle de données de l'environnement d'exécution de SCORM.
Element cannot have children 202 Utilisé lorsque LMSGetValue() est appelée pour une catégorie ou un élément du modèle de données qui ne prend pas en charge le mot clé _children.
Element not an array.  Cannot have count 203
Utilisé lorsque LMSGetValue() est appelée pour une catégorie ou un élément du modèle de données qui ne prend pas en charge le mot clé _count.
Not initialized 301
Indique que l'API n'a pas été initialisée par la un appel à la méthode LMSInitialize("").
Not implemented error 401
Utilisé lors d'un appel à un élément du modèle de données qui n'est pas pris en charge par le LMS, ou lorsqu'un autre modèle de données que le modèle de données de l'environnement d'exécution de SCORM est utilisé.
Invalid set value, element is a keyword 402
Utilisé lorsque LMSSetValue() est appelée avec un mot clé.
Element is read only.
403
L'élément est autorisé en lecture uniquement.
Element is write only
404
L'élément est autorisé en écriture uniquement.
Incorrect Data Type
405
Utilisé lors d'une tentative d'attribution à un élément d'un type de données incorrect.

Source : Modèle de référence SCORM, version 1.2
  2001 Advanced Distributed Learning