MSAgent-Chat/protocol/protocol.ts
2024-07-01 23:37:57 -04:00

45 lines
964 B
TypeScript

export enum MSAgentProtocolMessageType {
// Client-to-server
Join = "join",
Talk = "talk",
// Server-to-client
AddUser = "adduser",
RemoveUser = "remuser",
Message = "msg"
}
export interface MSAgentProtocolMessage {
op: MSAgentProtocolMessageType
}
// Client-to-server
export interface MSAgentJoinMessage extends MSAgentProtocolMessage {
op: MSAgentProtocolMessageType.Join,
data: {
username: string;
}
}
export interface MSAgentTalkMessage extends MSAgentProtocolMessage {
op: MSAgentProtocolMessageType.Talk,
data: {
msg: string;
}
}
// Server-to-client
export interface MSAgentAddUserMessage extends MSAgentProtocolMessage {
op: MSAgentProtocolMessageType.AddUser,
data: {
username: string;
}
}
export interface MSAgentRemoveUserMessage extends MSAgentProtocolMessage {
op: MSAgentProtocolMessageType.RemoveUser,
data: {
username: string;
}
}