python-telegram-bot:将参数传递给机器人

python-telegram-bot: Pass arguments to the bot

我看到一些机器人针对传递给机器人的参数采取行动。例如:

https://t.me/name_bot?start=something

这有助于发送邀请/推荐/促销代码等。

如何使用 python-telegram-bot 处理此问题并获取 start 值?

是否可以使用 start 以外的其他变量?

我以前从未测试过它,但您似乎在文档中将其作为 deep linking.

start=something 应该 运行 命令 /start something

Link 只能使用 startstartgroup


import os
import telegram
from telegram.ext import Updater, CommandHandler

# --- init ---

TOKEN = os.getenv('TELEGRAM_TOKEN')

updater = Updater(token=TOKEN, use_context=True)
dispatcher = updater.dispatcher

# --- commands ---

def start(update, context):
    print('text:', update.message.text)   # /start something
    print('args:', context.args)          # ['something']

dispatcher.add_handler(CommandHandler('start', start))

# --- start ---
    
updater.start_polling()
updater.idle()