Home Assistant: работа с RESTful API

Home Assistant

Скрещиваем Home Assistant с Blynk

Научимся получать данные в Home Assistant из приложения Blynk.
С помощью RESTful API.
В очередной раз удивляюсь простоте интеграции Home Assistant с различными платформами.
Для интеграции с Blynk нет нативного модуля, но у Blynк есть API.
У Home Assistant есть для работы с API тип rest.
Для данной интеграции нам потребуется токен устройства Blynk.

Узнать токен Blynk можно несколькими способами:

  1. Наверное он у вас записан, т.к. при использовании библиотеки Blynk он требуется
  2. Посмотреть на сервер Blynk
  3. Скопировать из приложения
Blynk Token
Токен устройства на сервере Blynk

Получение токена из приложения

blynk screenshot
Останавливаем приложение (квадратик)
Blynk App Screenshot
Переходим в настройки (гайка)
Blynk App Settings
Копируем токен в буфер обмена или отправляем себе на emal

Вывод данных температуры с датчика DS18S20 идет в виртуальный пин V15.

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

curl https://blynk.domain.ru/ВАШ_ТОКЕН/get/V15
["22.250"]

Видим, что данные возвращаются в JSON.
При этом значение имеет три знака после запятой.

Создадим сенсор в hass для получения данного значения 

vi /opt/homeassistant/config/configuration.yaml
- platform: rest
  resource: https://blynk.domain.ru/ВАШ_ТОКЕН/get/V15
  name: Office Temperature
  value_template: >-
    {{ value | replace('"','') | replace("[","") | replace("]","") | float | round (1) }}
  unit_of_measurement: "°C"
  scan_interval: 300

Где:

  • rest — тип сенсора
  • resource — строка запроса
  • name — ваше имя объекта
  • value_template — шаблон вывода, где мы оставляем только число и уменьшаем значение до одной цифры после запятой (round (1))
  • unit_of_measurement — единица измерения
  • scan_interval — интервал обновления в секундах

Перезапустим hass

service hass restart

Заходим в устройства hass

https://hass.mydomain.ru/config/entities

Видим, что появился новый объект:

Office Temperature  sensor.office_temperature Сенсор
 

Выведем его на панель в виде шкалы

Home Assistant шкала

Так же можем использовать полученные значения в своих сценариях.

На этом все:)!

 

Рейтинг
( 1 оценка, среднее 5 из 5 )
Понравилась статья? Поделиться с друзьями:
Комментарии: 2
  1. гость

    У автора опечатка
    Правльно вот так.

    sensor:
    — platform: rest
    resource: https://blynk.domain.ru/ВАШ_ТОКЕН/get/V15
    name: Office Temperature
    value_template: >-
    {{ value | replace(‘»‘,») | replace(«[«,»») | replace(«]»,»») | float | round (1) }}
    unit_of_measurement: «°C»
    scan_interval: 300

  2. Troubled

    Thank you for the guide above. I am having a problem with the value_template section. The blynk pressure sensor value is being displayed, but it still still shows brackets and quotes and does not show units….ie [«16.600»]. I have tried to change indentation, but the file editor shows errors.
    All help appreciated

    sensor:
    — platform: rest
    resource: http://blynk-cloud.com/MYTOKEN/get/V4
    name: Water Pressure
    value_template: >-
    {{value | replace (‘»‘,») | replace («[«, «») | replace («]», «») | float | round (1)}}
    unit_of_measurement: «PSI»
    scan_interval: 300

Добавить комментарий

:) :D :( :o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.