Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook新的嵌套持久性菜单不工作_Facebook_Facebook Graph Api_Facebook Messenger Bot - Fatal编程技术网

Facebook新的嵌套持久性菜单不工作

Facebook新的嵌套持久性菜单不工作,facebook,facebook-graph-api,facebook-messenger-bot,Facebook,Facebook Graph Api,Facebook Messenger Bot,我想为Facebook机器人使用嵌套菜单,但设置持久菜单的新API不起作用 即使我删除了嵌套菜单,Facebook也会返回“success”,但Facebook页面不会显示该菜单 如果我在thread_设置上使用旧的API,那么它可以工作。但是使用新的API,我根本没有菜单。新API适用于“入门”按钮,但不适用于菜单 我什么都试过了,不知道为什么不行。它返回成功,但没有菜单。我也在设置“入门”按钮 curl -X POST -H "Content-Type: application/json"

我想为Facebook机器人使用嵌套菜单,但设置持久菜单的新API不起作用

即使我删除了嵌套菜单,Facebook也会返回“success”,但Facebook页面不会显示该菜单

如果我在thread_设置上使用旧的API,那么它可以工作。但是使用新的API,我根本没有菜单。新API适用于“入门”按钮,但不适用于菜单

我什么都试过了,不知道为什么不行。它返回成功,但没有菜单。我也在设置“入门”按钮

curl -X POST -H "Content-Type: application/json" -d '{
  "persistent_menu":[
    {
    "locale":"default",
    "composer_input_disabled":false,
    "call_to_actions":[
        {
          "type":"web_url",
          "title":"Test",
          "url":"https://facebook.com"
        }
      ]
    }
  ]
}' "https://graph.facebook.com/v2.6/me/messenger_profile?access_token={{token}}"

我已经试过了,效果很好。 签出代码

您可以在此处尝试bot:

我将不得不添加你作为测试人员,如果你想使用这个机器人,因为它不是公共的

机器人中嵌套菜单的屏幕截图:

它也适用于fb messenger应用程序

在上面的curl调用中,您没有在
call\u to\u actions


上面的例子取自

我已经试过了,而且很有效。 签出代码

您可以在此处尝试bot:

我将不得不添加你作为测试人员,如果你想使用这个机器人,因为它不是公共的

机器人中嵌套菜单的屏幕截图:

它也适用于fb messenger应用程序

在上面的curl调用中,您没有在
call\u to\u actions

上面的例子取自

我发现,与curl命令相比,curl命令给了我更多的成功

只需在“获取令牌”菜单中选择要发布到的页面。 设置为向我/信使发送个人资料, 将字段名称添加为“持久菜单”, 值作为json数组

它会告诉你你的帖子是否有问题

对于嵌套的json,您的json应该如下所示

[
  {
    "locale":"default",
    "composer_input_disabled":false,
    "call_to_actions":
    [

      {
        "title":"Menu",
        "type":"nested",
        "call_to_actions":
        [
          {
            "title":"Home",
            "type":"postback",
            "payload":"PHome"
          },
          {
            "title":"Back",
            "type":"postback",
            "payload":"PBack"
          }
        ]
      },
      {
        "title":"Other",
        "type":"nested",
        "call_to_actions":
        [
          {
            "type":"web_url",
            "title":"View Website",
            "url":"https://www.facebook.co.za",
            "webview_height_ratio":"full"
          }
        ]
      }
    ]
  },
]
我发现这个命令比curl命令给了我更多的成功

只需在“获取令牌”菜单中选择要发布到的页面。 设置为向我/信使发送个人资料, 将字段名称添加为“持久菜单”, 值作为json数组

它会告诉你你的帖子是否有问题

对于嵌套的json,您的json应该如下所示

[
  {
    "locale":"default",
    "composer_input_disabled":false,
    "call_to_actions":
    [

      {
        "title":"Menu",
        "type":"nested",
        "call_to_actions":
        [
          {
            "title":"Home",
            "type":"postback",
            "payload":"PHome"
          },
          {
            "title":"Back",
            "type":"postback",
            "payload":"PBack"
          }
        ]
      },
      {
        "title":"Other",
        "type":"nested",
        "call_to_actions":
        [
          {
            "type":"web_url",
            "title":"View Website",
            "url":"https://www.facebook.co.za",
            "webview_height_ratio":"full"
          }
        ]
      }
    ]
  },
]

Graph API Explorer也适用于我

我试图通过CURL删除持久菜单,结果弄得一团糟。(我喜欢终点站)。使用资源管理器很容易解决这个问题

只要记住:

图形API浏览器也适用于我

我试图通过CURL删除持久菜单,结果弄得一团糟。(我喜欢终点站)。使用资源管理器很容易解决这个问题

只要记住:

您可以使用这种格式

{ “区域设置”:“默认设置”, “作曲家输入禁用”:false, “呼叫到行动”:[ { “类型”:“回发”,
“title”:“您可以使用此格式

{ “区域设置”:“默认设置”, “作曲家输入禁用”:false, “呼叫到行动”:[ { “类型”:“回发”,

“标题”:这不仅仅是因为nested不起作用,新API根本不起作用,它根本不提供菜单。当旧API起作用时,不确定Facebook是否在缓存旧API中的内容,或者你需要设置一些内容以便使用新API,或者需要等待更长的时间才能让菜单与新API一起显示?你的机器人是否有一个包含旧API的菜单API优先,还是它是一个新的机器人?我使用了新的API,它工作得很好。我可以在调用返回成功后立即看到菜单。我可以立即看到菜单。@James它的新机器人。我以前没有任何菜单可能是现有菜单的问题。有人能够用新的API用旧菜单升级现有机器人吗?我这不仅仅是因为nested不起作用,新API根本不起作用,它根本不提供菜单。当旧API起作用时,不确定Facebook是否在缓存旧API中的内容,或者你需要设置一些内容以便使用新API,或者需要等待更长的时间,以使菜单与新API一起显示?你的机器人是否有带有旧API的菜单PI first,还是它是一个新的机器人?我使用了新的api,它工作得很好。我可以在调用返回成功后立即看到菜单。我可以立即看到菜单。@James它的新机器人。我以前没有任何菜单可能是现有菜单的问题。有人能够用新的api用旧菜单升级现有机器人吗?它是不仅仅是嵌套不起作用,新API根本不起作用,它根本不提供菜单。当旧API起作用时,不确定Facebook是否缓存了旧API中的内容,或者你需要设置一些内容以便使用新API,或者需要等待更长的时间,以便菜单与新API一起显示?我尝试创建了一个新页面,sam存在问题,新的菜单API根本不起作用,即使它们返回“成功”,旧API有效。仍在使用现有应用程序,但尚未尝试新应用程序。这不仅是因为nested不起作用,新API根本不起作用,它根本不提供菜单。旧API起作用时,不确定Facebook是否缓存了旧API中的内容,或者您需要设置一些内容以便使用新API,或者需要等待更长时间菜单显示新的API?我尝试创建一个新页面,同样的问题也存在,新的菜单API根本不工作,即使它们返回“成功”,旧的API也工作。仍然使用现有的应用程序,还没有尝试新的应用程序。我完全尝试了,并获得了“成功”从资源管理器的POST调用中,如果我使用旧的API me/thread_设置,它会立即工作,并且旧的API会给出响应,{“result”:“Successfully added structured menu CTAs”},其中新的API只会给出{“result”:“success”}你有“入门”按钮吗?你必须有一个按钮才能有一个持久的菜单。“入门”按钮的新API也不起作用,我在调用新的messenger\u配置文件API时在页面中什么都没有,但是在调用旧的thread\u settings API时获取按钮。@James为了测试“入门”按钮,你需要确保删除以前的所有对话。Ge