Curl FB发布请求不适用于“ typing_on”操作,即使相同格式适用于“ mark_seen”操作

问题描述

在尝试使我的fb Messenger聊天机器人应用程序在响应之前显示出气泡时,尝试了几次失败之后,我决定在终端中使用curl对其进行测试以进行故障排除,然后继续编辑flask应用程序。当我执行documentation中指定的带有curl的sender_action帖子时,它不适用于“ typing_on”动作。没有错误消息,并且该帖子已被FB接受,但是在聊天窗口中没有键入气泡。但是,如果我将“ typing_on”替换为“ mark_seen”之类的其他动作,则会在聊天窗口中看到结果。该文档说,这两个操作都可以通过相同的格式请求发布,只是看起来似乎失败,并带有“ typing_on”。为什么会这样呢?这是我所拥有的,无法在聊天窗口中显示结果:

curl -X POST -H "Content-Type: application/json" -d '{
  "recipient":{
    "id":"3229214920475731"
  },"sender_action":"typing_on"
}' "https://graph.facebook.com/v2.6/me/messages?access_token=EAAEOzUpUGxMBANlgwQZA4VMYkBIaFT2EW9KjlINZCJn4ZB9Nq5YsiTUHZAf0gvIOZAGJoPvAZBadZCM8R8IBqxupPhuONnDZAEaC0558mvZmY6BLkn9LB7637hqQC5ukzEbZC2q5gJdRZBnM21FqMwZDZD"

但是,这成功显示了标记为已读的消息:

curl -X POST -H "Content-Type: application/json" -d '{
  "recipient":{
    "id":"3329214920475721"
  },"sender_action":"mark_seen"
}' "https://graph.facebook.com/v2.6/me/messages?access_token=EAAEOzUpUGxMBANlgwQZA4VMYkBIaFT2EW9KjlINZCJn4ZB9Nq5YsiTUHZAf0gvIOZAGJoPvAZBadZCM8R8IBqxupPhuONnDZAEaC0558mvZmY6BLkn9LB7637hqQC5ukzEbZC2q5gJdRZBnM21FqMwZDZD"

为什么会这样?

我也通过pymessenger尝试过。这将起作用:

bot.send_action(recipient_id,'mark_seen')

但这不会:

bot.send_action(recipient_id,'typing_on')

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)