def __init__(self, **kwargs): super().__init__(**kwargs) logging.basicConfig(filename="messages.log", filemode='w', level=logging.INFO) self.scheduler = tools.jobs.JobScheduler(self) self.scheduler.start() self.commands = {} self._events = {} self.macros = { "error_not_privileged": "Error! {user} is not privileged to run {command}." } self.default_config = { 'name': "Imp", 'context_trigger': "!", 'remove_trigger': '#', 'author': "Zeta", 'version': "Impoid v0.4.0", 'privileged': [ 94129005791281152 #Zeta ] } self.ignored = DynamicConfigList(file="ignored.json", default_config=[]) self.ignored.load() self.config = DynamicConfigDict(file="config.json", default_config=self.default_config) self.config.load() self.config.bind_to(self.internal_on_config_change) for event in self.events: self.events[event] = self.internal_event_handler(event) self._events[event] = [] self._events['on_message'].append(self.internal_on_message) self._events['on_ready'].append(self.internal_on_ready) self._events['on_error'].append(self.internal_on_error) self._events['on_disconnect'].append(self.internal_on_disconnect)
import tools import tools.jobs from updater import GitUpdater __author__ = 'Zeta' import discord import traceback internal_version = "Gitless Build" internal_config = DynamicConfigDict(file="internal_config.json", default_config={ "discord": { "email": "change_me", "password": "******" }, "updater": { "fallbacks": True, "repo": "origin/master", "update_interval": 60 } }) if os.path.exists("internal_config.json"): internal_config.load() else: internal_config.save() class Imp(discord.Client): class Command(object): def __init__(self, **kwargs):