Skip to content

Beta重构版本#33

Open
hzonz wants to merge 8 commits into
dscao:mainfrom
hzonz:beta
Open

Beta重构版本#33
hzonz wants to merge 8 commits into
dscao:mainfrom
hzonz:beta

Conversation

@hzonz

@hzonz hzonz commented May 25, 2026

Copy link
Copy Markdown

说明:

  • 该版本只在 ikuai 4.0.210-beta 版本中测试通过。
  • 破坏性更新,不建议合并到主分支。
  • 代码基本由AI构建。

重构说明:

1. 架构与性能更新

  • 全异步化重构:从旧版的同步阻塞式 requests 库全面切换为异步非阻塞的 aiohttp。
  • 高并发抓取:利用异步特性,将系统状态、接口信息、终端列表、IPv6等多个请求改为并发执行,极大地提升了数据刷新的响应速度。
  • Runtime Data 存储:采用 Home Assistant 最新的标准,使用 runtime_data 管理协调器,取代了旧版的全局变量存储方式。

2. 爱快版本兼容性增强 (3.0 & 4.0)

  • 自动编码探测:新增了对 UTF-8、GBK、GB18030 的自动识别解码。解决了爱快 3.0 版本在处理中文备注时常见的乱码和程序崩溃问题。
  • 自适应数据路径:自动识别并适配 3.0 版本(使用 Result/Data 字段)与 4.0 版本(使用 code/results 字段)的 API 差异。

3. 实体与传感器优化

  • 实体精简与合并:剔除了独立的“WAN IPv6”和“LAN IPv6”传感器,将其地址合并到主 IP 实体的扩展属性中,使界面更加整洁。
  • 单位与状态类增强:
    • 网速:统一添加了 MB/s 单位。
    • 流量总量:统一添加了 GB 单位,并引入 TOTAL_INCREASING 状态类以支持 HA 的长期能源统计。
    • 运行时间:单位更新为 d(天),方便直观阅读。

4. 配置流程(Config Flow)改进

  • 新增“重新配置”功能:增加了 Reconfigure 步骤。当路由器 IP 变化或密码修改时,用户可以直接更新配置,无需删除并重新添加集成,从而保留历史数据。
  • 加密算法修正:在登录环节准确补全了 salt_11 盐值加密逻辑,修复了旧版可能出现的认证失败问题。
  • 唯一 ID 校验:增加了基于主机地址的唯一性检查,防止重复添加同一个路由器实例。

5. 选项流程(Options Flow)与追踪器增强

  • 扫描过滤机制:在“扫描添加设备”流程中,会自动过滤掉已经添加过的设备,避免重复显示。
  • 追踪器缓冲逻辑:优化了终端追踪(Device Tracker)的离线缓冲机制,有效解决了设备在网络波动时频繁切换在线/离线状态的问题。

6. 稳定性与健壮性

  • 并发限制:引入了信号量限制,防止在老旧硬件的爱快路由器上因瞬时并发请求过多而导致路由器 Web 服务假死。
  • 标准化描述符:全面使用 EntityDescription 模式管理实体,极大增强了代码的可维护性和扩展性。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant