消息推送
消息推送会在项目收到新答卷后,自动把答卷信息发送到短信、邮件、Webhook、企业微信或钉钉。
使用场景
- 有人提交报名表后,自动给负责人发邮件或短信
- 新增答卷满足指定条件时,通知对应部门跟进
- 把答卷数据推送到 CRM、工单系统或自己的业务系统
- 通过企业微信、钉钉机器人提醒群成员查看新数据
准备工作
不同推送方式需要提前准备的内容不一样:
| 推送方式 | 需要提前准备 |
|---|---|
| 短信 | 管理员已配置短信模板,且接收人手机号有效 |
| 邮件 | 管理员已配置邮箱账号,且接收人邮箱有效 |
| Webhook | 接收数据的接口地址、请求方式和鉴权信息 |
| 企业微信 | 企业微信群机器人 Webhook 地址 |
| 钉钉 | 钉钉群机器人 Webhook 地址 |
操作步骤
1. 进入消息推送设置
进入项目编辑页,在右侧设置面板打开 投放与分享,找到 消息推送设置,点击 点击设置。
2. 新增推送任务
在 消息推送设置 弹窗中点击 新增消息推送任务。
新增任务时先填写:
- 任务名称:方便你在任务列表和执行记录中识别这条规则
- 触发事件:当前为 新增数据
- 数据范围:选择 全部数据,或选择 符合条件的数据 后设置条件
提示
如果只想在特定答案出现时推送,例如“报名状态 = 通过”,把 数据范围 设为 符合条件的数据,再添加判断条件。
3. 选择推送方式
在 操作类型 中选择要执行的推送方式。
| 操作类型 | 适合场景 |
|---|---|
| 发送短信 | 给用户、负责人或系统成员发送短提醒 |
| 发送邮件 | 发送较完整的答卷内容、说明和答卷链接 |
| 发送 Webhook | 把答卷数据推送给外部业务系统 |
| 推送到企业微信 | 通知企业微信群,可发送文本或卡片 |
| 推送到钉钉 | 通知钉钉群,可提醒指定手机号成员 |
4. 填写推送内容
选择不同操作类型后,下方会显示对应配置项。
短信
- 发送给:可选择系统用户、引用答卷中的手机号字段,或手动输入手机号
- 短信模板:选择已配置的短信模板
- 参数:把模板参数绑定到答卷字段或考试分数
邮件
- 发送给:可选择系统用户、引用答卷中的邮箱字段,或手动输入邮箱
- 邮箱账号:选择用于发信的邮箱
- 邮箱标题:设置邮件主题
- 邮件内容:可插入答卷字段,也可以插入答卷详情链接
Webhook
填写 请求地址,选择 请求方法,再选择要推送的字段。
Webhook 还支持:
- 请求头配置:添加
Header名称和值 - 认证配置:支持无认证、Basic Auth、Bearer Token、API Key
- 自定义参数:额外增加固定值或引用答卷字段的参数
- 重试配置:请求失败时自动重试
企业微信
- 填写 企业微信机器人 Webhook 地址
- 选择 文本消息 或 文本通知模版卡片
- 文本消息可以插入答卷字段,并设置提醒成员手机号或
@all - 模板卡片至少要添加一组 二级标题 + 文本内容
- 卡片和跳转指引可以跳到当前答卷详情页,也可以填自定义 URL
钉钉
- 填写 钉钉 Webhook 地址
- 设置发送内容,可插入答卷字段
- 如需提醒成员,在 设置提醒成员 中填写手机号
注意
Webhook、企业微信和钉钉发送成功的判断标准是对方接口返回 2xx 状态码。接口地址错误、鉴权失败或机器人安全设置不匹配,都会导致任务失败。
5. 保存并开启任务
配置完成后点击 保存。任务会出现在任务列表中,确认右侧开关为 开启。
任务列表中可以:
- 编辑:修改当前任务
- 复制:快速创建一条相似任务
- 删除:移除不再需要的任务
- 关闭开关:临时停用任务,但保留配置
查看推送结果
有人提交答卷后,进入 数据 页面,打开对应答卷详情,在右侧切换到 消息推送 标签。
这里可以看到:
- 批次状态:全部成功、部分成功、执行失败或执行中
- 任务统计:成功、失败、跳过和总数
- 推送结果:每个渠道的目标、状态、耗时和返回信息
- 执行历史:查看同一任务的多次执行记录
- 补发:失败任务可以手动再次发送
进阶用法
动态设置接收人
短信和邮件的 发送给 支持三种来源:
- 引用答案:从答卷里的手机号或邮箱题目中取值
- 系统用户:选择系统内用户,发送时使用该用户资料里的手机号或邮箱
- 自定义:手动输入手机号或邮箱,多个值用英文逗号分隔
注意
引用答案时,对应题目里必须保存有效手机号或邮箱。没有填、格式不正确或字段选错时,任务会被跳过。
Webhook 会发送什么数据
Webhook 请求体是 JSON。你在 选择字段 中勾选的内容会放到 answer 里,自定义参数会放到最外层。
{
"project": "项目ID",
"survey": "问卷结构",
"answer": {
"题目ID": "答卷内容",
"creator": "提交人",
"createTime": "提交时间",
"answerId": "答案ID"
},
"extraId": "自定义参数值"
}
如果外部系统只需要少量字段,建议只勾选必要字段,减少接口处理压力。