ErrorNoCord/events.py

53 lines
1.2 KiB
Python

import asyncio
import threading
import commands
import core
import tasks
from state import client
async def on_ready():
threading.Thread(
name="cleanup",
target=asyncio.run_coroutine_threadsafe,
args=(
tasks.cleanup(),
client.loop,
),
).start()
async def on_message(message):
await core.on_message(message)
async def on_message_edit(before, after):
if before.content == after.content:
return
await core.on_message(after, edited=True)
async def on_message_delete(message):
commands.voice.delete_queued([message])
async def on_bulk_message_delete(messages):
commands.voice.delete_queued(messages)
async def on_voice_state_update(member, before, after):
await core.on_voice_state_update(member, before, after)
for k, v in client.get_listeners().items():
for f in v:
client.remove_listener(f, k)
client.add_listener(on_bulk_message_delete, "on_bulk_message_delete")
client.add_listener(on_message, "on_message")
client.add_listener(on_message_delete, "on_message_delete")
client.add_listener(on_message_edit, "on_message_edit")
client.add_listener(on_voice_state_update, "on_voice_state_update")