Экран в прихожей трогают на ходу
Человек хочет посмотреть температуру, но попадает в соседнюю кнопку. Если это свет, ошибку обычно видно сразу. Если кнопка запускает длинный сценарий или выключает несколько устройств, последствия понятны хуже. Поэтому одинаковое поведение всех карточек не всегда удобно.
Сначала составьте небольшой список действий и задайте один вопрос: что произойдёт от случайного касания? Учитывайте не только прибор, но и масштаб команды. Выключение одной лампы и запуск «всё выключить» заслуживают разных способов взаимодействия. Новые покупки для этого не нужны; начните с уже имеющихся карточек.
Просмотр можно отделить от команды
В действиях карточек HA описаны нажатие, удержание и двойное нажатие; набор поддерживаемых возможностей зависит от карточки. Короткое касание может открывать подробности, а отдельная явно названная кнопка — отправлять команду. Так само желание посмотреть состояние не обязано менять его.
Удержание уменьшает вероятность случайного касания, но хуже обнаруживается новым человеком. Подпись «Удерживай для запуска» помогает только там, где это действительно настроено и проверено. Не переносите все повседневные действия в скрытые жесты: экран должен оставаться понятным без обучения и догадок.
Подтверждение должно назвать результат
Для поддерживаемого действия можно включить confirmation — диалог подтверждения. Полезный текст объясняет последствия: «Выключить выбранный вечерний свет?» вместо общего «Вы уверены?». Особенно стоит проверить цель, если команда действует на область или метку: со временем состав может измениться.
Диалог относится к этому пути через интерфейс. Он не является системой доступа и не доказывает, что голос, автоматизация или другой клиент потребуют такого же подтверждения. Если действие должно выполняться только при определённых условиях, их задают и проверяют на стороне самого сценария.
- 01ПросмотрКасание показывает сведения
- 02НамерениеЯсная кнопка и нужное подтверждение
- 03ВыполнениеСценарий проверяет условия и цель
Не путайте видимость с разрешением
Скрыть кнопку на семейном экране бывает полезно для порядка, но этого недостаточно для запрета команды. Другие экраны и способы запуска остаются отдельными путями. Аналогично неактивный вид карточки не подтверждает, что устройство физически не сможет получить действие через интеграцию.
Условия скриптов оценивают состояние в момент выполнения соответствующего шага. Если перед действием есть длительное ожидание, подумайте, не нужно ли повторно проверить условие ближе к самой команде. Ранее подходящее состояние могло измениться. Это особенно важно для сценариев, в которых несколько этапов выполняются по очереди.
Сначала проверьте на тестовом переключателе
Для первой проверки создайте действие, которое меняет тестовый переключатель в HA. Проверьте касание, удержание, отмену и подтверждение на телефоне и настенном экране. Затем настройте нужное управление устройством.
Затем оцените обратную связь: видно ли, что команда отправлена, выполнено ли ожидаемое действие и не осталось ли сообщение об успехе после отказа. Для реального сценария трассировка помогает найти путь исполнения, но успешный шаг не следует автоматически считать доказательством физического результата.
Проверка человеком, который не собирал экран
Попросите пользователя объяснить, что делает кнопка, до нажатия. Если он называет другую цель, исправьте текст или расположение. Проверьте, что отмена очевидна и действие с последствиями не стоит вплотную к часто используемой навигации. Не нужна сложная матрица разрешений ради простого открытия графика.
После изменения метки проверьте, какие устройства получат команду. Название кнопки и текст подтверждения должны соответствовать этому списку.
Коротко по делу
Защитить кнопку от случайного нажатия
- Раздели обычные действия и команды с последствиями. Для последних выбери поддерживаемое карточкой подтверждение или другой явный жест.
- Напиши в подтверждении конкретное действие. Проверь отмену на безопасном учебном переключателе.
- Проверь остальные пути той же команды. Диалог на одном экране не ограничивает права и не блокирует голос или автоматизацию.
Как понять результат. Отмена не выполняет команду, а намеренное действие остаётся понятным пользователю.
