news 2026/10/14 20:26:34

本地优先与隐私解析:Home Assistant WashData收集哪些数据?Community Store完整使用指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
本地优先与隐私解析:Home Assistant WashData收集哪些数据?Community Store完整使用指南

【免费下载链接】ha_washdata

Home Assistant integration for smart-plug appliance monitoring: detects cycles, matches programs, estimates time remaining. Supports washing machines, dryers, dishwashers and more.

项目地址:https://gitcode.com/gh_mirrors/ha/ha_washdata
点击查看免费下载

Home Assistant WashData 是一款通过智能插座监测洗衣机、烘干机、洗碗机等家电的本地优先(Local-first)集成:它能识别洗衣程序、估算剩余时间并统计能耗,且检测与匹配全部在你的 Home Assistant 内完成。本文将讲清 WashData 收集哪些数据、哪些数据永远不会离开你的设备,并给出 Community Store(社区商店)从开启、采纳到分享的完整使用指南。

Home Assistant WashData 是什么?

WashData 是一个 Home Assistant 自定义集成,核心功能包括:

  • 自动检测周期:从智能插座的功率曲线识别洗衣机/烘干机/洗碗机何时开始、何时结束;
  • 程序匹配:通过曲线形状、时长和能耗识别你正在运行的程序(如"40° 棉麻 2小时");
  • 剩余时间估算:基于已学习的程序档案给出分阶段倒计时;
  • 能耗与费用统计:每个周期的电量、动态电价计费、历史趋势。

它支持 HACS 一键安装,也可以手动把 custom_components/ha_washdata 目录拷入 Home Assistant 的custom_components目录后重启。

本地优先设计:WashData 收集哪些数据?

这是很多新手最关心的问题。答案可以一句话概括:所有数据都保存在你自己的 Home Assistant 实例中,WashData 本身不向任何第三方发送使用统计或遥测数据。

本地存储的数据(都在你家里)

WashData 会在本地记录以下数据:

数据类型内容用途
功率历史每次采样的功率读数(瓦特)周期检测与曲线匹配
周期记录每次运行的起止时间、时长、能耗、匹配的程序历史记录与统计
程序档案(Profile)你录制或标注的参考曲线程序识别与倒计时
调试数据匹配调试轨迹(可选)排错与调参
配置每台设备的阈值与偏好个性化检测

你可以在面板的Advanced > Diagnostics页面随时查看本地存储占用,并执行导出/导入备份:

💡备份技巧:Export to JSON可以一键备份某台设备的全部档案与周期数据,换机迁移时再Import from JSON即可,全程不经过任何云端。

永远不会上传的数据

根据项目安全文档 SECURITY.md,WashData 明确不做这些事:

  • ❌ 不发送使用分析或遥测数据到任何云服务;
  • ❌ 不会"打电话回家"(phone home);
  • ❌ 不下载外部程序档案或固件更新;
  • ❌ 实体 ID、设备序列号、家庭地址、能耗统计等敏感信息永不外传。

唯一的例外是你主动开启并操作Community Store(见下文)——它默认关闭,不开启时所有网络调用都处于休眠状态(主控开关见 custom_components/ha_washdata/const.py 中的CONF_ENABLE_ONLINE_FEATURES,默认值为False)。

Community Store 完整使用指南

Community Store 是 WashData 唯一的网络功能:一个社区维护的家电设置目录,按品牌和型号组织。如果有人在用同款机器,你可以直接"采纳"(adopt)他的程序档案,省去自己录制的麻烦。

第一步:开启在线功能

  1. 打开侧边栏的WashData面板;
  2. 进入Advanced标签,点击右上角齿轮图标;
  3. 在Online & Community区域勾选Enable online features(每次安装只需开一次)。

这一步只是打开总开关,不会立即发送任何数据。该操作受管理员权限保护,详见 docs/internal/reference/11-community-store.md。

第二步:声明你的品牌与型号

每个设备的品牌/型号需要在设备级设置中声明:

Settings > Basic > Device info,分别选择Brand和Model。这两个字段支持输入时实时搜索目录,也就是说——声明家电本身就是找档案的过程:

⚠️ 注意:品牌/型号选择器不在齿轮菜单里,而是在 Settings 页。只有声明之后,Store标签页才有内容可显示(它只展示你品牌+设备类型下的条目)。

第三步:浏览并采纳同款设置

开启后,Store标签页会按你的品牌和设备类型展示社区目录:

  • 浏览品牌 → 型号 → 程序档案 → 参考曲线,可以看到时长、峰值功率、平均功率、能耗等统计信息,以及下载量、评分等社区反馈;
  • **采纳(Adopt)**单个参考周期:导入到你选定的档案(或新建同名档案);
  • 下载整个设备包(Device Bundle):一次导入多台程序的曲线、阶段划分,甚至包括其他用户调好的检测参数。

如果找不到完全相同的型号,试试邻近型号——很多条目是别人申报但尚未贡献曲线的机器,同一台机器在不同地区常只是后缀不同(例如WM-100A与WM-100A-UK),通常是很好的起点。

分享你自己的程序数据

你录制的高质量参考曲线也可以回馈社区。分享前请了解上传了什么、没上传什么(完整说明见 SECURITY.md 的 Data Privacy 一节):

✅ 上传的内容❌ 永不上传的内容
降采样后的功率曲线(≤10000 个点,custom_components/ha_washdata/store.py 用 LTTB 算法压缩)实体 ID、HA 地址、设备序列号
程序名称、时长、峰值/平均功率、能耗、特征值日常运行历史(past_cycles)
品牌、型号、设备类型(用于目录归类)终身能耗、费用等使用统计
数据质量代码(1-3);你的 GitHub 昵称(需勾选同意才显示)检测设置白名单以外的任何配置

🔒双重过滤:设置分享采用白名单机制,只有 20 个与"型号本身相关"的识别/匹配阈值(如min_power、off_delay等,定义见 const.py)可以随设备包传播;实体 ID、通知服务、电价、采样频率等涉及你环境拓扑的配置被设计性排除。过滤在上传和下载时各执行一次(纵深防御)。

下载的数据存在哪?会不会污染统计?

采纳的曲线会被写入独立的reference_cycles存储区,永远不会混入你的真实运行历史(past_cycles)。因此:

  • 导入的周期不会计入你的终身能耗/次数统计;
  • 它只提供"形状"用于匹配,使用统计(平均能耗、次数、费用)永远只来自你自己的真实周期;
  • 导入是幂等的:重复下载同一曲线不会重复计数;
  • 你也不能把下载来的曲线二次分享给别人(防止目录数据倒卖式复制)。

账号与凭据安全细节

Community Store 的浏览和下载完全匿名,不需要任何账号。只有执行写入操作(分享、点赞、确认设备)时才需要连接 GitHub 账号:

  1. 面板的 Store 页面会引导你通过 GitHub 登录(浏览器弹窗授权);
  2. 集成获得一个 Firebaserefresh token,仅用于换取短期访问令牌;
  3. 该令牌存储在本地ha_washdata_online配置文件中(custom_components/ha_washdata/store_account.py 管理)。

安全设计要点:

  • 🔐关闭在线功能会立即清除已存储的令牌——被禁用的安装永远不会在磁盘上留下有效凭据;
  • 🔐 令牌不写入日志、不出现在 Home Assistant 事件里,导出诊断时会被自动打码;
  • 🔐 令牌只通过 Home Assistant 的认证 WebSocket 传输(见 custom_components/ha_washdata/store_client.py)。

如果家里有多名 Home Assistant 用户,还可在Advanced > Access Control中按用户设置权限(View / Edit / None),社区商店的所有账号与在线功能操作强制要求管理员身份:

常见问题 FAQ

Q1:我不开 Community Store,会有任何数据外发吗?

不会。检测、匹配、估算全部本地运行;唯一可能外发的是你自己配置的通知(如推送到手机 App),那取决于你选的通知目标,与 WashData 无关。

Q2:智能插座的数据会经过第三方服务器吗?

WashData 只读取 Home Assistant 内部的传感器实体(瓦特读数),数据链路是"插座 → 你自己的 HA"。是否经过云端取决于你智能插座的协议(Zigbee/Matter 本地组网最佳)。

Q3:实验性的 ML 子系统会上传数据吗?

不会。ML 子系统仅用 NumPy 实现,完全在本地运行,不下载模型、不调用外部服务,且默认关闭。

Q4:如何彻底移除我的共享数据?

分享是幂等写入,重复上传相同曲线不会产生重复条目。关闭在线功能即停止一切网络活动,令牌同步清除。

总结

  • 🏠本地优先:WashData 的全部检测、匹配、统计都在你的 Home Assistant 本地完成,无遥测、无"电话回家";
  • 🔒隐私边界清晰:唯一网络功能 Community Store 默认关闭,上传内容受白名单严格控制,敏感信息被设计性排除;
  • 🤝Community Store 三步上手:开启在线功能 → 声明品牌型号 → 浏览/采纳同款设置,秒级获得他人调好的程序档案;
  • 📦数据可掌控:JSON 一键导出/导入备份,本地存储占用随时可在 Diagnostics 页面审计。

WashData 用"默认全关、显式开启、最小上传"的设计证明:智能家居的便利与数据隐私可以兼得。

【免费下载链接】ha_washdata

Home Assistant integration for smart-plug appliance monitoring: detects cycles, matches programs, estimates time remaining. Supports washing machines, dryers, dishwashers and more.

项目地址:https://gitcode.com/gh_mirrors/ha/ha_washdata
点击查看免费下载

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

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

去中心化组网:EasyTier

EasyTier:去中心化VPN的简单与高效 引言 在网络安全与隐私保护要求不断提高的今天,传统依赖中心化服务器的VPN方案存在单点故障、运维成本高以及潜在隐私风险等问题。EasyTier 是一个基于 Rust 开发的开源去中心化网格 VPN 项目,以相对简洁…

作者头像 李华
网站建设 2026/10/14 20:25:59

Vue3 + Canvas 实现类 Pixso 钢笔工具:贝塞尔曲线与路径编辑

1. 项目动机与整体设计思路钢笔工具这东西,我用一句话概括就是:看着是工具栏里一个不起眼的小图标,实际做起来是图形编辑器里最磨人的那块骨头。这次我用Vue3从头实现了一遍类Pixso的钢笔工具,核心功能包括路径创建、锚点拖拽、贝…

作者头像 李华
网站建设 2026/10/14 20:25:04

火萤视频桌面 2026 下载使用教程:停服之后它还能怎么用

火萤视频桌面是个把视频变成动态壁纸的工具:选一个视频文件,让它当你的桌面背景,动态地放着。 先说清它现在的状态,这一步很重要:最后版本是 v5.2.5.9,已经停止维护;原来那个域名也已经易主&am…

作者头像 李华
网站建设 2026/10/14 20:24:32

彻底卸载Node.js:Windows/macOS/Linux残留清理保姆级教程

你有没有碰到过这种情况:明明把Node.js卸载干净了,重装新版本后一运行node -v,显示的居然还是旧版本号,或者干脆各种npm、npx命令像幽灵一样反复横跳。说真的,Node.js的卸载比安装麻烦太多了——安装只需要一路Next&am…

作者头像 李华
网站建设 2026/10/14 20:21:31

大模型应用落地指南:从模型选型到Agent与RAG实践

1. 模型维度:基座能力的格局与选型逻辑距离大模型真正进入大众视野到现在,已经过了好几个年头。站在2026年10月这个时间窗口往回看,最明显的变化是:市面上能叫得出名字的大模型,已经从早期的"百家争鸣"收敛成…

作者头像 李华