Home Assistant 中 mealie.set_random_mealplan 动作完全指南:用 Mealie 随机规划每日三餐

发布时间:2026/9/17 12:44:46
Home Assistant 中 mealie.set_random_mealplan 动作完全指南:用 Mealie 随机规划每日三餐 Home Assistant 中 mealie.set_random_mealplan 动作完全指南用 Mealie 随机规划每日三餐【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io导读mealie.set_random_mealplan是 Home Assistant 中 Mealie 集成提供的一个动作Action用于在指定日期为指定餐次早/午/晚/配菜/甜点/零食/饮料随机安排一道菜谱。本文以 Home Assistant 官方文档库中的 mealie.set_random_mealplan 动作文档 为核心完整讲解该动作在 UI 与 YAML 两种场景下的配置方法、参数含义、返回值用法并结合 Mealie 集成文档 与同族动作文档给出可直接落地的自动化示例。读完本文你将能够在自己家中实现每天随机决定晚餐吃什么的自动化流程。Mealie 集成与随机排餐动作的定位Mealie 是一款开源、自托管的菜谱管理、膳食规划与购物清单应用。Home Assistant 的 Mealie 集成ha_domain: mealie质量等级为 platinum支持 calendar、diagnostics、sensor、todo 平台通过配置流接入后可以拉取并写入 Mealie 实例中的数据。该集成支持 Mealie 2.0 及以上版本连接时需要在 Mealie 用户中心/user/profile/api-tokens生成 API Token并在配置流中填入 Mealie 实例的 URL、API Token 以及是否校验 SSL 证书。在膳食规划能力上该集成提供了一组互相配合的 mealplan 动作动作作用mealie.set_random_mealplan在指定日期随机排一道菜谱本文章节mealie.set_mealplan在指定日期排指定的菜谱或餐食备注mealie.get_mealplan按日期范围读取排餐结果mealie.update_mealplan更新已有排餐记录mealie.delete_mealplan删除已有排餐记录其中mealie.set_random_mealplan的特殊之处在于你不需要指定具体菜谱只需要给出日期和餐次类型系统会从 Mealie 的菜谱库中随机挑一道填入排餐计划。这对今晚吃什么由命运决定的场景非常实用。在自动化界面中使用该动作UI 方式在 Home Assistant 的自动化或脚本界面中操作步骤如下进入设置Settings 自动化与场景Automations scenes。打开一个已有的自动化或脚本或选择创建自动化Create automation 创建新自动化Create new automation。如果是新建自动化需要在当When区域添加触发器脚本无需触发器它们在被其他流程调用时运行。在然后做Then do区域选择添加动作Add action。在搜索框中搜索并选择Mealie: Set random meal plan。选择要使用的Mealie 实例Mealie instance并设置日期Date与餐次类型Entry type。点击保存Save。需要特别注意的是该动作不支持 targets。在 UI 中你不会被提示选择区域area、设备device、实体entity或标签label而是直接选择 Mealie 实例——这与其他设备类动作的调用方式不同也是 Mealie 全部 mealplan 系列动作的共同特征。UI 中的可配置选项选项说明Mealie instance要在其上排餐的 Mealie 实例Date排餐的日期Entry type餐次类型取值为 breakfast、lunch、dinner、side、dessert、snack 或 drink在 YAML 中使用该动作如果直接编写 YAML动作名称为mealie.set_random_mealplan。一个基本示例取自官方文档如下action: mealie.set_random_mealplan data: config_entry_id: YOUR_MEALIE_CONFIG_ENTRY_ID date: 2025-06-01 entry_type: dinner这段配置会在 2025 年 6 月 1 日为晚餐随机安排一道菜谱。其中YOUR_MEALIE_CONFIG_ENTRY_ID需要替换为你实际 Mealie 配置条目的 ID可在设置 设备与服务中查看该集成配置条目获得。YAML 参数详解参数必填类型说明config_entry_id是string要排餐的 Mealie 配置条目 IDdate是string排餐的日期格式为YYYY-MM-DDentry_type是string餐次类型breakfast、lunch、dinner、side、dessert、snack或drink三个参数均为必填项缺一不可。返回值与后续步骤联动该动作可以可选地在响应变量response variable中返回创建好的排餐记录供同一条自动化或脚本的后续步骤使用。在 UI 中你可以在动作配置里填写响应变量名在 YAML 中则使用response_variable字段action: mealie.set_random_mealplan data: config_entry_id: YOUR_MEALIE_CONFIG_ENTRY_ID date: 2025-06-01 entry_type: dinner response_variable: planned_meal在 Mealie 的 mealplan 系列动作中response_variable的用法与 mealie.get_mealplan 文档 展示的模板传感器示例一脉相承——读取动作把结果放在mealplan键下每个条目包含entry_type如dinner、日期以及所排菜谱或备注。因此你可以把随机排餐的结果存进响应变量再在后续步骤中读取planned_meal来展示今天的晚餐。实战示例每天早晨自动随机排晚餐下面是一个把随机排餐与结果读取组合起来的自动化雏形供参考。它每天定时调用随机排餐动作并将结果存进响应变量随后读取当日排餐结果生成模板传感器automation: - alias: Random dinner plan triggers: - trigger: time at: 08:00:00 actions: - action: mealie.set_random_mealplan data: config_entry_id: YOUR_MEALIE_CONFIG_ENTRY_ID date: {{ today_at() | as_timestamp | timestamp_custom(%Y-%m-%d) }} entry_type: dinner response_variable: planned_meal说明date字段支持模板可将动作与每天触发器结合实现自动排餐结合 mealie.get_mealplan 文档中的模板传感器写法你可以把response_variable中返回的菜谱名称展示到仪表盘上或通过notify通知今晚随机吃到什么。与 mealie.set_mealplan 的选型官方文档在 mealie.set_random_mealplan 的 Good to know 章节 中明确指出若想排指定的菜谱或餐食备注请改用mealie.set_mealplan动作。两者的边界非常清晰mealie.set_random_mealplan不指定菜谱随机抽取适合听天由命式排餐mealie.set_mealplan通过recipe_id菜谱 ID 或 slug排指定菜谱或通过note_title/note_text排一条餐食备注例如外卖日、清理冰箱日。相关动作的使用方法均可参考 mealie.set_mealplan 文档、mealie.get_mealplan 文档、mealie.update_mealplan 文档 与 mealie.delete_mealplan 文档它们共同构成完整的排餐生命周期创建 → 读取 → 更新 → 删除。与 Mealie 集成其他能力的配合随机排餐动作只是 Mealie 集成能力的一部分。集成文档还展示了丰富的配套能力日历集成为每种餐次类型Breakfast、Lunch、Dinner、Side、Dessert、Drink、Snack创建一个日历实体每小时更新一次——随机排餐的结果会直接反映在这些日历上购物清单每个 Mealie 购物清单对应一个待办事项列表to-do list每 5 分钟更新传感器提供菜谱数量、分类如 beverage、dessert、Italian、seafood、标签、工具如 instant pot、air fryer、BBQ和用户数等统计传感器每 15 分钟更新。这些能力意味着你可以在自动化中先mealie.set_random_mealplan随机排餐再借助待办事项列表把该菜谱的食材并入购物清单形成随机定菜 → 自动加购的完整闭环。相关动作的完整清单与集成配置方式可查阅 Mealie 集成文档。快速自测想在不写任何 YAML 的情况下体验该动作打开设置 工具 动作Actions搜索该动作填入字段并点击执行动作Perform action即可在真实实例上看到随机排餐的效果。排餐结果可在 Mealie 界面的排餐日历中直接确认。常见注意事项实例选择如果使用 Home Assistant 的 Mealie 附加组件原 Mealie add-on集成配置时应使用带端口的直连 URL默认 9090不要使用以/xxx_mealie结尾的 ingress URL否则连接可能异常见 Mealie 集成文档的 Troubleshooting 章节。配置条目 IDYAML 中的config_entry_id不是 Mealie 实例的任意标识而是 Home Assistant 中该集成的配置条目 ID需从设置 设备与服务中获取。日期格式date使用YYYY-MM-DD字符串示例中带引号书写避免被 YAML 解析为其他类型。【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考