From 32ab780b461c1c2b5e3e34c35b5902ed7006b95e Mon Sep 17 00:00:00 2001 From: Parker Date: Sat, 18 May 2024 20:06:51 -0500 Subject: Create CordArr --- code/bot.py | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 code/bot.py (limited to 'code/bot.py') diff --git a/code/bot.py b/code/bot.py new file mode 100644 index 0000000..4b3d96d --- /dev/null +++ b/code/bot.py @@ -0,0 +1,51 @@ +import discord +from discord.ext import commands +from discord.ext import tasks +import datetime +import sqlite3 +import os + +from validate_config import create_config +from global_variables import LOG, BOT_TOKEN + + +class MyBot(commands.Bot): + def __init__(self): + super().__init__( + command_prefix="#", + intents=discord.Intents.default(), + ) + + async def setup_hook(self): + create_config() + delete_old_temp_accounts.start() + for ext in os.listdir("./code/cogs"): + if ext.endswith(".py"): + await self.load_extension(f"cogs.{ext[:-3]}") + + +bot = MyBot() +bot.remove_command("help") + + +@bot.event +async def on_ready(): + LOG.info(f"{bot.user} has connected to Discord.") + + +@tasks.loop(seconds=60) +async def delete_old_temp_accounts(): + # Delete all of the temporary Jellyfin accounts that have passed + # their expiration time + db = sqlite3.connect("cordarr.db") + cursor = db.cursor() + cursor.execute( + "DELETE FROM jellyfin_accounts WHERE deletion_time < ?", + (datetime.datetime.now(),), + ) + db.commit() + db.close() + + +if __name__ == "__main__": + bot.run(BOT_TOKEN) -- cgit v1.2.3-70-g09d2