using SuperSocket.WebSocket; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace SoketServer { class Program { WebSocketServer SocketServer { get; set; } public class SocketUserModel { public string ServerpartCode { get; set; } public string ShopCode { get; set; } public string MachineCode { get; set; } public WebSocketSession UserSession { get; set; } } /// /// 在线用户列表 /// List SocketSessionList { get; set; } static void Main(string[] args) { SocketServer = new WebSocketServer(); SocketServer.NewSessionConnected += SocketServer_NewSessionConnected; //当有新的客户端连入时的事件 SocketServer.NewMessageReceived += SocketServer_NewMessageReceived; //当有新的消息传入时的事件 SocketServer.NewDataReceived += SocketServer_NewDataReceived; //当有新的数据传入时的事件 SocketServer.SessionClosed += SocketServer_SessionClosed; //当有客户端断开连接时的事件 ServerConfig serverConfig = new ServerConfig { Name = "ESServer", ServerTypeName = "SServer", ClearIdleSession = true, //60秒执行一次清理90秒没数据传送的连接 ClearIdleSessionInterval = 60, IdleSessionTimeOut = 90,//会话连接超时时间(秒) //MaxRequestLength = 2048, //最大包长度 Ip = System.Net.IPAddress.Any.ToString(), Port = 7119, MaxConnectionNumber = 100000 }; if (SocketServer.Setup(serverConfig)) { SocketServer.Start(); } } } }