交互式流程

适用于注册、候补名单和数据收集的多屏表单,风格类似 WhatsApp Flow。

概念

对象说明
机器人容器(runtime_mode=local 或合作伙伴服务)
流程具名的多步骤流程(code、卡片图片、CTA)
步骤页面:forminputselectend
邀请打开表单的 content_type=flow 中心消息

邀请用户参与流程

POST /api/v1/bots/{bot_code}/flows/{flow_code}/invite

{
  "phone": "+228XXXXXXXX",
  "body": "Rejoignez la liste d’attente SEED."
}

这会在合作伙伴中心创建一张独立流程卡片,而不是支持对话。

示例

curl -X POST "$API/bots/portail/flows/waitlist/invite" \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"phone":"+228XXXXXXXX"}'

最终用户会话(客户端应用)

客户端应用使用用户 JWT,而不是合作伙伴密钥:

端点用途
POST /me/flows/start开始或恢复会话
POST /me/bots/sessions/{ref}/input提交步骤(form_submit、文本或 OTP)
GET /me/flows列出可用流程

表单提交有效载荷

{
  "type": "form_submit",
  "values": {
    "full_name": "Ama Koffi",
    "phone": "+22890000000",
    "email": "[email protected]"
  }
}

验证

服务器会验证字段类型(电子邮箱、E.164 手机号码、数字、日期、选择项等)。
请参阅字段验证

完成

成功后,同一张流程卡片会变为 status=completed,并显示答案的只读摘要。系统不会发布中间步骤的聊天消息。

本地流程定义

可在合作伙伴中心(MorisBox → 机器人)中配置,也可通过 seed / 预置数据配置:

  • 机器人:runtime_mode=local
  • 流程:卡片字段(code、图片、CTA)
  • 步骤:多字段表单使用 fields_json