news 2026/9/17 8:52:42

Home Assistant 中用 unifiprotect.remove_doorbell_text 自动化移除 UniFi Protect 门铃自定义文字

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Home Assistant 中用 unifiprotect.remove_doorbell_text 自动化移除 UniFi Protect 门铃自定义文字

Home Assistant 中用 unifiprotect.remove_doorbell_text 自动化移除 UniFi Protect 门铃自定义文字

【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io

本篇技术指南讲解 Home Assistant 中 UniFi Protect 集成的unifiprotect.remove_doorbell_text服务:它的作用边界、UI 与 YAML 两种调用方式、全部参数含义,以及如何与unifiprotect.add_doorbell_text搭配,实现“白天添加门屏提示语、傍晚自动清除”的定时清理方案。读完后你可以独立编写该服务的完整自动化,并理解“按实例而非按设备”这一行为特征。

服务定位与适用场景

unifiprotect.remove_doorbell_text的功能很单一但很实用:从 UniFi Protect 门铃的可用文字列表中删除一条自定义消息。UniFi Protect 门铃(如 G4 系列门铃)的 LCD 屏可以显示自定义文字或预设文字,UniFi Protect 集成文档在“Device Configuration”部分明确列出了这一能力:

configuration text and select for LCD Screen for doorbells to either set custom messages or use predefined messages

也就是说,集成不仅提供实体级的 LCD 文字控制,还提供成对的服务(action)来管理文字列表本身:

  • unifiprotect.add_doorbell_text:向列表添加一条自定义消息(文档);
  • unifiprotect.remove_doorbell_text:从列表中删除一条已存在的自定义消息(本文主角)。

典型使用场景:你通过 Add doorbell text 在出门期间添加了一条“Leave parcels next door”(包裹放旁边)之类的提示语,傍晚回家后希望它自动从列表里清掉,避免下次误选。删除操作不会改变当前屏幕上正在显示的文字,只影响“可选文字列表”。

运行前提

结合 UniFi Protect 集成文档可以确认几条适用前提:

  • 连接模式:该服务属于“Actions”,在API key only模式下不可用(文档明确写道 “Actions, the media source, and the proxy views are not available in this mode”)。因此必须使用Full access(本地用户 + API key)模式配置集成;
  • 软件版本:Home Assistant 要求 UniFi Protect7.2.105或更高版本,且仅支持运行在 UniFi OS Console 上的 UniFi Protect,不支持容器自托管的第三方移植版本;
  • 设备要求:门铃需具备可显示自定义文字的 LCD 屏(G4 系列门铃支持)。

在用户界面(UI)中使用

如果你习惯可视化方式编写自动化,Home Assistant 会引导你逐步完成。操作步骤如下:

  1. 进入Settings>Automations & scenes
  2. 打开一个已有的自动化或脚本,或选择Create新建;
  3. 若是新建自动化,先在When部分添加触发器(脚本不需要触发器);
  4. Then do部分选择Add action
  5. 在搜索框中搜索并选择UniFi Protect: Remove doorbell text
  6. 从你想变更的 UniFi Protect 实例中选择任意一台设备;
  7. Custom message字段中,输入要删除的完全一致的文字内容;
  8. 选择Save保存。

UI 中的选项说明

选项(UI 显示名)说明
UniFi Protect NVR要变更的 UniFi Protect 实例中的任意一台设备。当接入多个 Protect 实例时,这个选择决定了操作作用在哪个实例上
Custom message要删除的已有自定义消息,必须与现有文字完全匹配

在 YAML 中使用

在 YAML 中该服务的名称为unifiprotect.remove_doorbell_text。最基础的最小调用示例:

action: | action: unifiprotect.remove_doorbell_text data: device_id: 1234567890abcdef1234567890abcdef message: "Come in"

这条语句的作用:从该 UniFi Protect 实例的门铃文字选项中删除消息 “Come in”。注意示例中device_id是一串十六进制 ID,可在 Home Assistant 的设备信息页(设备信息 > 复制设备 ID)中查到。

YAML 参数全解

参数类型必填说明
device_idstring目标 UniFi Protect 实例中任意一台设备的 ID。它的作用不是指定“要操作哪台门铃”,而是把请求路由到正确的 Protect 实例——因为门铃文字列表是实例级资源,选同一实例下的任何设备(门铃、摄像头、NVR 均可)都能定位到该实例
messagestring要删除的已有自定义消息。必须与该消息逐字符完全匹配(区分大小写和空格),不匹配时该服务不会删除任何东西,也不报错

行为要点(Good to know)

原文档特别强调了两点,这也是实际使用中最容易踩坑的地方:

  1. 精确匹配,静默失败:你提供的message必须与现有门铃文字完全一致,否则什么都不会被删除。建议删除前先在门铃 App 或 UniFi Protect 界面上确认文字原文,注意末尾空格和英文标点;
  2. 按实例寻址,而非按门铃:由于该操作作用于整个 UniFi Protect 实例(文字列表挂在 NVR/实例上,而不是某台具体门铃上),你只需要挑选该实例中的任意一台设备作为device_id即可。

手动试跑:开发者工具

不想先写 YAML 验证效果?进入Settings>Tools>Actions(开发者工具),搜索unifiprotect.remove_doorbell_text,填入device_idmessage两个字段后点击Perform action,即可在不修改任何配置文件的情况下对真实设备做一次实测。这是调试这类“静默失败”服务的最佳手段:先确认实例选对了、再确认文字拼写对了,最后才落到自动化里。

实战自动化:傍晚定时清理临时提示语

原文档给出的完整实战案例:与 Add doorbell text 配对使用——白天添加一条临时提示,傍晚定时移除,形成“有进有出”的完整闭环。

  • 触发器:定时(scheduled time)
  • 动作:UniFi Protect: Remove doorbell text

完整 YAML 如下:

automation: | alias: "Remove the morning doorbell message" triggers: - trigger: time at: "18:00:00" actions: - action: unifiprotect.remove_doorbell_text data: device_id: 1234567890abcdef1234567890abcdef message: "Leave parcels next door"

配套的另一半(早上 08:00 添加消息)可直接复用 Add doorbell text 文档中的示例:

automation: | alias: "Add a morning doorbell message" triggers: - trigger: time at: "08:00:00" actions: - action: unifiprotect.add_doorbell_text data: device_id: 1234567890abcdef1234567890abcdef message: "Leave parcels next door"

两条自动化共用同一条消息文本与同一device_id,即可实现 08:00 提示语上架、18:00 自动下架。注意添加侧还有一条约束:消息必须短于 30 个字符(来自 add 服务文档),删除侧则没有长度限制,只有精确匹配要求。

与相邻服务的关系

UniFi Protect 域内与门铃相关的服务从文档结构上看形成一个小组:

  • Add doorbell text:向文字列表添加消息(30 字符以内);
  • Remove doorbell text:本文主题,按精确文本删除;
  • Set chime paired doorbells:管理 Smart Chime 与门铃的配对关系——它管“哪台门铃让哪个门铃响铃器响”,与文字列表管理相互独立。集成文档中同样记录了 Smart Chime 会获得一个手动触发响铃的 Button 实体和音量滑块,可结合响铃类自动化一并设计。

小结

  • unifiprotect.remove_doorbell_text通过device_id(实例内任意设备)+message(逐字符精确匹配)两个必填字符串参数,从 UniFi Protect 实例级文字列表中删除一条自定义门铃消息;
  • 该服务仅在 Full access 连接模式下可用,要求 UniFi Protect ≥ 7.2.105 且运行于 UniFi OS Console;
  • 不匹配时静默失败,建议先用开发者工具(Settings > Tools > Actions)手动试跑确认拼写与实例;
  • unifiprotect.add_doorbell_text组成添加/移除闭环,配合time触发器即可实现门屏提示语的定时发布与自动清理。

【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/17 8:49:36

OpenMontage:命令行视频批处理与自动化拼接实战指南

很多人第一次听说OpenMontage这个名字的时候,第一反应都是问:这到底是个什么工具?你要是去翻它官方的技术文档,里面全是API、节点、渲染队列这些词,容易把人劝退。但如果你真的花半小时把它跑起来,你会发现…

作者头像 李华
网站建设 2026/9/17 8:49:04

DCM4CHEE Archive Light存储配置实战:从选型到避坑全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/17 8:47:31

SpringBoot流浪动物救助平台设计与实现

1. 项目背景与核心价值流浪动物救助一直是城市管理中的痛点问题。传统救助站往往面临信息孤岛、领养流程繁琐、志愿者协作困难等挑战。这个基于SpringBoot的流浪猫狗救助领养平台管理系统,正是为了解决这些实际问题而设计的数字化解决方案。我在参与某动物保护组织信…

作者头像 李华
网站建设 2026/9/17 8:46:34

Obsidian从入门到进阶:构建本地Markdown知识库与双向链接笔记系统

1. 为什么是Obsidian:从笔记需求到工具选型1.1 我换过多少笔记软件,最后为什么停在Obsidian先说一个背景。我是那种笔记需求量特别大的人,平时既要记工作项目的技术细节、会议结论,又要收集各种文章素材,还得维护一个写…

作者头像 李华
网站建设 2026/9/17 8:45:32

IGBT功率循环测试全解析:从失效机理到寿命评估

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华