帮我弄清楚错误是什么。我重新设计了机器人以通过 webhook 工作 我将收到电报 POST /webhook/ 200 OK 的回复,但是当我按下 /start 时机器人停止响应命令,机器人保持沉默。告诉我哪里出错了?提前致谢
我在 django 上为 8050 端口启动一切
from telegram import *
from telegram.ext import *
from django.http import HttpResponse
from django.views.decorators.csrf import csrf_exempt
from decouple import config
import json
TOKEN = config('TELEGRAM_TOKEN')
bot = Bot(token=TOKEN)
updater = Updater(token=TOKEN)
dp = updater.dispatcher
@csrf_exempt
def webhook(request):
print('this is webhook')
if request.method == 'POST':
update = Update.de_json(json.loads(request.body), bot)
dp.process_update(update)
return HttpResponse('ok')
def start(update: Update, context: CallbackContext) -> None:
print('this is start')
update.message.reply_text('Hello World!')
def echo(update: Update, context: CallbackContext) -> None:
print('this is echo')
update.message.reply_text(update.message.text)
if __name__ == '__main__':
print('this is main')
dp.add_handler(CommandHandler('start', start))
dp.add_handler(MessageHandler(Filters.text, echo))
updater.start_webhook(
listen="0.0.0.0",
port=8050,
)
updater.idle()
dp.add_handler(CommandHandler('开始', 开始))
dp.add_handler(MessageHandler(Filters.text, echo))
if name == 'main': 打印('这是主要的')
updater.start_webhook(
listen="0.0.0.0",
port=8443,
)
updater.idle()
我只是从上面的 main 移动命令,一切正常