鸿蒙 CallPlus-v1.8.0
    Preparing search index...

    Interface ICallPlusEventListener

    callPlus 对外事件定义

    interface ICallPlusEventListener {
        onReceivedCall(session: RCCallPlusSession, extra?: string): void;
        onCallConnected(session: RCCallPlusSession): void;
        onRemoteUserInvited(
            inviteeUserList: string[],
            inviterUserId: string,
            callId: string,
        ): void;
        onCallEnded(session: RCCallPlusSession, reason: RCCallPlusReason): void;
        onRemoteUserStateChanged?(
            callId: string,
            userId: string,
            state: RCCallPlusSessionUserState,
            reason?: RCCallPlusReason,
        ): void;
        onFirstFrame(userId: string, mediaType: RCCallPlusMediaType): void;
        onCallTypeChanged?(type: RCCallPlusType, callId: string): void;
        onRemoteMicrophoneStateChanged?(
            callId: string,
            userId: string,
            disabled: boolean,
        ): void;
        onRemoteCameraStateChanged?(
            callId: string,
            userId: string,
            disabled: boolean,
        ): void;
        onReceivedCallRecord?(record: IRCCallPlusCallRecord): void;
        onReceivedChangeMediaTypeRequest?(
            userId: string,
            transactionId: string,
            mediaType: RCCallPlusMediaType,
        ): void;
        onReceivedChangeMediaTypeResult?(
            info: {
                userId: string;
                transactionId: string;
                mediaType: RCCallPlusMediaType;
                code: RCCallPlusMediaTypeChangeResult;
            },
        ): void;
        onReceivedCallStartTime?(
            info: {
                callId: string;
                callType: RCCallPlusType;
                callStartTime: number;
            },
        ): void;
        onReceivedCallFirstFrameTime?(
            callId: string,
            callFirstFrameTime: number,
        ): void;
        onFetchRemoteMediaError?(userId: string, code: number): void;
        onUserAudioLevelChanged?(userId: string, audioLevel: number): void;
        onReceivedCallPlusSummaryMessage?(message: Message): void;
    }
    Index

    Methods

    • 被叫用户/被邀请用户接收到通话呼叫通知

      Parameters

      • session: RCCallPlusSession

        通话实例

      • Optionalextra: string

        透传呼叫方发起呼叫时携带的附加信息

      Returns void

    • 远端用户被邀请通知

      Parameters

      • inviteeUserList: string[]

        受邀人用户 ID 列表

      • inviterUserId: string

        邀请者用户 ID

      • callId: string

        所属通话;群聊中,己方已不在通话中的情况下,也会收到服务侧的事件通知

      Returns void

      其他用户收到有用户被邀请加入通话会收到回调,如 A 与 B 通话中,A 邀请 C,则 B 会收到此回调

    • 音频或视频首帧可渲染 业务层可调 playMedia(userId, mediaType) 播放

      Parameters

      Returns void

    • 通话类型变更通知

      Parameters

      • type: RCCallPlusType

        通话类型,单聊或群聊

      • callId: string

        通话 id

      Returns void

      1. 单聊时,邀请其他用户加入通话成功,当前通话升级为群通话 2. 邀请和被邀请用户都会收到该通知
    • 远端用户麦克风开关状态通知

      Parameters

      • callId: string

        通话 id

      • userId: string

        远端用户 id

      • disabled: boolean

        麦克风开关状态,true 为关闭状态,false 为打开状态

      Returns void

    • 远端用户摄像头开关状态通知

      Parameters

      • callId: string

        通话 id

      • userId: string

        远端用户 id

      • disabled: boolean

        摄像头开关状态,true 为关闭状态,false 为打开状态

      Returns void

    • 本地用户参与的通话结束,服务器生成通话记录通知

      Parameters

      • record: IRCCallPlusCallRecord

        数据接口定义为:IRCCallPlusCallRecord,可通过 apiDoc 查看具体包含字段

      Returns void

      整个通话结束后才收到服务器通知

    • 通话中收到远端用户请求切换媒体类型通知

      Parameters

      • userId: string

        远端用户 ID

      • transactionId: string

        事务 id,本次请求和应答的唯一标识

      • mediaType: RCCallPlusMediaType

        请求切换的媒体类型,音频或音视频

      Returns void

      该通知在单聊场景使用

    • 通话中收到切换媒体类型结果通知

      Parameters

      Returns void

      该通知在单聊场景使用

    • 通话开始时间通知

      Parameters

      • info: { callId: string; callType: RCCallPlusType; callStartTime: number }
        • callId: string

          通话 id

        • callType: RCCallPlusType

          单聊或群聊

        • callStartTime: number

          通话开始时间(单位:ms)

      Returns void

      通话开始时间戳,为通话对应的房间首次被加入时的时间

    • 收到首帧时间通知

      Parameters

      • callId: string

        通话 id

      • callFirstFrameTime: number

        收到首帧时间戳(单位:ms),服务器生成的时间戳

      Returns void

    • 获取远端媒体资源失败

      Parameters

      • userId: string

        远端人员 id

      • code: number

        失败原因

      Returns void

    • 通话中用户音量通知

      Parameters

      • userId: string

        本端或远端人员 id

      • audioLevel: number

        为音量大小,取值范围为 [0,9]

      Returns void

    • 本地用户参与的通话结束,本地生成的通话消息记录通知

      Parameters

      • message: Message

        通话记录的消息体,可用于在 IM 聊天界面插入通话结束消息

      Returns void

      只有单聊通话会生成该通话消息