本文档为您介绍了iOS SDK和Mac SDK回调及监听的接口详情。

目录

AliRtcEngineDelegate回调如下所示。

说明 回调接口都在子线程。
API 描述 以上版本支持
onRemoteUserOnLineNotify 远端用户上线回调 1.1
onRemoteUserOffLineNotify 远端用户下线回调 1.1
onRemoteTrackAvailableNotify 远端用户音视频流发生变化时回调 1.1
onSubscribeChangedNotify 订阅结果回调 1.1
onNetworkQualityChanged 网络质量变化回调 1.4
onOccurWarning warning回调 1.1
onOccurError error回调 1.1
onBye 被服务器踢出或者频道关闭时回调 1.1
onFirstPacketSentWithAudioTrack 首帧数据发送成功 1.11
onFirstRemoteVideoFrameDrawn 首帧渲染完回调 1.1
onFirstPacketReceivedWithAudioTrack 首包数据接收成功 1.13
onVideoDetectCallback RTC采集视频数据回调(仅iOS) 1.14
onUserAudioMuted 用户muteAudio通知(仅iOS) 1.14
onUserVideoMuted 用户muteVideo通知(仅iOS) 1.14
onUserAudioInterruptedBegin 用户audio被中断通知(仅iOS) 1.14
onUserAudioInterruptedEnded 用户audio中断结束通知(仅iOS) 1.14
onConnectionLost 网络连接断开(仅iOS) 1.14
onTryToReconnect 网络连接正在尝试重连中(仅iOS) 1.14
onConnectionRecovery 网络连接重连成功(仅iOS) 1.14

接口详情

  • onRemoteUserOnLineNotify:远端用户上线回调。

    - (void)onRemoteUserOnLineNotify:(NSString *)uid;          

    参数:

    参数 类型 描述
    uid NSString * 远端用户ID。
  • onRemoteUserOffLineNotify:远端用户下线回调。

    - (void)onRemoteUserOffLineNotify:(NSString *)uid;         

    参数:

    参数 类型 描述
    uid NSString * 远端用户ID。
  • onRemoteTrackAvailableNotify:远端用户音视频流发生变化时回调。

    - (void)onRemoteTrackAvailableNotify:(NSString *)uid audioTrack:(AliRtcAudioTrack)audioTrack videoTrack:(AliRtcVideoTrack)videoTrack;              

    参数:

    参数 类型 描述
    uid NSString * 远端用户ID。
    audioTrack AliRtcAudioTrack 远端用户发生变化后的音频流。
    videoTrack AliRtcVideoTrack 远端用户发生变化后的视频流。
  • onSubscribeChangedNotify:订阅结果回调。

    - (void)onSubscribeChangedNotify:(NSString *)uid audioTrack:(AliRtcAudioTrack)audioTrack videoTrack:(AliRtcVideoTrack)videoTrack;                   

    参数:

    参数 类型 描述
    uid NSString * 远端用户ID。
    audioTrack AliRtcAudioTrack 订阅成功的音频流。
    videoTrack AliRtcVideoTrack 订阅成功的视频流。
  • onNetworkQualityChanged:网络质量变化时回调,建议在网络质量较差的时候可以在界面上提示用户。

    - (void)onNetworkQualityChanged:(NSString *)uid 
            upNetworkQuality:(AliRtcNetworkQuality)upQuality             
            downNetworkQuality:(AliRtcNetworkQuality)downQuality;

    参数:

    参数 类型 描述
    uid NSString * 网络质量发生变化的用户。
    upQuality AliRtcNetworkQuality 上行网络质量。
    downQuality AliRtcNetworkQuality 下行网络质量。
  • onOccurWarning:Warning回调。目前Warning回调可以忽略,不会影响正常使用 。

    - (void)onOccurWarning:(int)warn;

    参数:

    参数 类型 描述
    warn int 警告类型。
  • onOccurError:Error回调。当回调的中参数error0x0102020C0x02010105时,需要先leaveChannel,再重新创建SDK实例,然后重新joinChannel。

    - (void)onOccurError:(int)error;

    参数:

    参数 类型 描述
    error int 错误类型。
  • onBye:被服务器踢出或者频道关闭时回调。

    - (void)onBye:(int)code;

    参数:

    参数 类型 描述
    code int 消息类型。
    • 1:被服务器踢出。
    • 2:频道关闭。
    • 3:同一个userId在其他端登录,被服务器踢出。
  • onFirstPacketSentWithAudioTrack:首帧数据发送成功。

    - (void)onFirstPacketSentWithAudioTrack:(AliRtcAudioTrack)audioTrack videoTrack:(AliRtcVideoTrack)videoTrack;

    参数:

    参数 类型 描述
    audioTrack AliRtcAudioTrack 发送成功的音频流类型。
    videoTrack AliRtcVideoTrack 发送成功的视频流类型。
  • onFirstRemoteVideoFrameDrawn:远端视频流首帧渲染完回调。

    - (void)onFirstRemoteVideoFrameDrawn:(NSString *)uid videoTrack:(AliRtcVideoTrack)videoTrack;

    参数:

    参数 类型 描述
    uid NSString * 远端用户ID。
    videoTrack AliRtcVideoTrack 渲染的流类型。
  • onFirstPacketReceivedWithAudioTrack:首包数据接收成功。

    - (void)onFirstPacketReceivedWithAudioTrack:(AliRtcAudioTrack)audioTrack videoTrack:(AliRtcVideoTrack)videoTrack;

    参数:

    参数 类型 描述
    audioTrack AliRtcAudioTrack 发送成功的音频流类型。
    videoTrack AliRtcVideoTrack 发送成功的视频流类型。
  • onVideoDetectCallback(仅iOS可用):RTC采集视频数据回调。

    - (long)onVideoDetectCallback:(AliRtcVideoSource)type videoFrame:(AliRtcVideoDataSample *)videoFrame;

    参数:

    参数 类型 描述
    type AliRtcVideoSource 视频流类型。
    videoFrame AliRtcVideoDataSample * 视频数据帧。
  • onUserAudioMuted(仅iOS可用):用户muteAudio通知。

    - (void)onUserAudioMuted:(NSString *)uid audioMuted:(BOOL)isMute;

    参数:

    参数 类型 描述
    uid NSString * 执行muteAudio的用户。
    isMute BOOL YES:静音;NO:未静音。
  • onUserVideoMuted(仅iOS可用):用户muteVideo通知。

    - (void)onUserVideoMuted:(NSString *)uid videoMuted:(BOOL)isMute;

    参数:

    参数 类型 描述
    uid NSString * 执行muteVideo的用户。
    isMute BOOL YES:推流黑帧;NO:正常推流。
  • onUserAudioInterruptedBegin(仅iOS可用):用户audio被中断通知(一般用户打电话等音频被抢占场景)。

    - (void)onUserAudioInterruptedBegin:(NSString *)uid;

    参数:

    参数 类型 描述
    uid NSString * audio被中断的用户。
  • onUserAudioInterruptedEnded(仅iOS可用):用户audio中断结束通知(对应onUserAudioInterruptedBegin)。

    - (void)onUserAudioInterruptedEnded:(NSString *)uid;

    参数:

    参数 类型 描述
    uid NSString * audio中断结束的用户。
  • onConnectionLost(仅iOS可用):网络连接断开。

    - (void)onConnectionLost;
  • onTryToReconnect(仅iOS可用):网络连接正在尝试重连中。

    - (void)onTryToReconnect;
  • onConnectionRecovery(仅iOS可用):网络连接重连成功。

    - (void)onConnectionRecovery;