public async Task Connect() { //Console.Write("Connecting Websocket..."); const string userAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36 OPR/48.0.2685.52"; var bittrexUri = new Uri("https://bittrex.com"); var bittrexFeedUri = new Uri("https://socket.bittrex.com"); // var feedHeaders = new Dictionary <string, string>(); var cookieContainer = new CookieContainer(); var httpClientHandler = new HttpClientHandler() { UseCookies = true, CookieContainer = cookieContainer }; var clearanceHandler = new ClearanceHandler(httpClientHandler); var httpClient = new HttpClient(clearanceHandler); httpClient.DefaultRequestHeaders.UserAgent.ParseAdd(userAgent); // var connConfig = new ConnectionConfiguration() { CookieContainer = cookieContainer, Headers = feedHeaders }; feedHeaders.Add("User-Agent", userAgent); var config = new BittrexFeedConnectionConfiguration() { // NOTE: Not applicable: AccessToken = "", Connection = connConfig }; WSSharpTransport = new BtrexWSwithCFUtil(bittrexFeedUri); // var request = new HttpRequestMessage(HttpMethod.Get, bittrexUri); var content = httpClient.SendAsync(request, CancellationToken.None).Result; // WSSharpTransport.Connection.CookieContainer = cookieContainer; await WSSharpTransport.Connect(config); //Console.WriteLine("\rWebsocket Connected. "); }
public static async Task Connect() { Console.Write("Connecting Websocket..."); const string userAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36 OPR/48.0.2685.52"; var bittrexUri = new Uri("https://bittrex.com"); var bittrexFeedUri = new Uri("https://socket.bittrex.com"); // var feedHeaders = new Dictionary <string, string>(); var cookieContainer = new CookieContainer(); var httpClientHandler = new HttpClientHandler() { UseCookies = true, CookieContainer = cookieContainer }; var clearanceHandler = new ClearanceHandler(httpClientHandler); var httpClient = new HttpClient(clearanceHandler); httpClient.DefaultRequestHeaders.UserAgent.ParseAdd(userAgent); // var connConfig = new ConnectionConfiguration() { CookieContainer = cookieContainer, Headers = feedHeaders }; feedHeaders.Add("User-Agent", userAgent); var config = new BittrexFeedConnectionConfiguration() { // NOTE: Not applicable: AccessToken = "", Connection = connConfig }; WSSharpTransport = new BtrexWSwithCFUtil(bittrexFeedUri); // var request = new HttpRequestMessage(HttpMethod.Get, bittrexUri); var content = httpClient.SendAsync(request, CancellationToken.None).Result; // WSSharpTransport.Connection.CookieContainer = cookieContainer; await WSSharpTransport.Connect(config); Console.WriteLine("\rWebsocket Connected. "); //!!!***OLD CODE (PRE-CLOUDFLARE:) ////hubConnection.TraceLevel = TraceLevels.All; ////hubConnection.TraceWriter = Console.Out; ////CREATE PROXY, REGISTER CALLBACKS, CONNECT TO HUB: //btrexHubProxy = BtrexWS.hubConnection.CreateHubProxy("coreHub"); //btrexHubProxy.On<MarketDataUpdate>("updateExchangeState", update => BtrexData.UpdateQueue.Enqueue(update)); ////btrexHubProxy.On<SummariesUpdate>("updateSummaryState", update => Trace.WriteLine("FULL SUMMARY: ")); //Trace.Write("Connecting Websocket..."); //await hubConnection.Start(); //Trace.WriteLine("\rWebsocket Connected. "); }