Init project
This commit is contained in:
29
birthday_pool_bot/telegram_bot/base.py
Normal file
29
birthday_pool_bot/telegram_bot/base.py
Normal file
@@ -0,0 +1,29 @@
|
||||
import aiogram
|
||||
import facet
|
||||
from aiogram.fsm.storage.memory import MemoryStorage
|
||||
|
||||
from birthday_pool_bot.repositories import RepositoriesContainer
|
||||
from .ui import setup_dispatcher
|
||||
|
||||
|
||||
class BaseTelegramBotService(facet.AsyncioServiceMixin):
|
||||
def __init__(
|
||||
self,
|
||||
settings: TelegramBotSettings,
|
||||
repositories_container: RepositoriesContainer,
|
||||
):
|
||||
self._settings = settings
|
||||
self._repositories_container = repositories_container
|
||||
self._dispatcher = aiogram.Dispatcher(storage=MemoryStorage())
|
||||
self._bot = aiogram.Bot(token=settings.token)
|
||||
|
||||
setup_dispatcher(
|
||||
dispatcher=self._dispatcher,
|
||||
repositories_container=self._repositories_container,
|
||||
)
|
||||
|
||||
async def start(self):
|
||||
self.add_task(self.listen_events())
|
||||
|
||||
async def listen_events(self):
|
||||
raise NotImplementedError
|
||||
Reference in New Issue
Block a user