Webhooks:事件回调

快速阅读

Webhook 是呼叫中心在事件发生后,主动 HTTP 访问企业接收地址的事件回调。企业先配好目标地址和推送动作,运行时按类型、条件、超时和重试把数据送出去;通话事实仍以话单为准。

  • 管理端入口:企业配置 → 高级设置 → 推送设置。也可通过 OpenAPI 维护同一套对象。
  • 先建目标接口(URL、GET / POST、表单 / JSON、超时),再按事件类型建推送动作并启用。
  • 接收方建议返回 HTTP 200,并按 mainUniqueId / uniqueId 做幂等;必须能忽略尚未识别的事件类型。
  • 查送达看事件回调日志(页面常叫推送日志)和 Webhook 监控。失败不代表通话没发生。
  • 工作台里的 AgentSDK 事件、服务端 SDK 控通话、OpenAPI 回拉话单,都不是本页这条 HTTP 回调。

阅读地图

  • 先分清和推送产品、工作台事件、服务端 SDK 的边界:读“二”和“九”。
  • 要配地址、类型、超时和重试:读“六”。
  • 要看什么时候真正发出去:读“四”和“六、3”。
  • 要联调和验收:读“八”和“附录 C”。

一、文档说明

客户要把响铃弹屏、接通写回 CRM、挂机同步工单、话单或录音状态交给自建系统时,通常不是让业务系统来轮询,而是让呼叫中心在事件发生时回调企业 URL。

本文说明这条 HTTP 事件回调怎么定位、先配什么、何时生效、失败怎么看。逐类型参数、条件表达式和加工脚本建议结合 推送产品 一起确认;送达对账看 事件回调日志。

适用:对接 CRM / 工单 / 自建中台的技术负责人、实施顾问、需要确认事件是否发出的运营管理员。

二、产品总览

Webhook 的对象是已经发生的事件通知,不是座席工作台里的本地事件,也不是服务端去改这一通怎么接、怎么转。

企业给一个 http:// 或 https:// 地址,选定事件类型;呼叫中心在来电、响铃、接通、挂机、座席状态、话单、录音等节点按配置把参数推过去,并记下对方回了什么。

集成入口解决什么典型动作
Webhooks:事件回调(本文)平台访问企业 URL,通知事件配目标接口和推送动作;企业接口收包并回 200
推送产品同一套能力的配置体系与类型清单参数映射、条件、延迟、加密、脚本
服务端 SDK通话进行中由企业服务端干预转接、挂机、放音等控制
座席工作台集成 · 事件浏览器 / AgentSDK 本地订阅AgentSDK.on(EventType.…)
数据与分析集成事后查询话单、录音、报表OpenAPI 拉取,不是回调
呼叫中心管理集成管座席、队列、任务等配置对象企业调平台,方向相反

三、核心概念

概念说明
Webhook / 事件回调平台主动访问企业接收地址;页面和接口里也常叫推送
目标接口发到哪里:名称、URL、方法、内容类型、超时
推送动作什么时候发:类型、启用、参数、条件、重试、延迟、是否同时推座席端
推送类型来电、外呼、WebCall、SIP、座席状态、录音、话单、转写等分组
启用未启用的动作不会发出
条件不满足则本条事件不发
超时等待企业接口的秒数,范围 1~10
重试失败后自动再发;次数 0~3,间隔 0~60 秒
延迟推送事件发生后再等 0~900 秒再发
mainUniqueId / uniqueId串联话单、录音和本条回调的通话标识
座席工号字段里常见 cno,对应 agent ID,不是员工账号

四、对象关系与运行链路

管理端或 OpenAPI
  目标接口(URL / 方法 / 格式 / 超时)
  推送动作(类型 / 启用 / 参数 / 条件 / 重试 / 延迟)
        ↓
运行时事件发生(来电、响铃、接通、挂机、状态、话单、录音…)
        ↓
匹配已启用动作 → 判断条件 → 组装参数(可选加工、加密)
        ↓
HTTP GET 或 POST 到企业 URL
        ↓
企业接口响应 → 写入事件回调日志
        ↓
失败则按重试策略再发;仍失败可在日志里人工重推

四个层次不要混:

层次含义只看这个不够
页面已配置目标接口和动作已保存未启用或条件不匹配仍不会发
流程实际进入通话或业务事件已经发生事件有了,不等于回调已发出
系统实际生效平台按配置发起了 HTTP发出去不等于企业处理成功
企业侧实际响应接收地址返回了可接受的 HTTP 状态响应成功不等于 CRM 工单已建好

改 URL 或停用动作,对之后发生的事件生效。已经失败的记录不会因为改配置自动改写,需要靠自动重试或日志里的重推。

五、能力地图

实际能开哪些类型,以企业开通能力和推送设置里可见分组为准。常见分组如下。

分组典型事件企业侧通常用来做什么
来电到达、座席侧响铃、接通、挂机、转移 / 咨询接通、队列排队弹屏、写会话、挂机回写
外呼预览 / 主叫 / 预测外呼的响铃、接听、挂断、任务与失败任务结果、座席辅助
WebCall首叫 / 转接响铃与接听、请求回调页面呼叫与回呼
SIP 接入进入、响铃、接通SIP 对接系统同步
状态座席状态、号码状态识别、录音状态调度、策略、质检取录音
转写与分析ASR、RASR、对话分析、智能体文本质检和分析平台
话单与其他主话单、从话单、DTMF、满意度、IVR 交互结束对账、闭环、审计

完整类型、建议参数和接收系统见 推送产品 附录。平台后续可能新增类型,接收方不要因为不认识就返回失败,见 系统兼容性。

六、配置项与生效

1. 配置来源与优先级

来源作用
管理端 · 推送设置主入口:目标接口 + 推送动作
OpenAPI 推送管理与页面同一套对象,适合批量或自动化
企业级兜底重推统一补偿策略,和单条动作的重试一起看
动作上的“推座席端”部分类型可只推座席端、只推 HTTP,或两者都推

同一条动作如果既引用了已有目标接口、又填了直配 URL,以目标接口为准。重试如果写了策略对象,以策略对象为准,不再看动作上单独的次数和间隔。

2. 目标接口

配置项作用条件与注意事项
名称企业内唯一,供动作引用改名不影响已发出的日志
URL企业接收地址必须以 http:// 或 https:// 开头;要公网可达
请求方式POST 或 GET带体量大的建议 POST
内容类型表单或 JSON与企业接口约定一致
超时等待响应秒数1~10;超时记失败并可能重试

配错表现:日志里连接失败、超时、证书错误,或一直打到旧地址。

3. 推送动作

配置项作用条件与注意事项
名称企业内唯一用于检索,不参与通话标识
推送类型绑定哪一类事件创建后类型不可改;要换类型需新建
启用是否参与匹配停用立即挡住后续事件
目标接口 / 直配发到哪里见上文优先级
参数发出去的字段名和取值字段名按企业接口约定;通话类务必带 mainUniqueId 或 uniqueId
条件满足才发不满足时日志里可能看不到这条,属未发送
重试次数 / 间隔失败后自动再发次数 0~3,间隔 0~60 秒;下游慢时不要拉满
延迟事件后再等几秒0~900 秒;适合等录音或话单字段齐
数据加工 / 加密发出前改结构或保护号码配错表现为企业收到空字段或解不开
推座席端是否同时给工作台只推座席端时,企业 URL 不会收到 HTTP

4. 企业接收约定

  • 成功:返回 HTTP 200。响应体保持简短,便于日志对照,例如 {"code":0,"message":"success"}。
  • 失败:非 200、超时、连接失败都可能触发重试。
  • 幂等:同一通话同一类型可能因重试或重推到达多次,用 mainUniqueId / uniqueId + 类型去重。
  • 未知类型:解析后忽略即可,不要整单失败。
  • 处理时长:业务入库放到异步,先回 200,避免拖过超时。

七、典型业务场景

  • 呼入弹屏:来电到达或座席侧响铃回调 CRM,用客户号码和热线号码打开资料。
  • 接通写回:来电接通或外呼双方接听后,工单记下座席工号和接通时间。
  • 挂机闭环:挂机或主话单回调后更新结果;以话单字段为业务终态,不以回调快慢为准。
  • 录音给质检:录音状态推送带录音地址,质检系统再去取文件。
  • 座席调度:座席状态变更推到自建监控,和综合状态页对账。

八、上线准备与运营建议

  1. 测试租户先做一条来电响铃或挂机,确认企业接口能被公网访问。
  2. 参数先带企业编号、通话标识、座席工号、客户号码,再加业务字段。
  3. 超时先给到能稳定回 200 的值,再收紧;重试从 1~2 次看起。
  4. 生产按系统拆分 URL,不要所有类型打进同一个不好排查的处理函数。
  5. 每天看失败量和响应耗时:Webhook 监控看健康,事件回调日志看单条。
  6. 推送失败时先对 uniqueId 查话单,再决定要不要重推。

九、与周边能力的关系

能力关系
推送产品类型清单、参数、条件、脚本的详细说明
事件回调日志每一次 HTTP 尝试的送达证明
Webhook 监控推送是否健康、是否重试、耗时如何
操作审计日志大类入口;用户操作日志能看到谁改过配置、谁点了重推
主话单 / 从话单通话事实;回调结果不符时以话单为准
座席工作台集成 · 事件座席浏览器里的实时事件,不是企业服务端 HTTP
服务端 SDK控通话;本页只收通知
呼叫中心管理集成企业调平台;本页是平台调企业
系统兼容性新增事件类型时接收方要能兼容

十、FAQ

页面保存了,为什么日志没有?
动作未启用、条件不满足、选错类型,或事件还没发生。先打一通测试电话,再按类型和时间查日志。

日志成功了,CRM 里没有记录?
平台只证明 HTTP 被企业接口接收。要在企业侧用通话标识查自己的处理队列和落库。

回调失败,话单会不会丢?
不会。话单独立沉淀。补的是通知,不是重放通话。

和工作台弹屏是一回事吗?
不是。工作台可用 AgentSDK 事件;企业中台用本页 HTTP。部分动作可以两种都推,要分别验收。

能不能靠 Webhook 转接或挂机?
不能。收通知走本页;通话中控制走服务端 SDK 或工作台。

十一、总结

先配可达的目标接口,再按类型启用推送动作,用一通测试电话走完“事件发生 → 日志成功 → 企业落库”。Webhook 解决的是事件怎么通知出去,不替代话单,也不替代通话控制。

附录 A:入口与权限

项说明
文档入口CTICloud 系统集成 → 实时会话控制集成 → Webhooks:事件回调
管理端配置企业配置 → 高级设置 → 推送设置
管理端对账推送日志(事件回调日志)
健康观察数据管理与分析 → 系统监控 → Webhook 监控
开放能力OpenAPI 推送管理(目标接口、推送动作);查询权限与密钥勾选一致

附录 B:关键字段口径

字段口径
URL企业接收地址;改了只影响之后的发送
推送类型事件种类;创建后不可改
启用停用则后续事件不匹配该动作
超时1~10 秒,超时计失败
重试次数0~3;另有间隔秒数
延迟0~900 秒后再发
mainUniqueId一通主通话锚点,联查主话单
uniqueId某一段通话或从话单
cno座席工号
状态码 / 响应文本企业接口回包,写在事件回调日志里

附录 C:实施检查清单

  • 测试环境 URL 公网可达,证书和防火墙已放行平台出口
  • 目标接口方法、内容类型与企业接口一致
  • 至少一条动作已启用,类型与要测的呼叫一致
  • 通话标识、座席工号、客户号码已放入参数
  • 企业接口对重复回调幂等,对未知类型不报错
  • 测试呼叫后,事件回调日志能看到成功记录
  • 人为返回非 200 时,重试次数与间隔符合配置
  • 失败样例能用 uniqueId 对上话单
  • 生产密钥只开推送管理需要的权限

附录 D:常见问题速查

现象可能原因建议处理
完全没有日志未启用、类型不对、条件过滤、事件未发生对照动作和测试呼叫
连接失败 / 超时URL 不可达、超时过短、企业处理太慢先回 200 再异步处理
4xx / 5xx企业校验失败或服务异常对照请求参数和响应文本
同一通话多条相同回调重试或人工重推按标识幂等
有回调无话单字段发早了,录音或话单未齐加延迟或改用话单 / 录音类型
只工作台有、企业没有动作只推了座席端改为 HTTP 或同时推
改了 URL 旧失败还打旧地址历史记录按当时配置重推新事件看新 URL;旧单按需重配后再重推

Did this page help you?