Преамбула.

Привет Всем!

Появился в моем “без”Умном Доме новый гаджет, колонка со встроеным Гугл Асистентом.

Ну и сразу вопрос: “Как интегрировать голосового помошника в УД ?” У меня стоит IoBroker, как установить, настроить можно посмотреть в статье, или в доках на офсайте. Будем считать что у вас уже есть настроеный ИоБрокер.

Шаг за шагом.

  1. Первое что нужно сделать это добавить колонку к вашему Гугл аккаунту. Для этого в приложении Google Home для андроида, добавим наше устройство.

  2. Установим одноименный драйвер для ИоБ - Chromecast . Жмем на плюсик.

    ❗️Примечание: Если тапнуть на знак вопроса , рядом с плюсиком то попадаем на файл Readme. Описание драйвера на GitHub.

  3. Настройки драйвера. После успешной установки мы попадаем на вкладку настройки драйвера. Устанавливаем значения и жмем сохранить.

4.Установим драйвер Sayit

После успешной установки мы попадаем на вкладку настройки драйвера. Должно появится наше устройство. Устанавливаем значения и жмем сохранить.

Теперь проверим будет ли разговаривать наша колонка. Для этого в обьектах драйвера Sayit заполнить значение, например Привет мир и нажать галочку. Колонка должна сказать - Привет мир

5.Установим драйвер Cloud. Если еще не установлен.

После успешной установки мы попадаем на вкладку настройки драйвера. В настройках драйвера на вкладке Настройки необходимо указать APP-KEY, если его нет тапнуть на адресс указаный стрелкой пройти регистрацию и получить.

На вкладке СЕРВИСЫ И IFTTT указать IFTTT key и УРЛ для IFTTT

IFTTT key находится по ссылке www.ifttt.com/maker_webhooks , тапнув на Документация . Есть инструкция на GitHub

  1. Переходим к настройке сценария на IFTTT. Естественно Вы уже зарегестрированы на IFTTT, по картинкам настраиваем сценарий.

  1. Осталось отреагировать на событие. Создадим скрипт который будет следить за изменением в обьекте cloud.0.services.ifttt

on({id: 'cloud.0.services.ifttt', change: "ne"}, function (obj) { //Подписуемся на изменение обьекта cloud.0.services.ifttt
  var value = obj.state.val;
  var oldValue = obj.oldState.val;
  if (getState("cloud.0.services.ifttt").val === 'monkey_white') { //и если оно равно monkey_white
    setState("sayit.0.tts.text", 'Получилось');//то наш скрипт говорит в колонку "Получилось"
  }
});

на блокли это выглядит так