活动
测试和调试活动
测试执行会遍历你保存的图,不会接触 Facebook 或 Instagram:在画布上点击 Test,可选地输入活动应视为传入的消息,画布会切换到 Executions 视图,并用高亮显示该执行记录所经过的路径。真实执行记录也出现在同一列表中,因此一个视图就能告诉你哪个节点运行了、哪个节点失败了,以及执行记录为何停止。
- 在画布上保存一个活动,其中至少包含一个触发节点。测试执行运行的是活动当前保存的版本,因此未保存的编辑不会被测试。参见 在画布上构建活动。
- 除了该活动之外不需要设置主页。测试执行不绑定到已连接主页,也不会向 Facebook 或 Instagram 发起调用。
如何运行测试执行?
Section titled “如何运行测试执行?”- 在画布上打开活动,如果有未保存的内容,点击 Save。
- 点击 Test。
- 输入样本消息,让执行记录将其视为传入的评论或私信。留空则执行记录会假设消息文本为
test。 - 点击 Run test。
- 画布切换到 Executions 视图,新的测试执行出现在列表顶部。
- 点击该执行记录,在画布上叠加显示其路径:经过的节点标记为已访问,停止的节点标记为当前节点,未到达的节点变暗。

整个遍历在画布响应之前完成,因此没有执行记录逐步遍历节点的动画——你看到的是完成后的状态。
测试执行与真实执行有何不同?
Section titled “测试执行与真实执行有何不同?”测试执行使用相同的引擎和相同的图,并且因相同的原因停止。它跳过的是每一个会联系到真实用户的调用。
| 行为 | 测试执行 | 真实执行 |
|---|---|---|
| 启动方式 | Test 按钮 | 与触发节点匹配的评论或私信 |
| 接收者 | 合成的测试接收者 | 评论或发送私信的人 |
| 已连接主页 | 无 | 活动绑定的主页 |
| 私信、评论回复、隐藏、删除 | 记录为对将要执行操作的描述;不发送任何内容 | 通过 Facebook 或 Instagram 发送 |
| 标签 | 不添加,不移除 | 应用到联系人 |
delay 节点 | 记录为已跳过,执行记录在此处结束 | 已调度,等待结束后恢复 |
condition 设置为等待回复 | 停留并保持——不会有回复到达 | 当人回复时恢复 |
| 在执行记录列表中 | 是,标记为测试 | 是 |
由于测试执行在第一个 delay 节点处结束,它无法告诉你该延迟之后节点的情况。暂时移除延迟,或用真实评论验证那部分。
执行记录告诉我什么?
Section titled “执行记录告诉我什么?”Executions 视图列出该活动最近的 20 条执行记录,最新的在前,测试和真实执行记录混在一起。每行携带的信息包括:是否为测试、是否仍活跃、接收者、何时开始、何时完成、当前所在节点,以及错误消息(如果有)。
选择一条执行记录会加载该执行记录启动时的图版本,并标记其访问过的每个节点。每个已访问节点记录其类型、运行时间,以及对该节点所做操作的描述或它抛出的错误——这正是你区分”私信节点发送成功”和”私信节点失败”的方式。
列表不会自动刷新。使用面板上的刷新控制来重新拉取一条仍在活跃的执行记录。
每个节点的路径记录什么?
Section titled “每个节点的路径记录什么?”| 针对节点的条目 | 含义 |
|---|---|
| Trigger fired | 执行记录从此处开始。每条执行记录都有这一条目作为其第一条 |
| 对操作的描述 | 一个操作节点运行了:发送了私信、回复或隐藏了评论、标签已更改 |
| Waiting for reply | 执行记录停在一个设置为等待回复的 condition 上,尚未被唤醒 |
| Scheduled delay,附带等待秒数 | 一个 delay 节点调度了恢复并停止前进 |
| Took arm 2 | 一个 random_split 选择了该分支,执行记录沿其继续 |
| Flow stopped | 一个 stop 节点有意结束了执行记录 |
| 错误消息 | 节点抛出了错误。执行记录不会继续前进 |
如何阅读一条执行记录的状态?
Section titled “如何阅读一条执行记录的状态?”| 你看到的 | 含义 | 操作 |
|---|---|---|
| 不活跃,带有完成时间 | 执行记录到达了 stop 节点,或到达了一个后面没有连接的输出 | 无需操作。这是正常结束 |
仍活跃,当前节点是 condition | 该条件设置为等待回复,且没有回复到达 | 等待回复。测试执行会停留在此处,因为不会有回复到达 |
仍活跃,当前节点是 delay | 等待已调度,且尚未过去 | 等待延迟结束 |
| 仍活跃,最后访问的节点上有错误消息 | 一个操作失败了。执行记录会记下错误,并不会越过该节点继续前进 | 修复原因,然后启动一条新的执行记录——这一条不会自动恢复 |
| 不活跃,错误命名了节点处的循环 | 路径返回到了一个已访问过的节点。每条执行记录中每个节点最多运行一次 | 重新设计分支,使路径不再重复访问节点 |
| 不活跃,错误说调度步骤未运行 | 一个 delay 被调度但恢复从未发生 | 再次测试该分支。如果重复发生,向支持团队报告 |
| 不活跃,错误说该人在 7 天内未回复 | 执行记录在一个 condition 上等待回复达一周 | 无需操作。过期是没有人继续的会话的预期结束 |
重试的范围很窄。delay 后的恢复在执行记录被标记为失败之前最多尝试三次。在执行记录遍历图时失败的操作不会重试,且永远不会从开始重新运行任何执行记录。
执行记录等待回复多长时间?
Section titled “执行记录等待回复多长时间?”七天。一条停在等待回复的 condition 上的执行记录,在七天沉默后关闭为失败,消息说明该人未回复,测试执行也以相同方式过期。
从未发生的调度恢复会被单独捕获:一旦超时超过一小时,执行记录关闭为失败,消息说明该步骤未运行。
两个截止日期都由周期性扫描检查,而不是在它们经过的瞬间检查,因此执行记录在其时间过后仍可能显示为活跃一段时间。
编辑或删除活动时,正在进行的执行记录会发生什么?
Section titled “编辑或删除活动时,正在进行的执行记录会发生什么?”保存活动会写入图的新版本。已经在进行中的执行记录会绑定到它们启动时的版本并完成,因此编辑活动永远不会重新连接已经在进行中的会话。新事件仅在当前保存的版本上启动执行记录,且仅在旧版本中存在的触发节点不会再触发。
旧版本会保留到仍有执行记录引用它们为止,这就是为什么你在 Executions 视图中打开的执行记录可能显示你正在编辑的图中不再存在的节点。对于足够旧的执行记录,其使用的版本从未被记录,叠加显示也可能无法对齐——面板会回退到当前图。
删除活动会移除其图的所有保存版本以及与其关联的所有执行记录,包括活跃的执行记录。
为什么我测试时没有任何反应?
Section titled “为什么我测试时没有任何反应?”| 症状 | 原因 | 修复 |
|---|---|---|
| Test 报告活动没有触发节点 | 保存的图中没有触发节点 | 添加触发节点,点击 Save,然后再次测试 |
| 执行记录在一两个节点后完成 | 它需要的输出没有连接任何东西,因此执行记录在此结束 | 连接分支并保存 |
send_dm 节点显示为已访问但没有消息到达 | 测试执行会记录操作而不是发送它们 | 通过已连接主页上的真实评论或私信确认发送 |
| 真实评论也没有收到任何内容 | 活动已保存但未启用,或评论未匹配触发节点和条件 | 检查 Active 开关,然后阅读 用关键词列表匹配评论 |
| 同一个人的第二条评论没有任何反应 | 一个人不能同时有同一活动的两条活跃执行记录,因此第二个匹配事件被跳过 | 等待第一条执行记录完成,或用不同账户测试 |
| 执行记录在操作节点上停止并带有错误 | 该操作在 Facebook 或 Instagram 上失败,且执行记录不会在失败的操作之后继续 | 修复原因,然后启动一条新的执行记录 |
- 执行状态 — 执行记录可以处于的每种状态,以及如何离开每种状态。
- 用关键词列表匹配评论 —
condition为何选择 Match 或 No Match。 - 节点类型 — 执行记录到达每个节点时每个节点做什么。
- 在画布上构建活动 — 你正在测试的图。