好吧,我正在使用电报机器人更新程序来处理发送给它的消息。但是,我希望它响应我提供的任何字符串,并在前面加上一个“#”。
尝试了AnyString方法,但是没有用。另外,尝试使用“ *”通配符。
from telegram.ext import Updater, CommandHandler
def hello(bot, update):
update.message.reply_text(
'Hey {}!'.format(update.message.from_user.first_name))
updater = Updater('770165564:AAEJm45dqDNkOnlso0YK6hQoCbXoCySiHcQ')
updater.dispatcher.add_handler(CommandHandler('*', hello))
updater.start_polling()
updater.idle()
当我发送诸如“ / anything”,“ / test”之类的消息时,机器人将以我描述的功能进行响应,并说“嘿{用户名}!”。
答案 0 :(得分:1)
您可以使用PrefixHandler(docs)
示例:
单个前缀和命令:
PrefixHandler('!', 'test', callback) will respond to '!test'.
多个前缀,单个命令:
PrefixHandler(['!', '#'], 'test', callback) will respond to '!test' and
'#test'.
多个前缀和命令:
PrefixHandler(['!', '#'], ['test', 'help`], callback) will respond to '!test',
'#test', '!help' and '#help'.