Кнопку нажали дважды: что произойдёт с незавершённым сценарием
Пропуск, перезапуск, очередь и параллельное выполнение задают разное поведение. Разбираем повторное событие на учебном примере Home Assistant.
Сценарий уже запущен и ждёт завершения паузы, в это время кнопку нажимают снова. Для системы это новое событие во время незавершённого выполнения. Ожидаемый результат стоит определить заранее, иначе одна и та же повторная команда может выглядеть для владельца то пропущенной, то сработавшей несколько раз.
В Home Assistant такой выбор задаёт режим автоматизации. Документация перечисляет single, restart, queued и parallel: пропустить новый запуск во время текущего, остановить текущий и начать заново, поставить следующий в очередь или запустить независимое выполнение рядом. Для restart и queued также действуют описанные платформой условия начала нового запуска.
Начать с последовательности событий
Для знакомства с режимом удобно придумать учебное правило без управления реальным оборудованием: записать метку начала, дождаться паузы и записать метку окончания. Затем заранее указать, что должно происходить со второй командой. Это пример для обсуждения логики, он не описывает проведённое редакцией испытание и не требует эксперимента с рабочими замками или инженерией.
Пусть повторное нажатие случилось до окончания паузы. При выборе single первый запуск продолжит выполнение, следующий в это время не начнётся. При restart текущая последовательность остановится и, если выполнены условия, новая пойдёт с начала. В таком примере отличается само основание для последующей метки окончания, хотя внешне человек только ещё раз нажал кнопку.
Для заданной задачи сначала сформулируйте желаемое поведение обычными словами. Должна ли повторная команда продлевать действие, подтверждать ещё одну отдельную задачу или вовсе игнорироваться до завершения первой? Только после ответа имеет смысл сопоставлять ожидание с доступным режимом, название "быстрый повтор" не определяет логику.
Найти границу конкретного правила
Режим относится к определённой автоматизации. Для разбора опишите, какое событие её запускает и какие другие правила могут затрагивать тот же результат. Смена режима одной последовательности сама по себе не объясняет действие другого расписания или ручной команды, их участие выясняют отдельно.
Условный пример: один сценарий выполняется по кнопке, другой позднее меняет тот же признак состояния. По одной последней отметке на экране будет трудно установить, кто сделал изменение. Для диагностики полезнее сохранить время каждого события и сведения о запуске, чем сразу увеличивать все паузы в надежде получить другой результат.
В Home Assistant предусмотрены ограничения числа запусков для очереди и параллельного режима. Достигнутый предел влияет на возможность нового выполнения, поэтому его стоит включить в описание, если правило рассчитано на частые события. Конкретную величину выбирают под задачу, без обещания, что любое увеличение очереди исправит причину задержки.
На учебной копии проверьте обычное одиночное событие и повтор до завершения, затем сравните наблюдение с заранее записанным ожиданием. Меняйте один параметр и сохраняйте исходное значение. Если нужный результат не получен, добавьте сведения о шаге остановки или пропуске запуска в запрос специалисту, сохраняя фактическую последовательность.
Учесть завершение и перезапуск системы
Документация Home Assistant отдельно указывает, что при перезапуске самой платформы текущие выполнения останавливаются, незавершённая задержка не продолжается автоматически. Выбор restart как режима автоматизации не является обещанием восстановления после перезапуска сервера. Эти события нужно называть разными словами в задании и проверять отдельно.
Для долгого сценария согласуйте, какое состояние должно остаться при прерывании и откуда берётся решение о следующем запуске. Не стоит считать последнюю полученную команду подтверждением завершения всей последовательности. У устройства, контроллера и используемого внешнего сервиса могут быть собственные состояния и условия доступности.
Локальное выполнение требует работающей платформы и её питания, связь с устройством также должна оставаться доступной. Если отдельный шаг обращается в облако или отправляет удалённое уведомление, он сохраняет зависимость от внешнего интернета. Это следует записать рядом с ожидаемым поведением при повторе, чтобы сетевой сбой не пытались объяснить только режимом очереди.
В итоговом описании достаточно сохранить событие запуска, выбранный режим и результат для повторного события. Такая запись даст следующему участнику понятную точку для проверки после изменения сценария, даже если названия пунктов интерфейса со временем поменяются.
Источник и иллюстрация
Проверено 9 ноября 2026 года: Home Assistant: Automation modes. Учебное правило и порядок проверки предложены редакцией, испытания установленной системы не проводились. Обложка является условной редакционной схемой локального управления.