Для начала тестирования нужно отправить POST-запрос из браузера на следующий URL:
https://examus_url/integration/simple/integration_name/start/
Тело запроса должно представлять собой form-data с одним параметром token, в котором передается JSON Web Token с информацией о сеансе тестирования. JWT должен быть подписан с использованием алгоритма HMAC-SHA256 (“HS256”), ключом для подписи является параметр jwt_secret. Больше информации о JSON Web Token можно найти на jwt.io, там же есть ссылки на библиотеки для работы с ним.
<form action="https://local.examus.net/integration/simple/your_integration/start/" method="post"> <input type="hidden" name="token" value="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxMjMyMTM0IiwibGFzdE5hbWUiOiJTbWl0aCIsImZpcnN0TmFtZSI6IkpvaG4iLCJsYW5ndWFnZSI6ImVuIiwiYWNjb3VudElkIjoxMjMsImFjY291bnROYW1lIjoiQ29ycG9yYXRlIHVuaXZlcnNpdHkiLCJleGFtSWQiOiJhMzg3NTYyMyIsImNvdXJzZU5hbWUiOiJQaHlzaWNzIiwiZXhhbU5hbWUiOiJGaW5hbCB0ZXN0IiwiZHVyYXRpb24iOjEyMCwic2NoZWR1bGUiOmZhbHNlLCJwcm9jdG9yaW5nIjoib2ZmbGluZSIsImlkZW50aWZpY2F0aW9uIjoicGFzc3BvcnQiLCJzdGFydERhdGUiOiIyMDE4LTAzLTI3VDAwOjAwOjAwWiIsImVuZERhdGUiOiIyMDE4LTAzLTMwVDEyOjU1OjAwWiIsInNlc3Npb25JZCI6IjgyODMzMWJkYTAyNSIsInNlc3Npb25VcmwiOiJodHRwczovL2dvLmJhbmFuYXMuY29tL29wZW50ZXN0I3Rlc3QvYjM4NzU2MjMifQ.GxcAcW0xGVDoM-gTtKHMol5kXNhTXuzAY3ekZD5CWgQ"> <button type="submit">Start Exam</button> </form>
В отличии от API. Запуск тестирования с прокторингом достаточно передать в JWT payload
{ "ExamusSessionId": {session_id}}
где {session_id} это id сессии в системе прокторинга в числовом формате, например:
{ "ExamusSessionId": 258914}
Остальные передаваемые параметры редактируют уже существующую сессию/экзамен/пользователя
Список параметров
Группа параметров | Поле | Тип | Макс. длина | Описание |
Параметры пользователя | userId | string | 255 | Идентификатор участника в системе заказчика. Он должен быть уникальным для каждого пользователя. |
string | 255 | email участника в системе заказчика. | ||
lastName | string | 255 | Фамилия | |
firstName | string | 255 | Имя | |
thirdName | string | 255 | Отчество | |
language | string (enum) | 2 | Язык пользователя. Двухбуквенный код из ISO 639-1. Обратитесь в поддержку Экзамуса, чтобы уточнить список поддерживаемых языков и активировать нужные. | |
Параметры организации | accountId | string | 255 | Идентификатор организации в системе заказчика. Различные accountId нужны, если тест-систему используют несколько организаций, которые нужно различать между собой и разграничивать между ними доступ. |
accountName | string | 255 | Название организации в системе заказчика
К этому параметру привязываются учётные записи прокторов, администраторов, видеозаписи тестируемых. Поэтому важно передавть одно и тоже значение accountName в рамках одной организации/контрагента, у которого проходят тесты с прокторингом. Смена значения приведёт к созданию новой компании, для которой потребуются новые учётные записи. | |
Параметры экзамена | courseName | string | 450 | Название учебного курса, в рамках которого сдается экзамен |
examId | string | 255 | Идентификатор экзамена в системе, предпочтительно GUID | |
examName | string | 500 | Название экзамена | |
userAgreementUrl | string (URL) | 200 | Ссылка на документ, содержащий правила проведения экзамена, с которыми пользователь будет ознакомлен перед началом экзамена | |
duration | int | - | Продолжительность экзамена в минутах | |
schedule | boolean | - | Необходимость записи в календаре, по умолчанию false | |
auxiliaryCamera | boolean | - | Включить дополнительную камеру со смартфона | |
auxiliaryCameraMode | string (enum) | - | Переключает режим второй камеры:
| |
allowMobileDevices | boolean | - | Включить прохождение с мобильных устройств | |
proctoring | string (enum) | - | Тип прокторинга: “online” в случае с проктором, контролирующим сдачу экзамена (синхронный режим), “offline” в случае с пост-просмотром (асинхронный режим), “auto” в случае автоматического выставления заключения алгоритмами системы "identification" в случае подключения режима Идентификация | |
identification | string (enum) | - | Режим фотографирования. Доступные значения: “passport”, “face”, “face_and_passport”, “skip” | |
rules | JSON | - | ||
trial | boolean | - | true, если экзамен является пробным. Пробные экзамены не отображаются в архиве, их можно использовать для тестирования интеграции или для ознакомления студентов с системой прокторинга. По умолчанию false | |
allowMultipleDisplays | boolean | - | true, если в рамках экзамена разрешено использование дополнительного монитора. По умолчанию false | |
allowVirtualEnvironment | boolean | - | true, если разрешено запускать прокторинг в виртуальной машине. По умолчанию false | |
checkIdPhotoQuality | boolean | - | true, если требуется автоматическая проверка качества документа. По умолчанию false | |
scoreConfig | JSON | - | ||
visibleWarnings | JSON | - | ||
desktopAppForbiddenProcesses | JSON | - | Список строк, где каждая строка это название запрещенного процесса. | |
desktopAppAllowedProcesses | JSON | - | Список строк, где каждая строка это название разрешенного процесса. | |
startDate | string (datetime) | - | Дата и время, начиная с которого можно запустить экзамен, в формате ISO 8601. Необходимо либо явно указывать часовой пояс, либо использовать специальный формат для UTC. В случае экзаменов без записи выставляется индивидуально для каждого сеанса прокторинга (т.е. является параметром сеанса, а не экзамена). | |
endDate | string (datetime) | - | Дата и время, до которого можно запустить экзамен, в формате ISO 8601. В случае экзаменов без записи выставляется индивидуально для каждого сеанса прокторинга (т.е. является параметром сеанса, а не экзамена). | |
Параметры сеанса | sessionId | string | 230 | Идентификатор сеанса в системе, предпочтительно GUID. Должен быть уникальным для каждой попытки в системе |
sessionUrl | string (URL) | 2550 | Ссылка на прохождение экзамена в системе Важно! Это должна быть страница с тестом, которая уже открывается в прокторинге и где тестируемый видит вопросы теста. Если вдруг ссылка сама по себе запускает прокторинг, передаётся в JWT, то произойдёт открытие прокторинга в прокторинге. | |
exp | int | - | Дата и время истечения токена в числовом формате Unix timestamp. Для вычисления этого времени можно использовать формулу “текущее время + 30 секунд”. | |
sessionFinishUrl | string (URL) | 2550 | Адрес страницы, на которую студент должен быть перенаправлен после завершения экзамена. Его также можно передать в параметрах завершения сеанса. | |
reviewUrl | string (URL) | 600 | URL, на который будет отправлен результат прокторинга. Переопределяет review_url для этого сеанса прокторинга. | |
Параметры среды | ldb | boolean | - | Необходимость открывать экзамен в защищенном (lockdown) браузере. Какой именно браузер использовать, нужно согласовать заранее. |
biometricIdentification | JSON | - | Параметры биометрической идентификации | |