Интеграция с LRS
1. Загрузка цифрового следа с использованием API к LRS
1.1. Общая инструкция интеграции к LRS
Шаги интеграции ОО с LRS платформы:
- Запросить доступ к тестовому хранилищу LRS.
Если вы работаете с нами по нескольким проектам, для каждого проекта нужно отдельное хранилище. Правила выдачи прав доступа описаны ниже. - Протестировать передачу в LRS полного пакета стейтментов по одному пользователю. Подробно описан ниже.
Процесс тестирования двухсторонний, с участием технических специалистов Платформы 2035 и провайдера. - Запросить доступ к хранилищу LRS на промышленном контуре.
После получения доступа вы сможете загружать ЦС на промышленном контуре.
Обратите внимание! Для работы необходимо на заключительном этапе получить доступ именно к продуктовому контуру.
Неприятная ошибка, - продолжить слать рабочие цифровые следы в тестовый контур, их придется повторно послать в промышленный контур.
1.2. Доступ к тестовому хранилищу LRS (тестовый контур)
Направьте заявку на выдачу токена письмом на электронную почту apps@2035.university:
- Тема: Доступ к тестовому External LRS, проект БАС, название организации.
- Текст: Просим выдать логин, пароль и basic auth токен к External LRS.
- Для какого контура: Тестовый.
- Организация (юридическое наименование, как в договоре).
- Название проекта, в рамках которого проходит интеграция.
- ID организации на Платформе (отображается в адресной строке в ЛК Каталога).
В течение 3 дней заявка будет обработана, и вы получите письмо с информацией, необходимой для доступа.
Сразу после этого вы можете приступать к тестированию передачи ЦС.
Обратите внимание!!!
Отсутствие части информации в заявке влияет на скорость (замедляет) на работу по ней!
1.3 Тестирование авторизации LRS (тестовый контур)
В Университете 2035 используется LRS (Learning Record Store, хранилище учебных активностей) под названием «Learning Locker».
Документация на английском языке тут: http://docs.learninglocker.net/welcome/.
Интеграция с LRS Университета 2035 заключается в 2-х аспектах:
- Настройка инструмента оправки запросов к RESTful API на стороне LRS.
- Отправка фактов (цифрового следа) в LRS;
- Получение фактов (цифрового следа) из LRS.
- Настройка шаблонов отправки сообщений (xAPI) для каждого фиксируемого факта.
Перед началом подключения к API LRS вы получили параметры доступа к нему, которые должны выглядеть так:
- xAPI Endpoint: https://api.u2035test.ru/lrs-external/data/xAPI/
- Basic: ZmZjZGY4ZTkwwwMyOTc1ZTI5OWUzMDVjYzY5NWI5MmJhZTQyNTFmMTpiNzk3MDIzNWQ5MWVlNTdhMzgyYTc1ZWVlZDgyNWNlODczMmFiYjli
- Key: ffcdf8e906c2975e299e305cc695b92bdd4251f1
- Secret: b7970235d91ee57a382a75dddd825ce8732abb9b
Пояснения к параметрам:
- Первый параметр для всех организаций одинаковый – это адрес API тестового стенда LRS Университета 2035.
- Второй, третий и четвертый – индивидуальные для каждого хранилища для каждой организации (на стороне LRS для организации может быть настроено несколько хранилищ).
Приведены измененные параметры только для того, чтобы был пример, как они должны выглядеть. - Используется либо 2-й, либо и 3-й и 4-й параметры, они являются взаимозаменяемыми. 3-й и 4-й указываются в полях логин и пароль некоторых инструментов отправки REST-запросов, 2-й тоже самое только в base64-кодировке и используется в параметре Authorization заголовка запроса.
Ниже по тексту будут представлены в качестве примеров скриншоты из бесплатного инструмента работы с REST API Postman.
Обратите внимание!!!
Для проверки работоспособности вы можете использовать проект в postman, в котором собраны необходимые шаблоны для интеграции
https://www.postman.com/university2035/workspace/
В частности для проверки работоспособности полученных ключей авторизации используйте шаблон «Проверка связи».
1.4 Настройка параметров и проверка связи
Необходимо в средстве/механизме оправки REST запросов указать Адрес API (первый параметр выше + /statements).
Параметры заголовка – параметры авторизации (2 или 3,4 параметры указанные выше).
Обязательные параметры:
Для проверки связи выполните следующие действия:
- Отправить запрос «Get» с указанными на предыдущем этапе данными. В ответ должен вернуться статус 200 (ОК).
- Если данные, указанные на предыдущем шаге, неверны, то в ответ на отправленный запрос отобразится статус ошибки:
- не найден API, если адрес URL указан неправильно;
- 404 Not Found, если к адресу не добавили /statements;
- 400 Bad Request, если не указаны заголовки или указаны не верно (X-Experience-API-Version обязателен для любых запросов, content-type для Get не обязателен);
- 401 Unauthorized, если неправильно указали параметры авторизации.Для проверки связи выполните следующие действия:
3. Вторым запросом для проверки подключения к LRS отправить запрос «POST» с ранее указанными параметрами и простым сообщением в теле запроса: {"Test":"тест"}. В ответ на такой запрос должен быть получен статус 400 Bad Request телом ответа:
Обратите внимание! Метод уже не GET, а POST
Данный ответ означает, что запрос был отправлен в LRS, но его структура не соответствует структуре xAPI, предполагающий обязательные элементы, описывающие факт: actor, verb и object.
Получение указанного ответа означает, что настройка и тестирование вашего средства/механизма отправки запросов в LRS завершено и нужно переходить к формированию корректных сообщений о фактах обучения в формате xAPI.
В дальнейшем вы можете, например, попробовать разные шаблоны из проекта Postman, чтобы познакомиться со структуру xapi и удостовериться в их работоспособности.
1.5. Доступ в промышленный контур LRS
Получение доступов на промышленный контур LRS аналогичен получению доступа к тестовому хранилищу.
Направьте заявку на выдачу токена письмом на электронную почту apps@2035.university:
- Тема: Доступ к продуктовому External LRS, проект БАС, название организации.
- Текст: Просим выдать логин, пароль и basic auth токен к External LRS.
- Для какого контура: Промышленный.
- Организация (юридическое наименование, как в договоре).
- Название проекта, в рамках которого проходит интеграция.
- Для подтверждения того, что вы успешно загрузили ЦС на тестовом контуре, вам нужно также отправить результаты загрузки, указав id стейтмента, который вы получили в ответ на отправку ЦС в LRS.
Обратите внимание!!!
Отсутствие части информации в заявке влияет на скорость (замедляет) принятия по ней решения
В течение 3 дней заявка будет обработана, и вы получите письмо с логином, паролем и секретным ключом.
2. Интеграция с S3. Работа с файлами
Для отправки артефактов используется объектное хранилище CLOUD4Y. Объектное хранилище построено на платформе компании Cloudian и поддерживает протокол доступа Amazon S3 API. В объектном хранилище данные хранятся без иерархии (каждый объект расположен в пуле данных на одном уровне). Доступ к данным возможен через API.
Алгоритм взаимодействия следующий:
- По запросу на доступ к LRS мы также выдаем доступ к хранилищу s3, который мы используем (если его нет - запросите отдельно на apps@2035.university, указав организацию и проект). Вам будет предоставлен логин и пароль. Их необходимо использовать для авторизации в личном кабинете по ссылке.
После авторизации, откройте меню пользователя:и используйте access key и s3 endpoint для автоматизированной загрузки файлов на s3 хранилище. - Подключаетесь и работаете с ним по стандартному протоколу Amazon S3 API (описание https://docs.aws.amazon.com/en_us/AmazonS3/latest/...).
- В ЦС в стейтменте xAPI передается ссылка на файл в этом сервисе.
В стейтменте xAPI нужно заполнить массив объектов в statement.attachments. В каждом объекте заполняется набор полей, ссылка на объект в s3 пишется в fileUrl:
usageType: string
display:
ru-RU: string
description:
ru-RU: string
contentType: string
length: int
sha2: string
fileUrl: string
Например,
2.1 Как формировать ссылку на файл в пользовательском интерфейсе
Чтобы добавить ссылку на файл, необходимо перейти в раздел "Buckets & Objects". Во вкладке "Objects" найти нужный файл и нажать "Properties".
Чтобы ссылка была рабочей, необходимо в разделе "General Permissions" поставить галочку в "Public".