load balancer register test

This commit is contained in:
cxxpxr 2021-04-05 13:15:06 -04:00
parent dd885917db
commit e40940f1ee

View file

@ -62,6 +62,7 @@ namespace LightReflectiveMirror
else else
{ {
conf = JsonConvert.DeserializeObject<Config>(File.ReadAllText(CONFIG_PATH)); conf = JsonConvert.DeserializeObject<Config>(File.ReadAllText(CONFIG_PATH));
WriteLogMessage("Loading Assembly... ", ConsoleColor.White, true); WriteLogMessage("Loading Assembly... ", ConsoleColor.White, true);
try try
{ {
@ -189,6 +190,8 @@ namespace LightReflectiveMirror
Console.ReadKey(); Console.ReadKey();
Environment.Exit(0); Environment.Exit(0);
} }
await RegisterSelfToLoadBalancer();
} }
while (true) while (true)
@ -212,6 +215,33 @@ namespace LightReflectiveMirror
} }
} }
async Task<bool> RegisterSelfToLoadBalancer()
{
// replace hard coded value for config value later
var url = "http://www.localhost:7070/api/auth";
string externalip = "127.0.0.1";//new WebClient().DownloadString("https://ipv4.icanhazip.com/");
string port = conf.EndpointPort.ToString();
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(url);
myRequest.Headers.Add("Auth", "AuthKey");
myRequest.Headers.Add("Address", $"{externalip}:" + port + "/api/stats");
try
{
WebResponse myResponse = await myRequest.GetResponseAsync();
return true;
}
catch
{
// error adding or load balancer unavailable
WriteLogMessage("Error registering", ConsoleColor.Red);
return false;
}
}
void RunNATPunchLoop() void RunNATPunchLoop()
{ {
WriteLogMessage("OK\n", ConsoleColor.Green); WriteLogMessage("OK\n", ConsoleColor.Green);