Содержание
Последнее обновление Home Assistant включает в себя захватывающую новую интеграцию, связанную с едой: Mealie. Mealie — это бесплатный проект, в котором вы можете хранить все свои рецепты и кулинарные книги в одном месте. Вы можете легко планировать приемы пищи, используя его простой и интуитивно понятный веб-интерфейс.
Благодаря интеграции Mealie с Home Assistant вы можете синхронизировать все ваши календари и события Mealie, включая различные уведомления, сценарии и автоматизацию. Я покажу, что я сделал с Mealie и Home Assistant и как я это сделал.
Что можно делать с помощью Melie и Home Assistant
Показать сегодняшнюю еду
В моей тестовой настройке Home Assistant у меня есть две карточки, связанные с интеграцией Mealie. Первая карточка показывает сегодняшний прием пищи. Когда я нажимаю на нее, я вижу название и некоторую историю, но она не активна.

Уведомление о ежедневном плане питания
Вторая карточка — это кнопка, связанная со сценарием. Когда я нажимаю на нее, я получаю постоянное уведомление, которое включает мой ежедневный план питания: завтрак, обед, ужин и гарнир. Это уведомление также можно отправить на мой телефон или включить в другие автоматизации Home Assistant.
Настройка Мили
Mealie — интересный проект, который я установил на свой ноутбук с помощью Docker. Ниже приведены некоторые из вещей, которые может делать Mealie.
Панель управления и функции
- Управление рецептами: Добавляйте рецепты вручную или импортируйте их из любого URL. Вы также можете планировать приемы пищи и создавать списки покупок.
- Кулинарные книги: Создание и управление кулинарными книгами.
- Импорт данных: Импорт рецептов и кулинарных книг из других источников.

Установка Мили
- Скачать Клиент Docker: Доступно для macOS, Windows и Linux.
- Создать docker-compose.yaml файл: Я использовал контент из официальная документация Meali и я только изменил версию на последнюю и BASE_URL.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
services: mealie: image: ghcr.io/mealie-recipes/mealie:latest # container_name: mealie restart: always ports: - "9925:9000" # deploy: resources: limits: memory: 1000M # volumes: - mealie-data:/app/data/ environment: # Set Backend ENV Variables Here ALLOW_SIGNUP: true PUID: 1000 PGID: 1000 TZ: America/Anchorage MAX_WORKERS: 1 WEB_CONCURRENCY: 1 BASE_URL: http://127.0.0.1 volumes: mealie-data: |
- Выполнить команду Docker: Выполнять
docker compose up -dчтобы загрузить образ Mealie и запустить его. - Открыть Mealie: Откройте веб-интерфейс Mealie и завершите работу мастера настройки.

Я импортировал рецепты из https://demo.mealie.io веб-сайт для заполнения некоторых данных в моем экземпляре Mealie. Я создал там новую резервную копию, затем скачал этот файл и импортировал его в мой Mealie. Обратите внимание, что если вы создаете ключ API и импортируете резервную копию, вам нужно будет заново создать ключи API.
Добавление Мили в Home Assistant
- Получить API-ключ: Сгенерируйте и скопируйте ключ API из вашего профиля пользователя Mealie.

- Добавить интеграцию: В Home Assistant добавьте интеграцию Mealie, укажите URL-адрес и токен API.

Создание скриптов Home Assistant
Пример скрипта календаря Mealie
- Получить Календарь Событий: Извлечение событий из календарей Mealie (завтрак, обед, ужин, гарнир) на следующие 24 часа.
- Создать уведомление: Создать уведомление со списком всех событий.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
alias: Mealie Calendar sequence: - service: calendar.get_events target: entity_id: - calendar.mealie_breakfast - calendar.mealie_lunch - calendar.mealie_dinner - calendar.mealie_side data: duration: hours: 24 response_variable: agenda service: notify.persistent_notification data: title: План питания на {{ now().date() }} message: >- Завтрак на сегодня: {% for event in agenda("calendar.mealie_breakfast")("events") %} {{ event.start}}: {{ event.summary }} {% endfor %} Ланч на сегодня: {% for event in agenda("calendar.mealie_lunch")("events") %} {{ event.start}}: {{ event.summary }} {% endfor %} Обед на сегодня: {% for event in agenda("calendar.mealie_dinner")("events") %} {{ event.start}}: {{ event.summary }} {% endfor %} Другие данные календаря питания: {% for event in agenda("calendar.mealie_side")("events") %} {{ event.start}}: {{ event.summary }} {% endfor %} |

Датчики REST и камера Entity
Я создал датчики REST и общую сущность камеры для отображения сегодняшнего приема пищи и его изображения. Вот как:
- Добавить датчики REST: Измените файл configuration.yaml с IP-адресом и портом вашего экземпляра Mealie, а также API-токеном. Не забудьте перезапустить Home Assistant после добавления этих датчиков.
- Создать объект камеры: Используйте общую интеграцию камеры с URL-адресом вашего экземпляра Mealie.
Для создания универсальной камеры я воспользовался следующими инструкциями:
В помощнике по дому
Integrationsстраница, создайте новуюgeneric cameraсущность.В поле URL-адреса неподвижного изображения введите:
http://192.168.1.113:9925/api/media/recipes/{{states('sensor.mealie_todays_meal_id')}}/images/min-original.webpНа странице сущности для новой камеры переименуйте ее, например:
camera.mealie_todays_meal_image
Датчики REST, представленные ниже, и общая камера, представленная выше, используются на панели инструментов Home Assistant для отображения информации о приеме пищи.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# configuration.yaml entry sensor: - platform: rest resource: "http://192.168.1.113:9925/api/groups/mealplans/today" method: GET name: Сегодняшний план питания headers: Authorization: Bearer YOUR_API_TOKEN value_template: "{{ value_json(0).recipe.name }}" force_update: true scan_interval: 30 - platform: rest resource: "http://192.168.1.113:9925/api/groups/mealplans/today" method: GET name: Mealie todays meal ID headers: Authorization: Bearer YOUR_API_TOKEN value_template: "{{ value_json(0).recipe.id }}" force_update: true scan_interval: 30 |
Заключение
Интеграция Home Assistant Mealie открывает множество возможностей для планирования и автоматизации питания. Если вы хотите попробовать это, поделитесь своими планами по сценариям и автоматизациям в комментариях.
Спасибо за прочтение, увидимся в следующем выпуске. Пока!

