From 8f36d9bab78d20c30208f8f967014f9092ff8a90 Mon Sep 17 00:00:00 2001 From: luozheng <1732036298@qq.com> Date: Sun, 30 Nov 2025 14:09:36 +0800 Subject: [PATCH] =?utf8?q?=E9=9B=B7=E9=B8=9F=E8=AE=BE=E5=A4=87=E6=96=87?= =?utf8?q?=E6=A1=A3=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- ...45\345\217\243\346\226\207\346\241\243.md" | 129 +++++++++++++++++- 1 file changed, 127 insertions(+), 2 deletions(-) diff --git "a/code/sdk/zhihui/leiniao/\350\256\276\345\244\207API\346\216\245\345\217\243\346\226\207\346\241\243.md" "b/code/sdk/zhihui/leiniao/\350\256\276\345\244\207API\346\216\245\345\217\243\346\226\207\346\241\243.md" index 268e598b5..ea3ef1520 100644 --- "a/code/sdk/zhihui/leiniao/\350\256\276\345\244\207API\346\216\245\345\217\243\346\226\207\346\241\243.md" +++ "b/code/sdk/zhihui/leiniao/\350\256\276\345\244\207API\346\216\245\345\217\243\346\226\207\346\241\243.md" @@ -1460,7 +1460,7 @@ WebSocket连接需要设备Token认证,有以下两种方式传递Token: ### 客户端业务消息 -客户端可以通过WebSocket连接发送业务消息给服务端,目前支持心跳、对话会话开始、对话会话结束、语音对话分片传输、语音对话打断、语音选择故事和随机故事请求。 +客户端可以通过WebSocket连接发送业务消息给服务端,目前支持心跳、对话会话开始、对话会话结束、语音对话分片传输、语音对话打断、语音选择故事、随机故事请求、蓝牙状态上报和设备升级状态上报。 #### 心跳请求 (Ping) **命令描述**:客户端发送心跳请求,保持WebSocket连接活跃 @@ -2150,6 +2150,101 @@ WebSocket连接需要设备Token认证,有以下两种方式传递Token: | success | Boolean | 是否成功处理状态上报 | | message | String | 处理结果描述信息 | +#### 设备升级状态上报 (DeviceUpgradeStatusReport) +**命令描述**:客户端发送设备升级状态上报,用于主动上报升级进度和结果 +**协议说明**: +- 设备在执行升级任务过程中,定期上报升级状态和进度 +- 支持的状态包括:升级中、升级成功、升级失败、升级取消 +- 服务端返回DeviceUpgradeStatusReportAck应答确认收到状态上报 + + +**消息格式**: +```json +{ + "deviceId": "设备ID", + "timestamp": 1640995200, + "messageId": "消息ID", + "command": "DeviceUpgradeStatusReport", + "data": { + "updateId": "任务ID", + "status": "UPGRADING", + "progress": 50, + "message": "升级进度50%" + } +} +``` + +**消息示例**: +```json +{ + "deviceId": "DEVICE_001", + "timestamp": 1640995200, + "messageId": "upgrade_status_001", + "command": "DeviceUpgradeStatusReport", + "data": { + "updateId": "upgrade_12345", + "status": "UPGRADING", + "progress": 50, + "message": "升级进度50%" + } +} +``` + +**data字段说明**: + +| 字段名 | 类型 | 描述 | +|--------|------|------| +| updateId | String | 任务ID,与升级命令中的updateId对应 | +| status | String | 升级状态,枚举值见下方说明 | +| progress | Integer | 升级进度,范围:0-100,仅在status为UPGRADING时有效 | +| message | String | 状态上报消息,用于描述状态上报的原因 | + +**status字段枚举值**: + +| 枚举值 | 描述 | +|--------|------| +| UPGRADING | 升级中 | +| SUCCESS | 升级成功 | +| FAILED | 升级失败 | +| CANCEL | 升级取消 | + +**使用场景**: +1. **升级中**:设备下载或安装升级包过程中,定期上报升级进度(progress: 0-100) +2. **升级成功**:设备完成升级并重启后,上报SUCCESS状态 +3. **升级失败**:设备升级过程中出现错误时,上报FAILED状态和失败原因 +4. **升级取消**:用户主动取消升级或系统取消升级时,上报CANCEL状态 + +**服务端响应**: +服务端收到设备升级状态上报后,会通过WebSocket推送DeviceUpgradeStatusReportAck消息: + +```json +{ + "deviceId": "DEVICE_001", + "timestamp": 1640995201, + "messageId": "upgrade_status_ack_001", + "command": "DeviceUpgradeStatusReportAck", + "data": { + "updateId": "upgrade_12345", + "success": true, + "message": "升级状态上报处理完成" + } +} +``` + +**服务端响应data字段说明**: + +| 字段名 | 类型 | 描述 | +|--------|------|------| +| updateId | String | 任务ID,与上报消息中的updateId对应 | +| success | Boolean | 是否成功处理状态上报 | +| message | String | 处理结果描述信息 | + +**协议说明**: +- 服务端收到DeviceUpgradeStatusReport后,处理状态并返回此应答 +- success为true表示成功处理状态上报,false表示处理失败 +- 当收到升级状态时,服务端会将状态同步通知到小程序端 +- 设备端可根据应答确认状态上报是否成功,失败时可重试上报 + ### 客户端应答消息 (ACK Messages) 客户端在收到服务端推送的某些命令后,需要发送应答消息(ACK)来确认命令的接收和执行状态。所有 ACK 消息遵循统一的消息格式。 @@ -3505,7 +3600,37 @@ WebSocket连接需要设备Token认证,有以下两种方式传递Token: **服务端处理说明**: - 服务端收到BluetoothStatusReport命令后,更新设备缓存中的蓝牙连接信息,并返回BluetoothStatusReportAck应答给设备端 -#### 20. 对话会话开始应答 (ChatSessionStartAck) +#### 20. 设备升级状态上报应答 (DeviceUpgradeStatusReportAck) +**命令描述**:服务端对设备升级状态上报的应答,确认收到状态上报 +**消息示例**: +```json +{ + "deviceId": "DEVICE_001", + "timestamp": 1640995201, + "messageId": "msg_017", + "command": "DeviceUpgradeStatusReportAck", + "data": { + "updateId": "upgrade_12345", + "success": true, + "message": "升级状态上报处理完成" + } +} +``` + +**data字段说明**: + +| 字段名 | 类型 | 描述 | +|--------|------|------| +| updateId | String | 任务ID,与上报消息中的updateId对应 | +| success | Boolean | 是否成功处理状态上报 | +| message | String | 处理结果描述信息 | + +**服务端处理说明**: +- 服务端收到DeviceUpgradeStatusReport命令后,处理升级状态并返回DeviceUpgradeStatusReportAck应答给设备端 +- success为true表示成功处理状态上报,false表示处理失败(如设备不存在等) + + +#### 21. 对话会话开始应答 (ChatSessionStartAck) **命令描述**:服务端对对话会话开始请求的应答,返回生成的sessionId **消息格式**: -- 2.17.1