using XFEExtension.NetCore.ArrayExtension; namespace XFEExtension.NetCore.CyberComm.XCCNetWork; /// /// XCC消息 /// /// /// XCC消息 /// /// 消息ID /// 消息类型 /// 消息内容 /// 发送者 /// 发送时间 /// 群组ID public class XCCMessage(string messageId, XCCTextMessageType messageType, string message, string sender, DateTime sendTime, string groupId) { /// /// 消息ID /// public string MessageId { get; } = messageId; /// /// 消息类型 /// public XCCTextMessageType MessageType { get; } = messageType; /// /// 消息内容 /// public string Message { get; } = message; /// /// 发送者 /// public string Sender { get; } = sender; /// /// 发送时间 /// public DateTime SendTime { get; } = sendTime; /// /// 群组ID /// public string GroupId { get; } = groupId; /// /// 封装为字符串 /// /// public override string ToString() { return new string[] { MessageId, MessageType.ToString(), Message, Sender, SendTime.ToString() }.ToXFEString(); } /// /// 将封装后的XCC消息字符串转换为XCC消息对象 /// /// /// /// public static XCCMessage ConvertToXCCMessage(string xCCMessageStringFormat, string groupId) { var unPackedMessage = xCCMessageStringFormat.ToXFEArray(); return new XCCMessage(unPackedMessage[0], (XCCTextMessageType)Enum.Parse(typeof(XCCTextMessageType), unPackedMessage[1]), unPackedMessage[2], unPackedMessage[3], DateTime.Parse(unPackedMessage[4]), groupId); } }