From 79b6e81360efb683479012128e2efc81fb8d98d5 Mon Sep 17 00:00:00 2001 From: jiangchen <1703935164@qq.com> Date: Tue, 1 Sep 2026 19:04:44 +0800 Subject: [PATCH] feat: relay watch text/command/cancel to server (session.prompt/cancel) --- .../java/com/dshwatch/app/MainActivity.java | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/dshwatch/app/MainActivity.java b/app/src/main/java/com/dshwatch/app/MainActivity.java index 305a399..c8aced0 100644 --- a/app/src/main/java/com/dshwatch/app/MainActivity.java +++ b/app/src/main/java/com/dshwatch/app/MainActivity.java @@ -75,12 +75,24 @@ public class MainActivity extends AppCompatActivity { try { JSONObject msg = new JSONObject(json); String type = msg.optString("type", ""); - if ("command".equals(type) && "prompt".equals(msg.optString("kind", ""))) { - JSONObject payload = msg.optJSONObject("payload"); - String content = payload != null ? payload.optString("content", "") : ""; - JSONObject params = new JSONObject(); + JSONObject payload = msg.optJSONObject("payload"); + JSONObject params = new JSONObject(); + + if ("text".equals(type)) { + String content = payload != null ? payload.optString("text", "") : ""; params.put("content", content); - serverClient.sendRequest("harness.prompt", params); + serverClient.sendRequest("session.prompt", params); + } else if ("command".equals(type)) { + String kind = msg.optString("kind", payload != null ? payload.optString("kind", "") : ""); + String content = payload != null ? payload.optString("content", "") : ""; + if ("cancel".equals(kind)) { + serverClient.sendRequest("session.cancel", params); + } else { + params.put("content", content); + serverClient.sendRequest("session.prompt", params); + } + } else if ("cancel".equals(type)) { + serverClient.sendRequest("session.cancel", params); } } catch (Exception e) { // ignore malformed