private void Ws_OnMessage(object sender, MessageEventArgs e) { string requestMsg = Encoding.UTF8.GetString(e.RawData); var obj = JsonConvert.DeserializeObject <ToonationObject>(requestMsg); if (obj.content != null) { if (obj.code == 101) { eCurrentMessageKind = EMessageKind.donate; if (obj.code_ex == 700) { eCurrentMessageKind = EMessageKind.roulette; } } else if (obj.code == 102) { eCurrentMessageKind = EMessageKind.sub; } else if (obj.code == 103) { eCurrentMessageKind = EMessageKind.follow; } else if (obj.code == 104) { eCurrentMessageKind = EMessageKind.hosting; } else if (obj.code == 107) { eCurrentMessageKind = EMessageKind.cheer; } else if (obj.code == 114) { eCurrentMessageKind = EMessageKind.sub; } else if (obj.code == 115) { eCurrentMessageKind = EMessageKind.sub; } OnToonationObject?.Invoke(obj); } }
public WebSocket(string url_) { url = url_; GetPayload(); if (title == "Toonation") { webSocket = new WebSocketSharp.WebSocket("wss://toon.at:8071/" + payload); webSocket.OnMessage += Ws_OnMessage; webSocket.OnClose += Ws_OnClose; webSocket.Connect(); } else if (title == "Twip AlertBox") { string ioUrl = $"https://io.mytwip.net?alertbox_key={key}&version={version}&token={encodeURIComponent(token)}"; var client = new SocketIoClient(); client.Connected += (sender, args) => Debug.WriteLine($"Connected: {args.Namespace}"); client.Disconnected += (sender, args) => Debug.WriteLine($"Disconnected. Reason: {args.Reason}, Status: {args.Status:G}"); client.EventReceived += (sender, args) => Debug.WriteLine($"EventReceived: Namespace: {args.Namespace}, Value: {args.Value}, IsHandled: {args.IsHandled}"); client.HandledEventReceived += (sender, args) => Debug.WriteLine($"HandledEventReceived: Namespace: {args.Namespace}, Value: {args.Value}"); client.UnhandledEventReceived += (sender, args) => Debug.WriteLine($"UnhandledEventReceived: Namespace: {args.Namespace}, Value: {args.Value}"); client.ErrorReceived += (sender, args) => Debug.WriteLine($"ErrorReceived: Namespace: {args.Namespace}, Value: {args.Value}"); client.ExceptionOccurred += (sender, args) => Debug.WriteLine($"ExceptionOccurred: {args.Value}"); client.On("new donate", message => { eCurrentMessageKind = EMessageKind.donate; Console.WriteLine(message); var obj = JsonConvert.DeserializeObject <TwipObject>(message); if (obj.effect != null) { if (obj.slotmachine_data != null) { eCurrentMessageKind = EMessageKind.roulette; } OnTwipObject?.Invoke(obj); } }); client.On("new cheer", message => { eCurrentMessageKind = EMessageKind.cheer; Console.WriteLine(message); var obj = JsonConvert.DeserializeObject <TwipObject>(message); if (obj.effect != null) { OnTwipObject?.Invoke(obj); } }); client.On("new follow", message => { eCurrentMessageKind = EMessageKind.follow; Console.WriteLine(message); var obj = JsonConvert.DeserializeObject <TwipObject>(message); if (obj.effect != null) { OnTwipObject?.Invoke(obj); } }); client.On("new sub", message => { eCurrentMessageKind = EMessageKind.sub; Console.WriteLine(message); var obj = JsonConvert.DeserializeObject <TwipObject>(message); if (obj.effect != null) { OnTwipObject?.Invoke(obj); } }); client.On("new hosting", message => { eCurrentMessageKind = EMessageKind.hosting; Console.WriteLine(message); var obj = JsonConvert.DeserializeObject <TwipObject>(message); if (obj.effect != null) { OnTwipObject?.Invoke(obj); } }); client.On("new redemption", message => { eCurrentMessageKind = EMessageKind.redemption; Console.WriteLine(message); var obj = JsonConvert.DeserializeObject <TwipObject>(message); if (obj.effect != null) { OnTwipObject?.Invoke(obj); } }); client.ConnectAsync(new Uri(ioUrl)).Wait(); } jsonSettings = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, MissingMemberHandling = MissingMemberHandling.Ignore }; }