public async Task GetCRName(CommandContext ctx) { var retVal = Komobase.GetCRTag(ctx.User.Username); if (string.IsNullOrEmpty(retVal)) { await ctx.RespondAsync("Nem találni a naplóban Clash Royale Tag-et! A setTag paranccsal beállithatod."); } else { await ctx.RespondAsync("A te Clash Royale tag-ed: " + retVal + "."); } }
private static async Task <PlayerResult> GetCRPlayerData(string userName, string tag) { if (string.IsNullOrEmpty(tag)) { tag = Komobase.GetCRTag(userName).ToUpper(); } if (string.IsNullOrEmpty(tag)) { return(new PlayerResult()); } string url = Program.config.crEndpoint + "players/" + URLEncodeCRTag(tag); try { HttpWebRequest request = HttpWebRequest.CreateHttp(url); request.Method = "GET"; request.Accept = "application/json"; request.Headers.Set(HttpRequestHeader.Authorization, "Bearer " + Program.config.crAPIKEY); var response = (HttpWebResponse)await request.GetResponseAsync(); var code = response.StatusCode; if (HttpStatusCode.OK == code) { Stream stream = response.GetResponseStream(); StreamReader reader = new StreamReader(stream); string resultString = await reader.ReadToEndAsync(); return(JsonConvert.DeserializeObject <PlayerResult>(resultString)); } } catch (Exception e) { throw new Exception(e.Message, e.InnerException); } return(new PlayerResult()); }