38 lines
1.1 KiB
Python
38 lines
1.1 KiB
Python
"""Main J.A.R.V.I.S. package."""
|
|
import logging
|
|
|
|
from dis_snek import Intents
|
|
from jarvis_core.db import connect
|
|
|
|
# from jarvis import logo # noqa: F401
|
|
from jarvis import utils
|
|
from jarvis.client import Jarvis
|
|
from jarvis.config import get_config
|
|
|
|
jconfig = get_config()
|
|
|
|
logger = logging.getLogger("discord")
|
|
logger.setLevel(logging.getLevelName(jconfig.log_level))
|
|
file_handler = logging.FileHandler(filename="jarvis.log", encoding="UTF-8", mode="w")
|
|
file_handler.setFormatter(logging.Formatter("[%(asctime)s][%(levelname)s][%(name)s] %(message)s"))
|
|
logger.addHandler(file_handler)
|
|
|
|
intents = Intents.DEFAULT | Intents.MESSAGES | Intents.GUILD_MEMBERS | Intents.GUILD_MESSAGES
|
|
restart_ctx = None
|
|
|
|
|
|
jarvis = Jarvis(intents=intents, default_prefix="!", sync_interactions=jconfig.sync)
|
|
|
|
__version__ = "2.0.0a1"
|
|
|
|
|
|
def run() -> None:
|
|
"""Run J.A.R.V.I.S."""
|
|
connect(**jconfig.mongo["connect"], testing=jconfig.mongo["database"] != "jarvis")
|
|
jconfig.get_db_config()
|
|
|
|
for extension in utils.get_extensions():
|
|
jarvis.load_extension(extension)
|
|
|
|
jarvis.max_messages = jconfig.max_messages
|
|
jarvis.start(jconfig.token)
|