После подключения преподаватели открывают ИСПУМ прямо из курса Moodle — без
отдельного входа, а оценки автоматически возвращаются в журнал Moodle.
Настройка занимает 5–10 минут и выполняется самой ИТ-службой университета,
без участия ИСПУМ.
Кто и где настраивает
Только root-администратор организации (роль «Администратор организации» на
корневом подразделении). Раздел находится в Настройки → Организация → LTI
(/institution/lti). Как и приглашение преподавателей, эта настройка
намеренно не делегируется на уровень кафедры или института — она затрагивает
весь университет сразу.
Вам также понадобится доступ администратора сайта в Moodle: Site
Administration → Plugins → Activity modules → External tool → Manage
tools.
Способ 1 — динамическая регистрация (рекомендуется)
Работает, если ваш Moodle поддерживает LTI 1.3 Advantage (Moodle 3.9+).
Быстрее ручного заполнения полей, потому что обмен всеми URL и
идентификаторами происходит автоматически в обе стороны.
- В ИСПУМ, в блоке «Динамическая регистрация (рекомендуется)», нажмите
«Получить ссылку регистрации» и скопируйте появившуюся ссылку.
- В Moodle: Site Administration → Plugins → External tool → Manage tools
→ Configure a tool → Dynamic registration — вставьте туда ссылку.
- Moodle обратится по этой ссылке к ИСПУМ, получит перечень возможностей
инструмента (URL запуска, JWKS, поддерживаемые типы сообщений) и покажет
экран подтверждения. Подтвердите регистрацию.
- ИСПУМ получит обратно
client_id и deployment_id от Moodle и сохранит
их автоматически — поля ниже на странице заполнятся сами, включая галочку
«Включить LTI для этой организации».
- Проверьте результат кнопкой «Проверить соединение» — она обращается к
JWKS-адресу Moodle и подтверждает, что ключи доступны.
Ссылка регистрации одноразовая: если регистрация не удалась, вернитесь в
ИСПУМ и получите новую.
Способ 2 — ручная регистрация
Используйте, если динамическая регистрация недоступна или не сработала.
Здесь обмен данными идёт вручную в обе стороны.
Шаг 1 — создайте инструмент в Moodle
Site Administration → Plugins → External tool → Manage tools → configure a
tool manually, тип LTI Version: LTI 1.3. Возьмите три значения из блока
«Данные для ручной регистрации инструмента в Moodle» на странице ИСПУМ и
вставьте их в соответствующие поля Moodle:
| Поле в ИСПУМ |
Что это |
Куда в Moodle |
| Redirect URI (Launch URL) |
адрес, на который Moodle отправляет запуск и данные после входа |
Tool URL / Redirection URI(s) |
| URL входа (OIDC) |
адрес, с которого начинается вход |
Initiate Login URL |
| Public JWKS URL |
публичные ключи ИСПУМ, которыми Moodle проверяет подпись |
Public Keyset URL |
Сохраните инструмент в Moodle — он выдаст Client ID (и иногда отдельный
Deployment ID — оба видны в списке инструментов Moodle).
Шаг 2 — впишите данные Moodle в ИСПУМ
На странице Настройки → Организация → LTI заполните:
- Issuer платформы — адрес вашего Moodle (например
https://moodle.example.ru).
- Client ID — значение, которое Moodle выдал на шаге 1.
- Deployment ID (по одному на строку) — если в вашем университете
инструмент активирован в нескольких курсах/категориях под разными
deployment ID, добавьте их все; запуск с незарегистрированным deployment
ID будет отклонён.
- OIDC Auth Login URL платформы и JWKS URL платформы — стандартные
эндпоинты вашего Moodle; в самом Moodle они обычно указаны на странице
настроек инструмента или в документации вашей версии Moodle.
- Token URL платформы — нужен только для автоматической передачи оценок
и списка студентов (AGS/NRPS); базовый запуск работает и без него.
Поставьте галочку «Включить LTI для этой организации» и нажмите
«Сохранить». Если каких-то полей не хватает, страница явно скажет:
«Заполните все поля выше и сохраните, чтобы LTI-запуски принимались».
Обязательное условие: разрешите передачу email
ИСПУМ определяет преподавателя и студента по email из LTI-запуска — без
него запуск отклоняется. В настройках инструмента в Moodle (Privacy →
Share launcher's name/email with tool) убедитесь, что передача email
разрешена. Это самая частая причина, по которой первый запуск не проходит.
Сопоставление курсов (необязательно)
Курс в ИСПУМ создаётся автоматически при первом запуске преподавателя из
курса Moodle — сопоставление ничего не блокирует. Раздел «Сопоставление
курсов» на той же странице нужен только для сводной отчётности по
институту: если вы хотите видеть курсы из Moodle в разрезе кафедр/институтов
на уровне организации, свяжите каждый запущенный курс с разделом
оргструктуры вручную.
Если один и тот же курс Moodle ведут два преподавателя, у каждого
создаётся свой собственный курс в ИСПУМ — это по замыслу, не ошибка.
Как преподаватель подключает конкретное задание
Проверка работ через LTI требует, чтобы преподаватель добавил инструмент
через Deep Linking, а не просто вставил ссылку на ИСПУМ вручную:
- Преподаватель добавляет в курс Moodle activity типа «External tool» →
выбирает зарегистрированный инструмент ИСПУМ.
- Moodle открывает окно выбора — там преподаватель выбирает конкретное
опубликованное задание из ИСПУМ.
- Только после этого шага элемент курса в Moodle привязан к заданию и
доступен студентам.
Элемент, созданный в обход этого выбора (например, вручную указанным URL),
работать не будет — студент получит ошибку «этот элемент курса не настроен
для сдачи работ через ИСПУМ».
Журнал запусков — для диагностики
На той же странице ИСПУМ, ниже сопоставления курсов, — таблица «Журнал
запусков»: последние 100 попыток запуска из Moodle, с преподавателем, ролью,
курсом и статусом. Если у кого-то не получается войти, начните отсюда — код
ошибки в журнале укажет на конкретную причину из таблицы ниже.
Типовые ошибки
| Код ошибки |
Что произошло |
Что проверить |
LTI_NOT_CONFIGURED |
LTI не включён либо конфигурация не сохранена для организации |
Галочка «Включить LTI» и что все обязательные поля заполнены и сохранены |
LTI_NO_EMAIL |
В запуске нет email пользователя |
Настройки конфиденциальности инструмента в Moodle — разрешите передачу email |
LTI_CLIENT_MISMATCH |
Client ID в запросе Moodle не совпадает с сохранённым в ИСПУМ |
Client ID введён с опечаткой, или инструмент в Moodle пересоздавался с новым ID — обновите поле в ИСПУМ |
LTI_DEPLOYMENT_UNKNOWN |
Deployment ID запуска не значится в списке зарегистрированных |
Добавьте недостающий Deployment ID (по одному на строку) в настройках ИСПУМ |
LTI_NO_CONTEXT |
В запуске отсутствует идентификатор курса |
Обычно означает, что инструмент запущен не из контекста курса — проверьте, где в Moodle добавлен элемент |
LTI_NO_PUBLISHED_ASSIGNMENT |
Элемент курса создан не через выбор задания (Deep Linking) |
Преподаватель должен пересоздать элемент курса через процесс выбора задания, см. раздел выше |
LTI_DEEP_LINK_FORBIDDEN |
Выбор задания запущен не преподавателем |
Настройку задания должен выполнять пользователь с ролью преподавателя в Moodle |
LTI_STATE_INVALID |
Запуск просрочен или уже был использован (ссылка использована повторно, например через «Назад» в браузере) |
Попросите преподавателя/студента запустить заново из Moodle |
LTI_VALIDATION_FAILED / LTI_NONCE_MISMATCH |
Подпись запуска не прошла проверку |
Обычно расхождение времени на сервере Moodle или устаревший кэш ключей — повторите запуск; если повторяется, проверьте, что JWKS URL Moodle доступен извне |
LTI_DISCOVERY_FAILED / LTI_DISCOVERY_TIMEOUT (при регистрации) |
ИСПУМ не смог получить конфигурацию Moodle по ссылке динамической регистрации |
Проверьте, что адрес Moodle доступен из интернета (не только из внутренней сети университета) |
LTI_REGISTRATION_REJECTED / LTI_REGISTRATION_NO_CLIENT_ID (при регистрации) |
Moodle отклонил запрос регистрации или не вернул Client ID |
Повторите динамическую регистрацию; если не помогает, используйте ручной способ |
Если ошибка не из этого списка или причина не находится — напишите через
форму обратной связи, приложив код ошибки и время запуска из
журнала.