Поддержка черт Automation API на Android

Automation API для Android поддерживает большинство признаков, но поддержка некоторых атрибутов, событий и команд в признаке может быть ограничена.

В общем случае нужно выполнить следующие действия.

  • Все характеристики и типы, которые вы планируете использовать в приложении с Automation API, должны быть зарегистрированы при инициализации. Подробнее о том, как создать экземпляр Home…
  • Любой атрибут можно использовать в качестве условия.
  • Устройства Cloud-to-cloud, которые не сообщают о своем состоянии, нельзя использовать в качестве триггеров в автоматизациях, созданных вручную или с помощью функции обнаружения.
  • Даже если устройство поддерживает перечисленные здесь функции, его использование в качестве условия или действия в Automation API может быть заблокировано из-за пороговых значений качества Report State:

    • Устройства, у которых доля успешных запросов Report State ниже 90%, нельзя использовать в качестве условий.
    • Устройства, на которых доля успешных выполнений команд ниже 95%, нельзя использовать в действиях.

    Ознакомьтесь со списком моделей устройств и поддерживаемых ими условий и действий для Automations API.

  • Команды можно использовать только в качестве действий.

  • Некоторые свойства, например AssistantBroadcast и Notification, доступны только в Automation API.

  • Команда okGoogle относится к уровню структуры и может использоваться для автоматизации любого устройства в структуре. Однако у приложения Home API может не быть доступа ко всем устройствам. О том, как применяются разрешения в различных случаях, читайте в статье Разрешения для команды "Окей, Google".

  • Для некоторых черт есть предварительные условия:

    • Чтобы использовать условия запуска, связанные со временем, например Time.ScheduledTimeEvent, Time.RecurringClockTimeScheduledEvent или Time.RecurringSolarTimeScheduledEvent, в доме, где выполняется автоматизация, должен быть указан почтовый адрес. Он нужен, чтобы определить местный часовой пояс и рассчитать время восхода и заката. Адрес можно указать при создании структуры или задать в Google Home app (GHA). В статье Как изменить домашний адрес в Google объясняется, как пользователь может ввести или обновить адрес дома в GHA. Если адрес не настроен, createAutomation() сохраняет и возвращает Automation, где isValid == false, с проблемой проверки UnsupportedEntityEvent, содержащей MissingStructureAddressSetup.
    • Чтобы получать уведомления от Notification.sendNotifications, у членов семьи должно быть установлено приложение GHA с включенными уведомлениями. Уведомления доставляются участникам через GHA и не могут отправляться напрямую в сторонние приложения.
    • Чтобы использовать функции AreaPresenceState или AreaAttendanceState, пользователю необходимо настроить определение присутствия в GHA.
    • Чтобы использовать свойство ObjectDetection, у пользователя должна быть активная подписка Google Home Premium.

В автоматизациях также можно использовать упрощенные версии некоторых признаков. Подробнее об упрощенных типажах на Android…