usingSuperSocket.WebSocket;usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading;usingSystem.Threading.Tasks;namespaceServer
{classProgram
{static void Main(string[] args)
{
WebSocketServer server= newWebSocketServer();
server.NewSessionConnected+=server_NewSessionConnected;
server.NewMessageReceived+=server_NewMessageReceived;
server.SessionClosed+=server_SessionClosed;try{
server.Setup("127.0.0.1", 40001);//设置端口
server.Start();//开启监听
PushMsg();
}catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.ReadKey();
}static voidPushMsg()
{
Thread.Sleep(1000);try { sessionList.ForEach(o => { o.Send("测试消息推送"); }); }catch(Exception ex) { }
PushMsg();
}public static List sessionList = new List();static voidserver_SessionClosed(WebSocketSession session, SuperSocket.SocketBase.CloseReason value)
{
sessionList.Remove(session);
Console.WriteLine(session.Origin);
}static void server_NewMessageReceived(WebSocketSession session, stringvalue)
{
Console.WriteLine(value);
session.Send(value);
}static voidserver_NewSessionConnected(WebSocketSession session)
{
sessionList.Add(session);
Console.WriteLine(session.Origin);
}
}
}