86 lines
2.3 KiB
C#
86 lines
2.3 KiB
C#
using SuperSocket.SocketBase;
|
|
using SuperSocket.SocketBase.Protocol;
|
|
using System;
|
|
using WX.CRM.Common;
|
|
using WX.CRM.DataSynServer.Domain;
|
|
|
|
namespace WX.CRM.DataSynServer.Socket
|
|
{
|
|
public class ZxSession : AppSession<ZxSession>
|
|
{
|
|
public string SN { get; set; }
|
|
protected override void OnInit()
|
|
{
|
|
base.OnInit();
|
|
}
|
|
|
|
protected override void OnSessionStarted()
|
|
{
|
|
Console.WriteLine("客户端已连接!");
|
|
//Send("客户端已连接!");
|
|
base.OnSessionStarted();
|
|
}
|
|
|
|
public override void Initialize(IAppServer<ZxSession, StringRequestInfo> appServer, ISocketSession socketSession)
|
|
{
|
|
base.Initialize(appServer, socketSession);
|
|
}
|
|
|
|
public override void Close()
|
|
{
|
|
Console.WriteLine("客户端已关闭!");
|
|
base.Close();
|
|
}
|
|
|
|
public override void Close(CloseReason reason)
|
|
{
|
|
Console.WriteLine($"客户端已关闭,关闭原因:{reason}");
|
|
base.Close(reason);
|
|
}
|
|
|
|
public void SendMessage(string key, SYNC_PUSH body, string endMark = "^^")
|
|
{
|
|
var info = new SendDto { Key = key, Body = body };
|
|
var msg = info.ToJson() + endMark;
|
|
//LogHelper.Info("服务端发送数据:" + msg);
|
|
Send(msg);
|
|
}
|
|
|
|
protected class SendDto
|
|
{
|
|
public string Key { get; set; }
|
|
public SYNC_PUSH Body { get; set; }
|
|
}
|
|
|
|
public override void Send(string message)
|
|
{
|
|
base.Send(message);
|
|
}
|
|
|
|
public override bool TrySend(string message)
|
|
{
|
|
return base.TrySend(message);
|
|
}
|
|
|
|
protected override int GetMaxRequestLength()
|
|
{
|
|
return base.GetMaxRequestLength();
|
|
}
|
|
|
|
protected override string ProcessSendingMessage(string rawMessage)
|
|
{
|
|
return base.ProcessSendingMessage(rawMessage);
|
|
}
|
|
|
|
protected override void HandleException(Exception e)
|
|
{
|
|
base.HandleException(e);
|
|
}
|
|
|
|
protected override void HandleUnknownRequest(StringRequestInfo requestInfo)
|
|
{
|
|
base.HandleUnknownRequest(requestInfo);
|
|
}
|
|
}
|
|
}
|