自动化触发模型:数据变化、定时、按钮和 API 如何进入同一流程
流程可以由记录变化、定时计划、人工按钮、Webhook 或 API 调用触发。成熟的自动化引擎要统一入口后的业务规则,避免同一流程在多个地方重复实现。
先给结论:流程从哪触发(数据变化、定时、人工按钮、Webhook、API)不是问题,逻辑分散才是。成熟的引擎统一入口之后的业务规则,让多入口汇进同一套可治理的流程。
同一个客户续约流程,可能从三个地方开始:系统定时检查合同到期,客户成功经理手动发起,客户在门户提交续约请求。
入口不同并不可怕。真正可怕的是,每个入口后面都藏着一套自己的业务逻辑。
一条业务流程从哪里开始?
有时是记录变化:商机阶段变为已赢单,客户风险等级升高,工单状态超过 SLA。
有时是时间到了:每天早上生成逾期清单,每月最后一天检查合同到期,每周汇总项目风险。
有时是人主动触发:销售点击“提交折扣审批”,客服点击“升级工单”,财务点击“发起复核”。
有时是外部事件:合同签署平台回调,支付系统通知状态变化,客户门户提交表单。
如果这些入口各自维护一套逻辑,系统很快会变得难以解释。自动化引擎真正需要统一的,不只是“触发器列表”,而是触发后的业务执行模型。
多入口不是问题,逻辑分散才是问题
企业流程天然有很多入口。
一个客户续约流程,可能由系统在合同到期前 60 天自动触发,也可能由客户成功经理手动发起,还可能由客户在门户提交续约请求触发。
这三个入口不同,但后续业务逻辑可能高度相似:
- 查客户和合同;
- 判断客户等级和金额;
- 分配负责人;
- 创建续约任务;
- 必要时进入审批;
- 记录执行日志。
如果每个入口都单独写逻辑,就会出现规则漂移:定时任务走一套判断,按钮走另一套判断,外部表单又走第三套判断。
统一触发模型的价值,是让不同入口进入同一个流程运行时。触发方式可以不同,但判断、动作、权限和日志应该一致。
记录变化触发:让数据状态推动流程
记录变化是最常见的触发方式。
例如:
- 工单优先级变为高;
- 商机金额超过审批阈值;
- 供应商资质状态变为过期;
- 报销状态变为待复核;
- 客户健康分下降到风险区间。
这类触发的核心问题是:不是每次保存记录都应该跑流程。平台需要判断“什么变化真正有业务意义”。
一条成熟的记录变化触发,应该能表达:
- 监听哪个对象;
- 关注创建、更新还是删除;
- 哪些字段变化才触发;
- 新旧值满足什么条件;
- 是否只在第一次进入某个状态时触发;
- 触发后把当前记录作为流程上下文。
这样,业务人员可以说“当客户风险从中变成高时触发”,而不是“每次客户记录更新都跑一遍”。
定时触发:处理时间驱动的业务责任
很多责任不是由用户操作触发,而是由时间触发。
例如:
- 每天检查逾期工单;
- 每周生成高风险客户清单;
- 每月提醒预算负责人复核费用;
- 合同到期前 90 天创建续约任务;
- 供应商资质过期前 30 天通知采购。
定时触发看起来简单,但业务上有不少细节:
- 节假日是否跳过;
- 时区如何处理;
- 重复运行是否会创建重复任务;
- 漏跑后是否补跑;
- 运行失败后是否重试;
- 结果是否要汇总给负责人。
因此,定时任务不应该只是一个 cron 表达式。它应该进入自动化引擎,和普通流程一样有上下文、条件、动作、日志和失败处理。
人工触发:按钮背后也应该是流程
很多业务流程不是自动开始,而是由人判断后发起。
例如销售觉得折扣需要审批,点击“提交折扣审批”;客服觉得工单需要研发介入,点击“升级”;财务发现报销有疑问,点击“发起复核”。
这些按钮不应该只是前端事件。它们背后也应该进入自动化流程。
原因很简单:人工触发之后,系统仍然需要判断、流转、等待、通知和记录。
一个“提交折扣审批”动作可能要:
- 校验折扣、金额和必填材料;
- 判断是否需要经理或财务审批;
- 锁定报价字段;
- 创建审批任务;
- 等待审批结果;
- 根据通过或拒绝更新商机状态;
- 留下完整审计。
如果按钮只调用一段隐藏逻辑,后续就很难治理。把人工触发也纳入同一套自动化引擎,业务动作才会长期一致。
外部事件触发:Webhook 只是入口
外部系统也会触发流程。
客户在门户提交资料,电子签约完成,支付状态改变,物流异常,外部风控结果返回,这些都可以通过 Webhook 或 API 进入平台。
但外部事件不应该直接决定业务动作。它应该先被标准化为流程输入,然后由自动化引擎根据业务规则继续执行。
例如合同签署完成后,不一定马上启动实施。平台还要检查客户是否有未结清款项、实施资源是否可用、合同是否包含特殊条款。
Webhook 带来事件,自动化引擎承接业务决策。
API 触发:让外部系统启动受控流程
有些流程需要被外部系统主动调用。
例如合作伙伴系统提交供应商准入申请,企业门户发起客户 onboarding,请购系统请求创建审批流程。
API 触发的关键是:外部系统可以启动流程,但不能绕过流程治理。
它应该和其他触发方式一样:
- 使用明确输入参数;
- 通过权限或凭证验证;
- 进入同一套流程版本;
- 使用同一套动作和审批;
- 留下触发来源和 trace。
这样,自动化引擎就成为企业流程的统一入口,而不是每个系统自己实现一段流程逻辑。
统一触发后的最大收益:复用
当触发方式统一后,流程可以被复用。
同一条“客户续约准备流程”可以由定时任务触发,也可以由客户成功经理手动触发,还可以由客户门户请求触发。不同入口传入不同上下文,但后续判断和动作尽量复用。
这会减少大量重复建设:
- 不需要为按钮写一套审批逻辑;
- 不需要为定时任务再写一套提醒逻辑;
- 不需要为 Webhook 再写一套更新逻辑;
- 不需要为 API 调用单独维护审计。
业务变化时,也只需要调整流程本身,而不是在多个入口里同步改规则。
ObjectOS 的差异
ObjectOS Automation 的价值,不是提供很多零散触发器,而是把不同触发方式带入同一条业务运行时。
记录变化、定时计划、人工动作、外部 Webhook 和 API 调用都可以成为流程入口。入口之后,流程使用统一的条件、变量、动作、审批、等待、错误处理和日志。
这让企业自动化更容易治理。
当业务问“为什么这条流程被触发”,平台可以回答触发来源;当业务问“不同入口是否执行同一套规则”,平台可以展示流程版本;当管理员要修改规则,也不需要到处找脚本。
自动化引擎真正统一的不是事件,而是事件之后的业务执行方式。