logo
当前页

呼叫取消回调


描述

当出现以下情况(可分为两类)时,业务后台可以接收 ZIM 服务端的呼叫取消回调,用于确定呼叫状态:

  • 主动取消:
    • 呼叫发起用户主动取消呼叫。
    • 在呼叫邀请成功创建后至其超时前,没有任何呼叫对象接受,发起用户主动登出。
    • 在呼叫邀请成功创建后至其超时前,没有任何呼叫对象接受,发起用户因心跳超时导致掉线。
  • 超时取消:
    • 在呼叫邀请成功创建后至其超时时,没有任何呼叫对象响应,发起用户在线。

      说明

      如果在呼叫成功创建后至呼叫超时时,没有任何呼叫对象响应,发起用户掉线,则会触发 呼叫超时回调

回调说明

  • 请求方法:POST。
    说明

    回调数据需要 UrlDecode 解码。

  • 请求地址:请在 ZEGO 控制台 上配置回调地址,配置流程请参考控制台文档 ZIM 相关回调配置
  • 传输协议:HTTPS/HTTP,建议使用 HTTPS。

回调参数

参数类型说明
appidStringAPP 的唯一标识。
eventString回调事件,此回调返回值为 call_cancel。
nonceString随机数。
signatureString检验串,详情见 检验说明
timestampInt服务器当前时间,Unix 时间戳。
call_idString呼叫 ID。
user_idsArray呼叫对象用户 ID 列表。
说明

当呼叫取消时,若呼叫对象登出了,呼叫取消回调的 user_ids 仍会返回该呼叫对象。

reasonString取消的原因:
  • 主动取消(caller_cancel)
  • 超时取消(timeout_cancel)
payloadString呼叫取消填充的扩展字段。
说明

建议您将部分参数转换为 Int 进行逻辑处理,相关字段包括 appidnonce

数据示例

Untitled
{
    "appid": "1",
    "event": "call_cancel",
    "nonce": "350176",
    "signature": "signature",
    "timestamp": 1499676978,
    "call_id": "3501761173612493269",
    "user_ids": ["abc","def"],
    "reason": "caller_cancel",
    "payload": "payload",
}
1
Copied!

返回响应

返回 HTTP status code 为 2XX (例如 200)表示成功,其他响应都表示失败。

回调重试策略

如果 ZEGO 服务器没有收到响应,或收到的 HTTP status code 不为 2XX(例如 200),都会尝试重试,最多进行 5 次重试。每次重试请求与上一次请求的间隔时间分别为 2s、4s、8s、16s、32s。若第 5 次重试后仍然失败,将不再重试,该回调丢失。

Previous

呼叫创建

Next

呼叫接受