discord-havoc/disc_havoc.py

97 lines
2.4 KiB
Python
Raw Normal View History

2025-02-13 14:51:35 -05:00
#!/usr/bin/env python3.12
# pylint: disable=bare-except, invalid-name, import-outside-toplevel
import os
import logging
import importlib
import discord
import setproctitle
import hypercorn
import hypercorn.asyncio
from dotenv import load_dotenv
from discord.ext import bridge, commands
from termcolor import colored
import api
logging.basicConfig(level=logging.INFO,
format='%(asctime)s %(message)s',
encoding='utf-8')
setproctitle.setproctitle('disc-havoc')
owners = [1172340700663255091, 992437729927376996]
BOT_CHANIDS = [
1145182936442875997,
1157535700774834236,
1156710277266542624,
1179232748385341530,
1219638300654964807,
1193632849740439665,
1202288798315335831,
1157529874936909934,
1272333206066167959,
1228740577068322839,
1228740577068322841,
1324142398741151784,
]
cogs_list = [
'misc',
'owner',
'sing',
'meme',
'ai',
'karma',
'lovehate',
'quote',
'radio',
]
bot_activity = discord.CustomActivity(name="I made cookies!")
load_dotenv()
intents = discord.Intents.all()
intents.message_content = True
bot = bridge.Bot(command_prefix=".", intents=intents,
owner_ids=owners, activity=bot_activity,
help_command=commands.MinimalHelpCommand())
@bot.event
async def on_ready():
"""Run on Bot Ready"""
logging.info("%s online!", bot.user)
def load_exts(initialRun=True):
"""Load Cogs/Extensions"""
load_method = bot.load_extension if initialRun else bot.reload_extension
for cog in cogs_list:
logging.info("Loading: %s", cog)
load_method(f'cogs.{cog}')
# asyncio.get_event_loop().create_task(bot.sync_commands())
importlib.reload(api)
from api import API # pylint: disable=unused-import
api_config = hypercorn.config.Config()
api_config.bind = "10.10.10.100:5992"
api_instance = api.API(bot)
try:
bot.fapi_task.cancel()
except:
pass
logging.info("Starting FAPI Task")
bot.fapi_task = bot.loop.create_task(hypercorn.asyncio.serve(api_instance.api_app, api_config))
def __init__():
logging.info(colored(f"Log level: {logging.getLevelName(logging.root.level)}", "red", attrs=['reverse']))
bot.BOT_CHANIDS = BOT_CHANIDS
bot.load_exts = load_exts
bot.load_exts()
bot.run(os.getenv('TOKEN'))
if __name__ == "__main__":
__init__()