Поиск по базе знаний

Запуск сценариев Умного Дома Яндекса через Siri на iPhone

Голосовой ассистент Алиса от Яндекса является безоговорочным лидером на русскоязычном рынке умного дома благодаря великолепной поддержке локального контекста и интеграции с тысячами бытовых приборов. Но если внутри квартиры управление через Яндекс Станции происходит бесшовно, то за пределами дома пользователи экосистемы Apple (iPhone, Apple Watch, CarPlay) сталкиваются со сложностями. Запускать приложение «Дом с Алисой» вручную за рулем или во время пробежки неудобно. Интегрировать Siri и Алису напрямую Apple не позволяет из-за закрытости операционной системы iOS. Тем не менее, существует элегантный обходной путь. Использование встроенного системного приложения «Быстрые команды» (iOS Shortcuts) позволяет отправлять прямые веб-запросы к API Яндекса. Это дает возможность запускать любые сценарии Умного Дома Яндекса с помощью стандартных голосовых команд Siri прямо с вашего iPhone или часов.

Как работает мост между iOS Shortcuts и API Яндекса

Для реализации связи нам понадобится использовать открытый программный интерфейс Yandex Smart Home API. Схема взаимодействия выглядит следующим образом:

  1. Вы произносите команду Siri на iPhone: например, «Привет, Siri, открой ворота».
  2. Телефон запускает соответствующую быструю команду с именем «Открой ворота».
  3. iOS Shortcuts в фоновом режиме выполняет сетевой HTTPS POST-запрос к серверам Яндекса по адресу https://api.iot.yandex.net/v1.0/scenarios/{scenario_id}/actions.
  4. Для авторизации запроса в заголовках передается ваш персональный OAuth-токен Яндекса.
  5. Облако Яндекса валидирует запрос и мгновенно активирует сценарий открытия ворот, а Siri сообщает об успешном завершении операции.

Такой подход работает из любой точки мира, где есть мобильный интернет, не требует наличия Яндекс Станции рядом и срабатывает практически мгновенно.

Получение OAuth-токена умного дома Яндекса

Базовый шаг — получение ключа безопасности (токена), который позволит вашему iPhone отправлять команды от вашего имени:

  1. Перейдите на официальный сервис авторизации Яндекса для разработчиков умного дома.
  2. Создайте тестовое OAuth-приложение или воспользуйтесь готовыми инструментами сообщества для быстрого получения токена (например, через отладочную консоль Yandex Dialogs).
  3. Скопируйте длинную строку токена (она начинается со слов y0_...). Храните её в секрете, так как этот ключ дает полный доступ к управлению всеми вашими устройствами.

Пошаговое создание быстрой команды на iPhone

Настроим отправку вебхука в приложении «Быстрые команды»:

  1. Шаг 1. Подготовка сценария в Яндексе. Откройте приложение «Дом с Алисой», создайте сценарий (например, «Включить кондиционер») и запишите его точное название. Зайдите в веб-интерфейс разработчика iot.yandex.ru/developer и скопируйте ID этого сценария (уникальный буквенно-цифровой код).
  2. Шаг 2. Инициализация команды в iOS. Откройте стандартное приложение «Быстрые команды» на iPhone. Нажмите на значок «+» в правом верхнем углу для создания новой команды. Переименуйте её в фразу, которую будете говорить Siri (например, Включи кондиционер).
  3. Шаг 3. Добавление действия. Нажмите кнопку «Добавить действие» и в строке поиска введите «Получить содержимое URL» (Get Contents of URL).
  4. Шаг 4. Настройка HTTP-запроса.
    • В поле URL вставьте адрес: https://api.iot.yandex.net/v1.0/scenarios/{ID_ВАШЕГО_СЦЕНАРИЯ}/actions.
    • Нажмите «Показать больше» (или стрелочку настроек). Измените метод с GET на POST.
    • В разделе «Заголовки» (Headers) добавьте два поля:
      1. Authorization со значением Bearer {ваш_OAuth_токен}.
      2. Content-Type со значением application/json.
  5. Шаг 5. Проверка запуска. Нажмите кнопку воспроизведения (Play) в правом нижнем углу экрана быстрой команды для теста. Если всё настроено верно, статус выполнения покажет 200 OK, а розетка или кондиционер включатся.

Альтернативный метод: использование Yandex Cloud Functions

Для пользователей, заботящихся о максимальной безопасности, хранение авторизационного токена прямо внутри локального файла быстрой команды на телефоне может показаться рискованным (особенно если вы делитесь своими Shortcut-командами с друзьями). В таком случае можно использовать архитектуру с промежуточным бессерверным обработчиком.

Вы создаете бесплатную функцию в Yandex Cloud (Cloud Functions), которая жестко хранит ваш токен внутри защищенных переменных окружения. Ваша быстрая команда на iPhone делает простой GET или POST запрос на публичный адрес этой функции без каких-либо заголовков авторизации. Функция принимает запрос, сама подставляет токен и дергает API IoT Яндекса. Это гарантирует, что токен никогда не покинет периметр облака Яндекса.

Ограничения и советы по выбору имен команд

При выборе голосовых фраз для Siri избегайте пересечений со стандартными системными командами Apple HomeKit. Если у вас в приложении «Дом» на iOS есть комната «Гостиная» и лампа с именем «Свет», фраза «Привет, Siri, включи свет в гостиной» перехватится системным движком Apple и не передастся в Shortcuts. Дайте вашей быстрой команде уникальное, но легкопроизносимое имя, например: «Запусти сценарий вечер» или «Алиса кондиционер».

IMPORTANT

Строго соблюдайте регистр букв и пробелы при написании заголовков. Слово Bearer должно быть написано с большой буквы, после него обязательно должен идти один пробел, а затем — сам токен без фигурных скобок. Ошибка в одной букве приведет к отказу в авторизации (ошибка 401 Unauthorized).

TIP

Чтобы Siri не переспрашивала подтверждение запуска, откройте настройки созданной быстрой команды и убедитесь, что переключатель «Показывать при запуске» выключен. Это обеспечит максимально бесшумное и быстрое выполнение.

NOTE

Вы можете вынести созданные быстрые команды в виде виджетов на главный экран iPhone или на циферблат Apple Watch, чтобы запускать сценарии в один клик без голосового ввода.

О том, как автоматически запускать приветственные скрипты при вашем приближении к дому, читайте в нашей статье о настройке сценария Добро пожаловать домой. Там подробно разобраны триггеры геозон и умные приветственные голосовые профили для каждого члена семьи.

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

1

Создание сценария в Алисе

Настройте нужный сценарий в приложении Дом с Алисой, активируемый текстовой или голосовой фразой.

2

Копирование ссылки запуска

Сформируйте веб-ссылку (Webhook API) для запуска этого сценария из внешних систем.

3

Настройка команды в iOS Shortcuts

Откройте приложение Быстрые команды на iPhone, добавьте действие Получить содержимое URL с методом POST.

4

Привязка фразы к голосовому ассистенту Siri

Задайте имя быстрой команды. Произнесите Привет, Siri, далее имя команды для запуска сценария.