refine chat stream request

This commit is contained in:
Jicheng Lu 2025-07-11 10:15:09 -05:00
parent 21e92f46a1
commit 2ec304b83c
2 changed files with 15 additions and 6 deletions

View file

@ -82,8 +82,8 @@ public class ChatStreamMiddleware
var (eventType, data) = MapEvents(conn, receivedText);
if (eventType == "start")
{
var states = InitStates(data);
await ConnectToModel(hub, webSocket, states);
var request = InitRequest(data);
await ConnectToModel(hub, webSocket, request?.States);
}
else if (eventType == "media")
{
@ -157,16 +157,15 @@ public class ChatStreamMiddleware
});
}
private List<MessageState> InitStates(string data)
private ChatStreamRequest? InitRequest(string data)
{
try
{
var states = JsonSerializer.Deserialize<List<MessageState>>(data, BotSharpOptions.defaultJsonOptions);
return states ?? [];
return JsonSerializer.Deserialize<ChatStreamRequest>(data, BotSharpOptions.defaultJsonOptions);
}
catch
{
return [];
return null;
}
}
}

View file

@ -0,0 +1,10 @@
using BotSharp.Abstraction.Models;
using System.Text.Json.Serialization;
namespace BotSharp.Plugin.ChatHub.Models.Stream;
public class ChatStreamRequest
{
[JsonPropertyName("states")]
public List<MessageState> States { get; set; } = [];
}