feat: webscoket 的实现

This commit is contained in:
zoujing
2026-01-14 17:16:53 +08:00
parent dad2c7a5da
commit ba7861f04b
4 changed files with 1349 additions and 39 deletions

View File

@@ -0,0 +1,62 @@
import { url } from "inspector";
export enum MessageRole {
// 智能体消息
AI = "AI",
// 我发送的消息
ME = "ME",
// 其他消息
OTHER = "OTHER",
};
export enum MessageType {
// 文本消息
TEXT = "TEXT",
// 图片消息
IMAGE = "IMAGE",
};
/// Chat消息模型
export interface ChatMessaageContent {
type: MessageType,
text: string
}
export class ChatMessage {
// 消息ID
msgId: string;
// 消息类型
msgRole: MessageRole;
// 消息内容
msg: string;
// 是否加载中
isLoading?: boolean;
// 消息内容详情
msgContent: ChatMessaageContent;
// 消息唯一标识
messageId: string;
// 工具调用信息
toolCall?: any;
// 问题信息
question?: any;
constructor(
msgId: string,
msgRole: MessageRole,
msg: string,
isLoading: boolean = false,
msgContent: ChatMessaageContent,
messageId: string,
toolCall?: any,
question?: any
) {
this.msgId = msgId;
this.msgRole = msgRole;
this.msg = msg;
this.isLoading = isLoading;
this.msgContent = msgContent;
this.messageId = messageId;
this.toolCall = toolCall;
this.question = question;
}
}