PLVLinkMicManagerDelegate

Objective-C

@protocol PLVLinkMicManagerDelegate <NSObject>

@optional

#pragma mark 本地用户(自己)事件回调
/// 本地用户 加入RTC频道回调
///
/// @param manager 连麦管理器
/// @param channelID 加入频道ID
/// @param uid 当前加入RTC用户的RTCId
- (void)plvLinkMicManager:(PLVLinkMicManager * _Nonnull)manager joinRTCChannelComplete:(NSString * _Nonnull)channelID uid:(NSString *)uid;

/// 本地用户 退出RTC频道回调
///
/// @param manager 连麦管理器
/// @param channelID 退出频道ID
- (void)plvLinkMicManager:(PLVLinkMicManager * _Nonnull)manager leaveRTCChannelComplete:(NSString * _Nonnull)channelID;

/// 本地用户 连麦错误发生回调
///
/// @note 若自动退出RTC频道,则会触发 [leaveRTCChannelComplete:] 回调
///
/// @param manager 连麦管理器
/// @param errorCode 错误码
- (void)plvLinkMicManager:(PLVLinkMicManager * _Nonnull)manager didOccurError:(NSInteger)errorCode;

/// 本地用户 ’网络状态‘ 发生变化
///
/// @param manager 连麦管理器
/// @param networkQuality 当前 ‘网络状态’ 状态值
- (void)plvLinkMicManager:(PLVLinkMicManager *)manager networkQualityDidChanged:(PLVBLinkMicNetworkQuality)networkQuality;

#pragma mark 远端用户(别人)事件回调
/// 远端用户 加入RTC频道回调
///
/// @param manager 连麦管理器
/// @param uid 远端用户id
- (void)plvLinkMicManager:(PLVLinkMicManager * _Nonnull)manager didJoinedOfUid:(NSString *)uid;

/// 远端用户 退出RTC频道回调
///
/// @param manager 连麦管理器
/// @param uid 远端用户id
- (void)plvLinkMicManager:(PLVLinkMicManager * _Nonnull)manager didOfflineOfUid:(NSString *)uid;

/// 远端用户 音频流禁止状态更新回调
///
/// @param manager 连麦管理器
/// @param muted 音频流是否禁止
/// @param uid 禁止状态更新的用户连麦ID
- (void)plvLinkMicManager:(PLVLinkMicManager * _Nonnull)manager didAudioMuted:(BOOL)muted byUid:(NSString *)uid;

/// 远端用户 视频流禁止状态更新回调
///
/// @param manager 连麦管理器
/// @param muted 视频流是否禁止
/// @param uid 禁止状态更新的用户连麦ID
- (void)plvLinkMicManager:(PLVLinkMicManager * _Nonnull)manager didVideoMuted:(BOOL)muted byUid:(NSString *)uid;

#pragma mark 通用(自己、别人) 事件回调
/// 远端用户 全部流已退出房间
///
/// @param manager 连麦管理器
/// @param uid 远端用户连麦ID
- (void)plvLinkMicManager:(PLVLinkMicManager * _Nonnull)manager remoteUserTotalStreamsDidLeaveRoom:(NSString *)uid;

/// 全部连麦成员的音频音量 回调
///
/// @note 该回调的时间间隔约为 100ms~300ms
///
/// @param manager 连麦管理器
/// @param volumeDict 连麦成员音量字典 (key:用户连麦ID,value:对应的流的音量值;value取值范围为 0.0 ~ 1.0)
- (void)plvLinkMicManager:(PLVLinkMicManager * _Nonnull)manager reportAudioVolumeOfSpeakers:(NSDictionary<NSString *, NSNumber *> * _Nonnull)volumeDict;

/// RTC频道内某位用户 ‘网络状态’ 发生改变回调
///
/// @param manager 连麦管理器
/// @param userRTCId 当前回调对应的用户RTCId
/// @param txQuality 该用户的上行网络状态
/// @param rxQuality 该用户的下行网络状态
- (void)plvLinkMicManager:(PLVLinkMicManager * _Nonnull)manager userNetworkQualityDidChanged:(NSString *)userRTCId txQuality:(PLVBLinkMicNetworkQuality)txQuality rxQuality:(PLVBLinkMicNetworkQuality)rxQuality;

@end

Swift

protocol PLVLinkMicManagerDelegate : NSObjectProtocol

Undocumented

本地用户(自己)事件回调

  • 本地用户 加入RTC频道回调

    Declaration

    Objective-C

    - (void)plvLinkMicManager:(PLVLinkMicManager *_Nonnull)manager
        joinRTCChannelComplete:(NSString *_Nonnull)channelID
                           uid:(nonnull NSString *)uid;

    Swift

    optional func plvLinkMicManager(_ manager: PLVLinkMicManager, joinRTCChannelComplete channelID: String, uid: String)

    Parameters

    manager

    连麦管理器

    channelID

    加入频道ID

    uid

    当前加入RTC用户的RTCId

  • 本地用户 退出RTC频道回调

    Declaration

    Objective-C

    - (void)plvLinkMicManager:(PLVLinkMicManager *_Nonnull)manager
        leaveRTCChannelComplete:(NSString *_Nonnull)channelID;

    Swift

    optional func plvLinkMicManager(_ manager: PLVLinkMicManager, leaveRTCChannelComplete channelID: String)

    Parameters

    manager

    连麦管理器

    channelID

    退出频道ID

  • 本地用户 连麦错误发生回调

    Note

    若自动退出RTC频道,则会触发 [leaveRTCChannelComplete:] 回调

    Declaration

    Objective-C

    - (void)plvLinkMicManager:(PLVLinkMicManager *_Nonnull)manager
                didOccurError:(NSInteger)errorCode;

    Swift

    optional func plvLinkMicManager(_ manager: PLVLinkMicManager, didOccurError errorCode: Int)

    Parameters

    manager

    连麦管理器

    errorCode

    错误码

  • 本地用户 ’网络状态‘ 发生变化

    Declaration

    Objective-C

    - (void)plvLinkMicManager:(nonnull PLVLinkMicManager *)manager
        networkQualityDidChanged:(id)networkQuality;

    Swift

    optional func plvLinkMicManager(_ manager: PLVLinkMicManager, networkQualityDidChanged networkQuality: Any!)

    Parameters

    manager

    连麦管理器

    networkQuality

    当前 ‘网络状态’ 状态值

远端用户(别人)事件回调

  • 远端用户 加入RTC频道回调

    Declaration

    Objective-C

    - (void)plvLinkMicManager:(PLVLinkMicManager *_Nonnull)manager
               didJoinedOfUid:(nonnull NSString *)uid;

    Swift

    optional func plvLinkMicManager(_ manager: PLVLinkMicManager, didJoinedOfUid uid: String)

    Parameters

    manager

    连麦管理器

    uid

    远端用户id

  • 远端用户 退出RTC频道回调

    Declaration

    Objective-C

    - (void)plvLinkMicManager:(PLVLinkMicManager *_Nonnull)manager
              didOfflineOfUid:(nonnull NSString *)uid;

    Swift

    optional func plvLinkMicManager(_ manager: PLVLinkMicManager, didOfflineOfUid uid: String)

    Parameters

    manager

    连麦管理器

    uid

    远端用户id

  • 远端用户 音频流禁止状态更新回调

    Declaration

    Objective-C

    - (void)plvLinkMicManager:(PLVLinkMicManager *_Nonnull)manager
                didAudioMuted:(BOOL)muted
                        byUid:(nonnull NSString *)uid;

    Swift

    optional func plvLinkMicManager(_ manager: PLVLinkMicManager, didAudioMuted muted: Bool, byUid uid: String)

    Parameters

    manager

    连麦管理器

    muted

    音频流是否禁止

    uid

    禁止状态更新的用户连麦ID

  • 远端用户 视频流禁止状态更新回调

    Declaration

    Objective-C

    - (void)plvLinkMicManager:(PLVLinkMicManager *_Nonnull)manager
                didVideoMuted:(BOOL)muted
                        byUid:(nonnull NSString *)uid;

    Swift

    optional func plvLinkMicManager(_ manager: PLVLinkMicManager, didVideoMuted muted: Bool, byUid uid: String)

    Parameters

    manager

    连麦管理器

    muted

    视频流是否禁止

    uid

    禁止状态更新的用户连麦ID

通用(自己、别人) 事件回调

  • 远端用户 全部流已退出房间

    Declaration

    Objective-C

    - (void)plvLinkMicManager:(PLVLinkMicManager *_Nonnull)manager
        remoteUserTotalStreamsDidLeaveRoom:(nonnull NSString *)uid;

    Swift

    optional func plvLinkMicManager(_ manager: PLVLinkMicManager, remoteUserTotalStreamsDidLeaveRoom uid: String)

    Parameters

    manager

    连麦管理器

    uid

    远端用户连麦ID

  • 全部连麦成员的音频音量 回调

    Note

    该回调的时间间隔约为 100ms~300ms

    Declaration

    Objective-C

    - (void)plvLinkMicManager:(PLVLinkMicManager *_Nonnull)manager
        reportAudioVolumeOfSpeakers:
            (NSDictionary<NSString *, NSNumber *> *_Nonnull)volumeDict;

    Swift

    optional func plvLinkMicManager(_ manager: PLVLinkMicManager, reportAudioVolumeOfSpeakers volumeDict: [String : NSNumber])

    Parameters

    manager

    连麦管理器

    volumeDict

    连麦成员音量字典 (key:用户连麦ID,value:对应的流的音量值;value取值范围为 0.0 ~ 1.0)

  • RTC频道内某位用户 ‘网络状态’ 发生改变回调

    Declaration

    Objective-C

    - (void)plvLinkMicManager:(PLVLinkMicManager *_Nonnull)manager
        userNetworkQualityDidChanged:(nonnull NSString *)userRTCId
                           txQuality:(id)txQuality
                           rxQuality:(id)rxQuality;

    Swift

    optional func plvLinkMicManager(_ manager: PLVLinkMicManager, userNetworkQualityDidChanged userRTCId: String, txQuality: Any!, rxQuality: Any!)

    Parameters

    manager

    连麦管理器

    userRTCId

    当前回调对应的用户RTCId

    txQuality

    该用户的上行网络状态

    rxQuality

    该用户的下行网络状态