Статусы оборудования
Используйте эту функцию для взаимодействия со статусом оборудования.
Запрос текущего статуса
Запрос на получение данных о текущем статусе детектора формируется следующим образом:
Url_Smartroad/api/integration/status?login=user_login&password=user_password
Без указания параметра sensor_id ресурс вернёт статус всех детекторов проектов, доступных пользователю.
В таблице описание дополнительных параметров запроса статуса оборудования
| Параметр | Тип параметра | Описание |
|---|---|---|
| sensor_id | строка | Необязательный параметр. Уникальный идентификатор детектора. Указывается один или несколько UUID через запятую. Ограничение: все детекторы должны относиться к доступным пользователю проектам. |
| project_id | строка | Необязательный параметр. Уникальный идентификатор проекта, по детекторам которого запрашивается информация о статусах. Указывается один или несколько UUID через запятую. Ограничение: пользователь должен иметь доступ к проектам, указанным в строке запроса. |
| from | строка | Необязательный параметр. Определяет начало промежутка времени, с которого производится запрос данных в формате ISO 8601 (YYYY-MM-DD HH:MM:SS). Допускается период ввода, кратный одной минуте. Не допускается ввод секунд. Используется только совместно с параметром to. |
| to | строка | Необязательный параметр. to – дата и время окончания интервала (включительно) в формате ISO 8601 (YYYY-MM-DD HH:MM:SS). Допускается период ввода, кратный одной минуте. Не допускается ввод секунд. Используется только совместно с параметром from. |
| timezone | строка | Необязательный параметр. Часовой пояс. Формат записи – TZ identifiers. Вместо знака слеша / допускается использовать знак подчёркивания _. По умолчанию выполняется подстановка значения параметра из профиля пользователя. Пример: Europe/Moscow. Используется только совместно с параметрами from, to. |
Детализация ответа, в зависимости от набора параметров в запросе, выглядит следующим образом:
| Параметр / Наличие | Указан | Отсутствует |
|---|---|---|
| From/to | Формируется бинарный статус работы оборудования за указанный период времени | Формируется бинарный статус работы на момент запроса |
0– ДТ не работает1– ДТ работает
Получение данных
При поступлении корректного запроса Ресурс формирует ответное сообщение в формате JSON.
Пример ответного сообщения при запросе статуса на текущий момент времени (без указания from, to):
[
{
"name" : "Р-297 км 773+980", "sensor_id": "399f9315-b7b4-439a-83c3-f81988d29761",
"status": {"sensor_id": "399f9315-b7b4-439a-83c3-f81988d29761", "current_status_code": 0, "current_status_list": "ACTIVE, READING, NO_PVR, DEAD_ADAPTER"}
},
{
"name" : "Av_DT_3_388FA", "sensor_id": "e9a722ce-1a96-459d-b25a-01cc15cdf1ca",
"status": {"sensor_id": "e9a722ce-1a96-459d-b25a-01cc15cdf1ca", "current_status_code": 1, "current_status_list": "ACTIVE, READING, NO_PVR, DEAD_ADAPTER"}
},
{
"name" : "Калуга 2", "sensor_id": "ecafc593-871b-46dc-b58c-79d3f11fd77b",
"status": {"sensor_id": "ecafc593-871b-46dc-b58c-79d3f11fd77b", "current_status_code": 1, "current_status_list": "ACTIVE, NO_PVR, DEAD_ADAPTER"}
}
]
Если дополнительно указываются параметры from, to, структура ответа меняется на следующую:
{
"message_id": "1e1050a2-138c-cd8c-69e7-5d3b0979f7c5",
"time_zone": "Europe/Moscow",
"message_data": {
"range_start": "2024-10-28T08:00:00+03:00",
"range_end": "2024-10-28T09:00:00+03:00",
"sensors": [
{
"sensor_id": "2ca11ec8-ef1f-4eac-89e8-18ee8b64680b",
"name": "Virtual",
"statuses": [
{
"status_code": 0,
"status_list": [
"ACTIVE",
"CONNECTED",
"DEAD_ADAPTER",
"NO_PVR",
"READING"
],
"status_duration": "0000-00-00 01:00:00",
"status_duration_percent": 100.00
}
]
},
{
"sensor_id": "516b294e-4435-4aed-9c8f-be4b5bae9c38",
"name": "Virtual2",
"statuses": [
{
"status_code": 0,
"status_list": [
"ACTIVE",
"CONNECTED",
"DEAD_ADAPTER",
"NO_PVR",
"READING"
],
"status_duration": "0000-00-00 01:00:00",
"status_duration_percent": 100.00
}
]
}
]
}
}
Описание параметров ответного сообщения
| Параметр | Описание |
|---|---|
| name | Наименование детектора, указанное в Системе |
| sensor_id | Уникальный идентификатор детектора |
| status, statuses | Информационный блок, содержащий ответ |
| status_code, current_status_code | Код текущего статуса оборудования. Возможные значения: - 0 – Оборудование не работает - 1 – Оборудование работает |
| status_list, current_status_list | Список статусов. Возможны комбинации следующих статусов: - ACTIVE - READING - HARDWARE_ERROR - BLIND - INTERFERENCE - RAIN - CONNECTING - CONNECTION_ERROR - CONNECTED - TIMEOUT - EXTENDED_MODE - BOOTLOADER_MODE - NO_PVR - DEAD_ADAPTER - NO DATA |
| message_id | Уникальный идентификатор ответа |
| time_zone | Часовой пояс. Формат записи - TZ identifiers. Вместо символа слеш допускается использовать знак подчёркивания _. По умолчанию выполняется подстановка значения параметра из профиля пользователя. Пример: Europe/Moscow. Используется только совместно с параметрами from, to |
| message_data | Информационный блок, содержащий ответ |
| range_start | Начальное значение промежутка времени с указанием даты, времени и смещения времени |
| range_end | Конечное значение промежутка времени с указанием даты, времени и смещения времени |
| status_duration | Длительность временного периода, в течение которого ДТ находился в указанном статусе (за выбранный период между from и to) |
| status_duration_percent | Длительность временного периода, в течение которого ДТ находился в указанном статусе (в относительных единицах) |
Статусы ДТ, поступающие от ДТ и адаптера
| Статус | Описание |
|---|---|
| ACTIVE | Признак включения детектора в опрос. Задаётся при конфигурировании адаптера в файле multiadapter.json, в параметре SENSORS[].active |
| BLIND | Ослепление из-за образования снежного или ледяного налёта на антенне ДТ, возможно заслонение ДТ посторонними предметами |
| BOOTLOADER_MODE | Режим загрузчика. В этом режиме детектор не отправляет объекты и PVR. |
| CONNECTED | Адаптер успешно осуществил соединение с ДТ, при этом данные ещё не начали передаваться в Систему |
| CONNECTING | Адаптер предпринимает попытки соединения с ДТ |
| CONNECTION_ERROR | Ошибка при соединении адаптера к ДТ |
| DEAD_ADAPTER | От адаптера не поступают данные о ТС за определённый интервал, по умолчанию 2 минуты |
| EXTENDED_MODE | ДТ работает в расширенном режиме, адаптер получает от него данные. С точки зрения пользователя этот статус аналогичен статусу ACTIVE |
| HARDWARE_ERROR | Обнаружена ошибка в аппаратной части ДТ, которая может негативно повлиять на корректную работу ДТ |
| INTERFERENCE | Обнаружены помехи на частотном канале ДТ, воздействующие на детектирование объектов (как правило помехи возникают из-за сигнала другого ДТ находящегося или установленного поблизости) |
| NO DATA | Статус не связан с состоянием ДТ и означает отсутствие данных в БД за выбранный период |
| NO_PVR | От детектора не поступают данные о ТС за определённый интервал, по умолчанию 10 минут |
| RAIN | Обнаружено наличие осадков (дождя), которые могут повлиять на эффективность обнаружения объектов |
| READING | Получение данных от детектора |
| TIMEOUT | Истекло время подключения адаптера к ДТ. Время на подключение задаётся при конфигурировании Адаптера в файле multiadapter.json, в параметре, в параметре SENSORS[].timeout, по умолчанию равно 100 мс |