如何从特定消息的回复中获取信息 - Telegram Bot
How to get info from reply on specific message - Telegram Bot
假设我有这个命令处理程序:
@bot.message_handler(commands=['setalarm'])
def setalarmcmd(message):
alarmMessage = "Let's start with setting up alarm.\n\n" \
"First of all, provide the pair you want to observe."
bot.send_message(message.chat.id, alarmMessage)
我想在用户单击 /setalarm
命令并回复此消息时设置一些操作。
实际上,我知道该怎么做,但我已经对提供的文本进行了处理:
@bot.message_handler(content_types=['text'])
def getpairfuncmessage(message):
userMessage = message.text.strip().upper()
pair = getPairApi(userMessage)
if not pair:
return bot.send_message(message.chat.id, "Nah, not that, try something else.")
pairResult = printPairResult(pair)
bot.send_message(message.chat.id, pairResult, parse_mode='html')
这就是问题所在。通过提供消息,用户触发此操作,但我想在 /setalarm
命令之后设置另一个。这可能吗?
以下是您可以执行此操作的方法:
@bot.message_handler(commands=['setalarm'])
def setalarmcmd(message):
alarmMessage = "Let's start with setting up alarm.\n\n" \
"First of all, provide the pair you want to observe."
msg = bot.send_message(message.chat.id, alarmMessage)
bot.register_next_step_handler(msg, setalarmcryptopair)
def setalarmcryptopair(pair):
print(pair.text)
使用 send_message
和 register_next_step_handler
转到下一个功能。
假设我有这个命令处理程序:
@bot.message_handler(commands=['setalarm'])
def setalarmcmd(message):
alarmMessage = "Let's start with setting up alarm.\n\n" \
"First of all, provide the pair you want to observe."
bot.send_message(message.chat.id, alarmMessage)
我想在用户单击 /setalarm
命令并回复此消息时设置一些操作。
实际上,我知道该怎么做,但我已经对提供的文本进行了处理:
@bot.message_handler(content_types=['text'])
def getpairfuncmessage(message):
userMessage = message.text.strip().upper()
pair = getPairApi(userMessage)
if not pair:
return bot.send_message(message.chat.id, "Nah, not that, try something else.")
pairResult = printPairResult(pair)
bot.send_message(message.chat.id, pairResult, parse_mode='html')
这就是问题所在。通过提供消息,用户触发此操作,但我想在 /setalarm
命令之后设置另一个。这可能吗?
以下是您可以执行此操作的方法:
@bot.message_handler(commands=['setalarm'])
def setalarmcmd(message):
alarmMessage = "Let's start with setting up alarm.\n\n" \
"First of all, provide the pair you want to observe."
msg = bot.send_message(message.chat.id, alarmMessage)
bot.register_next_step_handler(msg, setalarmcryptopair)
def setalarmcryptopair(pair):
print(pair.text)
使用 send_message
和 register_next_step_handler
转到下一个功能。