OpenHab connector for Yandex Alice

По-умолчанию биндинг настроен для работы с облаком https://ohcloud.ru/

В Openhab Market скачиваем последнюю версию, регистрируемся в облаке https://ohcloud.ru/, устанавливаем его как основное В Умном Доме Яндекс находим навык OH Cloud

Для работы с частными навыками требуется следующее:

Клонируем в папку openhab-addons\bundles

git submodule add https://github.com/Pshatsillo/OpenhabYandexAlice.git org.openhab.io.yandexalice

Инструкция по установке:

  1. Получаем доступ к облаку Openhab (или свой, или тот, у кого есть доступ к авторизации через Openhab)

    • Openhab-cloud
    • Вносим в MongoDB Openhab запись для авторизации по Oauth
    use openhab
    db.oauth2clients.insert({ clientId: "<CLIENT-ID>", clientSecret: "<CLIENT SECRET>"})
    db.oauth2scopes.insert({ name: "yandex"})
    db.oauth2scopes.insert( { name : "Yandex Alice", description: "Access to openHAB Cloud specific API for Yandex Alice", } )
 
  • Запоминаем логин и пароль - - scope "yandex"
  1. Создаём навык в Алисе.
    • Заполняем следующие поля: Endpoint URL, URL авторизации, URL для получения токена, Идентификатор приложения, Секрет приложения, Идентификатор группы действий (scope)
    • Endpoint URL: https://home.OPENHABCLOUD/yandex (именно home)
    • URL авторизации: https://OPENHABCLOUD/oauth2/authorize (НЕ home)
    • URL для получения токена: https://OPENHABCLOUD/oauth2/token (НЕ home)
    • Идентификатор приложения:
    • Секрет приложения:
    • Идентификатор группы действий (scope): yandex
  2. Устанавливаем Openhab Cloud Connector, подключаемся к локальному облаку
  3. Устанавливаем Yandex Alice
  4. Авторизовываем навык в https://dialogs.yandex.ru/developer/ как черновой
  5. Регистрируем навык в приложении Умный дом Яндекс
  6. Получаем токен по ссылке в Openhab
  7. Настраиваем Items в Openhab

Работа с Openhab

  1. Добавляем в желаемый Item Non-Semantic Tags - Yandex, обновляем приложение "Умный дом" Яндекса
  2. Тип устройства определяется по Semantic Class, Устройства Алисы
OpenHab tag/item Yandex Describe
(Semantic)Lightbulb devices.types.light Лампочка, светильник, ночник, люстра
(Semantic)PowerOutlet devices.types.socket Розетка
(Item no tag)Switch devices.types.switch Выключатель
(Item) Number (Semantic) Temperature devices.types.sensor/ devices.properties.float/ temperature Отображение показаний температуры
(Item) Number (Semantic) Humidity devices.types.sensor/ devices.properties.float/ humidity Отображение показаний влажности.
(Item) Number (Semantic) CO2 devices.types.sensor/ devices.properties.float/ co2_level Отображение показаний уровня углекислого газа.
(Item) Color devices.types.light/ devices.capabilities.color_setting Управление цветом для светящихся элементов в устройстве
(Item) Dimmer devices.types.light/ devices.capabilities.range Изменение яркости световых элементов.
(Item) RolleRshutter devices.types.openable.curtain Шторы, жалюзи.

Составные устройства

  1. Создаём Item Group и в тэге указываем что за устройство, исходя из списка
  2. Добавляем нужные нам Items, указываем нужные тэги.
    • Тэги указываем по умениям или свойствам
    • Если тэгов нет, то будут применяться свойства по умолчанию, а Number будет применять в качестве настроек свойства float
    • режимы работы реализованы до американо, если нужно добавить какие-то свяжитесь со мной