Improve server location fetch handling (#445)

This commit is contained in:
pizzaboxer 2023-07-25 18:08:37 +01:00
parent f02fba2ce1
commit 6652d43308
No known key found for this signature in database
GPG Key ID: 59D4A1DBAD0F2BA8

View File

@ -265,11 +265,21 @@
if (GeolcationCache.ContainsKey(ActivityMachineAddress)) if (GeolcationCache.ContainsKey(ActivityMachineAddress))
return GeolcationCache[ActivityMachineAddress]; return GeolcationCache[ActivityMachineAddress];
string location = ""; string location, locationCity, locationRegion, locationCountry = "";
string locationCity = await App.HttpClient.GetStringAsync($"https://ipinfo.io/{ActivityMachineAddress}/city"); try
string locationRegion = await App.HttpClient.GetStringAsync($"https://ipinfo.io/{ActivityMachineAddress}/region"); {
string locationCountry = await App.HttpClient.GetStringAsync($"https://ipinfo.io/{ActivityMachineAddress}/country"); locationCity = await App.HttpClient.GetStringAsync($"https://ipinfo.io/{ActivityMachineAddress}/city");
locationRegion = await App.HttpClient.GetStringAsync($"https://ipinfo.io/{ActivityMachineAddress}/region");
locationCountry = await App.HttpClient.GetStringAsync($"https://ipinfo.io/{ActivityMachineAddress}/country");
}
catch (Exception ex)
{
App.Logger.WriteLine($"[RobloxActivity::GetServerLocation] Failed to get server location for {ActivityMachineAddress}");
App.Logger.WriteLine($"[RobloxActivity::GetServerLocation] {ex}");
return "N/A (lookup failed)";
}
locationCity = locationCity.ReplaceLineEndings(""); locationCity = locationCity.ReplaceLineEndings("");
locationRegion = locationRegion.ReplaceLineEndings(""); locationRegion = locationRegion.ReplaceLineEndings("");