瀏覽代碼

修改推送格式

moki 2 周之前
父節點
當前提交
77832b734f
共有 3 個文件被更改,包括 21 次插入16 次删除
  1. 8 8
      README.md
  2. 6 1
      cmd/monitor/main.go
  3. 7 7
      docs/api.md

+ 8 - 8
README.md

@@ -106,14 +106,14 @@ curl http://localhost:8080/api/mqtt
 
 ## MQTT 消息格式
 
-MQTT 消息为纯文本格式,与控制台日志一致
-
-```
-[14:30:00] [:4096] 状态: 忙碌
-[14:30:05] [:4096] 思考中...
-[14:30:10] [:4096] 工具: bash - 运行中: ls -la
-[14:30:15] [:4096] 状态: 空闲
-[14:30:20] [:4096] 错误
+消息格式为 JSON
+
+```json
+{
+  "port": 4096,
+  "status": "忙碌",
+  "timestamp": "2026-06-03T14:30:00Z"
+}
 ```
 
 ### 推送的状态类型

+ 6 - 1
cmd/monitor/main.go

@@ -316,7 +316,12 @@ func createCallback(mqttClient *mqttcli.Client) monitor.EventCallback {
 		}
 
 		if status != "" && msg != "" {
-			if err := mqttClient.PublishRaw(mqttClient.GetTopic(), msg); err != nil {
+			payload := map[string]interface{}{
+				"port":      port,
+				"status":    status,
+				"timestamp": time.Now().Format(time.RFC3339),
+			}
+			if err := mqttClient.PublishRaw(mqttClient.GetTopic(), payload); err != nil {
 				fmt.Printf("MQTT 发送失败: %v\n", err)
 			}
 		}

+ 7 - 7
docs/api.md

@@ -204,14 +204,14 @@ API 已启用 CORS,支持跨域请求。
 
 ## MQTT 推送说明
 
-配置启用后,监控到状态变化时会自动推送到配置的 topic。消息为纯文本格式,与控制台日志一致
+配置启用后,监控到状态变化时会自动推送到配置的 topic。消息格式为 JSON
 
-```
-[14:30:00] [:4096] 状态: 忙碌
-[14:30:05] [:4096] 思考中...
-[14:30:10] [:4096] 工具: bash - 运行中: ls -la
-[14:30:15] [:4096] 状态: 空闲
-[14:30:20] [:4096] 错误
+```json
+{
+  "port": 4096,
+  "status": "忙碌",
+  "timestamp": "2026-06-03T14:30:00Z"
+}
 ```
 
 ### 推送的状态类型