private void Connect() { var definition = new { @event = "", message = "" }; using (Ws = new WebSocket(Url)) { Ws.SslConfiguration.EnabledSslProtocols = System.Security.Authentication.SslProtocols.Tls12; Ws.OnMessage += (sender, e) => { string data = e.Data; Console.WriteLine("Received => " + data); if (data.Contains("\"challenge\"")) { Challenge = JsonConvert.DeserializeAnonymousType(data, definition).message; SignedChallenge = SignMessage(Challenge); ChallengeRequestEvent.Signal(); } }; Ws.OnOpen += (sender, e) => Console.WriteLine("Connected to {0}", Url); Ws.OnError += (sender, e) => Console.WriteLine("Received exception " + e.Message); Ws.OnClose += (sender, e) => Console.WriteLine("Connection Closed " + e.Reason); Ws.ConnectAsync(); SetupPing(); Console.ReadKey(true); } }
public void SubscribePrivate(string feed) { if (Challenge == null) { RequestChallenge(); ChallengeRequestEvent.Wait(); } PrivateSubscription s = new PrivateSubscription("subscribe", feed, ApiKey, Challenge, SignedChallenge); string json = JsonConvert.SerializeObject(s, Formatting.None, Settings); Console.WriteLine("private subscribe: " + json); Ws.Send(json); }