“Продовжувати з помилкою”: як Home Assistant революціонізує автоматизацію

"Продовжувати з помилкою": як Home Assistant революціонізує автоматизацію 1

Чи траплялося вам, що автоматизація в Home Assistant раптово зупинялася через помилку під час виконання однієї з дій? Іноді це бажано, але в певних ситуаціях краще, якби решта автоматизації продовжувала працювати, навіть якщо одна з дій зазнала невдачі. Завдяки нещодавньому оновленню Home Assistant тепер можна забезпечити безперебійну роботу ваших автоматизацій, навіть коли виникають помилки.

Автор Адам Девідсон

Автоматизації Home Assistant завжди були вразливими до помилок

Одна помилкова дія могла зупинити все

"Продовжувати з помилкою": як Home Assistant революціонізує автоматизацію 2

Донедавна деякі автоматизації Home Assistant мали слабке місце. Якщо дія у вашій автоматизації зазнавала невдачі, вся автоматизація зупинялася в цій точці, і жодна з наступних дій не виконувалася.

Дії могли зазнавати невдачі з різних причин, наприклад, якщо сервіс не знайдено, спроба виконати дію, яку цільова сутність не підтримує, або коли інтеграція має проблеми зі зв’язком із пристроєм. Коли це трапляється, Home Assistant генерує помилку, яка може призвести до припинення роботи автоматизації.

Існувала можливість змінити цю поведінку за замовчуванням, додавши `continue_on_error: true` до YAML-конфігурації автоматизації. Однак до останнього оновлення неможливо було змінити це налаштування через інтерфейс редактора автоматизацій.

Підтримка автоматизацій у роботі вимагала більшої роботи

Потрібно було будувати з урахуванням помилок

"Продовжувати з помилкою": як Home Assistant революціонізує автоматизацію 3

Функція “Продовжувати при помилці” вже існувала як опція для YAML-автоматизацій, але якщо ви хотіли створювати їх у редакторі автоматизацій, ця функція була недоступна. Це означало, що вам доводилося вносити зміни до своєї автоматизації, щоб обробляти помилки та забезпечувати її подальшу роботу.

Це вимагало таких обхідних шляхів, як розбиття автоматизацій на паралельні гілки, щоб невдача однієї гілки не зупиняла інші. Іншим варіантом було перевірити, чи може дія виконатися, перш ніж її запускати, і пропустити конкретну дію, якщо вона мала зазнати невдачі.

Все це означало, що ваші автоматизації мали бути значно складнішими, ніж це було необхідно. Забезпечення безперебійної роботи автоматизації у разі виникнення помилки часто вимагало ретельного планування.

“Продовжувати при помилці” зробив автоматизації більш стійкими

Помилкові кроки вже не мають лякати

Хороша новина полягає в тому, що опція “Продовжувати при помилці” нарешті додана до редактора автоматизацій у Home Assistant. Це означає, що ви можете застосувати це налаштування до будь-якої дії за допомогою інтерфейсу користувача, замість того, щоб вручну додавати рядок до YAML-конфігурації автоматизації. Хоча “Продовжувати при помилці” вимкнено за замовчуванням, ви можете увімкнути його для будь-якої дії у вашій автоматизації.

Щоб увімкнути “Продовжувати при помилці” для дії, натисніть значок із трьома крапками біля цієї дії. Виберіть Продовжувати при помилці. Поруч із дією з’явиться значок “Продовжувати при помилці”. Щоб вимкнути цю опцію, знову натисніть значок із трьома крапками та виберіть Продовжувати при помилці. Значок має зникнути. У YAML-представленні автоматизації ви побачите `continue_on_error: true` для будь-яких дій, для яких увімкнено “Продовжувати при помилці”. Ви також можете вручну додати цей рядок у YAML, а не використовувати інтерфейс.

Добра проєктна робота з автоматизацій все ще потрібна

“Продовжувати при помилці” просто полегшує роботу

Якщо “Продовжувати при помилці” настільки корисний, чому він не увімкнений за замовчуванням? Причина в тому, що не завжди потрібно, щоб автоматизація продовжувала працювати, якщо дія зазнала невдачі.

Якби “Продовжувати при помилці” було увімкнено за замовчуванням, кожна автоматизація виконувалася б до кінця, незалежно від того, скільки проміжних дій зазнало невдачі. Тоді ви могли б взагалі не знати, що дії не вдаються, оскільки інші дії все ще відбувалися б як очікувалося. Зупинка автоматизації при невдачі однієї з дій значно полегшує виявлення проблем.

Правда в тому, що ви не завжди хочете ігнорувати кожну помилку, яка виникає у ваших автоматизаціях. Однак існує безліч ситуацій, коли ви все одно хочете, щоб автоматизація завершилася, навіть якщо щось піде не так.

Підпишіться на нашу розсилку для більш розумних автоматизацій Home Assistant

Хочете отримати практичні поради щодо Home Assistant? Підпишіться на розсилку, щоб отримувати чіткі, корисні поради — наприклад, коли увімкнути “Продовжувати при помилці” — щоб ви могли створювати стійкі автоматизації без складних обхідних шляхів.

Отримувати оновлення

Підписуючись, ви погоджуєтеся отримувати розсилку та маркетингові електронні листи, а також приймаєте наші Умови використання та Політику конфіденційності. Ви можете відписатися в будь-який час.

Наприклад, якщо у вас є вечірній ритуал, який виконує низку дій, включаючи замикання вхідних дверей, ви не хочете, щоб ваші двері залишалися незамкненими всю ніч лише тому, що виникла проблема з вимкненням смарт-розетки телевізора. Вхідні двері мають бути замкнені незалежно від того, що станеться, тому використання “Продовжувати при помилці” в цій ситуації, безумовно, варте того.

Інші випадки, коли ця функція може бути корисною, включають критичні сповіщення, наприклад, при виявленні витоку води або диму, або для автоматизацій опалення, коли ви не хочете, щоб опалення працювало всю ніч, лише тому, що частина автоматизації збійнула.

Це не зменшує важливості належного проєктування автоматизацій. Це просто означає, що швидше та легше визначити, які дії мають зупинити вашу автоматизацію, коли вони зазнають невдачі, а які можна проігнорувати.

Маленьке вдосконалення з великим впливом

“Продовжувати при помилці” — це не нова функція, але її довго бракувало в редакторі автоматизацій. Можливість швидко та легко змінювати це налаштування через інтерфейс користувача робить ще простішим створення автоматизацій, які працюють так, як ви хочете, коли ви цього хочете.

Порада від Soft Portal:

Нова функція “Продовжувати при помилці” в Home Assistant значно спрощує створення надійних автоматизацій. Тепер ви можете легко налаштувати, щоб окремі дії не зупиняли весь процес, якщо вони зазнають невдачі. Це особливо корисно для складних сценаріїв, таких як вечірні ритуали чи системи безпеки, де важливо, щоб критичні функції виконувалися незалежно від інших.

За матеріалами: www.howtogeek.com

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *