SCORM Player

SCORM 1.2 & 2004 Course Player with API Tracking

Загрузить SCORM пакет

Загрузите SCORM 1.2 или SCORM 2004 курс (ZIP файл).
Курс запустится автоматически после загрузки.

API Эндпоинты

Используйте эти эндпоинты для получения данных о прогрессе и результатах прохождения курса

GET /api/data.php?userId=USER_ID&courseId=COURSE_ID

Получить все SCORM данные

Возвращает полный набор данных SCORM для указанного пользователя и курса, включая:

  • Результаты тестов: оценки (score.raw, score.min, score.max)
  • Статус урока: passed, failed, completed, incomplete
  • Взаимодействия: все ответы на вопросы (cmi.interactions.*)
  • Цели обучения: статус достижения целей (cmi.objectives.*)
  • Временные метрики: время сессии и общее время
  • Данные для возобновления: suspend_data для продолжения курса
GET /api/progress.php?userId=USER_ID&courseId=COURSE_ID

Получить сводку прогресса

Возвращает краткую сводку о прохождении курса:

  • Статус: текущий статус прохождения (completed, passed, failed)
  • Оценка: итоговый балл и процент выполнения
  • Время: общее время, затраченное на курс
  • Прогресс: процент завершенных разделов
GET /api/status.php?userId=USER_ID&courseId=COURSE_ID

Получить статус завершения

Возвращает информацию о завершении курса и результатах экзамена:

  • Завершено: курс пройден до конца (true/false)
  • Сдано: экзамен сдан успешно (true/false)
  • Статус урока: lesson_status из SCORM
  • Дата завершения: timestamp последнего обновления

📋 Пример использования

// Получить результаты теста
fetch('/api/progress.php?userId=student123&courseId=course456')
  .then(res => res.json())
  .then(data => {
    console.log('Оценка:', data.score);
    console.log('Статус:', data.status);
    console.log('Время:', data.totalTime);
  });

// Проверить, сдан ли экзамен
fetch('/api/status.php?userId=student123&courseId=course456')
  .then(res => res.json())
  .then(data => {
    if (data.passed) {
      console.log('Экзамен сдан!');
    }
  });