Beispiel #1
0
 private void _ws_OnMessage(object sender, MessageEventArgs e)
 {
     //Pre-parsing message. Doesn't fully deserialize now to dynamic to improve performance
     if (e.Data.StartsWith("{\"stream\":\"orders\""))
     {
         Orders.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"trades\""))
     {
         Trades.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"accounts\""))
     {
         Account.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"marketDiff\""))
     {
         DiffDepth.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"marketDepth\""))
     {
         BookDepth.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"blockheight\""))
     {
         BlockHeight.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"allMiniTickers\""))
     {
         AllMiniTicker.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"miniTicker\""))
     {
         IndividualMiniTicker.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"allTickers\""))
     {
         AllTicker.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"ticker\""))
     {
         IndividualTicker.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"kline_"))
     {
         Klines.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"transfers\""))
     {
         Transfer.ProcessRecievedMessage(e.Data);
     }
     else if (e.Data.StartsWith("{\"stream\":\"transfers\""))
     {
         Transfer.ProcessRecievedMessage(e.Data);
     }
     else if (!string.IsNullOrWhiteSpace(e.Data))
     {
         //We might received an error text from backend, have to raise attention if so.
         if (e.Data.Contains("error"))
         {
             throw new WebSocketConnectionException(string.Format("Websocket DEX backend sent error message: {0}", e.Data));
         }
     }
 }