using System; using System.Threading; using System.Threading.Tasks; using Websocket.Client; namespace WSDemo { class Program { static void Main(string[] args) { var exitEvent = new ManualResetEvent(false); var url = new Uri("wss://web.cqjgjyw.cn/websocket"); using (var client = new WebsocketClient(url)) { client.ErrorReconnectTimeout = TimeSpan.FromSeconds(10); client.ReconnectTimeout = TimeSpan.FromSeconds(10); client.ReconnectionHappened.Subscribe((info) => { Console.WriteLine($"Reconnection happened, type: {info.Type}"); client.Send("{code:10000,nick:\"张三\",\"room\":\"push_1500\"}"); //if (!client.IsRunning) //{ // client.Reconnect(); //} }); client.DisconnectionHappened.Subscribe((info) => { Console.WriteLine($"DisconnectionHappened happened, type: {info.Type}, {info.CloseStatusDescription}"); //if (!client.IsRunning) //{ // client.Reconnect(); //} }); client.MessageReceived.Subscribe(msg => Console.WriteLine($"Message received: {msg}")); client.Start(); //Task.Run(() => client.Send("{code:10000,nick:\"张三\",\"room\":\"push_1500\"}")); Task.Run(() => { while (true) { try { client.Send($"{{\"code\":10086,\"mess\":\"{Guid.NewGuid()}\",\"room\":\"push_1500\"}}"); client.Send("{code:10016}"); } catch (Exception ex) { Console.WriteLine(ex.Message); } Thread.Sleep(5000); } }); exitEvent.WaitOne(); } } } }