最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
hass-browser_mod:实践指南
时间:2026-09-12 16:22:01 编辑:袖梨 来源:一聚教程网
在项目中评估hass-browser_mod,可以先看清用途边界: 家庭助理集成,将您的浏览器变成可控实体和媒体播放器。这类网页与浏览器自动化工具真正难在登录状态、页面变化和失败恢复往往不稳定,仓库说明只能作为第一层证据。短测时我会选择一个权限清楚的网页流程做端到端短测,并保留会话保持、元素定位、错误恢复和工件留存的结果,方便团队复盘。它对需要可观测网页自动化流程的开发者更有价值,但正式采用前仍要复查许可证、近期提交和问题区回应。
浏览器模块
如果有人按门铃时,您墙上的平板电脑可以打开前门摄像头的实时画面怎么办?
如果您可以将其用作额外的安全摄像头呢?
或者,如果您可以使用它来播放 Home Assistant 媒体库中的音乐和视频怎么办?
如果您可以向您的孩子永久隐藏该侧边栏并将他们锁定在单个仪表板中,该怎么办?
如果您可以更改“家庭助理”选项卡的图标,使其看起来与论坛不同,该怎么办?
如果您可以将某些实体的更多信息对话框更改为您自己设计的仪表板卡,该怎么办?
如果您可以点击一个按钮,让 Home Assistant 询问您希望 Roomba 吸尘哪些房间,会怎么样?
安装说明
-
首先确保您已完全删除所有安装的 Browser Mod 1
I.e。从 configuration.yaml 中删除browser_mod:并从集成页面删除集成。 -
要么
- 在HACS中的
integrations下查找并下载[浏览器模块 - OR 将
custom_components/browser_mod/的内容复制到<your config dir>/custom_components/browser_mod/。
- 在HACS中的
-
重启家庭助理
-
在“设置”->“设备和服务”->“添加集成”中添加“浏览器模组”集成或单击此按钮:
-
重启家庭助理
升级中
-
通过 HACS 升级或将
custom_components/browser_mod/的新内容复制到<your config dir>/custom_components/browser_mod/。 -
重新启动家庭助理。如果您通过 HACS 升级,您将获得修复项目以重新启动 Home Assistant。
-
重新启动 Home Assistant 后,所有浏览器都需要重新加载才能下载最新版本的 Browser Mod javascript 文件。版本 2.4.0 包括检测到浏览器版本不匹配时的通知,因此从 2.4.x 开始,只需单击 重新加载 就足够了。如果您不断收到通知,则可能需要强制浏览器重新加载
SHIFT+F5,或者在某些情况下 清除浏览器缓存。
注意:如果您从 Browser Mod 1 升级,则在过渡期间您的日志中可能会出现一些错误。他们会说类似
Error handling message: extra keys not allowed @ data['deviceID']的话。当缓存了旧版本 Browser Mod 的浏览器尝试连接时,它们就会出现,并且在您正确清除所有缓存后就会消失。
快速入门
- 安装浏览器模组
- 彻底清除您的浏览器缓存 清除浏览器缓存
- 转到侧边栏中的“浏览器模块”面板
- 确保选中“注册”开关。
这是为了使后端服务能够定位此浏览器所必需的。 - 刷新页面(F5)
- 转到开发者工具 -> 服务
- 选择服务“浏览器模块:弹出(browser_mod.popup)”
- 检查“标题”复选框并写一些内容作为标题
- 在“内容”文本框中输入一些文本
不是 yaml 或任何东西,现在只是任何文本。 - 点击“CALL SERVICE”
该按钮可能呈灰色。这是家庭助理的视觉错误。无论如何点击它。 - 现在应该在所有已注册的浏览器上打开一个弹出对话框。
以下是 智能家居场景 功能的精彩概述。
浏览器模组配置面板
安装浏览器模块后,您应该在侧边栏中看到一个名为“浏览器模块”的新面板。您可以在此处控制任何浏览器模块设置。
请参阅 配置面板 了解更多信息
浏览器模组服务
Browser Mod 有许多服务,您可以调用这些服务来导致目标浏览器中发生一些事情,例如打开弹出窗口或导航到某个仪表板。
请参阅 服务 了解更多信息
弹出卡
弹出卡可用于替换实体的更多信息对话框,或用作 browser_mod.popup 服务 的模板,或两者兼而有之!有关详细信息,请参阅 仪表板卡。
FAQ
如何让视频播放器全屏显示?
media_player.play_media 服务允许将 extra 配置传递到 media_player 实体。 Browser Mod支持通过在extra下添加popup字典来发送media_player弹出配置。您可以设置除 content 之外的任何 browser_mod.popup 参数。
要全屏显示视频播放器、视频没有内边距且背景为黑色,请使用下面的示例。
action: media_player.play_media
target:
entity_id: media_player.my_browser
data:
extra:
popup:
initial_style: fullscreen
popup_styles:
- style: all
styles: |
ha-dialog {
--ha-dialog-surface-background: black;
}
ha-dialog .container {
padding: 0px;
}
media:
media_content_id: media-source://...
media_content_type: video/mp4
如何保持设备“活动”?
这一切都取决于你的结果是什么。浏览器模组无法控制硬件,因此它无法将任何设备置于屏幕关闭模式。 Browser Mod 确实有一个光实体,可用于模拟带有深色覆盖层的暗屏。如果您确实希望使设备处于屏幕关闭状态,则需要注意如果设备操作系统决定暂停 Browser/App,则可能会导致浏览器模组和家庭助理失去连接而出现问题。这种情况在 Android 设备上最为普遍,Browser/App 可能会进入打瞌睡状态,最终被冻结。浏览器模组对此无法控制。有关在 Android 设备上运行 Browser Mod 的详细信息,请参阅 wiki 文章 Android 设备“始终开启”。
如何访问FullyKiosk浏览器特殊功能?
确保激活 Javascript 接口。 浏览器模块面板将指导您完成其余的必需和建议的设置。
为什么曾经与 Browser Mod 1.0 配合使用的 ANYTHING 不能与 Browser Mod 2.0 配合使用?
Browser Mod 2.0 已从头开始重写 ENTIRELY。这使得它更加稳定并且资源消耗更少。与此同时,我利用这个机会以更符合家庭助理命名法的方式重命名了很多东西。
简而言之,对于 Browser Mod 的新用户来说,事情现在有望变得更加容易,但不幸的是,这会给像您这样的资深专家用户带来一次性的不便。
为什么我的浏览器 ID 不断变化?
从2.13.0版本开始,浏览器ID可以同步到登录的会话。只要您在设备上保持登录状态,浏览器 ID 就不会更改。通过在设备的浏览器模块面板中将同步会话选择设置为打开来使用此功能。
对于特殊情况您还可以将浏览器ID设置为e.g。 whatever,将 ?BrowserID=whatever(N.B。大写 B)添加到任何家庭助理 URL。
如何从浏览器 mod 1.5 更新弹出窗口?
如果你使用过fire-dom-event,那真的很简单。只是改变
action: fire-dom-event
browser_mod:
command: popup
title: My title
card:
type: ...etc...
到
action: fire-dom-event
browser_mod:
service: browser_mod.popup
data:
title: My title
content:
type: ...etc...
如何卸载浏览器模块?
除了像往常一样删除集成之外,还需要一个额外的步骤。 为了与 Home Assistant Cast 浏览器模组良好配合,它会将其自身添加到您的仪表板资源中,您需要从那里手动将其删除:
删除默认仪表板插件后如何清理?
删除default-dashboard插件(与Browser Mod默认仪表板操作冲突)后,您可能需要删除浏览器localStorage密钥isDefaultPanelManaged。 Browser Mod 使用此键来检测管理默认面板的插件 is/was,并且它可能在卸载后仍然存在,从而导致 Home Assistant 修复警告持续存在,直到被清除。
您可以使用 browser_mod.refresh 服务并将 local_storage_items 设置为包含 - item: isDefaultPanelManaged,从所有注册和在线浏览器的 localStorage 中删除 isDefaultPanelManaged 项目。使用 Home Assistant(开发人员)工具、“操作”选项卡并搜索 browser_mod.refresh,将 isDefaultPanelManaged 添加为 local_storage_items 下的 item 条目,或者按照以下示例创建带有操作的仪表板按钮。您可以使用上面的按钮直接进入(开发者)工具并选择 browser_mod.refresh。
type: button
name: Cleanup default-dashboard plugin settings
tap_action:
action: perform-action
perform_action: browser_mod.refresh
target: {}
data:
local_storage_items:
- item: isDefaultPanelManaged