问题描述
我正在构建一个通过FB Messenger部署的聊天机器人。根据FB文档,您必须将this个发布请求发送到Messenger平台。我使用json.dumps发送有效负载的字符串表示形式。但是,我从来没有看到键入气泡,而只是从机器人那里得到了实际的响应消息。这是Flask应用程序中的相关代码。
foverlaps
解决方法
您可以使用Pymessenger包装器。只需导入它,创建一个实例,然后传递您的FB_TOKEN并包装您的动作即可。请记住,在发送操作时,Facebook doc声明您仅必须传递receive_id和action并调用与响应分开的方法。 在您的方法中将操作设置为“ typing_on”。
注意:您的方法不正确,因为您混用了sender_id和receiver_id
from pymessenger import Bot
bot = Bot(<FB_ACCESS_TOKEN>)
def send_typing_bubble(sender_id,recipient_id,action,response_sent_text):
bot.send_action(sender_id,action)
bot.send_text_message(sender_id,response_sent_text)
创建方法后,您只需在Webhook的receive_message()方法内调用send_typing_bubble()
if messaging_event.get('message'):
#your code here
send_typing_bubble(sender_id,response_sent_text)