- 拆分 tencent_cloud_client.py(1311行)为 api_operations.py / image_processor.py / retry.py - 更新 HA 废弃 API: SupportsResponse.OPTIONAL, async_unload_platforms, native_value, 移除 CONNECTION_CLASS - 新增动态人员传感器管理(自动增/删) - 新增 detect_face 服务定义(services.yaml) - 移除 secret_key 持久化存储,增强安全性 - 完善错误映射前缀匹配 + 异常类型安全退避 - 修复 Coordinator 双重人员 ID 跟踪死代码 - 添加 _sanitize_error 脱敏,ImageCache LRU 缓存 - manifest.json 版本 2.1.0 + Pillow 依赖
1.7 KiB
1.7 KiB
你是一名Home Assistant自定义集成开发专家。请全面审查并修复 /workspace/tencent_face_recognition/ 下的腾讯云人脸识别插件。
项目结构
- manifest.json: 插件清单
- const.py: 常量和默认值
- __init__.py: 入口,async_setup_entry/async_unload_entry
- config_flow.py: 配置流程
- errors.py: 错误处理
- face_recognition.py: 人脸识别核心功能
- sensor.py: 传感器实体
- services.py: 服务定义
- tencent_cloud_client.py: 腾讯云API客户端(1311行)
- strings.json: 字符串翻译
已知问题需要修复
1. tencent_cloud_client.py
- 文件太大(1311行),拆分为多个文件
- 将 get_group_info, get_person_list_all, verify_credentials 等方法提取到独立模块
- 图片压缩/验证逻辑太复杂,简化
- 重试逻辑可复用,简化
2. __init__.py
- async_forward_entry_setups 在新版HA中需要确认API
- ConfigEntryNotReady 使用是否正确
- 缺少异常处理边界
3. sensor.py
- CoordinatorEntity 使用是否正确
- 传感器属性更新机制
- 人员删除后传感器需要正确处理
4. services.py
- supports_response 在最新HA中的兼容性
- 服务注册模式是否正确
5. config_flow.py
- CONNECTION_CLASS 已废弃,需要更新
- 配置验证流程优化
6. const.py
- 添加 missing constants
- 更新默认值
修复原则
- 保持向后兼容性
- 使用最新的 Home Assistant 2025+ API
- 使用最新的腾讯云 IAI SDK API
- 完善错误处理
- 优化代码结构,合理拆分大文件
- 所有文件保持 UTF-8 编码
- 更新 manifest.json 版本号到 2.1.0
请开始修复。每次修改一个文件,确保语法正确。