События для отображения являются упрощенной версией тех событий, с которыми работает система и предназначены для вывода на страницу. Они содержат текст и метку времени.
API событий для отображения предоставляет события с разделением на страницы для уменьшения передаваемого трафика от сервера клиенту.
GET /api/ui-events/ |
Запрос необходимо сопровождать параметрами:
Название параметра | Описание параметра |
start_time | Начальное время выборки в формате ISO 8601 |
end_time | Конечное время выборки в формате ISO 8601 |
page | Номер страницы. Счет начинается с 1. |
limit | Количество событий на странице. Минимальное значение 10. |
kinds | Виды событий. Пустое значение или его отсутствие интерпретируется как все виды событий. Значения разделяются запятой. Возможные значения: lowAlarm – Нарушение нижней уставки (AI, AO) normal – Возвращение в рабочую зону highAlarm – Нарушение верхней уставки (AI, AO) confirmed - Квитировано discreteOn – Состояние «Вкл.» discreteOff – Состояние «Выкл.» userAction – Действие пользователя info – Информация warning – Предупреждение alarm – Авария |
Структура ответа API-запроса:
Название параметра | Описание параметра |
results | Содержит массив с событиями |
pageCount | Количество доступных страниц. На это поле можно ориентироваться для запроса следующих страниц с параметром page |
Структура события API-запроса:
Название параметра | Описание параметра |
generateTime | Время формирования события в системе в формате ISO8601. |
text | Сформированный текст события |
Пример API-запроса первых 50-ти событий всех видов 23 июня с 7 до 23 часов по UTC:
(async () => { const params = new URLSearchParams({ start_time: '2022-06-23T07:00:00.000Z', end_time: '2022-06-23T23:00:00.000Z', page: 1, limit: 50, kinds: '' }) const response = await fetch('/api/ui-events/?' + params, { credentials: 'include' }) if (response.ok) { const json = await response.json() const events = json.results const pageCount = json.pageCount } })(); |
Пример API-запроса на получение первых семи событий |