From 19a2bb82a1584226031afc68f4af20163e03d156 Mon Sep 17 00:00:00 2001 From: Eric Lay Date: Sun, 4 May 2025 20:02:32 -0500 Subject: [PATCH] Add config.py --- config.py | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 config.py diff --git a/config.py b/config.py new file mode 100644 index 0000000..16ee88d --- /dev/null +++ b/config.py @@ -0,0 +1,41 @@ +import yaml +import sys + +# Load configuration from config.yml +try: + with open("config.yml", "r") as file: + config = yaml.safe_load(file) +except FileNotFoundError: + print("[-] Configuration file not found.") + exit(1) +except yaml.YAMLError as e: + print(f"[-] Error parsing configuration file: {e}") + exit(1) +except Exception as e: + print(f"[-] Failed to load config.yml: {e}") + sys.exit(1) + +# Bot setup for IRC +SERVER = config["irc"]["server"] +PORT = config["irc"]["port"] +BOTNICK = config["irc"]["botnick"] + +# Channel setups +LOBBY_CHANNEL = config["irc"]["lobby_chat"] +MAIN_CHANNEL = config["irc"].get("main_chat", "#lobby") +ADMIN_CHANNEL = config["irc"].get("admin_chat", "#admins") +STAFF_CHANNELS = list(config["irc"].get("staff_chats", {}).values()) + +# API setup +API_ENDPOINT = config["api"]["endpoint"] +API_TOKEN = config["api"]["token"] +VERIFY_ENDPOINT = config["api"]["verify_endpoint"] + +# Flask settings +RECONNECT_DELAY = config["settings"].get("reconnect_delay", 8) +FLASK_PORT = config["settings"].get("flask_port", 5150) + +# Groups info +GROUP_NAMES = config.get("groups", {}) +STAFF_GROUP_IDS = set(config.get("staff_group_ids", [])) +ADMIN_GROUP_IDS = set(config.get("admin_group_ids", []))