尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Home Assistant Radarr 集成:radarr.get_queue 下载队列获取动作完整指南

Home Assistant Radarr 集成:radarr.get_queue 下载队列获取动作完整指南 Home Assistant Radarr 集成radarr.get_queue 下载队列获取动作完整指南【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io导读radarr.get_queue是 Home Assistant Radarr 集成提供的一个动作action用于一次性获取 Radarr 下载队列中全部影片的进度与详细信息并通过响应变量response variable把结果传递给自动化或脚本的后续步骤从而实现下载完成时通知我队列卡住时报警等实用场景。本文以 radarr.get_queue.markdown 为骨架结合 Radarr 集成文档 与同域的 radarr.get_movies 动作完整讲解 UI 可视化配置与 YAML 两种用法、全部参数与响应字段并给出可直接落地的自动化示例。动作概览它能做什么radarr.get_queue的定义如下摘自文档 Front matter动作名称radarr.get_queue所属域radarr功能描述获取当前 Radarr 下载队列中的所有影片及其进度和详细信息关联动作radarr.get_movies获取 Radarr 影片库该动作的核心特点有两个只读查询它只读取数据不会修改 Radarr 的任何状态因此可以安全地放在自动化、脚本或模板中反复调用。返回响应数据动作结果存放在你指定的响应变量中可在同一自动化或脚本的后续步骤中使用例如判断某部影片是否下载完成、汇总队列剩余数据量并推送到手机。注意响应变量的作用域仅限当前自动化或脚本的后续步骤跨自动化持久化数据需要配合input_text、input_datetime等辅助元素或其他存储方式。从 UI 使用该动作可视化配置如果你更喜欢用可视化方式构建自动化Home Assistant 会在界面上逐步引导你完成配置无需编写 YAML对应文档的 UI 使用说明 部分。操作步骤如下打开设置 自动化与场景Automations scenes。打开一个已有的自动化或脚本新建则选择创建自动化创建新自动化。如果是新建自动化先在当…时When部分添加触发器。脚本不需要触发器它由其他自动化或流程调用时直接运行。在然后执行Then do部分选择添加动作Add action。在搜索框中搜索并选择Radarr: Get queue。选择要获取队列的Radarr 条目即你在 Home Assistant 中配置的 Radarr 连接。如果添加了多台 Radarr 服务器请选择要查询下载队列的那一台。可选设置最大项目数Max items来限制返回的队列项数量。在响应变量Response variable字段中输入一个名称来存储队列数据例如queue后续步骤就用这个名称读取队列。点击保存。该动作不支持目标targets在 UI 中不会提示你选择区域、设备、实体或标签。这也是大多数纯数据查询类动作的共同特征。UI 中的选项选项是否必填说明Radarr 条目必填要获取队列的 Radarr 配置条目即你在 Home Assistant 中设置的 Radarr 连接配置了多台服务器时需指定其中一台最大项目数可选返回的队列项最大数量设置为0表示返回全部项目在 YAML 中使用该动作如果你直接编写 YAML或想确切知道 Home Assistant 底层做了什么请使用 YAML 参考说明 中的字段名、类型与必填信息。在 YAML 中该动作被称为radarr.get_queue并将结果存入响应变量以便在后续步骤中使用action: | action: radarr.get_queue data: entry_id: 01234567890abcdef1234567890abcde response_variable: queue执行后queue变量中就保存了 Radarr 下载队列的完整数据具体字段见下文响应数据章节。YAML 选项详解字段必填类型默认值说明entry_id是string—要获取队列的 Radarr 配置条目 ID。这是 Radarr 连接在 Home Assistant 中的唯一标识若配置了多台 Radarr 服务器需指定对应的entry_id。它对应 UI 中的Radarr 条目选项max_items否integer0返回的队列项最大数量。设置为0返回所有队列项设置为正整数时只返回前 N 项适合队列很长、只想关注最近的下载时使用如何获取entry_identry_id是 Radarr 配置条目config entry的 ID可在设置 设备与服务中查看对应条目的详细信息或通过开发者工具中列出配置条目相关接口获得。它是 32 位十六进制字符串如示例中的01234567890abcdef1234567890abcde。响应数据每个队列项的完整字段动作响应中包含一个movies映射mapping以下载标题download title为键。每个队列项包含以下字段来自文档的 Response data 章节字段类型/取值示例说明id整数队列项内部 IDmovie_id整数Radarr 影片内部 IDtitle字符串影片标题download_title字符串下载发布组的发布名release nameprogress字符串如45.32%下载进度百分比size整数下载总大小字节size_left整数剩余待下载大小字节status字符串如downloading、queued下载状态tracked_download_status字符串如ok受跟踪下载的状态tracked_download_state字符串如downloading受跟踪下载的状态明细download_client字符串如qBittorrent下载客户端名称download_id字符串下载客户端中该下载的 IDindexer字符串索引器来源站名称protocol字符串如torrent、usenet下载协议estimated_completion_time时间字符串如2024-01-15T18:30:00Z预计完成时间time_left字符串如01:23:45剩余时间quality字符串如Bluray-1080p质量档名称languages字符串列表如[English]语言名称列表custom_format_score数字自定义格式Custom Format评分images映射按类型分类的图片 URL如海报poster、横幅fanart等响应示例文档给出的缩略响应示例如下movies: The.Matrix.1999.1080p.BluRay.x264: id: 123456789 movie_id: 1 title: The Matrix download_title: The.Matrix.1999.1080p.BluRay.x264 progress: 45.32% size: 8589934592 size_left: 4697620070 status: downloading tracked_download_status: ok tracked_download_state: downloading quality: Bluray-1080p languages: - English download_client: qBittorrent indexer: My Indexer protocol: torrent estimated_completion_time: 2024-01-15T18:30:00Z time_left: 01:23:45解读要点movies的键是发布名release name与download_title一致当同一个电影有多个下载如多版本时会各自成为独立的键。progress、estimated_completion_time、time_left都是字符串size与size_left是字节数做人类可读换算如size / 1024 / 1024 / 1024得到 GB后更适合展示。status常见取值包括downloading下载中与queued排队中结合tracked_download_state可以判断是否正在实际下载。实战示例下载完成时通知我文档指出该动作的典型用途是在下载完成时通知自己。结合上述响应结构可以构建如下自动化定时或由 Radarr 队列变化触发调用radarr.get_queue遍历movies映射找出status为downloading、且size_left接近0的项目然后通过notify服务发送通知。alias: Radarr 下载进度通知 triggers: - trigger: time_pattern hours: /1 # 每小时检查一次 actions: - action: radarr.get_queue data: entry_id: 01234567890abcdef1234567890abcde response_variable: queue - action: notify.mobile_app_phone data: title: Radarr 下载队列 message: {% for item in queue[movies].values() %} - {{ item.title }}{{ item.progress }}剩余 {{ (item.size_left / 1024 / 1024 / 1024) | round(2) }} GB约 {{ item.time_left }} {% endfor %}配合 radarr.get_movies获取整个影片库及其状态还可以实现每周汇总监控中的影片数量这类通知前者取队列实时进度后者取影片库的monitored、has_file等元数据两者互补分别对应文档中列出的关联动作关系。结合 Radarr 集成动作之外的实体能力radarr.get_queue属于 Radarr 集成 的动作能力面。该集成ha_domain: radarr自 Home Assistant 0.47 起提供ha_iot_class: Local Polling即本地轮询还提供以下实体与队列动作配合可以构成完整的下载管理闭环Binary sensorHealth健康检查——当 Radarr 无法与任何已启用的下载客户端通信或 RSS 订阅/搜索没有可用索引器时判定为异常。Calendar影片上映日历实体标明上映日与发行类型电影院 Cinemas、数字版 Digital、实体版 Physical。SensorDisk space磁盘空间Radarr 可用磁盘空间GB每个 Radarr 中配置的存储路径对应一个传感器如sensor.radarr_disk_space_moviesMovies影片数Radarr 数据库中的影片数量默认禁用Queue队列数下载队列中的影片数量默认禁用Start time启动时间Radarr 最近一次重启的时间默认禁用。其中sensor.radarr_queue这样的队列计数传感器适合做队列非空即亮灯/通知的简单触发而radarr.get_queue则用于需要逐项明细进度、剩余大小、预计完成时间的场景——两者一个轻量、一个详尽可按需选用。配置集成时API Key 可在 Radarr Web UI 的设置 常规Settings General中找到见 radarr.markdown。手动测试与排错文档建议想快速验证动作效果时可以打开设置 工具 动作Actions搜索该动作、填写字段并点击执行动作Perform action无需编写一行 YAML 就能在真实实体上看到返回结果对应 try_it.md。常见排错方向响应变量为空确认entry_id填写的确实是 Radarr 配置条目 ID而非其他集成条目多台服务器时尤其容易填错。返回结果不完整检查是否设置了max_items且值过小文档明确0表示返回全部项目。队列为空当 Radarr 没有任何正在下载/排队的项目时movies映射可能为空后续模板应做空值处理例如用{% if queue.movies %}包裹。如果问题仍未解决可携带具体动作调用与预期结果前往 Home Assistant 社区论坛发帖求助对应 stuck.md 的建议。总结radarr.get_queue是 Home Assistant 中读取 Radarr 下载队列的标准动作通过 UI 或 YAML 均可配置核心参数只有entry_id必填与max_items可选0为全部返回的movies映射按发布名组织每个队列项的进度、大小、状态、客户端、协议与预计完成时间等 20 余个字段。将其与响应变量、notify服务、radarr.get_movies 及集成的传感器/日历实体组合即可实现下载进度通知、完成提醒与影片库状态汇总等完整的自动化方案。【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表