XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEExtension

【DLL】XFE各类拓展是一个C#的DLL库,旨在优化C#代码中常用语句的使用,并提供更简洁的访问方式,同时提供Xunit测试框架,快速搭建服务器/客户端,免费ChatGPTAPI接口,免费通讯服务器,XFE下载器,新增格式等

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFEExtension

适配双服系统

a21c9a3
XFE工作室室长 <xfe18827675401@126.com>
提交于

代码差异

1 个文件 +15 -41
Modified XFE各类拓展/XCCNetWork.cs +15 -41
@@ -299,6 +299,21 @@ namespace XFE各类拓展.CyberComm.XCCNetWork
299 299 workBase.exceptionMessageReceived?.Invoke(this, new XCCExceptionMessageReceivedEventArgsImpl(this, TextMessageClientWebSocket, FileTransportClientWebSocket, XCCClientType.TextMessageClient, null, null, new XFECyberCommException("接收XCC服务器消息时发生异常", ex)));
300 300 }
301 301 }
302 else if (receiveResult.MessageType == WebSocketMessageType.Binary)
303 {
304 try
305 {
306 var xFEBuffer = XFEBuffer.ToXFEBuffer(receivedBinaryBuffer);
307 var signature = Encoding.UTF8.GetString(xFEBuffer["Type"]);
308 var messageId = Encoding.UTF8.GetString(xFEBuffer["ID"]);
309 if (signature == "callback")
310 UpdateTaskTrigger?.Invoke(true, messageId);
311 }
312 catch (Exception ex)
313 {
314 workBase.exceptionMessageReceived?.Invoke(this, new XCCExceptionMessageReceivedEventArgsImpl(this, TextMessageClientWebSocket, FileTransportClientWebSocket, XCCClientType.TextMessageClient, null, null, new XFECyberCommException("接收XCC服务器消息时发生异常", ex)));
315 }
316 }
302 317 }
303 318 catch (Exception ex)
304 319 {
@@ -388,47 +403,6 @@ namespace XFE各类拓展.CyberComm.XCCNetWork
388 403 bufferList.AddRange(receiveBuffer.Take(receiveResult.Count));
389 404 }
390 405 var receivedBinaryBuffer = bufferList.ToArray();
391 if (receiveResult.MessageType == WebSocketMessageType.Text)
392 {
393 try
394 {
395 var receivedMessage = Encoding.UTF8.GetString(receivedBinaryBuffer);
396 var isHistory = receivedMessage.IndexOf("[XCCGetHistory]") == 0;
397 if (isHistory)
398 {
399 receivedMessage = receivedMessage.Substring(15);
400 }
401 var unPackedMessage = receivedMessage.ToXFEArray<string>();
402 var messageId = unPackedMessage[0];
403 var signature = unPackedMessage[1];
404 var message = unPackedMessage[2];
405 var senderName = unPackedMessage[3];
406 var sendTime = DateTime.Parse(unPackedMessage[4]);
407 var messageType = XCCTextMessageType.Text;
408 switch (signature)
409 {
410 case "[XCCTextMessage]":
411 messageType = XCCTextMessageType.Text;
412 break;
413 case "[XCCImage]":
414 messageType = XCCTextMessageType.Image;
415 break;
416 case "[XCCAudio]":
417 messageType = XCCTextMessageType.Audio;
418 break;
419 case "[XCCVideo]":
420 messageType = XCCTextMessageType.Video;
421 break;
422 default:
423 break;
424 }
425 workBase.textMessageReceived?.Invoke(this, new XCCTextMessageReceivedEventArgsImpl(this, TextMessageClientWebSocket, FileTransportClientWebSocket, XCCClientType.FileTransportClient, messageId, messageType, message, senderName, sendTime, isHistory));
426 }
427 catch (Exception ex)
428 {
429 workBase.exceptionMessageReceived?.Invoke(this, new XCCExceptionMessageReceivedEventArgsImpl(this, TextMessageClientWebSocket, FileTransportClientWebSocket, XCCClientType.FileTransportClient, null, null, new XFECyberCommException("接收XCC服务器消息时发生异常", ex)));
430 }
431 }
432 406 if (receiveResult.MessageType == WebSocketMessageType.Binary)
433 407 {
434 408 try