Messenger 开放平台概览

“Messenger 开放平台概览”详细介绍了 Messenger 开放平台的运作方式和成功实现该开放平台所需的要素。

Messenger from Meta 是一项消息服务,允许企业的 Facebook 公共主页或 Instagram 专业帐户回复对您的业务或社交媒体感兴趣的用户。用户与您帐户之间的对话必须由该用户发起。

Messenger 开放平台免费供您使用。

使用方法

当用户在登录 Facebook 或 Instagram 后(或在访问您的移动应用或网站时,通过 Meta 插件)向您企业的公共主页或 Instagram 专业帐户发送消息,您企业的公共主页或 Instagram 专业帐户可使用 Messenger 开放平台来处理该用户的消息,方式如下:发送自动回复和/或由在线客服人员回复。

消息流程

当用户向您企业的公共主页或 Instagram 专业帐户发送消息时,系统会触发 Webhooks 并向您发送通知,告知您企业的公共主页或 Instagram 专业帐户收到了消息。然后,您的应用可向 Meta 社交关系图谱发出调用来获取该对话,确定适当的回复,并在 24 小时内向该用户发送回复。Messenger 开放平台允许您实现大规模执行这项操作,而且提供了多种对话接入点和消息类型。

限制

  • 如果用户登录 Facebook,则无法向您的 Instagram 专业账户发送消息;而且如果用户使用 Messenger 开放平台登录 Instagram,则无法向您企业的 Facebook 公共主页或 Instagram 专业账户主页发送消息。
  • Instagram 消息功能可用于任何 Instagram 专业账户(业务账户和创作者账户)。

所需要素

如要成功实现 Messenger 开放平台,您需要了解以下要素。

访问口令

访问口令是识别应用、Facebook 公共主页或用户的非明文字符串,应用可用访问口令安全地调用 Meta 社交关系图谱。对于允许企业的公共主页或 Instagram 专业帐户发送消息或接收用户消息的特定端点,访问口令可提供对这些端点的临时且安全的访问权限。详细了解。

高级访问级别和标准访问级别

对于企业的公共主页或 Instagram 专业帐户,应用可获得的访问级别分为两种:标准访问级别高级访问级别。当您首次在 Meta 注册应用时,应用默认获得标准访问级别。标准访问级别允许您获取以下类型用户的数据:在您的应用中拥有身份,如开发者、测试者或管理员;或在已认领您应用的企业公共主页或 Instagram 专业帐户中拥有身份。高级访问级别则允许您的应用获取以下类型用户的数据:使用您的应用,但在该应用中没有身份,而且在认领该应用的企业公共主页或 Instagram 专业帐户中也没有身份。详细了解应用身份 应用类型 以及高级访问级别和标准访问级别

由于标准访问级别的适用范围有限,除非应用获得高级访问级别,否则一些功能可能无法正常运行。这种情况可能会导致您使用的任何测试版应用受限。

应用审核

当您应用的用户在该应用中没有身份,而且在已认领该应用的企业公共主页或 Instagram 专业帐户中也没有身份时,则您的应用需要高级访问级别才能获取这些应用用户的数据或为他们获取数据,而为了获得高级访问级别,您必须完成应用审核。详细了解。

如果您是为了自己的公共主页而要开发收发消息的应用,将无需经过应用审核。请注意,如果您打算获取用户个人主页信息,则仍需要通过应用审核,才能获取访问用户个人主页 API 所需的权限。

商家认证

如果使用您应用的用户在该应用中没有身份,或在已认领该应用的企业中没有身份,则您必须先完成公司验证。详细了解。

内容分发网络网址

Messenger 开放平台利用内容分发网络 (CDN) 网址,帮助您检索 Instagram 用户分享的富媒体内容。CDN 网址具有隐私感知性,当内容被删除或过期时,CDN 网址不会返回媒体。

Facebook 登录

如要让用户允许您的公共主页或 Instagram 专业帐户向其发送消息,您需要向该用户请求相关权限。如要请求相关权限,您需要实现 Facebook 登录。详细了解。

Facebook 公共主页

使用 Messenger 开放平台收发消息时需要用到 Facebook 公共主页。详细了解。

功能

利用人工客服功能,您的应用可在用户发送消息后的 7 天内,使用 human_agent 标签来人工回复用户消息。这项功能的合理使用方式是:在标准消息发送时间窗内无法解决用户问题的情况下,提供人工客服支持。例如,周末歇业时,或者问题需要 24 小时以上才能解决的情况。

移交协议

如果有多个应用来处理消息(例如一个应用处理自动回复,一个应用处理向人工客服人员的上报),您需要实现移交协议,才能将对话从一个应用传递到另一个应用。应用必须获得对话的控制权才能回复消息。移交协议允许应用在需要回复消息时向另一个应用请求控制权,从另一个应用处接收控制权,以及在发送回复后释放对话的控制权。

高频消息

如果您的公共主页或 Instagram 专业帐户发送或接收了大量消息,收件箱将无法再显示新消息,也无法发送新消息,直到消息量减少。

对于 Messenger 消息

如果公共主页每秒消息发送量超过 40 条,或同一时间在大量对话中不断发送或接收消息,新消息不会显示在公共主页收件箱中,且此公共主页无法发送新消息,直到消息量减少。

如果公共主页的消息量达到上限,为获取所有对话而执行的 API 调用将失败。但是,您仍可以通过调用单独对话获取该对话的新消息。

对于 Instagram 消息

如果 Instagram 专业帐户的消息收发总量超过 72,000 条,新消息不会显示在 Instagram 收件箱中,您的 Instagram 专业帐户也无法发送新消息,直到消息量减少。

对话中将显示以下横幅,表示已达到消息量的上限。消息量减少时,这些横幅将停止显示。

  • 您的消息可能延迟送达:由于 [your-account-name] 正在接收大量消息,您的消息可能会花比平时更长的时间送达。

  • 您的消息未送达:由于 [your-account-name] 正在接收大量消息,您的消息未送达。请稍后重试。

Instagram 专业帐户

如要收发 Instagram 消息,您必须拥有 Instagram 专业帐户。拥有此帐户,您的应用便可使用与此帐户关联的 Facebook 公共主页来访问来自 Meta 社交关系图谱端点的数据。详细了解。

Instagram 范围编号

当用户向 Instagram 专业帐户发送消息时,系统会创建一个 Instagram 范围编号,表示使用此应用的这位用户。此编号专用于此用户和与此用户互动的 Instagram 帐户。这使 Instagram 专业帐户可以映射到同一用户在多个消息应用中的互动。

Meta 注册

您需要注册成为开发者,并在 Meta 中注册应用,才能调用 Meta 社交关系图谱。详细了解。

公共主页范围编号

用户向 Facebook 公共主页发送消息时,系统会创建一个公共主页范围编号,用于表示使用此公共主页的这位用户。此编号专用于此用户和与此用户互动的公共主页。这使公共主页可以映射到同一用户在多个消息应用中的互动情况。

公共主页的任务

请求公共主页访问口令的用户必须能够执行 MESSAGING,以发送消息;该用户必须能够执行 MODERATE 任务,以回复与您消息应用关联的 Facebook 公共主页上的评论。详细了解。

合作伙伴目录

访问我们的 Meta 合作伙伴目录 ,查找在 Messenger 开放平台方面具有专门知识的合作伙伴。

权限

您的应用需要通过 Facebook 登录请求以下权限,才能获取 Messenger 对话:

  • pages_show_list
  • pages_manage_metadata
  • pages_messaging
  • pages_read_engagement
  • business_management

如要访问 Instagram 消息功能,您还必须请求以下权限:

  • instagram_basic
  • instagram_manage_messages

请求 business_management 权限

请求 business_management 权限时,请在您的应用审核提交内容中注明以下内容:

  1. 请求此权限作为 pages_messagingpages_show_list 权限的依赖项。
  2. 对于 Instagram 消息功能,请注明,请求此权限是为了将其作为 instagram_manage_messages 权限的依赖项。
  3. 在应用审核录屏文件中,要清楚地展示公共主页管理员在 Facebook 登录流程中的导航操作,包括选择页面或 Instagram 帐号的操作,以及向受审应用提供所需权限的操作。

在您的应用中,一定要通知公共主页管理员,告知他们必须明确地向受审应用提供管理其商家素材的权限。必须在企业版 Facebook 登录流程中添加 business_management 权限。

政策

如要获取并保留 Meta 社交关系图谱的访问权限,您必须遵守 Messenger 开放平台政策、Meta 开放平台条款和政策以及我们的社群守则。详细了解。

有关智能助手的政策要求

对于从企业公共主页或 Instagram 专业帐户发送的消息,不同的国家/地区可能有不同的要求。请熟悉此处的政策 以及我们实施的其他开放平台政策

流量限制

Messenger 开放平台流量限制取决于所使用的 API,在某些情况下还取决于消息内容。

Messenger API

您的应用发出的请求将根据应用在连续 24 小时内可发出的调用次数进行计算,计算方式如下:

Calls within 24 hours = 200 * Number of Engaged Users

互动用户人数是企业可以通过 Messenger 发消息的人数。

Instagram Messenger API

对您的应用而言,所发出的请求数将根据应用对于每个 Instagram 专业帐户和所使用 API 可发出的调用次数进行计算。

对话 API

  • 对于每个 Instagram 专业帐户,您的应用每秒可发出 2 次调用

发送 API

  • 对于每个 Instagram 专业帐户,您的应用每秒可发出 100 次调用,以获取包含文本、链接、心情和贴图的消息
  • 对于每个 Instagram 专业帐户,您的应用每秒可发出 10 次调用,以获取包含音频或视频内容的消息

私密回复 API

  • 对于每个 Instagram 专业帐户,您的应用每秒可发出 100 次调用,以获取对 Instagram Live 评论的私密回复
  • 对于每个 Instagram 专业帐户,您的应用每小时可发出 750 次调用,以获取对 Instagram 帖子和 Reels 相关评论的私密回复

Webhooks

Meta Webhooks 是实时通知,可用于获取发送到企业公共主页或 Instagram 专业帐户的消息相关的信息,而无需调用 Meta 社交关系图谱(调用此图谱可能会导致流量受限)。您需要设置 Webhooks,才能接收发送到企业公共主页或 Instagram 专业帐户的消息相关的通知,从而避免流量受限。

后续步骤

  • 设置 Webhooks – 了解如何接收与应用收发消息相关的实时 HTTP 通知。

详细了解

观看我们的开发者视频 ,详细了解 Messenger 开放平台。这些视频中包含详细说明、最佳实践、记录的事件等。