Подскажите, как в беседе в вк заставить бота звать пользователя по имени? Обращаться к отдельному пользователю?
Хочу, чтобы бот в ответ на "Привет" отвечал "Привет, имя пользователя". Пока код имеет такой вид, но в присутствии переменной name отказывается работать. Что делать? В чём ошибка?
#Функции для ответа в беседу бота:
def sender(id, text):
vk_session.method('messages.send', {'chat_id': id, 'message': text, 'random_id': 0})
#Функции для получения данных пользователя:
def get_name(from_id):
user_info = vk.users.get(users_ids = from_id)[0]
first_name = user_info.get('first_name')
return first_name
for event in longpoll.listen():
if event.type == VkBotEventType.MESSAGE_NEW and event.message.get('text')!='':
msg = event.object.message['text'].lower()
get_id = event.message.get('from_id')
if event.from_chat:
id = event.chat_id
if msg in ['привет', 'привет)', 'привет!']:
name = get_name(get_id)
sender(id, 'Приветик!' + name)