This commit is contained in:
Andrey Gumirov
2022-04-29 20:11:54 +07:00
commit 911c1f3400
15 changed files with 351 additions and 0 deletions

View File

@ -0,0 +1,24 @@
import logging
from vkwave.bots import BaseMiddleware, BotEvent, MiddlewareResult, SimpleBotEvent
from db import DB, Candidate
class UserMiddleware(BaseMiddleware):
async def pre_process_event(self, event: BotEvent) -> MiddlewareResult:
db = DB()
botevent = SimpleBotEvent(event)
user_id = event.object.object.message.from_id
user = db.get_user(user_id)
if not user:
user_info = await botevent.get_user()
logging.debug(f"Got user info: {user_info}")
user = Candidate(id=user_id, sex=user_info.sex, name=user_info.first_name, last_name=user_info.last_name)
db.add_candidate(user)
logging.debug(f"Created new user: {user}")
print(f"Found user: {user}")
event["current_user"] = user
return MiddlewareResult(True)