Алиса заводит автомобиль (IFTTT)

Материал из База знаний
Перейти к навигации Перейти к поиску



Эта статья - пример использования сценария "Завести автомобиль" и небольшое раскрытие огромных возможностей IFTTT. Всё зависит только от вашей фантазии!

IFTTT расшифровывается как "If This Then That" (если случилось это, то выполнить то». Принцип работы IFTTT предельно прост. Каждая задача состоит из двух частей – «триггера» (Trigger) this и «действия» (Action) that. Триггером является любое обрабатываемое сервисом событие (от голосовой команды до поступления новой почты или сообщения в чат), что запускает действие (не менее впечатляющий список от звонка на потерявшийся телефон или закачки фото в облако до выполнения команд умного дома).


Порядок действий

  1. Конечно, устанавливаем на автомобиль сигнализацию с поддержкой подзавода по СМС и настраиваем её.
  2. Создаем новый апплет в IFTTT. Он будет отправлять СМС с командой завести автомобиль. Условием для запуска этого апплета будет переход по webhook-ссылке.
  3. Добавляем виртуальное устройство в навыке Домовёнок Кузя.
  4. Создаём для устройства правило, которое будет открывать нашу webhook-ссылку.
  5. Подключаем Алису и декорируем фразу запуска через сценарий Умного дома Яндекса.


Готово! Алиса через Домовёнка Кузю запустит правило, которое запустит апплет IFTTT, который отправит СМС, по которому сигнализация заведёт авто :)


Создание апплета IFTTT

  1. Устанавливаем приложение "IFTTT" на Android-смартфон с которого будет отправляться СМС. Быстрее всего зарегистрироваться в сервисе можно через Google аккаунт.
  2. Для удобства включаем отображение апплетов на главной странице Account > Home screen > My applets.
  3. Создадим новый апплет, нажав Create your own или +
    1.jpg 2.jpg

  4. Концепция IFTTT - наглядно перед нами. Нажимаем +This, т.е. условие для запуска. В поиске пишем webhooks и выбираем сервис.
    3.jpg 4.jpg

  5. Дадим имя запросу, чтобы отличать от будущих остальных. Переходим по кнопке Receive a web request и задаем понятное нам Event Name. Это имя будет отображаться в webhook-ссылке. Я назвал его start_car
    Dkdk15.jpg 6 .jpg

  6. Следующий этап - создание действия при выполнении созданного нами условия. +That, пишем SMS и выбираем Android SMS
    Screenshot 20191121-115145 IFTTT.jpg Screenshot 20191121-115251 IFTTT.jpg

  7. Нажимаем Send an SMS, в открывшемся окне укажем номер и текст сообщения. ВАЖНО! В зависимости от оператора и ПО телефона номер телефона указывается в формате 0079175555555 или +79175555555 либо 89175555555. Проверяется опытным путем. Текст для запуска автомобиля для разных систем разный. Например, у "Starline" это 21, для "Pandora" 123*. Для удобства тестирования стоит временно указать номер подручного телефона, чтобы не мучить тестовыми запросами сигналку и авто.
    Screenshot 20191121-115746 IFTTT.jpg Screenshot 20191121-131433 IFTTT.jpg

  8. Заодно пока включим получение уведомления, что апплет запустился "Receive notifications when this runs". Сохраняем результат, нажав Finish. Апплет должен перейти в состояние Connected.
    Screenshot 20191121-131626 IFTTT.jpg Screenshot 20191121-132349 IFTTT.jpg


Получение webhook-ссылки

Этот этап лучше сделать через настольный браузер.
  1. Заходим на сайт IFTTT в сервис webhooks, авторизуемся под своей учетной записью. Мы должны увидеть свой созданный апплет. Если это не так, проверьте, сохранился ли апплет в приложении на телефоне (и произошёл ли вход под нужную учётную запись). Справа вверху нажимаем Documentation
    2 1.jpg

  2. Открывшаяся страница содержит уникальный ключ API, который нельзя никому показывать. Зная его, можно запускать ваши апплеты удалённо! Здесь же мы можем проверить, работает ли удалённый запуск апплета.
    2 2.jpg

  3. Стираем команду {event} и пишем вместо неё наше имя запроса - start_car - без скобок и кавычек.
    2 3.jpg

  4. Открываем IFTTT в телефоне, нажимаем на кнопку Test It в браузере.
  5. Приложение IFTTT должно получить команду на запуск апплета (появится сообщение Applet Run).
  6. Скорее всего, мы увидим и уведомление с требованием дать приложению IFTTT разрешение на отправку СМС. Проверьте шторку уведомлений, либо в настройках телефона (раздел "Приложения") и выдайте для IFTTT все разрешения.
  7. В настройках энергосбережения указываем, чтобы система не закрывала IFTTT в фоновом режиме. В шторке уведомлений должно быть написано, что IFTTT работает в фоновом режиме (IFTTT is working in the background).
  8. Зайдите в СМС-сообщения и проверьте, появилось ли ваше отправленное сообщение. Если телефон не запустил апплет, а все настройки верные, не торопитесь все менять. Возможно проблема на стороне IFTTT (у меня было такое что webhook не работал какое-то время, а потом всё заработало).
 Проверьте настройки энергосбережения: заблокируйте телефон и через 10 минут запустите тест с другого устройства, и убедитесь, что апплет сработал.


Управление умным домом через Домовёнка Кузю

Домовёнок Кузя - наше связующее звено между Алисой и IFTTT.
  1. Заходим на сайт Домовёнка Кузи и авторизируемся под нашей учетной записью Яндекс.
    3 1.jpg

  2. Нажимаем Добавить правило IFTTT. В поле Активационная фраза вводим имя правила (например, "Заведи машину"), ниже в URL-адрес webhook - ссылку с запросом и API-ключом, которую тестировали ранее.
    Аннотация 2019-11-25 112409.jpg

  3. Правило сохраняется автоматически. Переходим в Виртуальные устройства умного дома и создаём устройство (например, Кофемашина). Заполняем Название устройства, у меня будет Ласточка. Место расположения - Улица или Гараж.
  4. Самое главное: указываем на включение созданное нами правило IFTTT Заведи машину.
    3 3.jpg


Cвязь Алисы и Домовёнка Кузи

  1. Открываем приложение Яндекс и переходим в Устройства.
  2. Открываем Умный дом, нажимаем + и добавляем устройство.
  3. Через поиск находим Домовёнок Кузя и объединяем аккаунты.
  4. Переходим к списку устройств.

Должны появиться локация Улица, и Кофемашина с именем "Ласточка". Заходим и проверяем работу.

Скорее всего, вам не понравится заводить машину фразой "Свари кофе", поэтому заменим её на свою.

  1. Переходим в Сценарии и создадим новый сценарий:
    1. Если > Фраза (здесь ваша фраза по вкусу: "Заведи машину", "Подготовь пепелац", "Прогрей ласточку");
    2. То > Устройство, (выбираем включение Кофемашины).


Готово!


Заключение

По аналогии добавляем в IFTTT такой же апплет, чтобы заглушить машину, а в Кузе назначаем правило "Выключить кофеварку".

Точно так же вы можете создать любые интересные решения на базе IFTTT и запускать их через Кузю.

Источник — https://wiki.yaboard.com/index.php?title=Алиса_заводит_автомобиль_(IFTTT)&oldid=2762// MOD ext links // End MOD