using OpenQA.Selenium; using OpenQA.Selenium.Edge; using Telegram.Bot; namespace LC_Bot { internal class Reboot { private readonly string _ip; private int _id; EdgeDriver driver; public Reboot(string ip) { _ip = ip; var options = new EdgeOptions(); //options.AddArgument("-headless"); var service = EdgeDriverService.CreateDefaultService(); service.HideCommandPromptWindow = true; driver = new EdgeDriver(options); driver.Manage().Window.Minimize(); } public bool Start() { using Db db = new Db(); var o = db.Cams.FirstOrDefault(c => c.Ip == _ip); _id = db.Errors.Where(c => c.Ip == _ip && c.Status == "off").First().MsgId; if (o != null) { int port = Convert.ToInt32(o.SwitchPort); driver.Navigate().GoToUrl($"http://{o.SwitchConnect}/doc/page/login.asp"); Thread.Sleep(500); try { var retext = Program.txt.Replace("‼ НЕИСПРАВНОСТЬ ‼\n", "🔄 ПЕРЕЗАГРУЗКА 🔄\n"); Program.botClient.EditMessageTextAsync(6882856105, _id, retext, parseMode: Telegram.Bot.Types.Enums.ParseMode.Html); var ch = driver.FindElement(By.Id("details-button")); if (ch != null) { driver.FindElement(By.Id("details-button")).Click(); driver.FindElement(By.Id("proceed-link")).Click(); Thread.Sleep(500); } driver.FindElement(By.Id("username")).SendKeys("admin"); driver.FindElement(By.Id("password")).SendKeys("4NUDZhJ7"); driver.FindElement(By.XPath("//button[@type='button']")).Click(); Thread.Sleep(500); driver.Navigate().GoToUrl($"https://{o.SwitchConnect}/doc/page/switchConfig.asp"); Thread.Sleep(1000); var ofnik = driver.FindElement(By.XPath($"//div[contains(@ng-click,'changeSwitch({port - 1}, 4, 4)')]")); ofnik.Click(); Thread.Sleep(1000); driver.FindElement(By.XPath("//button[contains(@class,'btn-save')]")).Click(); Thread.Sleep(1000); ofnik.Click(); Thread.Sleep(1000); driver.FindElement(By.XPath("//button[contains(@class,'btn-save')]")).Click(); Thread.Sleep(500); driver.Quit(); return true; } catch (Exception) { return false; } } else return false; } } }