要在远程机器人上使用 pyTelegramBotApi 设置 webhook,您需要遵循以下步骤:
pip install pyTelegramBotApi
TelegramBot
对象,并设置 webhook。以下是一个简单的示例:from telegram import Update
from telegram.ext import Updater, CommandHandler, CallbackContext
# 用您的 bot token 替换这里的 TOKEN
TOKEN = "YOUR_TELEGRAM_BOT_TOKEN"
# 处理 /start 命令的函数
def start(update: Update, context: CallbackContext):
update.message.reply_text("Hello! I am your bot.")
# 处理消息的函数
def echo(update: Update, context: CallbackContext):
update.message.reply_text(update.message.text)
# 主函数
def main():
updater = Updater(TOKEN, use_context=True)
# 注册命令处理器
updater.dispatcher.add_handler(CommandHandler("start", start))
updater.dispatcher.add_handler(MessageHandler(Filters.text & ~Filters.command, echo))
# 设置 webhook
updater.start_webhook(listen="0.0.0.0",
port=80,
url_path=TOKEN)
updater.bot.set_webhook(f"https://yourdomain.com/{TOKEN}")
# 保持脚本运行
updater.idle()
if __name__ == '__main__':
main()
请注意,您需要将 YOUR_TELEGRAM_BOT_TOKEN
替换为您的实际 bot token,并将 https://yourdomain.com/{TOKEN}
替换为您的服务器地址。
gunicorn
或 uWSGI
之类的工具来运行您的脚本。/setwebhook
命令,后面跟上您的 webhook URL。例如:/setwebhook https://yourdomain.com/YOUR_TELEGRAM_BOT_TOKEN
现在,您的远程机器人应该已经设置了 webhook,并可以接收来自 Telegram 服务器的请求。
领取专属 10元无门槛券
手把手带您无忧上云