未定义全局名称聊天室id

2024-06-11 21:13:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在用户单击内联按钮后发送消息。它告诉我聊天室id无效。当我把它拿出来时,它告诉我必须把它包括进去

其他每一个按钮都可以正常工作,我在终端接收到回调

def on_callback_query(msg):
    query_id, from_id, query_data = telepot.glance(msg, flavor='callback_query')
    print('Callback Query:', query_id, from_id, query_data)
    
    if query_data == 'a':
        bot.sendMessage(chat_id, 'dsuhsdd')
        

Tags: 用户fromid终端消息dataondef
2条回答

很好,我明白问题所在了, 首先获取授权令牌>&燃气轮机https://telepot.readthedocs.io/en/latest/#get-a-token

接下来,添加此项以获取聊天室id

content_type, chat_type, chat_id = telepot.glance(msg)

您使用的是查询数据作为对聊天id的引用

您不需要将您的生活复杂化为全局作用域,因为在on_callback_query函数中,您glanced查询,因此检索了3个变量:

query_id, from_id, query_data = telepot.glance(msg)

因此,您只需要使用表示发送查询的from_idchat_id,因此:

def on_callback_query(msg):
    query_id, from_id, query_data = telepot.glance(msg, flavor='callback_query')
    print('Callback Query:', query_id, from_id, query_data)
    
    if query_data == 'a':
        bot.sendMessage(from_id, 'dsuhsdd')

浏览邮件时,您会看到:

content_type, chat_type, chat_id = telepot.glance(msg)
#type of mesg, type of chat, chat identifier

但当您浏览回调查询时:

query_id, from_id, query_data = telepot.glance(msg)
#query id, chat_id, txt data related to the query 

相关问题 更多 >