public CurrentGameData GetCurrentGameData(ApiRegion region, long summonerId) { string currentGameDataUrl = string.Format("observer-mode/rest/consumer/getSpectatorGameInfo/{0}/{1}", regionCodesAlt[region], summonerId); var data = api.GetData(region, currentGameDataUrl); if (data == null) { return(null); } var participants = data["participants"]; return(new CurrentGameData { TeamMembers = participants .Children() .Select(t => new TeamMember { SummonerId = t["summonerId"].Value <long>(), SummonerName = t["summonerName"].Value <string>(), ChampionId = t["championId"].Value <long>(), IsBlueTeam = t["teamId"].Value <long>() == 100 }).ToList() }); }
public JObject GetData(ApiRegion region, string urlPattern) { var requestUrl = GetRequestUrl(region, urlPattern); var request = WebRequest.Create(requestUrl + "?api_key=" + apiKey); try { var response = (HttpWebResponse)(request.GetResponse()); var responseStream = response.GetResponseStream(); using (var reader = new StreamReader(responseStream, Encoding.UTF8)) { if (response.StatusCode == HttpStatusCode.OK) { return(JObject.Parse(reader.ReadToEnd())); } return(JObject.Parse(response.StatusCode.ToString())); } } catch (Exception e) { Console.WriteLine(e.Message); return(null); } }
public RecentGameData GetRecentGameData(ApiRegion region, long summonerId) { string recentGameDataUrl = string.Format("/api/lol/{0}/v1.3/game/by-summoner/{1}/recent", regionCodes[region], summonerId); var data = api.GetData(region, recentGameDataUrl); if (data == null) { return(null); } return(new RecentGameData { }); }
private string GetRequestUrl(ApiRegion region, string requestParams) { string baseurl = null; switch (region) { case ApiRegion.NA: baseurl = "https://na.api.pvp.net/"; break; case ApiRegion.EUW: baseurl = "https://euw.api.pvp.net/"; break; default: baseurl = null; break; } return(baseurl + requestParams); }
public SummonerData GetSummonerByName(ApiRegion region, string name) { string summonerByNameUrl = string.Format("api/lol/{0}/v1.4/summoner/by-name/{1}", regionCodes[region], name); var fetch = api.GetData(region, summonerByNameUrl); if (fetch == null) { return(null); } var data = fetch[name.Replace(" ", "").ToLower()]; return(new SummonerData { Id = data["id"].Value <long>(), Name = data["name"].Value <string>(), ProfileIconId = data["profileIconId"].Value <int>(), RevisionDate = data["revisionDate"].Value <long>(), Level = data["summonerLevel"].Value <int>() }); }
public string GetRegionString() { return(ApiRegion.GetCode()); }