07.09.2016

Немного о scorm 1.2

LMSInitialize - LMSGetValue(name) - LMSSetValue(name, value) - LMSCommit - LMSFinish





LMSInitialize
Запуск курса в СДО. Ищется API СДО (LMS). Если всё успешно – начинается сессия взаимодействия курса и СДО.

Пример:
function doLMSInitialize()
{
   var api = getAPIHandle();
   if (api == null)
   {
       console.log("Unable to locate the LMS's API Implementation. LMSInitialize was not successful.");
       return "false";
   }
   var result = api.LMSInitialize("");
   if (result.toString() != "true")
   {
      var err = ErrorHandler();
   }
   return result.toString();
}

LMSGetValue(name)
Получить значение параметра из СДО (LMS). name  – имя элемента, значение которого необходимо получить.

Пример:
function doLMSGetValue(name)
{
   var api = getAPIHandle();
   if (api == null)
   {
        console.log("Unable to locate the LMS's API Implementation. LMSGetValue was not successful.");
        return "";
   }
   else
   {
      var value = api.LMSGetValue(name);
      var errCode = api.LMSGetLastError().toString();
      if (errCode != _NoError)
      {
            var errDescription = api.LMSGetErrorString(errCode);
            console.log("LMSGetValue ", name," failed.", errDescription);
            return "";
      }
      else
      {
         return value.toString();
      }
   }
}

LMSSetValue(name, value)
Отправить значение параметра в СДО (LMS). name  – имя элемента, значение которому необходимо присвоить. value – значение.

Пример:
function doLMSSetValue(name, value)
{
   var api = getAPIHandle();
   if (api == null)
   {
       console.log("Unable to locate the LMS's API Implementation. LMSSetValue was not successful.");
      return;
   }
   else
   {
      var result = api.LMSSetValue(name, value);
      if (result.toString() != "true")
      {
         var err = ErrorHandler();
      }
   }
   return;
}


LMSCommit
Особая функция. Если API СДО кеширует данные передаваемые курсом, т.е. не сразу отправляет их в СДО, данная функция говорит «сохрани данные».

Пример:
function doLMSCommit()
{
   var api = getAPIHandle();
   if (api == null)
   {
        console.log("Unable to locate the LMS's API Implementation. LMSCommit was not successful.");
        return "false";
   }
   else
   {
      var result = api.LMSCommit("");
      if (result != "true")
      {
         var err = ErrorHandler();
      }
   }
   return result.toString();
}


LMSFinish
Завершение курса. Ищется API СДО (LMS). Если всё успешно – закрывается сессия взаимодействия курса и СДО.

Пример:
function doLMSFinish()
{
   var api = getAPIHandle();
   if (api == null)
   {
        console.log("Unable to locate the LMS's API Implementation. LMSFinish was not successful.");
        return "false";
   }
   else
   {
      var result = api.LMSFinish("");
      if (result.toString() != "true")
      {
         var err = ErrorHandler();
      }
   }
   return result.toString();
}