5 способів, як я використовую випадковість у своєму Home Assistant

5 способів, як я використовую випадковість у своєму Home Assistant 1

Система Home Assistant побудована на правилах, але іноді в житті потрібна невелика доза випадковості. Для цього можна використовувати інтеграцію “Random” або фільтр Jinja `random` у шаблонах, що відкриває безліч можливостей.

Автор: Adam Davidson

Обертання голосів для оголошень

Кожен день – це сюрприз

5 способів, як я використовую випадковість у своєму Home Assistant 2

Щоранку Home Assistant генерує ранкове зведення. Воно включає інформацію з підключених календарів, прогнозу погоди та навіть дані з вебсайту, де діти обирають шкільні обіди. Усі дані збираються, а велика мовна модель (LLM) перетворює їх на текст для голосового оголошення.

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

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

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

Вибір випадкової фрази для повторюваних оголошень

Одна й та сама фраза швидко набридає

5 способів, як я використовую випадковість у своєму Home Assistant 3

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

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

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

Я використовую скрипт для відтворення оголошення. Скрипт містить шаблон, де я перераховую назви всіх аудіофайлів під змінною `clips`, а потім використовую `chosen: “{{ clips | random }}”`, щоб випадково призначити змінній `chosen` один із кліпів. Потім смарт-колонку відтворює аудіо із вибраною назвою файлу.

Тестування автоматизацій за допомогою інтеграції Random

Немає потреби чекати на справжні датчики

5 способів, як я використовую випадковість у своєму Home Assistant 4

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

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

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

Симуляція присутності

Увімкнення та вимкнення світла в межах випадкового вікна

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

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

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

Рандомізація домашніх обов’язків

Ми більше не “погані хлопці”

5 способів, як я використовую випадковість у своєму Home Assistant 5

Ще один справді корисний спосіб використання рандомізації в Home Assistant – це розподіл домашніх обов’язків між дітьми. Я налаштував систему відстеження завдань у Home Assistant, яку використовую для призначення їм обов’язків, а вони – для відзначення їх як виконаних. Вони отримують зірочки за виконання завдань, які можуть обміняти на нагороди.

Підпишіться на поради та хитрощі щодо рандомізації в розумному домі

Хочете більше практичних прикладів рандомізації в Home Assistant та готових шаблонів? Підпишіться на розсилку, щоб отримати зрозумілі скрипти, ідеї налаштувань та патерни для завдань/оголошень, а також інші практичні поради щодо автоматизації розумного дому. Отримати оновлення Підписуючись, ви погоджуєтеся отримувати електронні листи з розсилки та маркетингові матеріали, а також приймаєте наші Умови використання та Політику конфіденційності. Ви можете відписатися в будь-який час.

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

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

Рандомізація може зробити ваш розумний дім менш жорстким

Рандомізація, безумовно, допомагає зробити мій розумний дім менш роботизованим. Випадкові оголошення набагато цікавіші, ніж прослуховування одного й того самого повідомлення знову і знову. Це корисний інструмент у вашому арсеналі Home Assistant.

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

Використання випадковості в Home Assistant може значно оживити вашу систему автоматизації, роблячи її більш динамічною та менш передбачуваною. Це корисно як для розважальних функцій (наприклад, випадкові оголошення), так і для практичних (наприклад, тестування датчиків або розподіл завдань), додаючи елемент несподіванки та зменшуючи монотонність.

Джерело новини: www.howtogeek.com

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

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