是否可以使用Graph API为Facebook页面文章设置Facebook webhook?
我想用Ruby on Rails构建一个应用程序,它从公共页面获取最新的Facebook帖子并以某种方式显示它们。是否可以使用Graph API为Facebook页面文章设置Facebook webhook?
目前,我打算让使用考拉宝石和图形API的get_connection
client = Koala::Facebook::API.new(oauth_token)
client.get_connection('someuser', 'posts',
{limit: @options[:max_items],
fields: ['message', 'id', 'from', 'type',
'picture', 'link', 'created_time', 'updated_time'
]})
然而职位,我相信这将需要我更新饲料手动重新运行该每隔X小时。如果可以设置一个webhook来监听一个新的文章并相应地更新,那将会更加方便。我找到了下面的链接,但是无法理解它/这是否可能,或者是否有比我目前更好的方法。
https://developers.facebook.com/docs/graph-api/webhooks
如果可能的话,我怎么可能实现呢,还是有其他更好的办法?
我相信这是解决方案,但从来没有尝试过,如果我错了,你可能会纠正我:
- 你的网络挂接必须subsribe为
feed
(或其他东西)。 - 通过POST向
https://graph.facebook.com/v2.6/me/subscribed_apps?access_token=PAGE_ACCESS_TOKEN
添加订阅应用程序。访问令牌必须具有足够的权限(例如:manage_pages
)。
希望它有帮助!
有两个步骤来实现它,首先您需要将您的应用程序订阅到webhook页面,您可以使用Facebook应用程序面板控件或使用Koala实时更新(webhook references)执行此操作,然后您需要添加应用到页面的订阅应用。下面是我使用的这些步骤的代码:
#subscribe app @updates = Koala::Facebook::RealtimeUpdates.new(app_id: facebook_app_id,secret: facebook_app_secret) @updates.subscribe("page", "feed", callback_url, verify_token)
#subscribe page api = Koala::Facebook::API.new(page["access_token"]) api.graph_call("#{page["id"]}/subscribed_apps",{},"post",{})
如果你不知道该页面看到的access_token的 Koala wiki
重要说明:您需要使用的协议“ https“的callback_url和verify_token大小不能超过64
没有真正回答我的所有问题/ s,但逻辑是有道理的。标记正确,将尝试更新我所提出的内容。 – Kevin