【问题标题】:Implementing Handover protocol for facebook chatbot throws error为 facebook 聊天机器人实现切换协议会引发错误
【发布时间】:2019-03-13 10:30:24
【问题描述】:

我的主要接收者是我的对话流聊天机器人,我的第二个接收者是页面收件箱。我想通过实现从聊天机器人切换到收件箱:

request({
    uri: 'https://graph.facebook.com/v3.2/me/pass_thread_control',
    qs: {'access_token': 'pageAccessToken'},
    method: 'POST',
    json: {
        recipient: {
            id: 'userIdFromRequest'
        },
        target_app_id: 'pageInboxAppId'
    },
}, (error: any, response: any, body: any) => {
    console.log('BODY PASS THREAD CONTROL: ', body);
});

但我收到此错误:

(#10) 仅对主要和次要接收者可用


当我尝试获取辅助接收器时:

request({
    uri: 'https://graph.facebook.com/v3.2/me/secondary_receivers?fields=id,name&access_token=<page-access-token>',
    qs: {'access_token': <page-access-token>},
    method: 'GET',
}, (error: any, response: any, body: any) => {
    console.log('BODY SECONDARY RECEIVERS: ', body);
});

我会收到这个错误:

(#10) 只有 Main Receiver 可以调用此 API

但我的聊天机器人是主要接收者。我设置在page settings --> messenger platform

我发现这曾经是一个 facebook 错误,但现在应该已经修复了。

有人知道我做错了什么吗?

更新

网络挂钩请求中缺少app_roles 参数。可能和它有关吗?

另一个错误可能是用户 ID。我拿了 senderId。 receiverId 遇到错误代码为 1 的授权错误和消息“发生未知错误”。我不确定哪个是正确的。

更新 2

receiverId 似乎是正确的。第二个请求适用于它。但仍然不是第一个:500 internal server error...

【问题讨论】:

  • “我发现这曾经是一个 facebook 的错误,但现在应该已经修复了。” - 如果你发现这个错误的影响可能仍然存在在那之前你的设置?在这种情况下,我会尝试从页面中删除订阅,然后先重新添加。
  • 它在 2018 年初修复,我的设置是 2 天前。因此,这应该不是问题。感谢您的想法:)

标签: facebook facebook-graph-api


【解决方案1】:

突然间,它现在可以工作了。也许他们改变了后端的任何东西。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-08-14
    • 1970-01-01
    • 2019-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多