问题标签 [facebook-webhooks]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
facebook - 从 Facebook 验证 X-Hub 签名
我是 Play Framework(在本例中为 2.5 和 Scala)的初学者——我正在尝试通过为 Facebook Messenger 构建机器人来学习。但是,我在尝试验证消息的签名时遇到了困难。
我遵循了 Facebook 文档并创建了一个 webhook。getRawMessages
它使用(参见下面的代码)处理 POST 请求。然后尝试验证请求是否由 Facebook 使用该verifyPayload
函数签名。但是,我似乎无法使计算的哈希值和实际的哈希值匹配。
我已经率先研究了这个问题:How to verify Instagram real-time API x-hub-signature in Java?这似乎做了我想要的,但对于 Instagram 等价物。但我似乎仍然无法正确处理。
Facebook webhook 文档状态:
HTTP 请求将包含一个 X-Hub-Signature 标头,其中包含请求有效负载的 SHA1 签名,使用应用程序密钥作为密钥,并以 sha1= 为前缀。您的回调端点可以验证此签名以验证有效负载的完整性和来源
请注意,计算是根据有效载荷的转义 unicode 版本进行的,使用小写十六进制数字。如果您只是针对解码的字节进行计算,您最终会得到不同的签名。例如,字符串 äöå 应转义为 \u00e4\u00f6\u00e5。
我猜我缺少的是让有效负载正确地转义为 unicode,但我似乎无法找到一种方法来做到这一点。引用问题中的答案似乎也只是得到了字节数组,而不用做更多的事情(jsonRawBytes = jsonRaw.asBytes();
)。
任何有关如何进行的帮助将不胜感激。
facebook - 如何配置 Facebook 网络挂钩?
我想为我正在开发的应用程序配置Facebook webhook 。
到目前为止我所做的是:
- 创建 FB 应用程序
- 转到应用设置并创建一个新的 webhook:
- 添加有效的回调 URL
- 选择特定字段
- 成功保存设置
现在,当我查询页面订阅时,我得到了响应:
这似乎是有效的。
接下来我该怎么办?如何从特定页面的提要开始收听?
facebook - 如何查询 Facebook 应用的订阅 webhook 事件?
我希望能够查询 Facebook 应用程序的 webhook 配置。
也就是说,当您为 FB 应用设置 webhook 时,您可以指定要订阅的事件:
https://developers.facebook.com/docs/messenger-platform/webhook-reference#setup
我的问题很简单:有没有办法查询给定的 FB 应用程序/页面 ID 订阅了哪些事件?
提前致谢。
facebook-messenger - Facebook Messenger Webhook 奇怪的订阅错误
我正在尝试将应用重新订阅到 facebook(通过 graph-api post/me/subscribed-apps)。订阅第一次工作并收到{success: true}
,但是现在我收到以下错误:
我尝试更换令牌,但我仍然得到这个。有没有人遇到过这个?试图寻找参考,但没有运气。
提前致谢!
php - 如何使用 facebook api 从页面向多个用户广播或发送消息
我正在使用 facebook webhook,我正在使用这种格式将消息发送给消息用户
curl -X POST -H "Content-Type: application/json" -d '{
"recipient": {
"id": "USER_ID"
},
"message": {
"text": "hello, world!"
}
}' "https://graph.facebook.com/v2.6/messages?access_token=PAGE_ACCESS_TOKEN"
正如这里提到的。现在我将所有消息存储在数据库中,并希望一次将消息发送给所有消息用户,正如我在chatfuel中看到的那样,有一个广播选项。是否有类似从 facebook api 广播的选项,请帮助我。先感谢您
facebook - Facebook - Get unpublished and hidden posts with Real-Time API
I'm trying to subscribe to the promotable_posts
endpoint of the Facebook page to get updates for unpublished and hidden posts ("dark posts"). According to Facebook it should be possible to subscribe to that endpoint: https://developers.facebook.com/docs/pages/realtime#data
But that endpoint is not listed on https://developers.facebook.com/apps/[APP_ID]/webhooks/ and I can't add the subscription of the endpoint via the API either. It's working for endpoints like feed
.
How can I subscribe to that endpoint? And how can I get hidden posts? Normally I would use https://graph.facebook.com/[PAGE_ID]/promotable_posts?include_hidden=true&access_token=...
to get those posts when I'm polling, but I can't tell Facebook to include hidden posts when I subscribe to an endpoint.
facebook - Facebook Webhook“消息”订阅字段不存在?
我正在尝试订阅发送到我的 Facebook 页面的私人消息。
您可以在设置 webhook 时通过选择消息字段来订阅此回调。
https://developers.facebook.com/docs/messenger-platform/webhook-reference/message?locale=en_US
没有“消息”字段。他们的意思是“消息”吗?此页面上的屏幕截图也不显示“消息”字段:https ://developers.facebook.com/docs/messenger-platform/webhook-reference?locale=en_US
当我订阅“消息”时,当有人写私人消息时,我没有收到任何事件。当我订阅“对话”时,我会收到更新,但它们只包含“thread_id”而不是私人消息的内容。
我必须做什么才能在更新中接收消息内容?
facebook - Facebook - 使用消息 ID 获取对话线程 ID?
当我从 Facebook Realtime API (webhook) 收到“消息接收回调”事件时,我想获取对话中以前的消息。为此,我需要对话线程的 ID。
https://developers.facebook.com/docs/messenger-platform/webhook-reference/message?locale=en_US
该事件不包含有关对话线程 ID (t_id) 的任何信息。它只包含消息 ID(中间)。
https://developers.facebook.com/docs/graph-api/reference/v2.8/conversation
有没有办法获取对话线程 ID?
facebook-marketing-api - facebook webhook 是否可用于广告(营销 api)数据?
我正在使用 facebook 营销 api 来监控广告系列的广告洞察,我希望收到有关我的广告系列统计信息更新的通知,但我找不到如何将 webhook 与营销 api 数据一起使用:广告系列、广告集和广告 https:/ /developers.facebook.com/docs/marketing-api。