public static string TryToGetUserName(string steamId) {
var requestUri = string.Format(RequestPlayerSummariesUri, steamId, InternalUtils.GetSteamApiCode());
try {
var httpRequest = WebRequest.Create(requestUri);
httpRequest.Method = "GET";
using (var response = (HttpWebResponse)httpRequest.GetResponse()) {
if (response.StatusCode != HttpStatusCode.OK) return null;
var result = response.GetResponseStream()?.ReadAsStringAndDispose();
if (result == null) return null;
var parsed = JObject.Parse(result);
return (string)(((JArray)((JObject)parsed["response"])["players"]).FirstOrDefault() as JObject)?["personaname"];
}
} catch (WebException e) {
Logging.Warning($"TryToGetUserName(): {requestUri}, {e.Message}");
return null;
} catch (Exception e) {
Logging.Warning($"TryToGetUserName(): {requestUri}\n{e}");
return null;
}
}
}