public NewSkyBet(AllMarkets marktes) { var cef = Chrome.Instanse; isLoad = false; browser = Chrome.InstSkyBet; browser.ConsoleMessage += BrowserOnConsoleMessage; browser.LoadingStateChanged += BrowserOnLoadingStateChanged; browser.BrowserInitialized += BrowserOnBrowserInitialized; allMarkets = marktes; State = ThreadState.Running; isIgnoredMarket = false; }
private void BrowserOnConsoleMessage(object sender, ConsoleMessageEventArgs e) { if (isIgnoredMarket) { Debug.WriteLine("[IGNORED][SkyBet]Console: " + e.Message); return; } Debug.WriteLine("[SkyBet]Console: " + e.Message); if (e.Message.Contains("FINISHED")) { State = ThreadState.Stopped; } if (e.Message[0] == '1') { var tmp = e.Message.Split('|'); var main = tmp[1]; var scores = JsonConvert.DeserializeObject <List <Scores> >(main); var score1 = scores[1].score; var score2 = scores[2].score; var eventId = scores[0].eventId; if ((!string.IsNullOrWhiteSpace(prevScoreOne)) && (!string.IsNullOrWhiteSpace(prevScoreTwo))) { if (!((score1 == "0") && (score2 == "0"))) { if (((score1 == "0") && (score1 != prevScoreOne)) || ((score2 == "0") && (score2 != prevScoreTwo))) { return; } } } foreach (var currentMarket in allMarkets.ParsingInfo.AllMarketsHashSet) { if ((!string.IsNullOrWhiteSpace(currentMarket.SkyBetEventId)) && (currentMarket.SkyBetEventId.Equals(eventId))) { prevScoreOne = score1; prevScoreTwo = score2; currentMarket.Player1.ScoreSkyBet = score1; currentMarket.Player2.ScoreSkyBet = score2; PlayerChanged?.Invoke(new ScoreUpdEventArgs(currentMarket)); break; } } } if (e.Message[0] == '2') { var str = e.Message.Split('|'); var elem = str[1]; MessageChanged?.Invoke(new MessagesEventArgs(elem, TypeDBO.SkyBet)); } }
private void BrowserOnConsoleMessage(object sender, ConsoleMessageEventArgs e) { if (isIgnoredMarket) { Debug.WriteLine("[IGNORED][SkyBet]Console: " + e.Message); return; } Debug.WriteLine("[SkyBet]Console: " + e.Message); if (e.Message.Contains("FINISHED")) { State = ThreadState.Stopped; } if (e.Message[0] == '1') { var tmp = e.Message.Split('|'); var main = tmp[1]; var scores = JsonConvert.DeserializeObject<List<Scores>>(main); var score1 = scores[1].score; var score2 = scores[2].score; var eventId = scores[0].eventId; if ((!string.IsNullOrWhiteSpace(prevScoreOne)) && (!string.IsNullOrWhiteSpace(prevScoreTwo))) { if (!((score1 == "0") && (score2 == "0"))) if (((score1 == "0") && (score1 != prevScoreOne)) || ((score2 == "0") && (score2 != prevScoreTwo))) return; } foreach (var currentMarket in allMarkets.ParsingInfo.AllMarketsHashSet) { if ((!string.IsNullOrWhiteSpace(currentMarket.SkyBetEventId)) && (currentMarket.SkyBetEventId.Equals(eventId))) { prevScoreOne = score1; prevScoreTwo = score2; currentMarket.Player1.ScoreSkyBet = score1; currentMarket.Player2.ScoreSkyBet = score2; PlayerChanged?.Invoke(new ScoreUpdEventArgs(currentMarket)); break; } } } if (e.Message[0] == '2') { var str = e.Message.Split('|'); var elem = str[1]; MessageChanged?.Invoke(new MessagesEventArgs(elem,TypeDBO.SkyBet)); } }
public List <Scores> GetScoreses(string eventId) { if (string.IsNullOrWhiteSpace(eventId)) { State = ThreadState.Unstarted; return(default(List <Scores>)); } State = ThreadState.Running; var scores = new List <Scores>(); isLoad = false; LoadPageSkyBet(scoreUrl + eventId); var score = getScore(); if (score.Result.ToString().Contains("null")) { score = getScore(); } scores = JsonConvert.DeserializeObject <List <Scores> >(score.Result.ToString()); isLoad = true; return(scores); }
public MarketStatus SuscribeToScores(string comp) { prevComp = comp; var mathes = GetAlllMathes(); var mathesMarket = new Mathes(); var players = comp.Split('|'); mathesMarket.player1Name = players[0]; mathesMarket.player2Name = players[1]; var index = -1; if (mathes == null) { State = ThreadState.Stopped; return MarketStatus.Closed; } foreach (var mathese in mathes) { if ((mathesMarket.player2Name.Equals(mathese.player2Name)) && (mathesMarket.player1Name.Equals(mathese.player1Name))) { index = mathese.indexToClick; break; } } var clickTennis = browser.EvaluateScriptAsync("clickToTennis()"); if (index == -1) { State = ThreadState.Stopped; return MarketStatus.Closed; } CheckLoaded(); var result = ClickToMarket(index); Thread.Sleep(100); if (result != true) { State = ThreadState.Stopped; return MarketStatus.Closed; } var suscribe = browser.EvaluateScriptAsync("suscribeEventsScores()"); if (suscribe.Result.Result != null) { while (true) { var loadJs = browser.EvaluateScriptAsync(Properties.Resources.jsAllLoad).Result; var clickTennis1 = browser.EvaluateScriptAsync("clickToTennis()").Result; CheckLoaded(); var result1 = ClickToMarket(index); Thread.Sleep(100); var res = browser.EvaluateScriptAsync("suscribeEventsScores()").Result; if (res.Result == null) break; } } return MarketStatus.Open; }
public List<Scores> GetScoreses(string eventId) { if (string.IsNullOrWhiteSpace(eventId)) { State = ThreadState.Unstarted; return default(List<Scores>); } State = ThreadState.Running; var scores = new List<Scores>(); isLoad = false; LoadPageSkyBet(scoreUrl + eventId); var score = getScore(); if (score.Result.ToString().Contains("null")) { score = getScore(); } scores = JsonConvert.DeserializeObject<List<Scores>>(score.Result.ToString()); isLoad = true; return scores; }
public MarketStatus SuscribeToScores(string comp) { prevComp = comp; var mathes = GetAlllMathes(); var mathesMarket = new Mathes(); var players = comp.Split('|'); mathesMarket.player1Name = players[0]; mathesMarket.player2Name = players[1]; var index = -1; if (mathes == null) { State = ThreadState.Stopped; return(MarketStatus.Closed); } foreach (var mathese in mathes) { if ((mathesMarket.player2Name.Equals(mathese.player2Name)) && (mathesMarket.player1Name.Equals(mathese.player1Name))) { index = mathese.indexToClick; break; } } var clickTennis = browser.EvaluateScriptAsync("clickToTennis()"); if (index == -1) { State = ThreadState.Stopped; return(MarketStatus.Closed); } CheckLoaded(); var result = ClickToMarket(index); Thread.Sleep(100); if (result != true) { State = ThreadState.Stopped; return(MarketStatus.Closed); } var suscribe = browser.EvaluateScriptAsync("suscribeEventsScores()"); if (suscribe.Result.Result != null) { while (true) { var loadJs = browser.EvaluateScriptAsync(Properties.Resources.jsAllLoad).Result; var clickTennis1 = browser.EvaluateScriptAsync("clickToTennis()").Result; CheckLoaded(); var result1 = ClickToMarket(index); Thread.Sleep(100); var res = browser.EvaluateScriptAsync("suscribeEventsScores()").Result; if (res.Result == null) { break; } } } return(MarketStatus.Open); }