Messenger API 交接传递线程控制返回错误 10 (2018171)

Messenger API Handover Pass Thread Control returning error 10 (2018171)

我们已经设置了一个机器人,它具有一个持久菜单,用户可以使用切换协议将讨论切换到人类。

此按钮向 DialogFlow 发送有效负载,然后 DialogFlow 调用我们的网络挂钩 post 到 Messenger API 以下函数:

request({
    url: 'https://graph.facebook.com/v2.6/me/pass_thread_control',
    qs: { access_token: config.page_token },
    method: 'POST',
    json:{
      "recipient": {"id": userID},
      "target_app_id": 263902037430900
    }
  }, (error, res, body) => {
    if (error) {
      console.error('Error sending messages: ', error)
    } else if (res.body.error) {
      console.error('Error: ', res.body.error)
    }
  })

但是调用returns出现如下错误:

{  
  message:'(#10) Only available to Primary and Secondary Receivers',
  type:'OAuthException',
  code:10,
  error_subcode:2018171,
  fbtrace_id:'HUrgr45FGGC'
}

我们无法找出此错误(未记录)。

在页面设置下,机器人被正确设置为主要接收者,收件箱为次要接收者。

还有其他人运行参与其中吗?

对于那些通过 Google 搜索到达这里的人:原来是 Facebook API 上的错误,现在已修复。

➡️https://developers.facebook.com/bugs/820116014857560