Перед запуском убедитесь, что скрипты плагина загружены.
Для запуска окна плагина следует воспользоваться методом open(options)
. Параметры:
options
– объект с настройками:
token
– (опционально) токен авторизации;
license
– объект с информацией о лицензии;
licenseUrl
– строка, содержащая путь к файлу лицензии;
lang
– строка с идентификатором одного из подключенных языковых пакетов;
meta
– объект, ключи которого являются названиями метаполей, а значения – их строковыми значениями. Метаданные передаются в Oz API и могут быть использованы для получения результатов анализа или поиска;
params
– объект с идентификаторами и значениями дополнительных параметров:
extract_best_shot
: true/false
– запуск выбора лучшего кадра в анализе Quality;
action
– массив строк с идентификаторами действий, по которым будет проводиться проверка.
Доступные действия:
photo_id_front
– фото лицевой стороны документа;
photo_id_back
– фото обратной стороны документа;
video_selfie_left
– поворот головы налево;
video_selfie_right
– поворот головы направо;
video_selfie_down
– наклон головы вниз;
video_selfie_high
– поднятие головы вверх;
video_selfie_smile
– улыбка;
video_selfie_eyes
– моргание;
video_selfie_scan
– сканирование;
video_selfie_blank
– отсутствие действия, простое селфи.
video_selfie_best
– специальное действие, которое извлекает из видео лучший кадр и выполняет анализ по нему вместо целого видео.
overlay_options
– параметры отображения шаблона документа:
show_document_pattern
: true/false
– по умолчанию true
, отображает картинку-шаблон, при значении false
остается только прямоугольная рамка;
on_submit
– callback-функция без аргументов, вызываемая после отправки пользовательских данных на сервер (не применяется в режиме capture
).
on_capture_complete
– callback-функция с одним аргументом, вызываемая по завершении съемки и возвращающая информацию о снятом видео. Пример возвращаемого объекта показан здесь.
on_error
– callback-функция с одним аргументом, вызываемая при ошибке во время съемки и возвращающая информацию об ошибке: код ошибки, сообщение, идентификатор телеметрии для журналирования.
on_close
– callback-функция без аргументов, вызываемая по окончании проверки после закрытия окна плагина, как ручного, так и автоматического.
style
– раздел для настройки интерфейса.
device_id
– (опционально) идентификатор используемой камеры.
cameraFacingMode
(добавлено в 1.4.0) – параметр, определяющий, какую камеру использовать; возможные значения: user
(передняя камера), environment
(задняя камера). Этот параметр работает только в том случае, когда для параметра use_for_liveness
в файле конфигурации Web Adapter не установлено значение. Если use_for_liveness
установлено любое значение, cameraFacingMode
игнорируется.
disable_adaptive_aspect_ratio
(добавлено в 1.5.0) – выключает автоматическую подстройку соотношения сторон видео к соотношению сторон окна. Значение по умолчанию – False
, при стандартных настройках видео подстраивается под ближайшее соотношение из списка: 4:3, 3:4, 16:9, or 9:16. Обратите внимание: для съемки видео на смартфонах нужна портретная ориентация.
get_user_media_timeout
(добавлено в 1.5.0) – когда SDK не может получить доступ к камере, по истечении этого таймаута появится подсказка, как решить проблему. Значение по умолчанию – 40000 (мс).
Пример:
Этот коллбэк вызывается раз в несколько секунд в процессе анализа и возвращает промежуточный результат (не применяется в режиме capture
). Вид результата зависит от параметра настройки Web Adapter result_mode
.
Пожалуйста, обратите внимание: в целях безопасности мы рекомендуем настроить логику принятия решений на стороне вашего бэкенда. Более детальную информацию и примеры кода вы можете найти здесь.
Если result_mode
установлен как safe
, коллбэк on_result
возвращает только состояние анализов:
или
При значении status
коллбэк возвращает состояние анализов, а также – для каждого типа анализа – название типа, состояние анализа этого типа и вердикт системы.
или
При значенииfolder
возвращается практически то же самое, что при status
, только добавляется идентификатор папки.
В случае, когда result_mode
установлен на full
, вернется:
пока анализ выполняется – ответ, аналогичный ответу при значении status
(в процессе обработки), или
полная информация об анализах:
все, что вы могли видеть при значении folder
;
временные метки;
метаданные;
идентификаторы анализов, компании, группы анализов;
пороги;
информация о медиафайлах;
и так далее.
Этот коллбэк вызывается после окончания проверки и возвращает результат анализа (не применяется в режиме capture
). Вид результата зависит от параметра настройки Web Adapter result_mode
.
Пожалуйста, обратите внимание: в целях безопасности мы рекомендуем настроить логику принятия решений на стороне вашего бэкенда. Более детальную информацию и примеры кода вы можете найти здесь.
Если result_mode
установлен как safe
, коллбэкon_complete
возвращает только состояние анализов:
При значении status
коллбэк возвращает состояние анализов, а также – для каждого типа анализа – название типа, состояние анализа этого типа и вердикт системы.
При значенииfolder
возвращается практически то же самое, что при status
, только добавляется идентификатор папки.
В случае, когда result_mode
установлен на full
, вернется полная информация об анализах:
все, что вы могли видеть при значении folder
;
временные метки;
метаданные;
идентификаторы анализов, компании, группы анализов;
пороги;
информация о медиафайлах;
и так далее.
В этом разделе вы узнаете, как снимать видео и отправлять его Oz API через ваш бэкенд.
Режим capture работает следующим образом:
1. Oz Web SDK снимает видео и передает его вашему web-приложению в виде последовательности кадров.
2. Web-приложение вызывает ваш бэкэнд и передает в него архив с кадрами.
3. После обработки видео ваш бэкэнд вызывает Oz API для выполнения анализов, после чего получает их результаты.
4. Ваш бэкэнд передает результаты обратно в web-приложение (опционально).
На стороне сервера необходимо сконфигурировать Web SDK для работы в режиме capture: установить параметру architecture
в файле app_config.json значение capture
.
В вашем web-приложении добавьте callback-функцию для обработки кадров при открытии плагина Web SDK:
Структура получаемого объекта зависит от того, была ли обнаружена виртуальная камера.
Список переменных с их значениями приведен ниже.
Видео, полученное через Oz Web SDK, – это последовательность кадров. Чтобы отправить его Oz API, поместите кадры в ZIP-архив, затем используйте метод POST {{host}}/api/folders
(пройдите по ссылке для ознакомления с коллекцией Postman).
Вы можете получить из папки видео в формате MP4 video: вызовите метод /api/folders/{{folder_id}}
, указав идентификатор папки. В JSON-ответе найдите preview_url
в source_media
. В preview_url
содержится ссылка на видео. Из плагина получить MP4-видео нельзя (только в виде последовательности кадров).
При использовании архитектуры capture
также необходимо добавить в запрос POST {{host}}/api/folders
дополнительное поле additional_info
. Оно нужно для сбора информации о среде клиента. Пример заполнения тела запроса:
Для передачи в Oz API используйте данные без кодирования в base64.
Переменная
Тип
Описание
best_frame
String
Лучший кадр, JPEG в формате data URL
best_frame_png
String
Лучший кадр, PNG в формате data URL, необходим для защиты от подмены видеопотока с помощью виртуальной камеры
best_frame_bounding_box
Array[Named_parameter: Int]
Координаты прямоугольника, в который вписано лицо на лучшем кадре
best_frame_landmarks
Array[Named_parameter: Array[Int, Int]]
Координаты "ориентиров" лица (левый глаз, правый глаз, нос, рот, левое ухо, правое ухо) на лучшем кадре
frame_list
Array[String]
Все кадры в формате data URL
frame_bounding_box_list
Array[Array[Named_parameter: Int]]
Координаты прямоугольников, в которые вписано лицо на кадрах из frame_list
в соответствующем порядке
frame_landmarks
Array[Named_parameter: Array[Int, Int]]
Координаты "ориентиров" лица (левый глаз, правый глаз, нос, рот, левое ухо, правое ухо) на кадрах из frame_list
в соответствующем порядке
action
String
Код действия
additional_info
String
Информация о среде клиента