Здравствуйте
Не могу разобраться, как отследить сообщение от пользователя в вк боте на Python.
Пример:
Есть код:
from vk_api.longpoll import VkLongPoll, VkEventType
from vk_api.keyboard import VkKeyboard, VkKeyboardColor
from vk_api.utils import get_random_id
import vk_api
from datetime import datetime
token = "5f4f65......9cabb12"
vk = vk_api.VkApi(token=token)
session_api = vk.get_api()
longpoll = VkLongPoll(vk)
def create_keyboard(response):
keyboard = VkKeyboard(one_time=True)
if response.lower() == 'начать':
keyboard.add_button('Девушку', color=VkKeyboardColor.DEFAULT)
keyboard.add_button('Парня', color=VkKeyboardColor.DEFAULT)
keyboard.add_button('Всё равно', color=VkKeyboardColor.DEFAULT)
keyboard = keyboard.get_keyboard()
return keyboard
while True:
for event in longpoll.listen():
if event.type == VkEventType.MESSAGE_NEW:
print('Сообщение пришло в: ' + str(datetime.strftime(datetime.now(), "%H:%M:%S")))
print('Текст сообщения: ' + str(event.text))
print('Id пользователя: ' + str(event.user_id))
response = event.text.lower()
keyboard = create_keyboard(response)
user_id = event.user_id
if event.from_user and not event.from_me:
if response == 'начать':
vk.method('messages.send',
{'user_id': event.user_id, 'message': 'Привет! \n'
'Я помогу тебе найти пару или просто друзей. \n'
'Можно я задам тебе пару вопросов?',
'random_id': get_random_id(),
'keyboard': keyboard})
elif response == 'девушку' or response == 'парня' or response == 'всё равно':
vk.method('messages.send',
{'user_id': event.user_id, 'message': 'Хорошо...\n'
'А как тебя зовут?', 'random_id': get_random_id()})
print('--------------------------------------------')
После выбора Кого найти, пользователю задают вопрос об его Имени.
Как отследить его введённое имя?
Буду очень благодарен за помощь :)
P.S Не обращайте сильного внимания на код, я только учись ;)