From 258f180009c7952c71ef7828abdbdeec27cfd2b8 Mon Sep 17 00:00:00 2001 From: Madpeterz <57852827+Madpeterz@users.noreply.github.com> Date: Tue, 18 May 2021 06:22:19 +0100 Subject: [PATCH] moves bot config for non docker to their own folder this will allow you to setup adverts/relays per bot vs sharing for all bots --- BetterSecondbot/Adverts/advertsService.cs | 5 ++-- .../BetterRelayService/BetterRelay.cs | 3 ++- BetterSecondbot/Cli.cs | 9 ++++++- BetterSecondbot/CliDocker.cs | 2 +- BetterSecondbot/CliHardware.cs | 24 ++++++++++--------- .../DiscordSupervisor/Discord-super.cs | 5 ++-- BetterSecondbot/DiscordSupervisor/Values.cs | 1 + 7 files changed, 31 insertions(+), 18 deletions(-) diff --git a/BetterSecondbot/Adverts/advertsService.cs b/BetterSecondbot/Adverts/advertsService.cs index 4ea18d2..bbb8171 100644 --- a/BetterSecondbot/Adverts/advertsService.cs +++ b/BetterSecondbot/Adverts/advertsService.cs @@ -44,12 +44,13 @@ namespace BetterSecondbot.Adverts demoAdvert.hour = "12"; demoAdvert.min = "30"; demoAdvert.notice = "false"; - demoAdvert.enabled = "true"; + demoAdvert.enabled = "false"; loadedAdverts.adverts = new advertConfig[] { demoAdvert }; string targetfile = "adverts.json"; SimpleIO io = new SimpleIO(); + io.ChangeRoot(controler.getFolderUsed()); if (SimpleIO.FileType(targetfile, "json") == false) { LogFormater.Status("Creating new adverts file", true); @@ -75,7 +76,7 @@ namespace BetterSecondbot.Adverts } catch { - io.makeOld(targetfile); + io.MarkOld(targetfile); io.WriteJsonAdverts(loadedAdverts, targetfile); } return; diff --git a/BetterSecondbot/BetterRelayService/BetterRelay.cs b/BetterSecondbot/BetterRelayService/BetterRelay.cs index 3bcd309..18c3f65 100644 --- a/BetterSecondbot/BetterRelayService/BetterRelay.cs +++ b/BetterSecondbot/BetterRelayService/BetterRelay.cs @@ -115,6 +115,7 @@ namespace BetterSecondBot.BetterRelayService }; string targetfile = "customrelays.json"; SimpleIO io = new SimpleIO(); + io.ChangeRoot(controler.getFolderUsed()); if (SimpleIO.FileType(targetfile, "json") == false) { io.WriteJsonRelays(LoadedRelays, targetfile); @@ -138,7 +139,7 @@ namespace BetterSecondBot.BetterRelayService } catch { - io.makeOld(targetfile); + io.MarkOld(targetfile); io.WriteJsonRelays(LoadedRelays, targetfile); } return; diff --git a/BetterSecondbot/Cli.cs b/BetterSecondbot/Cli.cs index 172cd20..404106c 100644 --- a/BetterSecondbot/Cli.cs +++ b/BetterSecondbot/Cli.cs @@ -16,6 +16,7 @@ namespace BetterSecondBot { public bool Exited { get { return exitBot; } } protected bool exitBot = false; + protected string use_folder = ""; protected SecondBot Bot = null; protected BetterAtHome betterAtHomeService; protected BetterTracking betterTracking; @@ -27,6 +28,11 @@ namespace BetterSecondBot return Bot; } + public string getFolderUsed() + { + return use_folder; + } + protected void keep_alive() { while (Bot.KillMe == false) @@ -66,9 +72,10 @@ namespace BetterSecondBot betterTracking = new BetterTracking(this); datastorage = new Datastorage(this); } - public Cli(JsonConfig Config, bool as_docker, bool use_self_keep_alive) + public Cli(JsonConfig Config, bool as_docker, bool use_self_keep_alive, string loadingFromFolder) { exitBot = false; + use_folder = loadingFromFolder; LogFormater.Info("Starting cli"); if (helpers.botRequired(Config) == true) { diff --git a/BetterSecondbot/CliDocker.cs b/BetterSecondbot/CliDocker.cs index 122ba0c..d2d959e 100644 --- a/BetterSecondbot/CliDocker.cs +++ b/BetterSecondbot/CliDocker.cs @@ -18,7 +18,7 @@ namespace BetterSecondBot LogFormater.Status("-> Getting config from Docker"); JsonConfig Config = MakeJsonConfig.FromENV(); Config = MakeJsonConfig.Http_config_check(Config); - new Discord_super(Config,true); + new Discord_super(Config,true,""); } } } diff --git a/BetterSecondbot/CliHardware.cs b/BetterSecondbot/CliHardware.cs index 4b7b54f..39c6399 100644 --- a/BetterSecondbot/CliHardware.cs +++ b/BetterSecondbot/CliHardware.cs @@ -15,24 +15,26 @@ namespace BetterSecondBot { SimpleIO io = new SimpleIO(); JsonConfig Config = new JsonConfig(); - string json_file = ""; + string loadFolder = "debug"; + string json_file = "bot.json"; #if DEBUG - LogFormater.Status("Hardware/Debug version"); - json_file = "debug.json"; + LogFormater.Debug("!! RUNNING IN DEBUG !!"); + #else - LogFormater.Status("Hardware/Live version"); + LogFormater.Status("Hardware config"); if(args.Length == 1) { - json_file = ""+args[0]+".json"; + loadFolder = args[0]; } else { - json_file = "mybot.json"; - LogFormater.Warn("Using: mybot.json as the config"); + loadFolder = "default"; + io.ChangeRoot("default"); + LogFormater.Warn("Using: using default folder"); } - #endif - if (SimpleIO.dir_exists("wiki") == false) + io.ChangeRoot(loadFolder); + if (SimpleIO.DirExists("wiki") == false) { LogFormater.Info("Basic Wiki [Creating]"); new DebugModeCreateWiki(AssemblyInfo.GetGitHash(), io); @@ -55,7 +57,7 @@ namespace BetterSecondBot catch (Exception e) { LogFormater.Warn("Unable to read config file\n moving config to " + json_file + ".old and creating a empty config\nError was: " + e.Message + ""); - io.makeOld(json_file); + io.MarkOld(json_file); Config = new JsonConfig(); io.WriteJsonConfig(MakeJsonConfig.GetDefault(), json_file); } @@ -79,7 +81,7 @@ namespace BetterSecondBot if(ok_to_try_start == true) { Config = MakeJsonConfig.Http_config_check(Config); - new Discord_super(Config, false); + new Discord_super(Config, false, loadFolder); } } } diff --git a/BetterSecondbot/DiscordSupervisor/Discord-super.cs b/BetterSecondbot/DiscordSupervisor/Discord-super.cs index a11d253..efce66d 100644 --- a/BetterSecondbot/DiscordSupervisor/Discord-super.cs +++ b/BetterSecondbot/DiscordSupervisor/Discord-super.cs @@ -50,10 +50,11 @@ namespace BetterSecondBot.DiscordSupervisor Thread.Sleep(1500); } } - public Discord_super(JsonConfig configfile, bool as_docker) + public Discord_super(JsonConfig configfile, bool as_docker, string readfromfolder) { myconfig = configfile; running_as_docker = as_docker; + use_folder = readfromfolder; startService(); } @@ -83,7 +84,7 @@ namespace BetterSecondBot.DiscordSupervisor controler.getBot().KillMePlease(); controler = null; } - controler = new Cli(myconfig, running_as_docker, self_keep_alive); + controler = new Cli(myconfig, running_as_docker, self_keep_alive, use_folder); controler.getBot().setDiscordClient(DiscordClient); relayService = new BetterRelay(controler, this, running_as_docker); attach_events(); diff --git a/BetterSecondbot/DiscordSupervisor/Values.cs b/BetterSecondbot/DiscordSupervisor/Values.cs index 4f86b7b..393d058 100644 --- a/BetterSecondbot/DiscordSupervisor/Values.cs +++ b/BetterSecondbot/DiscordSupervisor/Values.cs @@ -11,6 +11,7 @@ namespace BetterSecondBot.DiscordSupervisor protected bool exit_super = false; protected Cli controler; protected bool running_as_docker = false; + protected string use_folder = ""; protected bool discord_group_relay; protected DiscordSocketClient DiscordClient;