ChatX/chatserver/Data/chatapi.cs

100 lines
3.1 KiB
C#
Raw Normal View History

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace chatserver.Data
{
/// <summary>
/// 登录请求类
/// </summary>
internal class LoginData
{
public string? username { get; set; } = null;
public string? password { get; set; } = null;
public string? token { get; set; } = null;
}
/// <summary>
/// 登录响应类
/// </summary>
internal class LoginResultData
{
public required string type { get; set; } = "login";
public string? userid { get; set; } = "Unid";
public string? status { get; set; }
public string? message { get; set; }
public string? token { get; set; }
public string? username { get; set; }
}
/// <summary>
/// 注册请求类
/// </summary>
internal class SignData
{
public string? username { get; set; } = null;
public string? password { get; set; } = null;
}
/// <summary>
/// 注册响应类
/// </summary>
internal class SignResultData
{
public required string type { get; set; } = "sign";
public string? status { get; set; } = null;
public string? message { get; set; } = null;
}
/// <summary>
/// 类型数据类
/// </summary>
internal class TypeData
{
public string? type { get; set; }
}
/// <summary>
/// 聊天数据响应类
/// </summary>
internal class ChatRegisterData
{
public required string type { get; set; } = "chat";
public required string userid { get; set; } = "Unid";
public string user { get; set; } = "Unnamed";
public string? status { get; set; } = null;
public string? message { get; set; } = null;
public string? avatar { get; set; } = null;
public MessageType? msgtype { get; set; } = MessageType.Text;
public DateTime? timestamp { get; set; } = DateTime.Now;
}
/// <summary>
/// 聊天数据请求类
/// </summary>
internal class ChatData
{
public required string message { get; set; } = "message";
public MessageType? msgtype { get; set; } = MessageType.Text;
public required string userid { get; set; } = "Unid";
public string? token { get; set; } = null; // 添加token字段
}
/// <summary>
/// 历史记录请求类
/// </summary>
internal class HistoryRequest
{
public int offset { get; set; } = 0; // 分页偏移量
public int count { get; set; } = 10; // 请求数量
public string? chat_type { get; set; } = "group"; // group/private
public string? room_id { get; set; } = "global"; // 群聊房间ID
public string? receiver_id { get; set; } = null; // 私聊接收者ID
}
/// <summary>
/// 历史记录响应类
/// </summary>
internal class HistoryResponse
{
public string type { get; set; } = "history";
public List<ChatRegisterData> history { get; set; } = new List<ChatRegisterData>();
public int total_count { get; set; } // 总消息数
}
}