NERoomListener

@objc
public protocol NERoomListener : NEPreviewRoomListener

房间监听协议

  • 房间属性变更回调

    Declaration

    Swift

    @objc
    optional func onRoomPropertiesChanged(properties: [String : String])

    Parameters

    properties

    房间属性

  • 房间属性删除回调

    Declaration

    Swift

    @objc
    optional func onRoomPropertiesDeleted(properties: [String : String])

    Parameters

    properties

    房间属性

  • 成员角色变更通知

    添加监听后,有成员角色变更会触发此方法

    Declaration

    Swift

    @objc
    optional func onMemberRoleChanged(member: NERoomMember,
                                      oldRole: NERoomRole,
                                      newRole: NERoomRole)

    Parameters

    member

    成员信息

    beforeRole

    变更前 角色

    afterRole

    变更后 角色

  • 成员名称变更回调

    Declaration

    Swift

    @objc
    optional func onMemberNameChanged(member: NERoomMember,
                                      name: String)

    Parameters

    member

    成员信息

    name

    成员名称

  • 成员名称变更回调

    Declaration

    Swift

    @objc
    optional func onMemberNameChanged(member: NERoomMember,
                                      name: String,
                                      operateBy: NERoomMember?)

    Parameters

    member

    成员信息

    name

    成员名称

    operateBy

    操作者

  • 成员扩展信息变更回调

    Declaration

    Swift

    @objc
    optional func onMemberExtChanged(member: NERoomMember,
                                     ext: String)

    Parameters

    member

    成员信息

    name

    成员扩展信息

  • 成员属性变更回调

    Declaration

    Swift

    @objc
    optional func onMemberPropertiesChanged(member: NERoomMember,
                                            properties: [String: String])

    Parameters

    member

    成员对象

    properties

    属性字典

  • 成员属性删除回调

    Declaration

    Swift

    @objc
    optional func onMemberPropertiesDeleted(member: NERoomMember,
                                            properties: [String: String])

    Parameters

    member

    成员对象

    properties

    属性字典

  • 成员加入房间回调

    添加监听后,有成员加入房间会触发此方法

    Declaration

    Swift

    @objc
    optional func onMemberJoinRoom(members: [NERoomMember])

    Parameters

    members

    成员信息

  • 成员离开房间回调

    添加监听后,有成员离开房间会触发此方法

    Declaration

    Swift

    @objc
    optional func onMemberLeaveRoom(members: [NERoomMember])

    Parameters

    members

    成员信息

  • 房间结束回调

    添加监听后,房间结束会触发此方法

    Declaration

    Swift

    @objc
    optional func onRoomEnded(reason: NERoomEndReason)

    Parameters

    reason

    结束原因

  • 房间结束回调

    添加监听后,房间结束会触发此方法

    Declaration

    Swift

    @objc
    optional func onRoomEnded(reason: NERoomEndReason, extra: String?)

    Parameters

    reason

    结束原因

  • 成员加入音视频频道回调

    添加监听后,有成员加入音视频频道会触发此方法

    Declaration

    Swift

    @objc
    optional func onMemberJoinRtcChannel(members: [NERoomMember])

    Parameters

    members

    成员信息数组

  • 成员离开音视频频道回调

    添加监听后,有成员离开音视频频道会触发此方法

    Declaration

    Swift

    @objc
    optional func onMemberLeaveRtcChannel(members: [NERoomMember])

    Parameters

    members

    成员信息数组

  • 音视频频道出错回调

    添加监听后,有音视频频道出错会触发此方法

    Declaration

    Swift

    @objc
    optional func onRtcChannelError(code: Int)

    Parameters

    code

    错误码

  • RTC频道错误回调

    Declaration

    Swift

    @objc
    optional func onRtcChannelError(channel: String?, code: Int)

    Parameters

    channel

    频道名称,空代表主频道

    code

    RTC错误码

  • RTC频道断开回调

    Declaration

    Swift

    @objc
    optional func onRtcChannelDisconnect(channel: String?, reason: Int)

    Parameters

    channel

    频道名称,空代表主频道

    reason

    RTC错误码

  • 成员加入聊天室回调

    添加监听后,有成员加入聊天室会触发此方法

    Declaration

    Swift

    @objc
    optional func onMemberJoinChatroom(members: [NERoomMember])

    Parameters

    members

    成员信息列表

  • 成员离开聊天室回调

    添加监听后,有成员离开聊天室会触发此方法

    Declaration

    Swift

    @objc
    optional func onMemberLeaveChatroom(members: [NERoomMember])

    Parameters

    members

    成员信息列表

  • 聊天室状态回调

    添加监听后,聊天室状态变更会触发此回调

    Declaration

    Swift

    @objc
    optional func onChatroomStateChange(state: NEChatroomState)

    Parameters

    state

    聊天室状态

  • 成员音频关闭回调

    添加监听后,成员音频状态变更会触发此方法

    Declaration

    Swift

    @objc
    optional func onMemberAudioMuteChanged(member: NERoomMember,
                                           mute: Bool,
                                           operateBy: NERoomMember?)

    Parameters

    member

    成员信息

    mute

    是否关闭

    operatorMember

    操作者

  • 成员视频关闭回调

    添加监听后,成员视频状态变更会触发此方法

    Declaration

    Swift

    @objc
    optional func onMemberVideoMuteChanged(member: NERoomMember,
                                           mute: Bool,
                                           operateBy: NERoomMember?)

    Parameters

    member

    成员信息

    mute

    是否关闭

    operatorMember

    操作者

  • 成员共享状态改变回调

    添加监听后,成员屏幕共享状态变更会触发此方法

    Declaration

    Swift

    @objc
    optional func onMemberScreenShareStateChanged(member: NERoomMember,
                                                  isSharing: Bool,
                                                  operateBy: NERoomMember?)

    Parameters

    member

    成员信息

    isSharing

    是否在共享

    operatorMember

    操作者

  • 房间锁定状态变更

    Declaration

    Swift

    @objc
    optional func onRoomLockStateChanged(isLocked: Bool)

    Parameters

    isLocked

    是否锁定

  • 房间黑名单状态变更通知

    Declaration

    Swift

    @objc
    optional func onRoomBlacklistStateChanged(isEnabled: Bool)

    Parameters

    isEnabled

    房间是否开启黑名单

  • 房间直播状态变更

    Declaration

    Swift

    @objc
    optional func onRoomLiveStateChanged(state: NERoomLiveState)

    Parameters

    state

    直播状态

  • 聊天室消息回调

    添加监听后,收到聊天室消息会触发此方法

    Declaration

    Swift

    @objc
    optional func onReceiveChatroomMessages(messages: [NERoomChatMessage])

    Parameters

    messages

    消息列表

  • 聊天室消息附件上传/下载进度回调

    Declaration

    Swift

    @objc
    optional func onChatroomMessageAttachmentProgress(messageUuid: String, transferred: Int64,
                                                      total: Int64)

    Parameters

    messageUuid

    消息唯一Id

    transferred

    已传输的大小

    total

    总大小

  • 反垃圾消息拦截回调

    Declaration

    Swift

    @objc
    optional func onAntiSpamMessageIntercepted(messageUuid: String?, antiSpamRes: NERoomYidunAntiSpamRes)

    Parameters

    messageUuid

    消息唯一ID

    antiSpamRes

    反垃圾结果

  • 成员白板状态变更回调

    添加监听后,成员白板共享状态变更会触发此方法

    Declaration

    Swift

    @objc
    optional func onMemberWhiteboardStateChanged(member: NERoomMember,
                                                 isSharing: Bool,
                                                 operateBy: NERoomMember?)

    Parameters

    member

    成员信息

    isSharing

    是否在共享

    operatorMember

    操作者

  • 白板异常回调

    添加监听后,白板异常会触发此方法

    Declaration

    Swift

    @objc
    optional func onWhiteboardError(code: Int,
                                    message: String)

    Parameters

    code

    状态码

    message

    状态码信息

  • 提示房间内谁正在说话及说话这瞬时音量的回调,该回调默认为关闭状态

    可通过 [NERoomRtcController enableAudioVolumeIndication] 方法开启 开启后 无论房间内是否有人说话,SDK 都会按设置的时间间隔触发该回调。

    • 如果有 [NEMemberVolumeInfo.userUuid] 出现在上次返回的列表中,但不在本次返回的列表中,则默认该 userId 对应的远端用户没有说话。
    • 如果 [NEMemberVolumeInfo.volume] 为 0,表示该用户没有说话。
    • 如果列表为空,则表示此时远端没有人说话。

    Declaration

    Swift

    @objc
    optional func onRtcRemoteAudioVolumeIndication(volumes: [NEMemberVolumeInfo],
                                                   totalVolume: Int)

    Parameters

    volumes

    每个说话者的用户ID和音量信息列表

    totalVolume

    混合后的总音量,取值范围为 0~100

  • 提示房间内谁正在说话及说话这瞬时音量的回调,该回调默认为关闭状态

    可通过 [NERoomRtcController enableAudioVolumeIndication] 方法开启 开启后 无论房间内是否有人说话,SDK 都会按设置的时间间隔触发该回调。

    • 如果有 [NEMemberVolumeInfo.userUuid] 出现在上次返回的列表中,但不在本次返回的列表中,则默认该 userId 对应的远端用户没有说话。
    • 如果 [NEMemberVolumeInfo.volume] 为 0,表示该用户没有说话。
    • 如果列表为空,则表示此时远端没有人说话。

    Declaration

    Swift

    @objc
    optional func onRtcRemoteAudioVolumeIndication(channel: String?,
                                                   volumes: [NEMemberVolumeInfo],
                                                   totalVolume: Int)

    Parameters

    channel

    频道名称,空代表主频道

    volumes

    每个说话者的用户ID和音量信息列表

    totalVolume

    混合后的总音量,取值范围为 0~100

  • 本端瞬时音量回调及是否检测到人声

    Declaration

    Swift

    @objc
    optional func onRtcLocalAudioVolumeIndication(volume: Int, enableVad: Bool)

    Parameters

    volume

    音量 enableVad : 是否检测到人声。

  • 本端瞬时音量回调及是否检测到人声

    Declaration

    Swift

    @objc
    optional func onRtcLocalAudioVolumeIndication(channel: String?, volume: Int, enableVad: Bool)

    Parameters

    channel

    频道名称,空代表主频道

    volume

    音量

    enableVad

    是否检测到人声。

  • 本端音频输出设备变更通知,如切换到扬声器、听筒、耳机等

    Declaration

    Swift

    @objc
    optional func onRtcAudioOutputDeviceChanged(device: NEAudioOutputDevice)

    Parameters

    device

    音频输出类型

  • 接收到Rtc 的SEI信息

    Declaration

    Swift

    @objc
    optional func onRtcReceiveSEIMessage(_ userUuid: String, message: Data)

    Parameters

    userUuid

    用户Id

    message

    信息流

  • 播放完成

    Declaration

    Swift

    @objc
    optional func onRtcAudioEffectFinished(effectId: UInt32)

    Parameters

    effectId

    音效Id

  • 音效播放进度

    Declaration

    Swift

    @objc
    optional func onRtcAudioEffectTimestampUpdate(effectId: UInt32, timeStampMS: UInt64)

    Parameters

    effectId

    音效Id

    timeStampMS

    播放进度

  • 房间时长变更回调

    Declaration

    Swift

    @objc
    optional func onRoomRemainingSecondsRenewed(remainingSeconds: Int)

    Parameters

    duration

    房间时长

  • 房间名称变更回调

    Declaration

    Swift

    @objc
    optional func onRoomNameChanged(roomName: String)

    Parameters

    roomName

    房间信息

  • 房间扩展信息变更回调

    Declaration

    Swift

    @objc
    optional func onRoomExtChanged(roomExt: String)

    Parameters

    roomName

    房间信息

  • 房间连接状态已改变回调。 该回调在房间连接状态发生改变的时候触发,并告知用户当前的房间连接状态和引起房间状态改变的原因。

    Declaration

    Swift

    @objc
    optional func onRoomConnectStateChanged(state: Int)
  • 房间云录制状态回调

    • state 云录制状态
    • operateBy 状态变更的操作者

    Declaration

    Swift

    @objc
    optional func onRoomCloudRecordStateChanged(state: NERoomCloudRecordState, operateBy: NERoomMember?)
  • 房间聊天禁言状态变更回调 @param banned 禁言状态 true表示禁言,false表示解禁 @param notifyExt 扩展信息 @param operateBy 操作者

    Declaration

    Swift

    @objc
    optional func onRoomChatBanStateChanged(banned: Bool, notifyExt: String?, operateBy: NERoomMember?)
  • 房间音频禁言状态变更回调 @param banned 禁言状态 true表示禁言,false表示解禁 @param notifyExt 扩展信息 @param operateBy 操作者

    Declaration

    Swift

    @objc
    optional func onRoomAudioBanStateChanged(banned: Bool, notifyExt: String?, operateBy: NERoomMember?)
  • 房间视频禁言状态变更回调 @param banned 禁言状态 true表示禁言,false表示解禁 @param notifyExt 扩展信息 @param operateBy 操作者

    Declaration

    Swift

    @objc
    optional func onRoomVideoBanStateChanged(banned: Bool, notifyExt: String?, operateBy: NERoomMember?)
  • 成员聊天禁言状态变更回调 @param banned 禁言状态 true表示禁言,false表示解禁 @param duration 禁言时长,单位秒 @param notifyExt 扩展信息 @param operateBy 操作者

    Declaration

    Swift

    @objc
    optional func onMemberChatBanStateChanged(member: NERoomMember?, banned: Bool, duration: Int64, notifyExt: String?, operateBy: NERoomMember?)
  • 成员音频禁言状态变更回调 @param banned 禁言状态 true表示禁言,false表示解禁 @param notifyExt 扩展信息 @param duration 禁言时长,单位秒 @param operateBy 操作者

    Declaration

    Swift

    @objc
    optional func onMemberAudioBanStateChanged(member: NERoomMember?, banned: Bool, duration: Int64, notifyExt: String?, operateBy: NERoomMember?)
  • 成员视频禁言状态变更回调 @param banned 禁言状态 true表示禁言,false表示解禁 @param duration 禁言时长,单位秒 @param notifyExt 扩展信息 @param operateBy 操作者

    Declaration

    Swift

    @objc
    optional func onMemberVideoBanStateChanged(member: NERoomMember?, banned: Bool, duration: Int64, notifyExt: String?, operateBy: NERoomMember?)
  • 成员被拉黑状态变更回调 @param member 成员 @param notifyExt 扩展信息 @param operateBy 操作者

    Declaration

    Swift

    @objc
    optional func onMemberAddToBlacklist(userUuid: String, notifyExt: String?, operateBy: NERoomMember?)
  • 成员被取消拉黑状态变更回调 @param member 成员 @param notifyExt 扩展信息 @param operateBy 操作者

    Declaration

    Swift

    @objc
    optional func onMemberRemoveFromBlacklist(userUuid: String, notifyExt: String?, operateBy: NERoomMember?)
  • 成员音频连接状态变更,该回调由房间里的成员调用NERoomRtcController.disconnectMyAudio()与NERoomRtcController.reconnectMyAudio()触发

    Declaration

    Swift

    @objc
    optional func onMemberAudioConnectStateChanged(member: NERoomMember?, isAudioConnected: Bool)

    Parameters

    member

    变更的成员对象

    isAudioConnected

    成员音频是否连接

  • 成员SIP邀请状态变更

    Declaration

    Swift

    @objc
    optional func onMemberSIPInviteStateChanged(member: NERoomMember, operateBy: NERoomMember?)

    Parameters

    member

    变更的成员对象

    operateBy

    操作者

  • 成员App邀请状态变更

    Declaration

    Swift

    @objc
    optional func onMemberAppInviteStateChanged(member: NERoomMember, operateBy: NERoomMember?)

    Parameters

    member

    变更的成员对象

    operateBy

    操作者

  • 房间批注可用状态变更

    Declaration

    Swift

    @objc
    optional func onRoomAnnotationEnableChanged(enabled: Bool, operateBy: NERoomMember?)

    Parameters

    enabled

    当前批注是否可用

    operateBy

    操作权限的成员

  • 房间最大人数变更回调

    Declaration

    Swift

    @objc
    optional func onRoomMaxMembersChanged(maxMembers: Int)

    Parameters

    maxMembers

    最大人数

  • 接收到字幕消息

    Since

    1.30.0

    Declaration

    Swift

    @objc
    optional func onReceiveCaptionMessages(channel: String?, captionMessages: [NERoomCaptionMessage])

    Parameters

    channel

    频道,如果为空,则为主频道

    captionMessages

    字幕消息列表

  • 开启/关闭字幕状态变更通知

    Since

    1.30.0

    Declaration

    Swift

    @objc
    optional func onCaptionStateChanged(state: NERoomCaptionState, code: NERoomCaptionErrorCode, message: String?)

    Parameters

    state

    字幕状态值

    code

    错误码

    message

    错误描述

  • 成员共享系统音频状态回调(仅音频共享)

    Declaration

    Swift

    @objc
    optional func onMemberSystemAudioShareStateChanged(member: NERoomMember, isSharing: Bool, operateBy: NERoomMember?)

    Parameters

    member

    成员

    isSharing

    是否正在共享系统音频

    operateBy

    操作者

  • 检测到啸叫回调。 当声源与扩音设备之间因距离过近时,可能会产生啸叫。 当 SDK 检测到有啸叫信号产生的时候,自动触发该回调直至啸叫停止。

    Declaration

    Swift

    @objc
    optional func onAudioHasHowling(flag: Bool)

    Parameters

    flag

    是否检测到啸叫。YES 表示检测到啸叫,NO 表示没有检测到啸叫