Isolate official account RPC capabilities from API key device driver
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
# 官方能力模块 / Official capabilities
|
||||
|
||||
Optional official-account integration, independent of the KoKonna device API Key
|
||||
client. The application composition root attaches it per configured device; the
|
||||
FrameDeviceDriver protocol does not depend on account login or widgets.
|
||||
|
||||
- `rpc.py`: in-memory official login/session, disconnect, device discovery/detail
|
||||
and widget query. Strict method allowlist, no retries, no raw vendor errors.
|
||||
- `widgets.py`: normalized widget states and 60-second successful query cache.
|
||||
- `capabilities.py`: full discovered client operation inventory and evidence.
|
||||
Discovered does not mean implemented or enabled. Unenabled operations are blocked.
|
||||
- `widget_catalog.json`: dated, non-secret fallback catalog.
|
||||
|
||||
The public `/api/v1/devices/{device_id}/widgets` endpoint is unchanged. The old
|
||||
`drivers.kokonna.widgets.WidgetReader` import remains a compatibility re-export.
|
||||
No raw RPC proxy or public password-login endpoint is introduced. Future admin
|
||||
account connection UI must use this module and keep credentials server-side.
|
||||
No account or session secret is automatically persisted by this module.
|
||||
|
||||
设备 API Key 仍负责现有设备、图片和图库接口。官方账号功能集中在本目录,
|
||||
不进入 DisplayService、Renderer、Scheduler 或 FrameDeviceDriver。
|
||||
账号登录已提供内部客户端能力;页面连接入口、写操作和会话持久化尚未实现。
|
||||
所有已发现但未启用的 RPC 方法均拒绝执行,不复用 API Key 的写入开关。
|
||||
Reference in New Issue
Block a user