JCCallCallback 回调,用于回调一对一通话相关事件

interface JCCallCallback {
    onCallItemAdd?: ((item: JCCallItem) => void);
    onCallItemRemove?: ((item: JCCallItem, reason: number, description: string) => void);
    onCallItemUpdate?: ((item: JCCallItem, changeParam: ChangeParam) => void);
    onDtmfReceived?: ((item: JCCallItem, value: number) => void);
    onEarlyMediaReceived?: ((item: JCCallItem) => void);
    onMessageReceive?: ((type: string, content: string, item: JCCallItem) => void);
    onMissedCallItem?: ((item: JCCallItem) => void);
    onSipRingInfoReceived?: ((item: JCCallItem, callSipType: string) => void);
}

Properties

onCallItemAdd?: ((item: JCCallItem) => void)

新增通话回调

当上层收到此回调时,可以根据 JCCallItem 对象获得该通话的所有信息及状态,从而更新该通话相关UI

Type declaration

    • (item): void
    • Parameters

      Returns void

onCallItemRemove?: ((item: JCCallItem, reason: number, description: string) => void)

移除通话回调

当上层收到此回调时,可以根据 JCCallItem 对象获得该通话的所有信息及状态,从而更新该通话相关UI

Type declaration

    • (item, reason, description): void
    • Parameters

      • item: JCCallItem

        JCCallItem 对象

      • reason: number

        通话结束原因,参见:CallReason

      • description: string

        通话结束原因的描述,只有被动挂断的时候,才会收到这个值,其他情况下则返回空字符串

      Returns void

onCallItemUpdate?: ((item: JCCallItem, changeParam: ChangeParam) => void)

通话状态更新回调

当上层收到此回调时,可以根据 JCCallItem 对象获得该通话的所有信息及状态,从而更新该通话相关UI

Type declaration

    • (item, changeParam): void
    • Parameters

      Returns void

onDtmfReceived?: ((item: JCCallItem, value: number) => void)

通话中收到DTMF回调

Type declaration

    • (item, value): void
    • Parameters

      Returns void

onEarlyMediaReceived?: ((item: JCCallItem) => void)

收到早期媒体的回调

Type declaration

    • (item): void
    • Parameters

      Returns void

onMessageReceive?: ((type: string, content: string, item: JCCallItem) => void)

通话中收到消息的回调

Type declaration

    • (type, content, item): void
    • Parameters

      • type: string

        消息类型,对应 sendMessage 方法中的 type 参数

      • content: string

        消息内容,对应 sendMessage 方法中的 content 参数

      • item: JCCallItem

        JCCallItem 对象

      Returns void

onMissedCallItem?: ((item: JCCallItem) => void)

拉取未接来电的回调

有以下几种情况会收到此回调:

  • 用户A未登录,用户B呼叫用户A,用户A登录后收到此回调
  • 用户A已登录,但没开启应用,用户A在开启应用重新登录后会收到此回调
  • 已存在语音通话又收到了视频通话来电,此时会收到此回调
  • 已存在视频通话又收到了语音或视频来电,此时会收到此回调
  • 当前通话数量已达到最大通话数时又收到了语音或视频来电,此时会收到此回调

Type declaration

    • (item): void
    • Parameters

      Returns void

onSipRingInfoReceived?: ((item: JCCallItem, callSipType: string) => void)

收到sip振铃信息

Type declaration

    • (item, callSipType): void
    • Parameters

      • item: JCCallItem

        JCCallItem 对象

      • callSipType: string

      Returns void