using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ChatRoomServer.Main.Entities { using System.IO; class MessageItem { public string Action { get; set; } public bool Success { get; set; } public DateTime Time { get; set; } public bool SystemMessage { get; set; } public SystemMessageType SysMsgType { get; set; } public UserMessageType UserMsgType { get; set; } public string Content { get; set; } public string Color { get; set; } public string[] Images { get; set; } public string From { get; set; } public string[] ToUsers { get; set; } public byte[] ToBuffer() => EntityUtility.ToBuffer(this); public static MessageItem Decode(byte[] buffer) => EntityUtility.FromBuffer(buffer); } enum SystemMessageType { Unknown = 0, UserEnter = 1, UserExit = 2, Disconnect = 3, UpdateStat = 4, SendFailed = 5 } enum UserMessageType { Unknown = 0, Send, Receive } }