using BBWY.Common.Models; using Fleck; using System; using System.Collections.Generic; using System.IO; using System.IO.Pipes; using System.Text; using System.Threading; using System.Threading.Tasks; namespace BBWY.Client.Helpers { public class WSHelper : IDenpendency { //private List connectSocketPool = new List(); private WebSocketServer wsServer; public WSHelper() { wsServer = new WebSocketServer("ws://127.0.0.1:35192"); } public Action ServerReceiveCallback; public void Start() { //开启监听 wsServer.Start(socket => { //注册客户端连接建立事件 socket.OnOpen = () => { Console.WriteLine("建立连接"); //将当前客户端连接对象放入连接池中 //connectSocketPool.Add(socket); }; //注册客户端连接关闭事件 socket.OnClose = () => { //Console.WriteLine("Close"); //将当前客户端连接对象从连接池中移除 //connectSocketPool.Remove(socket); }; //注册客户端发送信息事件 socket.OnMessage = message => { Console.WriteLine($"收到webSocket消息:{message}"); socket.Close(); ////向客户端发送消息 //socket.Send($"服务端接收到信息:{message}"); ServerReceiveCallback?.Invoke(message); }; }); } } }