ZegoChatroomDelegate Protocol Reference

Conforms to NSObject
Declared in ZegoChatroom.h

Overview

语聊房代理

– chatroom:didSeatsUpdate: required method

语聊房麦位更新回调(全量更新)

- (void)chatroom:(ZegoChatroom *)chatroom didSeatsUpdate:(NSArray<ZegoChatroomSeat*> *)seats

Parameters

chatroom

ZegoChatroom对象

seats

本次更新的麦位

Discussion

语聊房麦位更新回调(全量更新)

当麦位状态发生改变,将会触发该回调。开发者可以通过监听该回调来完成UI界面上麦位状态的更新。

Note: 内部实现逻辑是先更新成员变量seats,再触发该回调方法,后回调麦位操作回调方法。该回调中的seats即为当前最新的麦位状态。

Declared In

ZegoChatroom.h

– chatroomDidAVEngineStop:

SDK音视频引擎停止工作

- (void)chatroomDidAVEngineStop:(ZegoChatroom *)chatroom

Parameters

chatroom

ZegoChatroom对象

Discussion

SDK音视频引擎停止工作

该回调表示SDK已释放对设备的占用

Declared In

ZegoChatroom.h

– chatroom:didLoginEventOccur:loginStatus:error:

语聊房登录状态、事件回调

- (void)chatroom:(ZegoChatroom *)chatroom didLoginEventOccur:(ZegoChatroomLoginEvent)event loginStatus:(ZegoChatroomLoginStatus)status error:(nullable NSError *)error

Parameters

chatroom

ZegoChatroom对象

event

产生的登录事件

status

登录状态

error

错误,如果登录事件为登录错误事件,则错误为事件相关错误,否则为空

Discussion

语聊房登录状态、事件回调

登录房间登出房间,或者网络状态导致登录状态的改变,都会触发该回调。开发者可以通过监听该回调来判断是否登录房间成功。

Note: LoginFailed、Disconnect、KickOut 三种为登录错误事件。

Declared In

ZegoChatroom.h

– chatroom:didAutoReconnectRoomStop:

语聊房登录重连终止回调

- (void)chatroom:(ZegoChatroom *)chatroom didAutoReconnectRoomStop:(ZegoChatroomReconnectStopReason)reason

Parameters

chatroom

ZegoChatroom对象

reason

导致登录重连终止的原因

Discussion

语聊房登录重连终止回调

该方法只有在autoReconnectRoom开关打开时才会触发,并且会在语聊房登录状态、事件回调之后回调。

Declared In

ZegoChatroom.h

– chatroom:didLiveStatusUpdate:user:

语聊房上麦者直播连接状态更新回调

- (void)chatroom:(ZegoChatroom *)chatroom didLiveStatusUpdate:(ZegoChatroomUserLiveStatus)liveStatus user:(ZegoChatroomUser *)user

Parameters

chatroom

ZegoChatroom对象

liveStatus

直播连接状态

user

上麦者

Discussion

语聊房上麦者直播连接状态更新回调

当上麦者的直播连接状态更新后,都会触发该回调。直播连接状态是指声音推送、接收的情况。

Note: 当直播状态不是直播已连接(kZegoChatroomUserLiveStatusLive)的情况下,如果user为当前用户,则代表当前用户直播的声音不能够正常的发送出去;如果user不是当前用户,或者代表当前用户不能正常接受到user(如果user不是当前用户)推送过来的声音。开发者可以通过监听该回调,在UI上做出相应的提示,告知用户当前连接情况。

Declared In

ZegoChatroom.h

– chatroom:didLiveExtraInfoUpdate:user:

语聊房上麦者直播额外信息更新回调

- (void)chatroom:(ZegoChatroom *)chatroom didLiveExtraInfoUpdate:(nullable NSString *)extraInfo user:(ZegoChatroomUser *)user

Parameters

chatroom

ZegoChatroom对象

extraInfo

直播额外信息

user

上麦者

Discussion

语聊房上麦者直播额外信息更新回调

当其他用户通过(void)setLiveExtraInfo:修改他的直播额外信息,当前用户将会收本回调,在回调中将会获取到该用户修改后的直播额外信息。

Note: 设置额外信息成功后,所有用户都会收到该回调,即用户设置额外信息成功后也会触发该用户的回调。

Declared In

ZegoChatroom.h

– chatroom:didSoundLevelUpdate:user:

语聊房上麦者音量更新回调

- (void)chatroom:(ZegoChatroom *)chatroom didSoundLevelUpdate:(float)soundLevel user:(ZegoChatroomUser *)user

Parameters

chatroom

ZegoChatroom对象

soundLevel

音量,范围为[0.0,100.0]

user

上麦者

Discussion

语聊房上麦者音量更新回调

只会回调上麦者的音量,每0.5s回调一次。

Declared In

ZegoChatroom.h

– chatroom:didLiveQualityUpdate:user:

用户直播质量回调

- (void)chatroom:(ZegoChatroom *)chatroom didLiveQualityUpdate:(ZegoUserLiveQuality *)quality user:(ZegoChatroomUser *)user

Parameters

chatroom

ZegoChatroom对象

quality

直播质量

user

用户

Discussion

用户直播质量回调

用户直播推送或接收声音质量回调,每3s回调一次。

Declared In

ZegoChatroom.h

– chatroom:didUserTakeSeat:atIndex:

语聊房麦位操作回调–上麦

- (void)chatroom:(ZegoChatroom *)chatroom didUserTakeSeat:(ZegoChatroomUser *)user atIndex:(NSUInteger)index

Parameters

chatroom

ZegoChatroom对象

user

上麦者身份

index

上麦麦位索引

Discussion

语聊房麦位操作回调–上麦

上麦操作执行成功后会触发该回调。

Note: 当上麦操作执行成功后,所有用户都会收到该回调。

Declared In

ZegoChatroom.h

– chatroom:didUserLeaveSeat:atIndex:

语聊房麦位操作回调–下麦

- (void)chatroom:(ZegoChatroom *)chatroom didUserLeaveSeat:(ZegoChatroomUser *)user atIndex:(NSUInteger)index

Parameters

chatroom

ZegoChatroom对象

user

下麦者身份

index

下麦麦位索引

Discussion

语聊房麦位操作回调–下麦

下麦操作执行成功后会触发该回调。

Note: 当下麦操作执行成功后,所有用户都会收到该回调。

Declared In

ZegoChatroom.h

– chatroom:didUserChangeSeat:from:to:

语聊房麦位操作回调–换麦

- (void)chatroom:(ZegoChatroom *)chatroom didUserChangeSeat:(ZegoChatroomUser *)user from:(NSUInteger)fromIndex to:(NSUInteger)toIndex

Parameters

chatroom

ZegoChatroom对象

user

换麦者身份

fromIndex

换麦起始麦位索引,当用户未上麦时执行换麦操作,fromIndex 将为 -1

toIndex

换麦目标麦位索引

Discussion

语聊房麦位操作回调–换麦

换麦操作执行成功后会触发该回调。

Note: 当换麦操作执行成功后,所有用户都会收到该回调。

Declared In

ZegoChatroom.h

– chatroom:didUser:pickUpUser:atIndex:

语聊房麦位操作回调–抱人上麦

- (void)chatroom:(ZegoChatroom *)chatroom didUser:(nullable ZegoChatroomUser *)user pickUpUser:(ZegoChatroomUser *)toUser atIndex:(NSUInteger)index

Parameters

chatroom

ZegoChatroom对象

user

操作的用户,当该次麦位操作被其他操作覆盖,操作的用户会为空值

toUser

被抱上麦的用户

index

抱上麦麦位索引

Discussion

语聊房麦位操作回调–抱人上麦

抱人上麦操作执行成功后会触发该回调。

Note: 当抱人上麦操作执行成功后,所有用户都会收到该回调。当被抱人收到该回调的时候,被抱人的当前状态将会改变为上麦状态,并且会自动开始推送声音,为了避免被抱人在不知情的情况下推送声音,开发者可以再被抱人收到该回调的时候,主动禁用手机麦克风并提示。

Declared In

ZegoChatroom.h

– chatroom:didUser:kickOutUser:atIndex:

语聊房麦位操作回调–抱人下麦

- (void)chatroom:(ZegoChatroom *)chatroom didUser:(nullable ZegoChatroomUser *)user kickOutUser:(ZegoChatroomUser *)toUser atIndex:(NSUInteger)index

Parameters

chatroom

ZegoChatroom对象

user

操作的用户,当该次麦位操作被其他操作覆盖,操作的用户会为空值

toUser

被抱下麦的用户

index

操作麦位索引

Discussion

语聊房麦位操作回调–抱人下麦

抱人下麦操作执行成功后会触发该回调。

Note: 当抱人下麦操作执行成功后,所有用户都会收到该回调。被抱下麦用户收到该回调的同时,将会停止推送声音。

Declared In

ZegoChatroom.h

– chatroom:didUser:muteSeat:atIndex:

语聊房麦位操作回调–禁麦、解禁

- (void)chatroom:(ZegoChatroom *)chatroom didUser:(ZegoChatroomUser *)user muteSeat:(BOOL)mute atIndex:(NSUInteger)index

Parameters

chatroom

ZegoChatruoom对象

user

操作的用户

mute

是否禁麦

index

操作目标麦位索引

Discussion

语聊房麦位操作回调–禁麦、解禁

禁麦、解禁操作执行成功后会触发该回调。

Note: 当禁麦、解麦操作执行成功后,所有用户都会收到该回调。

Declared In

ZegoChatroom.h

– chatroom:didUser:closeSeat:atIndex:

语聊房麦位操作回调–封麦、解封

- (void)chatroom:(ZegoChatroom *)chatroom didUser:(ZegoChatroomUser *)user closeSeat:(BOOL)close atIndex:(NSUInteger)index

Parameters

chatroom

ZegoChatroom对象

user

操作的用户

close

是否封麦

index

封麦目标麦位索引

Discussion

语聊房麦位操作回调–封麦、解封

禁麦、解禁操作执行成功后会触发该回调。

Note: 当禁麦、解麦操作执行成功后,所有用户都会收到该回调。

Declared In

ZegoChatroom.h