2.1 KiB
2.1 KiB
问题修复记录
2026-04-15: 修复配置向导 500 错误
问题描述
添加集成时出现 500 Internal Server Error
根本原因
- 类型注解错误:
config_flow.py使用了小写any而非Any - 依赖包不存在:
manifest.json中引用了不存在的bleak-mesh>=0.2.0 - 导入错误:
coordinator.py从错误的模块导入MeshMessageEvent和ProvDeviceEvent
错误日志
错误 1: 依赖包不存在
homeassistant.requirements.RequirementsNotFound:
Requirements for sigmesh_gateway not found: ['bleak-mesh>=0.2.0'].
错误 2: 导入错误
Error occurred loading flow for integration sigmesh_gateway:
cannot import name 'MeshMessageEvent' from 'custom_components.sigmesh_gateway.protocol_parser'
解决方案
修复 1: config_flow.py 类型注解
+ from typing import Any
- async def async_step_user(self, user_input: dict[str, any] | None = None) -> FlowResult:
+ async def async_step_user(self, user_input: dict[str, Any] | None = None) -> FlowResult:
修复 2: manifest.json 依赖
- "requirements": ["pyserial-asyncio==0.6", "bleak-mesh>=0.2.0"],
+ "requirements": ["pyserial-asyncio-fast>=0.6"],
修复 3: coordinator.py 导入
from .protocol_parser import (
DeviceManager,
DeviceState,
- MeshMessageEvent,
ParsedMeshMessage,
- ProvDeviceEvent,
ProtocolParser,
)
+ from .serial_reader import (
+ MeshMessageEvent,
+ ProvDeviceEvent,
+ SerialReader,
+ )
提交记录
| Commit | 说明 |
|---|---|
472fec4 |
fix: 修复 coordinator.py 导入错误 |
e905410 |
fix: 修复 manifest.json 依赖错误 |
66b86e3 |
fix: 修复 config_flow.py 类型注解错误 |
部署步骤
# 复制更新后的集成文件
cp -r /home/ubuntu/workspace/cherry-studio/enginneer/impress_sig_mesh_hacs/custom_components/sigmesh_gateway \
<HA 配置目录>/custom_components/
# 重启 Home Assistant
ha core restart
验证
重启后,在 HA UI 中重新尝试添加集成,应能正常显示配置表单。