Mat*_*nna 6 php webhooks facebook-messenger
我正在做一个facebook messenger机器人.启动后,它会调用WebHook.不幸的是,第一次启动后不会停止使用相同的参数抛出相同的调用.设置是:
源代码是这样的:https://github.com/Ellusu/nuraghebot-facebookmessenger/blob/master/index.php
我哪里错了?为什么只打一个电话?
根据你的代码,我认为你无法设置你的网络钩子,所以从文档
在您的 webhook URL 中,添加验证代码。您的代码应该需要您之前定义的验证令牌,并使用验证请求中发回的质询进行响应。单击新页面订阅中的“验证并保存”按钮,通过 GET 请求调用您的 webhook。
因此,要使 PHP 成功设置 Webhook,您必须返回hub_challenge参数。
使用您的令牌定义 $verify_token 并添加如下内容:
if (!empty($_REQUEST['hub_mode']) && $_REQUEST['hub_mode'] == 'subscribe' && $_REQUEST['hub_verify_token'] == $verify_token) {
// Webhook setup request
echo $_REQUEST['hub_challenge']; exit;
}
Run Code Online (Sandbox Code Playgroud)
设置成功后,您可以从脚本中删除此代码。
或者,如果您的 webhook 已经挂钩:
您应该跳过任何已读和传送消息,如下所示:
if (!empty($input['entry'][0]['messaging'])) {
foreach ($input['entry'][0]['messaging'] as $message) {
// Skipping delivery messages
if (!empty($message['delivery'])) {
continue;
}
// Skipping read messages
if (!empty($message['read'])) {
continue;
}
}
}
Run Code Online (Sandbox Code Playgroud)
或者,您可以在 Facebook 页面设置/Webhooks 的页面订阅部分取消选择message_reads和message_deliveries复选框。
| 归档时间: |
|
| 查看次数: |
770 次 |
| 最近记录: |