dyson-cli

🌀 本地化极速智控 Dyson 设备

🥥10总安装量 4评分人数 4
100% 的用户推荐

基于 libdyson-neon 的本地 MQTT 控制方案,无需云端即可操控 Dyson 风扇/净化器/取暖器,保障隐私的同时实现极速响应。

A

基本安全,请在特定环境下使用

  • 来自可信组织或认证账号,需要结合权限范围判断
  • ✅ 代码审查未发现恶意代码、后门或可疑系统调用
  • ✅ 设备凭证仅本地存储,无云端上传行为
  • ✅ 网络通信限于本地 MQTT,初始配置后无需外部连接
  • ⚠️ 设备凭证明文存储于 ~/.dyson/config.json,建议检查文件权限
  • ⚠️ 依赖社区维护的 libdyson-neon 库,需关注上游更新

使用说明

核心用法

Dyson CLI 是一款面向 Dyson 空气净化风扇、冷暖风扇的本地命令行控制工具。用户需先将 CLI 安装于 ~/dyson-cli 目录并配置 Python 虚拟环境,确保与设备处于同一 WiFi 网络后,即可通过 dyson 命令完成开关机、风速调节(1-10 档或自动模式)、摆头角度设置(45°/90°/180°/350°)、加热目标温度设定(1-37°C)、夜间模式切换及实时状态查询等操作。支持多设备环境,可通过 -d 参数指定特定设备名称。状态数据支持 JSON 输出,便于脚本化二次处理。

显著优点

1. 纯本地通信:采用 MQTT 协议直连设备,无需经过 Dyson 云端服务器,响应延迟极低且杜绝了云端服务宕机或隐私泄露风险。
2. 零订阅成本:区别于官方 App 的账户体系,本地控制无需持续联网验证,适合网络隔离环境或注重隐私的用户。

3. 脚本化友好:命令设计简洁,支持管道组合与 JSON 输出,可轻松集成至 Home Assistant、crontab 定时任务或语音助手回调。

4. 功能覆盖全面:涵盖主流 Dyson 设备的核心功能,包括 Hot+Cool 系列的加热控制、环境温湿度读取等,满足日常自动化需求。

潜在缺点与局限性

1. 网络绑定严格:必须与被控设备处于同一局域网,无法远程操控,外出场景需配合 VPN 或内网穿透方案。
2. 初始配置门槛:首次使用需通过 dyson setup 登录 Dyson 账号获取设备凭证,对非技术用户存在学习成本。

3. 设备兼容性:依赖社区维护的 libdyson-neon 库,新型号或固件更新后可能存在协议适配延迟。

4. 无图形界面:纯 CLI 交互,移动端或可视化场景体验欠佳。

适合的目标群体

  • 智能家居极客与 Home Assistant 用户,追求本地化、去云化的设备控制方案
  • 网络工程师或运维人员,需在隔离网络环境中管理办公环境设备
  • 隐私敏感型用户,希望减少智能家居数据上传至厂商云端
  • 开发者与自动化爱好者,需要将 Dyson 设备状态纳入自定义监控或告警系统

使用风险

  • 凭证明文存储:设备认证信息以 JSON 明文形式存放于 ~/.dyson/config.json,虽受用户目录权限保护,但共享设备或权限配置不当存在泄露风险
  • 依赖项维护:核心功能依赖 libdyson-neon 社区库,若上游停止维护或出现协议变更,可能导致功能失效
  • mDNS 发现可靠性:设备 IP 通过 mDNS 自动发现,复杂网络环境(如多 VLAN、组播隔离)可能导致设备离线误判
  • 无加密传输:本地 MQTT 通信未启用 TLS,同一局域网内的流量可被嗅探(虽仅含控制指令,不含敏感账号密码)

dyson-cli 内容

文件夹图标src文件夹
文件夹图标dyson_cli文件夹
手动下载zip · 9.3 kB
__init__.pytext/plain
请选择文件