将我的 tg-bot 转移到新服务器后遇到问题。完全不知道为什么我会出错。好像我丢失了一些要安装的 python 包。在具有相同操作系统参数的旧服务器中,我对这个机器人没有任何问题。
抱歉,如果我的错误很幼稚。我尝试用谷歌搜索我的错误,但没有答案。
代码1:
def start(bot, update):
if update.message.from_user.username == AAA:
bot.sendMessage(chat_id=update.message.chat_id, text="Text_one")
else:
bot.sendMessage(chat_id=update.message.chat_id, text="Text_two")
...
updater = Updater(token=bot_token)
start_handler = CommandHandler('start', start)
updater.dispatcher.add_handler(start_handler)
错误1:
File "/usr/local/lib/python3.7/site-packages/telegram/ext/dispatcher.py", line 425, in process_update handler.handle_update(update, self, check, context)
File "/usr/local/lib/python3.7/site-packages/telegram/ext/handler.py", line 145, in handle_update return self.callback(update, context)
File "./bot.py", line 43, in start
if update.message.from_user.username == AAA:
AttributeError: 'CallbackContext' object has no attribute 'message'
代码2:
def rating(bot, update):
bot.send_sticker(chat_id,'some_sticker_id')
...
rating_handler = CommandHandler('rating', rating)
updater.dispatcher.add_handler(rating_handler)
错误2:
File "/usr/local/lib/python3.7/site-packages/telegram/ext/dispatcher.py", line 425, in process_update handler.handle_update(update, self, check, context)
File "/usr/local/lib/python3.7/site-packages/telegram/ext/handler.py", line 145, in handle_update return self.callback(update, context)
File "./bot.py", line 108, in rating
bot.send_sticker(chat_id, 'some_sticker_id')
AttributeError: 'Update' object has no attribute 'send_sticker'
处理程序签名不正确:
def start(update, context):
context.bot.sendMessage(chat_id=update.message.chat_id, 'Text One')
updater.dispatcher.add_handler(CommandHandler('start', start))
我在将服务转移给人工服务员的功能上遇到一些困难。
我这样传递函数:
bot.forward_message(chat_id=chat_id_cliente, from_chat_id=chat_id, message_id=message['message']['message_id'])
日志:
错误:root:传输服务时出错:“TelegramBot”对象没有属性“forward_message”
请问您能帮忙吗?