Added on_message handling
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
from async_timeout import asyncio
|
||||
import discord
|
||||
from discord.ext import commands
|
||||
|
||||
@@ -7,7 +8,8 @@ from cpl_core.logging import LoggerABC
|
||||
from cpl_query.extension import List
|
||||
from modules_core.abc.module_abc import ModuleABC
|
||||
from modules_core.abc.module_service_abc import ModuleServiceABC
|
||||
from modules_core.events_enum import EventsEnum
|
||||
from modules_core.abc.on_message_abc import OnMessageABC
|
||||
from modules_core.abc.on_ready_abc import OnReadyABC
|
||||
|
||||
|
||||
class ModuleService(ModuleServiceABC):
|
||||
@@ -21,10 +23,21 @@ class ModuleService(ModuleServiceABC):
|
||||
|
||||
async def on_ready(self):
|
||||
self._logger.debug(__name__, 'Start on_ready modules')
|
||||
modules = self._modules.where(lambda m: hasattr(m, EventsEnum.on_ready.value) and callable(m.on_ready))
|
||||
modules = self._modules.where(lambda m: issubclass(m, OnReadyABC))
|
||||
for module_type in modules:
|
||||
module = self._services.get_service(module_type)
|
||||
module_type = module_type
|
||||
module: OnReadyABC = self._services.get_service(module_type)
|
||||
await module.on_ready()
|
||||
|
||||
self._logger.debug(__name__, 'Stopped on_ready modules')
|
||||
|
||||
async def on_message(self, message: discord.Message):
|
||||
pass
|
||||
self._logger.debug(__name__, 'Start on_message modules')
|
||||
modules = self._modules.where(lambda m: issubclass(m, OnMessageABC))
|
||||
|
||||
for module_type in modules:
|
||||
module_type = module_type
|
||||
module: OnMessageABC = self._services.get_service(module_type)
|
||||
await module.on_message(message)
|
||||
|
||||
self._logger.debug(__name__, f'Stopped on_message modules')
|
Reference in New Issue
Block a user