AVDRoomDelegate

Extends Protocol:
NSObject
Declared In:

Introduction

房间回调接口类

房间回调接口定义了房间对象操作的异步返回,房间通知,房间指示。



Methods

-onAppDataNotify:value:
-onConnectionStatus:
-onJoinResult:
-onLeaveIndication:fromUser:
-onPrivateData:fromUser:
-onPublicData:fromUser:
-onRoomStatusNotify:

onAppDataNotify:value:


@optional

- (void)onAppDataNotify:(NSString*)key value:(NSString*)value;
Discussion

房间应用层数据更改通知

@param[in] key 应用层数据关键字。 @param[in] value 应用层数据关键字相关数据内容。

@sa updateAppData


onConnectionStatus:


@required

- (void)onConnectionStatus:(enum AVDConnectionStatus)status;
Discussion

房间网络状态通知

@param[in] status 当前网络状态。


onJoinResult:


@optional

- (void)onJoinResult:(AVDResult)result;
Return Value

0 成功 Err_Stream_Connection_TimeOut 房间加会超时:可能原因有服务器没返回信令握手等 Err_Rest_GetMcu_Failure 集群中获取可用mcu失败; Err_Net_ChannelSignal_Failure 房间信令连接失败,检查服务器地址和端口,及本地网络; Err_Net_ChannelData_Failure 房间数据连接失败(未实现) @sa join

Discussion

加入房间操作异步返回

@param[in] result 加入错误代码。


onLeaveIndication:fromUser:


@required

- (void)onLeaveIndication:(AVDResult)reason fromUser:(AVDUserId)fromId;
Discussion

指示用户离开房间

@param[in] reason 离开房间理由代码,正常离开为AVD_OK。 @param[in] fromId 指示发起用户Id。

SDK内部已经开始释放房间资源,应用层可以不调用leave:

reason: Err_User_DuplicateJoin 用户Id在别处登录,先前同一Id被踢出; Err_User_DataConnection_Failed 数据链接连接失败,用户无法正常使用房间,用户被服务器踢出; 其他 kickoutUser 传入的错误码,被其他用户踢出,应用层自己定义;


onPrivateData:fromUser:


@optional

- (void)onPrivateData:(NSData*)data fromUser:(AVDUserId)fromId;
Discussion

透明通道,接收到私有数据通知

@param[in] data 接收到的数据指针。 @param[in] fromId 发送方用户Id。

@sa sendPrivateData


onPublicData:fromUser:


@optional

- (void)onPublicData:(NSData*)data fromUser:(AVDUserId)fromId;
Discussion

透明通道,接收到广播数据通知

@param[in] data 接收到的数据指针。 @param[in] fromId 发送方用户Id。

@sa sendPublicData


onRoomStatusNotify:


@optional

- (void)onRoomStatusNotify:(enum AVDRoomStatus)status;
Discussion

房间状态通知

@param[in] status 房间状态。