跳转到内容

四种平台事件可以启动活动:Facebook 主页帖子上的评论、Instagram 帖子上的评论、Facebook Messenger 消息,以及 Instagram 私信。每个事件都会与其所属已连接主页上的活跃活动进行匹配,每个当前图版本中持有匹配触发节点的活动都会启动一次执行记录。按钮点击和主页自己发布的评论永远不会启动活动。

事件触发节点活动平台是否启动执行记录
Facebook 主页帖子上的评论trigger_commentFacebook是,该主页上每个匹配的活跃活动各一次
Instagram 帖子上的评论trigger_commentInstagram是,该主页上每个匹配的活跃活动各一次
Facebook Messenger 消息trigger_dmFacebook是,当消息携带文本且该人没有正在运行的执行记录时
Instagram 私信trigger_dmInstagram是,当消息携带文本且该人没有正在运行的执行记录时
私信内的按钮点击两者否——它会恢复一个等待回复的执行记录
一个执行记录正在等待的评论串上的回复两者否——它会恢复该执行记录,不再进行任何活动匹配
评论或私信到达某个已连接主页是主页自己发布的,已发送私信的回声,已移除或隐藏的评论,还是没有文本的私信?忽略该人在该主页上是否有正在等待回复的执行记录?该执行记录恢复,并将该文本作为回复。不进行任何活动匹配该主页上是否有活跃活动,其当前图版本持有匹配的触发节点?每个匹配的活动各启动一次执行记录
  • 触发节点: trigger_comment
  • 活动平台: Facebook
  • 携带内容: 评论本身、其所在帖子、评论文本、评论者姓名、任何附带的照片或视频,以及回复时的父评论

已连接 Facebook 主页帖子上的一条评论,会与绑定到该主页的每个活跃活动进行匹配。触发器 post_scope 设置为 specific 的活动,只匹配 post_id 指定帖子上的评论;范围为 all 的触发器匹配该主页任意帖子上的评论。

帖子范围是评论触发器唯一的过滤条件。触发节点不包含任何关键词配置,所以文本过滤发生在图的更下游,即执行记录到达的第一个 condition 节点。

没有文本的评论——一个贴纸,或一个没有配文的附件——会以占位文本 {{sticker}} 到达,所以条件节点始终有确定的内容可以匹配。

  • 触发节点: trigger_comment
  • 活动平台: Instagram
  • 携带内容: 评论本身、其所在媒体、评论文本、评论者用户名,以及回复时的父评论

Instagram 评论遵循与 Facebook 评论相同的路径,并使用相同的触发节点。活动必须绑定到该评论所属的 Instagram 商业账户;活动的平台由其目标主页推导得出,所以将其绑定到 Instagram 账户,才使其有资格接收 Instagram 事件。

在 Instagram 路径上恢复一个等待中执行记录的评论,如果携带的是媒体而不是文本,会以占位文本 {{media}} 到达。

  • 触发节点: trigger_dm
  • 活动平台: Facebook
  • 携带内容: 发送者和消息文本

一条传入的 Messenger 消息首先会与该人在该主页上已经运行的执行记录进行核对。一个正在运行的执行记录会将该消息作为回复接收。如果没有正在运行的执行记录,AFP 会在该主页上查找当前图以 trigger_dm 开头的活跃活动,并为每个匹配项启动一次执行记录。

trigger_dm 节点没有帖子范围,也没有文本过滤器,所以任何携带文本的私信都会启动该主页上每个活跃的 trigger_dm 活动。它们中哪些会继续发送内容,由各自的条件节点决定。

  • 触发节点: trigger_dm
  • 活动平台: Instagram
  • 携带内容: 发送者和消息文本

Instagram 私信要么直接解析到一个已连接主页(对于单独连接的 Instagram 商业账户),要么通过该账户所链接的 Facebook 主页解析。未连接到 AFP 的 Instagram 账户的事件会被丢弃。

评论事件私信事件使用它的场景
发送者该条执行记录中每个 send_dm 的接收者,以及 add_tagremove_tag 所应用的联系人
消息文本评论文本消息文本condition 匹配,包括关键词列表
发送者姓名个性化 send_dmreply_commentsend_comment 的文本
触发评论reply_commenthide_commentdelete_comment,它们操作该评论
评论所在的帖子触发器的 post_scope 检查
附带的照片或视频condition 上的媒体过滤器,例如 filter_images
已连接主页及其平台决定该条执行记录的操作在哪里发布

恢复一个等待中执行记录的回复携带文本但不带附件。因此开启了图片过滤器的 condition 不会匹配纯文本回复,一个”等待图片”分支会将文本回复路由到 No Match 输出。

私信事件不携带评论也不携带帖子,这就是为什么触发器为 trigger_dm 的活动不能添加评论操作。

事件会发生什么
平台上被移除或隐藏的评论被忽略。只处理新评论。
不是评论的主页活动被忽略。
主页自己发布的评论,包括活动发布的评论被忽略,所以 reply_commentsend_comment 不能重新触发自己的活动。
主页发送的私信的回声被忽略,所以 send_dm 不能恢复自己的执行记录。
没有文本的私信——只有图片、贴纸或附件被忽略。它既不会启动执行记录,也不会恢复等待中的执行记录。
私信中的按钮点击以按钮标签作为回复文本恢复一个等待中的执行记录;如果该人没有正在运行的执行记录,则什么都不会发生。
同一活动的执行记录仍在运行时,来自同一人的第二个匹配事件被跳过。一个人不能同时进行同一活动的两条执行记录。
针对未连接到 AFP 的主页的事件被丢弃。
针对其所有者没有活跃订阅的主页的事件没有活动运行。该评论会作为订阅错误记录在活动 feed 中。
针对访问令牌已失效的主页的事件没有活动运行。该评论会被记录为重新登录错误,直到该主页的访问权限被续期。
针对不活跃活动的事件,或匹配图的旧保存版本中触发器的事件不会匹配。只有活跃活动的当前版本会启动执行记录。
针对没有已保存图的活跃活动的事件,或其图没有触发节点的事件不会匹配。仅仅启用并不能使活动具备资格。

只有当一个已连接主页的事件订阅已在平台注册并通过验证时,事件才会到达 AFP。在该握手成功之前,无论活动如何构建,该主页上的评论和私信都不会产生任何结果。

在一个主页上创建第一个活动会订阅该主页,所以不需要单独执行订阅步骤。更改活动的目标主页也会订阅新主页,删除一个主页上的最后一个活动会再次移除该订阅。

该订阅覆盖主页帖子上的评论活动、传入消息,以及这些消息内的按钮点击——所有四种触发事件都通过它到达。

停用一个活动不会移除订阅。当该主页上的所有活动都不活跃时,事件仍会持续到达,但不会匹配任何内容,这就是为什么重新启用一个活动会立即开始工作。

  • 该主页上每个匹配的活动都会启动自己的执行记录。两个关键词重叠的活跃活动会针对同一条评论各自运行。
  • 匹配针对的是事件到达那一刻已保存的图版本,且执行记录在其整个生命周期中都固定在该版本上。
  • 触发器的 unique_per_user 设置会缩小同一人的重复事件中哪些会启动活动。节点类型 介绍了它具体限制什么。
  • 在一个执行记录正在等待的串内以回复形式发布的评论,会恢复该执行记录并到此为止——该评论不会再提供给该主页上的任何其他活动。
  • 执行状态 — 一个事件启动的执行记录会发生什么,以及它如何结束。
  • 节点类型trigger_commenttrigger_dm 以及每个其他节点的完整配置。
  • 关键词匹配规则 — 执行记录到达条件节点后,事件携带的文本如何被比较。
  • 测试和调试活动 — 如何判断这些事件中的哪一个到达了你的活动。