如何在信使平台直播?
Posted
技术标签:
【中文标题】如何在信使平台直播?【英文标题】:How to broadcast in messenger platform? 【发布时间】:2016-11-06 04:46:52 【问题描述】:有没有办法向将机器人添加到联系人列表的许多(或所有)用户广播消息?
或者我需要为每个用户使用https://graph.facebook.com/v2.6/me/messages
?
【问题讨论】:
你找到替代品了吗? @SandeshBSuvarna no 【参考方案1】:Facebook 引入了广播 API,允许您向所有打开的对话发送消息。您还可以为用户添加标签,以便将广播发送到特定标签:https://developers.facebook.com/docs/messenger-platform/reference/broadcast-api
【讨论】:
【参考方案2】:Facebook 现在支持 broadcast API
您的页面需要具有以下权限:
pages_messaging
pages_messaging_subscriptions
采取的步骤:
-
创建广播消息
curl -X POST -H "Content-Type: application/json" -d '
"messages":[
<MESSAGE_OBJECT>
]
' "https://graph.facebook.com/v2.11/me/message_creatives?access_token=<PAGE_ACCESS_TOKEN>"
-
存储响应 BROADCAST_MESSAGE_ID
"message_creative_id": <BROADCAST_MESSAGE_ID>,
-
发送广播消息
curl -X POST -H "Content-Type: application/json" -d '
"message_creative_id": <BROADCAST_MESSAGE_ID>,
"notification_type": "<REGULAR | SILENT_PUSH | NO_PUSH>",
"tag": "<MESSAGE_TAG>"
' "https://graph.facebook.com/v2.11/me/broadcast_messages?access_token=<PAGE_ACCESS_TOKEN>"
-
存储 BROADCAST_ID
"broadcast_id": <BROADCAST_ID>
【讨论】:
很好的答案!我还想补充一点,Facebook 有一个 Target Broadcasts API here,它允许您向一部分用户广播。它真的很容易实现,只是这个答案的扩展。 @NatKSS 您为什么不建议将其作为edit to this answer 供未来的读者使用? 这很奇怪:/我无法建议对此答案进行编辑,因为我收到了这个红色错误对话框“您的帖子似乎包含格式不正确的代码......”,即使您的代码格式正确。 @NatKSS 将代码保留在<pre>
和 <code>
标记内或选择代码 sn-p 并按 Ctrl K。它应该允许【参考方案3】:
您可以为与您的机器人交互过的每个人保留一个运行的 ID 列表。
那么你所要做的就是为你的 sendTextMessage 函数创建一个包装函数,它将遍历列表中的所有用户并向他们发送相同的消息
【讨论】:
以上是关于如何在信使平台直播?的主要内容,如果未能解决你的问题,请参考以下文章