Вебхуки
Вебхук — механизм отправки уведомлений при наступлении в системе события, на которое подписано клиентское приложение.
Вебхуки можно использовать для решения разных задач, например, для уведомления пользователя об определенном событии, вызова определенных действий на целевом веб-сайте, при решении задач безопасности, таких как удаленное автоматическое управление доступом и др.
Например, если вы настроили периферийное устройство и хотите получать результаты распознавания для верификации объекта.
Для того, чтобы FindFace Lite отправлял HTTP-запросы при наступлении определенных событий, создайте и настройте вебхук.
Пройдите аутентификацию
Чтобы пройти аутентификацию в системе, используйте POST-запрос /v1/auth/login.
Для параметров username и password используйте данные, полученные на ШАГЕ 5.
Пример запроса:
{
"username": "login",
"password": "password"
}
Пример успешного ответа:
{
"access_token": "token"
}
Создайте Вебхук
Чтобы создать вебхук, используйте POST-запрос /v1/webhooks/. Ниже описаны все параметры и их значения:
Параметры |
Типы значений |
Описание |
---|---|---|
name |
строка |
Название вебхука. |
active: |
true |
Значение по-умолчанию, которое означает, что вебхук включен. |
false |
Возможное значение, которое означает, что вебхук выключен. |
|
target: |
строка |
Целевой URL для отправки сообщение о событии. |
filters |
группа значений [filters] |
Набор фильтров, основывая на которых сообщения будут или не будут отправлены на целевой URL. На отправку сообщений влияют только указанные фильтры. Если группу значений [filters] оставить пустой, на целевой URL будут отправляться сообщения по всем событиям без исключений. |
type_in |
строка |
Если созданный Event соответствует указанным типам (face, car or license_plate), сообщение будет отправлено на целевой URL. |
camera_in: |
число или несколько чисел |
Если созданный Event связан с указанными в значении идентификаторами объекта Camera, сообщение будет отправлено на целевой URL. |
card_in: |
число или несколько чисел |
Если созданный Event связан с указанными в значении идентификаторами объекта Card, сообщение будет отправлено на целевой URL. |
confidence_gte: |
число от 0 до 1 |
Если результат распознавания больше или равен указанному значению, сообщение будет отправлено на целевой URL. |
confidence_lte: |
число от 0 до 1 |
Если результат распознавания меньше или равно указанному значению, сообщение будет отправлено на целевой URL. |
matched: |
true |
Сообщение на целевой URL будет отправлено только при положительном результате распознавания. |
false |
Сообщение на целевой URL будет отправлено только при отрицательном результате распознавания. |
|
bs_type_in: |
overall |
Сообщение на целевой URL будет отправлено только о лучшем результате распознавания за определенный период времени. |
realtime |
Сообщение на целевой URL будет отправлено только обо всех результатах распознавания. |
|
Yaw, Pitch, Roll |
Параметры означают угол наклона относительно осей XYZ. Применяйте их, только если в конфигурационном файле для параметра headpose одним из значений установлено face_features. |
|
yaw_lte: |
число |
Если положение головы по параметру yaw меньше или равно указанному значению, сообщение будет отправлено на целевой URL. |
yaw_gte: |
число |
Если положение головы по параметру yaw больше или равно указанному значению, сообщение будет отправлено на целевой URL. |
pitch_lte: |
число |
Если положение головы по параметру pitch меньше или равно указанному значению, сообщение будет отправлено на целевой URL. |
pitch_gte: |
число |
Если положение головы по параметру pitch больше или равно указанному значению, сообщение будет отправлено на целевой URL. |
roll_lte: |
число |
Если положение головы по параметру roll меньше или равно указанному значению, сообщение будет отправлено на целевой URL. |
roll_gte: |
число |
Если положение головы по параметру roll больше или равно указанному значению, сообщение будет отправлено на целевой URL. |
liveness_lte: |
число от 0 до 1 |
Если результат проверки на “живость” меньше или равен указанному значению, сообщение будет отправлено на целевой URL. |
liveness_gte: |
число от 0 до 1 |
Если результат проверки на “живость” больше или равен указанному значению, сообщение будет отправлено на целевой URL. |
medmask |
object |
Если в конфигурационном файле указана функциональность medmask, вы можете фильтровать сообщения, отправляемые на целевой URL, по результату анализа медицинской маски на человеке в момент распознавания. |
name |
enum |
Доступные параметры, по которым можно фильтровать события: |
none — на лице нет медицинской маски; |
||
correct – медицинская маска надета корректно; |
||
incorrect – медицинская маска надета некорректно. |
||
confidence_lte: |
число от 0 до 1 |
Если значение уверенности в правильности результата распознавания медицинской маски меньше или равно заданному значению, на целевой URL отправляется сообщение. |
confidence_gte: |
число от 0 до 1 |
Если значение уверенности в правильности результата распознавания медицинской маски больше или равно заданному значению, на целевой URL отправляется сообщение. |
orientation |
object |
Если в конфигурационном файле указана функциональность orientation, вы можете фильтровать сообщения, отправляемые на целевой URL, по результату анализа положения автомобиля в момент распознавания. |
name |
enum |
Доступные параметры, по которым можно фильтровать события: |
back – задняя часть автомобиля; |
||
side – боковая часть автомобиля; |
||
front – передняя часть автомобиля. |
||
confidence_lte: |
число от 0 до 1 |
Если значение уверенности в правильности результата распознавания положения автомобиля меньше или равно заданному значению, на целевой URL отправляется сообщение. |
confidence_gte: |
число от 0 до 1 |
Если значение уверенности в правильности результата распознавания положения автомобиля меньше или равно заданному значению, на целевой URL отправляется сообщение. |
special_type |
object |
Если в конфигурационном файле указана функциональность special_type, вы можете фильтровать сообщения, отправляемые на целевой URL, по результату анализа типа автомобиля. |
name |
enum |
Доступные параметры, по которым можно фильтровать события: |
not_special – неспециальное транспортное средство, |
||
police – полиция, |
||
ambulance — скорая, |
||
road_service — дорожный спецтранспорт, |
||
gas_service — газовая служба, |
||
rescue_service — МЧС, |
||
other_special — все прочие специальные транспортные средства, не выделенные в отдельную группу, |
||
taxi — такси, |
||
route_transport — публичный транспорт, |
||
car_sharing — каршеринг, |
||
military — военные службы. |
||
confidence_lte: |
число от 0 до 1 |
Если значение уверенности в правильности результата распознавания типа автомобиля меньше или равно заданному значению, на целевой URL отправляется сообщение. |
confidence_gte: |
число от 0 до 1 |
Если значение уверенности в правильности результата распознавания типа автомобиля больше или равно заданному значению, на целевой URL отправляется сообщение. |
license_plate_number |
строка |
Если результат распознавания номера автомобиля равен заданному значению, на целевой URL отправляется сообщение. |
license_plate_visibility |
object |
license_plate_visibility — обязательная функция, включенная в файле конфигурации. Вы можете фильтровать отправку сообщений на целевой URL по результату видимости номерного знака автомобиля при распознавании. |
name |
enum |
Доступные параметры, по которым можно фильтровать события: |
partly_visible_no_text – номерной знак без текста и частично виден, |
||
fully_visible_no_text — номерной знак без текста и полностью виден, |
||
invisible — номерной знак невидим, |
||
partly_visible — номерной знак с текстом и частично виден, |
||
fully_visible — номерной знак с текстом и полностью виден. |
||
confidence_lte: |
число от 0 до 1 |
Если значение уверенности в правильности результата распознавания положения автомобиля меньше или равно заданному значению, на целевой URL отправляется сообщение. |
confidence_gte: |
число от 0 до 1 |
Если значение уверенности в правильности результата распознавания положения автомобиля меньше или равно заданному значению, на целевой URL отправляется сообщение. |
license_plate_event_number |
строка |
Фильтр можно применить только к типу Event’a license_plate. Если распознанный номер автомобиля в Event’e равен указанному значению, на целевой URL отправляется сообщение. |
send_attempts: |
число |
Количество попыток отправки сообщения на целевой URL. Чтобы не накладывать лимит на количество попыток, установите 0. |
Пример запроса:
{
"name": "test webhook",
"active": true,
"target": "http://localhost/webhok_test",
"filters": {
"camera_in": [
1,
2
],
"card_in": [
4,
5
],
"confidence_gte": 0.75,
"confidence_lte": 0.79,
"matched": true,
"bs_type_in": [
"overall",
"realtime"
],
"yaw_lte": 3.5,
"yaw_gte": 3.5,
"pitch_lte": -4.2,
"pitch_gte": -4.2,
"roll_lte": 1.8,
"roll_gte": 1.8,
"liveness_lte": 0.44,
"liveness_gte": 0.44
},
"send_attempts": 3
}
Пример успешного ответа:
{
"name": "test webhook",
"active": true,
"target": "http://localhost/webhok_test",
"filters": {
"camera_in": [
1,
2
],
"card_in": [
4,
5
],
"confidence_gte": 0.75,
"confidence_lte": 0.79,
"matched": true,
"bs_type_in": [
"overall",
"realtime"
],
"yaw_lte": 3.5,
"yaw_gte": 3.5,
"pitch_lte": -4.2,
"pitch_gte": -4.2,
"roll_lte": 1.8,
"roll_gte": 1.8,
"liveness_lte": 0.44,
"liveness_gte": 0.44
},
"send_attempts": 3,
"id": 1
}