Что возможно с SCORM

У моей компании есть онлайн-курсы, некоторые линейные, некоторые больше игровые. Все курсы содержат множество медиаресурсов, которые мы транслируем с нашего медиасервера. Курсы обновляют нашу базу данных пользовательскими результатами и информацией.

Похоже, SCORM хочет, чтобы все содержимое курса было помещено в один пакет. Можно ли передавать медиаконтент на курс SCORM? Можем ли мы по-прежнему сохранять данные на нашем собственном сервере? Есть советы для новичка?


person Nick    schedule 14.04.2014    source источник


Ответы (2)


Ник,

Вы правы в том, что большинство поставщиков контента размещают свой контент SCORM на сервере обучения, но это не обязательно так. При правильной разработке вы можете разместить весь свой контент на своем сервере, вести журнал использования, отображать видео и другой контент, сохраняя при этом надлежащую связь с LMS.

Содержимое SCORM использует javascript, который современные браузеры запрещают взаимодействовать со страницами между двумя разными доменами. Два URL-адреса, такие как www.learningserver.com и www.yourcontent.com, будут по умолчанию заблокированы от взаимодействия так, как требует SCORM. Иногда называется междоменной политикой.

Есть несколько способов обойти этот запрет. См.: Способы обойти политику одного и того же происхождения

Я бы посоветовал вам использовать следующую технику:

  1. Набор фреймов (или iframe), содержащий приведенный ниже скрытый код и содержание курса ниже
  2. Небольшой файл, поставляемый с пакетом SCORM, который обнаруживает API LMS и ожидает сообщений от частей, упомянутых ниже, с использованием методов отправки сообщений, описанных здесь: https://developer.mozilla.org/en/DOM./window.postMessage. Этот метод хорошо работает для IE8+ и всех других браузеров.

    • stick with SCORM 1.2 as it is better supported
    • динамически включать URL-адреса http или https в свой код. В настоящее время многие LMS используют HTTPS, и вам необходимо учитывать это.
    • все взаимодействие SCORM происходит здесь, но инициируется фреймом содержимого, описанным ниже. Некоторые методы, такие как LMSInitialize (SCORM1.2) или LMSFinish и SetValue("cmi.core.session_time","hh:mm:ss.s"), при желании можно запускать независимо от окна содержимого.
    • как минимум, большинству потребителей контента SCORM нужны LMSInitialize, LMSFinish, закладки и session_time.
  3. Набор фреймов контента (или iframe в современных условиях), который передает оценку или другую информацию обратно в локальный контент LMS, который взаимодействует с API, используя метод пост-сообщения, описанный в указанном URL-адресе
    .

Вы можете найти образец содержимого SCORM по ссылке ниже:
http://scorm.com/scorm-explained/technical-scorm/golf-examples/

Используйте простые примеры и следуйте формату манифеста и SCORM API.

person joel    schedule 15.04.2014
comment
Будет ли это одностраничный курс, где вся навигация происходит в iframe? - person Nick; 15.04.2014
comment
@Nick Да, эта единственная страница будет частью пакета курса, и все, что видно учащемуся, будет помещено в iframe. Весь javascript для этой отдельной страницы может находиться в LMS или на вашем собственном сервере (поскольку теги скрипта не должны следовать междоменной политике). Я не видел ни одного примера курсов, которые собирают все это вместе, но, может быть, я смогу добавить здесь простой пример сегодня или около того. - person joel; 15.04.2014

Ник, точно так же, как и в сетях доставки контента, ваш медиасервер может размещать JavaScript, CSS, фильмы и другие ресурсы, но вам потребуется как минимум файл HTML, указывающий на них, который вы бы упаковали для импорта в LMS. Поскольку у вас могут быть протоколы HTTP/HTTPS, вам нужно следить за этим. Большинство ссылок CDN (в качестве примера я буду использовать облачный факел — http://cdnjs.com) вы заметите не нет протокола просто "//cloudflare.com/path/to/asset.ext".

В качестве альтернативы IFRAME вы также можете отображать/скрывать теги в HTML или загружать внешние источники HTML через AJAX. Некоторые даже доходят до использования http://handlebarsjs.com, http://leonidas.github..io/transparency и другие системы шаблонов для присоединения HTML к данным (JSON).

GL

person Mark    schedule 16.04.2014