Получи случайную криптовалюту за регистрацию!

Новый callback в интерфейсе модулей Начиная с версии FTG 2302 | Friendly-Telegram RU

Новый callback в интерфейсе модулей

Начиная с версии FTG 2302dd7d в интерфейс модулей добавлена возможность реагировать на unloadmod. Определив в классе модуля асинхронную функцию on_unload вы сможете останавливать ранее открытые асинхронные задачи, циклы, закрывать подключения, файлы, и т.д. Так же коллбек будет вызван в случае обновления модуля в рантайме.

Пример:

class OnUnloadDemoMod(loader.Module):
async def client_ready(self, client, db):
self._client = client
self._task = asyncio.create_task(self._infinite_loop()) # создание задачи

async def _infinite_loop(self): # Бесконечная асинхронная задача
while True:
await self._client.send_message("me", "hello")
await asyncio.sleep(10)

async def on_unload(self): # коллбек выгрузки модуля
self._task.cancel()