bjohnson135/homeassistant-cigar-oasis
GitHub: bjohnson135/homeassistant-cigar-oasis
通过逆向工程的 SmartHumidor 云端 API,将 Cigar Oasis 智能保湿盒的温湿度监测与设定点控制接入 Home Assistant 的非官方集成。
Stars: 0 | Forks: 0
# Cigar Oasis → Home Assistant
将您的 **Cigar Oasis Smart Humidor**(湿度、温度和设定点
控制)接入 [Home Assistant](https://www.home-assistant.io/) —— 无需云
附加组件,无需额外硬件,也无需官方 API。
Cigar Oasis 没有 Home Assistant 集成,且 3.0 的 WiFi 模块基于
GainSpan(无蓝牙,无本地 API),因此这会与 SmartHumidor 应用所使用的同一个 Azure 云端
后端进行通信。该 API 是通过反向工程分析应用的
流量得出的 —— 详见 [`docs/API.md`](docs/API.md)。
## 您将获得
- `sensor.humidor_humidity`,`sensor.humidor_temperature`,`sensor.humidor_dew_point`
- `binary_sensor.humidor_humidity_alert` —— 当相对湿度 (RH) 超出 65–72 % 范围时开启
- 可选的**设定点控制**带有安全阈值:在 65–72 % 之间可自由调整;超出
此范围时会要求确认,并发出针对特定方向的风险警告。
读数会在设备每小时一次的云同步时刷新,因此加快轮询频率收效甚微。
## 安装
1. **复制脚本** 将 [`custom_scripts/`](custom_scripts/) 中的脚本复制到您的 Home Assistant 配置目录下的 `config/tools/`
(它们仅使用 Python 标准库):
`oasis_api.py`,`oasis_poll.py`,`oasis_set.py`。
2. **添加您的凭证** 到 `config/secrets.yaml`
(见 [`homeassistant/secrets.example.yaml`](homeassistant/secrets.example.yaml)):
oasis_email: "you@example.com"
oasis_password: "your-smarthumidor-password"
3. **添加 package** [`homeassistant/packages/humidor.yaml`](homeassistant/packages/humidor.yaml)
到您的 `config/packages/` 中(如果尚未启用,请通过
`homeassistant: { packages: !include_dir_named packages }` 启用 packages)。
4. **(可选)添加仪表盘卡片** 来自
[`homeassistant/dashboards/humidor-cards.yaml`](homeassistant/dashboards/humidor-cards.yaml)。
5. 重启 Home Assistant。第一次读数将在一分钟内出现。
### 快速测试(在 Home Assistant 之外)
```
OASIS_EMAIL="you@example.com" OASIS_PASSWORD="..." python3 custom_scripts/oasis_poll.py
# -> {"humidity": 70.9, "temperature": 66.5, ...}
```
## 设定点控制
该 package 附带了一个 `input_number` 滑块和一个
通过 `oasis_set.py` 进行写入的 `script.humidor_apply_setpoint`。**65–72 % 的安全阈值存在于仪表盘
卡片中,而不是脚本中** —— 脚本会直接写入给定的任何值(脚本仍然会强制限制在
设备的 40–90 范围内)。如果您通过自动化来驱动它,
请添加您自己的边界限制。
## 发现过程
在运行 SmartHumidor 应用的手机上使用 `mitmproxy`;登录 → 设备列表 →
设定点写入的调用是直接从解密的流量中读取的。完整的 endpoint
映射详见 [`docs/API.md`](docs/API.md)。
## 许可证
MIT —— 详见 [LICENSE](LICENSE)。
标签:API 逆向, Home Assistant, Python, 无后门, 智能家居, 温湿度监控, 物联网集成, 逆向工具, 雪茄保湿盒