ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Home Assistant Seerr 集成实战:使用 overseerr.get_requests 动作查询媒体请求

Home Assistant Seerr 集成实战:使用 overseerr.get_requests 动作查询媒体请求 Home Assistant Seerr 集成实战使用 overseerr.get_requests 动作查询媒体请求【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io本指南围绕 Home Assistant 的 Seerr兼容 Overseerr集成深入讲解overseerr.get_requests动作的完整用法——从 UI 可视化配置到 YAML 底层字段从状态过滤到响应数据消费。读完本文你将能够在自动化与脚本中按状态、按用户、按排序方式灵活拉取 Plex / Jellyfin / Radarr / Sonarr 相关的媒体请求列表并结合响应变量构建通知、审核等实战流程。动作概览它能做什么overseerr.get_requestsGet requests用于从 Seerr 实例检索媒体请求列表。Seerr 是一个媒体请求管理服务负责将请求与 Plex、Jellyfin、Radarr、Sonarr 对接Home Assistant 的 Seerr 集成source/_integrations/overseerr.markdown与之配合提供了事件实体、请求/问题统计传感器以及三个动作overseerr.get_requests、overseerr.request_media、overseerr.search_media。该动作的核心能力有三点按状态过滤只取approved已批准、pending待处理、available已可用等特定状态的请求按用户过滤通过用户 ID 精确匹配发起请求的用户指定排序按“添加时间”或“修改时间”排序返回结果。与手动登录 Seerr 后台查看相比这个动作的价值在于它的结果会写入响应变量可以在同一条自动化或脚本的后续步骤中被引用——例如把待处理的请求推送到手机、生成日报、或对接人工审核流程。前置条件配置 Seerr 集成使用该动作前需要先在 Home Assistant 中完成 Seerr 集成配置配置流程见 source/_integrations/overseerr.markdownURLSeerr 实例的访问地址必填API keySeerr 实例的 API 密钥可在 Seerr 设置页面中找到必填。集成加载时会尝试在 Seerr 中注册 webhook将媒体请求更新推送到 Home Assistant因此该集成属于Local Push类型的推送式集成此外集成每 5 分钟还会主动检查一次更新确保统计传感器数据及时刷新。两个值得注意的限制Seerr 同时只能配置一个 webhook因此一个 Seerr 实例同一时间只能连接一个 Home Assistant 实例集成无法在开启 CSRF 保护的情况下工作需在 Seerr 的Settings中关闭CSRF Protection。在 UI 中配置 Get requests 动作对于偏好可视化配置的用户Home Assistant 的动作编辑界面会分步引导参考 source/_includes/actions/ui_header.md进入SettingsAutomations scenes打开一个现有的自动化或脚本或选择Create automationCreate new automation新建自动化时在When部分添加触发器脚本无需触发器由其他流程调用时运行在Then do部分选择Add action在搜索框中搜索并选择Seerr: Get requests选择Seerr instance实例并按需设置Request status请求状态、Sort order排序方式和Requested by请求者过滤器在Response variable响应变量字段中输入一个名称用于存储数据例如requests点击Save保存。需要注意的是该动作不支持目标targets——在 UI 中不会提示你选择区域、设备、实体或标签。UI 选项说明选项说明必填Seerr instance要从中获取请求的 Seerr 实例是Request status按状态过滤请求取值为approved、pending、available、processing、unavailable或failed否Sort order按添加或修改日期对请求排序否Requested by按发起请求的用户 ID 过滤请求否在 YAML 中使用字段与示例在 YAML 中参考 source/_includes/actions/yaml_header.md动作名称为overseerr.get_requests。典型用法是将结果存入响应变量供后续步骤使用action: overseerr.get_requests data: config_entry_id: YOUR_CONFIG_ENTRY_ID status: pending sort_order: added response_variable: requests上面的示例会获取待处理pending的媒体请求并按添加时间排序。动作中的data为参数对象response_variable为响应变量名——后续步骤可通过requests引用返回的数据。YAML 参数详解参数类型必填说明config_entry_idstring是要从中获取请求的 Seerr 实例对应集成配置条目 IDstatusstring否按状态过滤请求取值为approved、pending、available、processing、unavailable或failedsort_orderstring否按日期排序取值为added或modifiedrequested_byinteger否按发起请求的用户 ID 过滤请求从字段设计可以推断config_entry_id是连接具体 Seerr 实例的钥匙——一个 Home Assistant 中可以配置多个 Seerr/Overseerr 实例虽然受 webhook 数量限制同一实例只能连接一个 HA通过该字段指定数据来源requested_by使用整数类型的用户 ID而非用户名对应 Seerr 内部的用户主键可直接从 Seerr 后台或get_requests返回数据中取得。响应数据requests 列表的结构overseerr.get_requests的响应中包含一个requests列表每个列表项描述一条媒体请求包含以下信息详见 source/_actions/overseerr.get_requests.markdown状态该请求当前所处的状态所指向的媒体请求的电影或剧集信息请求者与最后修改者发起请求的用户以及最后修改该请求的用户。这些字段恰好与集成提供的事件实体event.overseerr_last_media_event属性相互印证——集成支持pending、approved、available、failed、declined、auto_approved六种事件类型请求相关的关键数据会存放在事件属性中而get_requests动作则以可编程方式批量返回同样的请求数据两者结合可以覆盖“实时监听”与“按需查询”两种场景。实战把查询结果变成自动化流程要真正发挥overseerr.get_requests的价值需要结合响应变量。下面给出两个可直接落地的 YAML 示例思路。示例一定时检查待处理请求并通知alias: Pending request digest triggers: - trigger: time at: 09:00:00 actions: - action: overseerr.get_requests data: config_entry_id: YOUR_CONFIG_ENTRY_ID status: pending response_variable: requests - action: notify.send_message target: entity_id: notify.my_device data: title: 待处理媒体请求 message: - 当前有 {{ requests[requests] | length }} 条待处理请求示例二与 Search / Request 动作串联多步工作流get_requests常常与同域名的另外两个动作配合先用overseerr.search_media按名称搜索媒体并取得媒体 ID再用overseerr.request_media创建请求两个动作的文档分别为 source/_actions/overseerr.search_media.markdown 与 source/_actions/overseerr.request_media.markdown。例如收到“有人想看某部电影”的通知后先查询现有pending请求确认未重复提交再决定是否调用overseerr.request_media完成请求——一次自动化即可完成“查重 → 请求 → 通知”的闭环。调试与验证在写任何 YAML 之前可以使用 Home Assistant 的动作测试界面快速验证参数与响应结构进入SettingsToolsActions搜索overseerr.get_requests填入字段后点击Perform action无需编写 YAML 即可在真实实例上观察返回数据参考 source/_includes/actions/try_it.md。这是熟悉requests列表字段结构、确认requested_by用户 ID 取值的最快途径。若动作未返回预期数据优先排查Seerr 实例是否可达、API key 是否有效集成配置流程中的URL与API key两项CSRF Protection 是否已关闭开启时集成无法正常工作webhook 注册是否成功——若 Seerr 无法访问 Home Assistant集成将无法推送更新参见 source/_integrations/overseerr.markdown 的 Troubleshooting 小节。相关动作overseerr.get_requests与下列动作同属 Seerr 集成可组合使用Seerr: Request mediaoverseerr.request_media在 Seerr 中创建媒体请求例如直接从自动化请求某部电影或剧集Seerr: Search mediaoverseerr.search_media在 Seerr 中搜索电影和剧集返回创建请求所需的媒体 ID。三者构成“搜索 → 请求 → 查询/核对”的完整媒体请求管理能力均可将结果写入响应变量供后续步骤消费。【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表