Доброго дня! При создании бота столкнулся с такой проблемой, что при отправке сообщений с двух разных аккаунтов ВК, бот работает последовательно, то есть всё равно, что если бы я писал боту с одного аккаунта. Допустим, если Пользователь 1 в меню дошёл до выбора проектов(в коде project1 и тд), а Пользователь 2 находится в меню выбора игры(в коде game1 и тд) и Пользователь 2 выбирает допустим game1, то он переходит сразу в меню выбора серверов(в коде server1 и тд), хотя по логике вещей должен был перейти в меню выбора проектов.
Как можно решить эту проблему?
Использую библиотеки: asyncio и aiovk
async def main():
session = TokenSession(access_token=TOKEN())
api = API(session)
longpoll = BotsLongPoll(session, mode=8, group_id=VK_GROUP_ID())
while True:
try:
data = await longpoll.wait()
updates = data['updates']
for event in updates:
if event['type'] == 'message_new':
payload = event['object']['message']['payload']
responce = event['object']['message']['text'].lower
dict_event = event['object']['message']
if payload == '{"button":"1"}':
await api('messages.send',
peer_id=event['object']['message']['peer_id'],
message="game 1\n",
random_id=0,
keyboard=keyboardReturnMenu)
elif (responce == '1') and (payload_event == '{"button":"1"}'): \
stage3_menu1 = 1
await api('messages.send',
peer_id=event['object']['message']['peer_id'],
message="project 1\n",
random_id=0,
keyboard=keyboardReturnMenu)
elif (stage3_menu1 == 1) and (responce == '1'):
stage3_menu1 = 0
await api('messages.send',
peer_id=event['object']['message']['peer_id'],
message="server 1\nserver 2\nserver 3\n",
random_id=0,
keyboard=keyboardReturnMenu)
if dict_event.get('payload') != None:
payload_event = event['object']['message']['payload']
else:
payload_event = None
except Exception as E:
time.sleep(1)
await session.close()