Как получить имя пользователя в Telegram Bot? - PullRequest
0 голосов
/ 25 мая 2018

Я работаю в боте Telegram с обработчиком.где мне нужно получить имя пользователя или идентификатор пользователя, когда они используют команду.

МОЙ КОД

import telebot  #Telegram Bot API

bot = telebot.TeleBot(<BotToken>)

@bot.message_handler(commands=['info'])
def send_welcome(message):
        name = bot.get_me()
        print(name)
        bot.reply_to(message, "Welcome")

bot.polling()

Однако я получаю только информацию о боте.Я не могу получить информацию о пользователе, который использовал обработчик.

ВЫХОД

{'first_name': 'SPIOTSYSTEMS', 'id': 581614234, 'username': 'spiotsystems_bot', 'is_bot': True, 'last_name': None, 'language_code': None}

Как мне получить идентификатор пользователя или имя человека, который использует команду info?какой метод я буду использовать?пожалуйста, сообщите.

ПРИМЕЧАНИЕ:

Мой бот связан с группой Telegram.и я удалил Telegram TOKEN из моего MVC по соображениям безопасности.

1 Ответ

0 голосов
/ 25 мая 2018

Используемая вами функция getMe() предназначена для получения информации о боте.Но вам нужно имя человека, отправившего сообщение.

В API message есть атрибут from (from_user в python), который содержит Пользователь объект, который содержит данные о человеке, отправившем сообщение.

Так что вам больше повезет с чем-то вроде name = message.from_user.first_name.

...