API УСПД Вавиот

Последние изменения: 17.04.2020

Вступление

Программный интерфейс API предназначен для взаимодействия УСПД «Вавиот» со сторонними системами верхнего уровня с целью доступа к данным, содержащимся в базе данных УСПД, прямому доступу к устройствам сети NB-Fi (приборам учета электроэнергии), конфигурирования и контроля функционирования.

API представляет собой набор программных методов, исполняющихся посредством HTTP GET либо POST запросов.

Подключение к УСПД

Для осуществления обмена данными с УСПД необходимо наличие TCP/IP канала между ПО верхнего уровня и физическим Ethernet интерфейсом УСПД.

Порт для HTTP- обмена: 80

Авторизация

Большинство методов API предполагают предварительную авторизацию клиента.

В УСПД поддерживается два пользователя, имеющих роли guest и admin.

Ниже описана последовательность действий для авторизации.

  1. Получение JWT-токена

Запрос:

Тип запроса

URL

BODY

Обязательные поля в заголовке

POST

/auth

{"login" : "your_login",

"password" : "your_pass"}

Content-Type: application/json

Ответ:

BODY

{"modifyTS": 1544430138, "WAVIOT_JWT": "eyJhbGciOiJtZDUiLCJ0eXAiOiJXQVZJT1RfSldUIn0=.eyJpc3MiOiJhdXRoLndhdmlvdC5ydSIsImF1ZCI6IndhdmlvdC5ydSIsImV4cCI6MTU0NDQzMDQzOSwidXNlck5hbWUiOiJBTW9saW4iLCJ1c2VyUm9sZSI6ImFkbWluIiwidXNlcl9pZCI6IjQxOCIsImFwaUtleSI6InU4N2lqdXF1M2x1ZWNlZHczY281aXdwcWs1N2IxY2M3NmN1YnM5cndqbzFjNTI2dml2b3N0aG1oOHJkeDdzcDYifQ==.Y2M5MmFkZDkzOWZiMjc2NDZjNTYyZjRjNTgxOTcxOTg=" }

  1. Использование JWT-токена

При отправке запросов, требующих аутентификацию, необходимо прикрепить полученный токен к заголовкам запросов в виде поля

authorization: bearer WAVIOT_JWT

Пример использования:

Запрос:

Тип запроса

URL

Обязательные поля в заголовке

GET

/gateway/localid

authorization: bearer eyJhbGciOiJtZDUiLCJ0eXAiOiJXQVZJT1RfSldUIn0=.eyJpc3MiOiJhdXRoLndhdmlvdC5ydSIsImF1ZCI6IndhdmlvdC5ydSIsImV4cCI6MTU0NDQzMDQzOSwidXNlck5hbWUiOiJBTW9saW4iLCJ1c2VyUm9sZSI6ImFkbWluIiwidXNlcl9pZCI6IjQxOCIsImFwaUtleSI6InU4N2lqdXF1M2x1ZWNlZHczY281aXdwcWs1N2IxY2M3NmN1YnM5cndqbzFjNTI2dml2b3N0aG1oOHJkeDdzcDYifQ==.Y2M5MmFkZDkzOWZiMjc2NDZjNTYyZjRjNTgxOTcxOTg=

  1. Срок действия JWT-токена

Токен, выданный при авторизации, имеет ограниченный срок действия, равный 10 минут.

После окончания данного периода времени необходимо выполнить процедуру авторизации повторно.

В случае, если токен более недействителен, все запросы, требующие аутентификацию, возвращают ошибку 403 Token was expired.

  1. Смена имени пользователя и пароля.

Запрос:

Тип запроса

URL

BODY

Обязательные поля в заголовке

POST

/change_pass

{"login" : "new_login",

"password" : "new_pass",

“role”:”guest”}

Content-Type: application/json

Ответ:

BODY

login/passwordchanged

Доступные методы

Методы модуля driver_electro5

Модуль driver_electro5 реализует поддержку приборов учета электроэнергии Вавиот Фобос.

Описание методов для получения показаний и событий приборов учета, а также их конфигурирования доступно по ссылке https://kb.waviot.ru/index.php?View=entry&EntryID=54

Методы модуля gateway

Модуль gateway выполняет функции NB-Fi базовой станции. Данный HTTP API-интерфейс предоставляет доступ к модулю gateway для администрирования и мониторинга базовой станции.

Описание методов модуля gateway доступно по ссылке https://waviot.makekb.com/entry/52/

Методы модуля telecom

Модуль telecom выполняет функции NB-Fi телеком-cервера. Данный HTTP API-интерфейс позволяет получать, отправлять NB-Fi пакеты данных, конфигурировать режимы работы устройств, базовых станций, выполнять мониторинг работы сети и загружать лицензии на новые устройства.

Описание методов модуля telecom доступно по ссылке https://kb.waviot.ru/index.php?View=entry&EntryID=53

Коды ошибок

Помогла ли вам статья?