SyRtcEventHandler class

SY RTC事件处理器

参照声网/即构标准 RTC SDK 设计,包含频道、音视频、网络等核心回调。

Constructors

SyRtcEventHandler({void onJoinChannelSuccess(String channelId, String uid, int elapsed)?, void onLeaveChannel(SyRtcStats stats)?, void onRejoinChannelSuccess(String channelId, String uid, int elapsed)?, void onReconnecting(SyReconnectingEvent event)?, void onReconnected(String reason)?, void onReconnectFailed(String reason)?, void onUserJoined(String uid, int elapsed)?, void onUserOffline(String uid, String reason)?, void onConnectionStateChanged(SyConnectionState state, SyConnectionChangedReason reason)?, void onNetworkQuality(String uid, SyNetworkQuality txQuality, SyNetworkQuality rxQuality)?, void onNetworkQualityLevel(String uid, SyNetworkQualityLevel txLevel, SyNetworkQualityLevel rxLevel)?, void onRtcStats(SyRtcStats stats)?, void onTokenPrivilegeWillExpire()?, void onRequestToken()?, void onTokenError(SyTokenBusinessCode code, String message)?, void onVolumeIndication(List<Map<String, dynamic>> speakers)?, void onUserMuteAudio(String uid, bool muted)?, void onUserMuteVideo(String uid, bool muted)?, void onLocalAudioStateChanged(SyLocalAudioStreamState state, SyLocalAudioStreamError error)?, void onRemoteAudioStateChanged(String uid, SyRemoteAudioState state, SyRemoteAudioStateReason reason, int elapsed)?, void onLocalVideoStateChanged(SyLocalVideoStreamState state, SyLocalVideoStreamError error)?, void onRemoteVideoStateChanged(String uid, SyRemoteVideoState state, SyRemoteVideoStateReason reason, int elapsed)?, void onFirstRemoteVideoDecoded(String uid, int width, int height, int elapsed)?, void onFirstRemoteVideoFrame(String uid, int width, int height, int elapsed)?, void onVideoSizeChanged(String uid, int width, int height, int elapsed)?, void onFirstLocalVideoFrame(int width, int height, int elapsed)?, void onAudioRoutingChanged(int routing)?, void onAudioRoute(SyAudioRoute route)?, void onAudioPublishStateChanged(String channelId, SyStreamPublishState oldState, SyStreamPublishState newState, int elapsed)?, void onAudioSubscribeStateChanged(String channelId, String uid, SyStreamSubscribeState oldState, SyStreamSubscribeState newState, int elapsed)?, void onStreamMessage(String uid, int streamId, List<int> data)?, void onStreamMessageError(String uid, int streamId, int code, int missed, int cached)?, void onChannelMessage(String uid, String reason)?, void onStreamExtraInfoUpdated(String uid, String reason)?, void onSeiMessage(String uid, int streamId, List<int> data)?, void onKicked(String uid, String reason)?, void onServerMuteAudio(String uid, bool muted)?, void onError(int code, String message)?})

Properties

hashCode → int
The hash code for this object.
no setterinherited
onAudioPublishStateChanged → void Function(String channelId, SyStreamPublishState oldState, SyStreamPublishState newState, int elapsed)?
音频发布状态变化回调
final
onAudioRoute → void Function(SyAudioRoute route)?
归一后的播放路由。iOS 只能主动切到扬声器或听筒。
final
onAudioRoutingChanged → void Function(int routing)?
音频路由变化回调。参数是原生原始整数,两端数值不同,见 SyAudioRoutingChangedEvent。
final
onAudioSubscribeStateChanged → void Function(String channelId, String uid, SyStreamSubscribeState oldState, SyStreamSubscribeState newState, int elapsed)?
音频订阅状态变化回调
final
onChannelMessage → void Function(String uid, String reason)?
频道消息回调(底层信令通道,用于应用层自定义消息)
final
onConnectionStateChanged → void Function(SyConnectionState state, SyConnectionChangedReason reason)?
网络连接状态变化回调
final
onError → void Function(int code, String message)?
错误回调。code 取值见 SyRtcErrorCode,两端相同。
final
onFirstLocalVideoFrame → void Function(int width, int height, int elapsed)?
本地视频轨新建后的第一帧。两端相同。
final
onFirstRemoteVideoDecoded → void Function(String uid, int width, int height, int elapsed)?
首帧远端视频解码回调
final
onFirstRemoteVideoFrame → void Function(String uid, int width, int height, int elapsed)?
首帧远端视频渲染回调
final
onJoinChannelSuccess → void Function(String channelId, String uid, int elapsed)?
成功加入频道回调
final
onKicked → void Function(String uid, String reason)?
被服务端踢出房间(信令 type=kicked,或 poll;非 SFU 强制断流)
final
onLeaveChannel → void Function(SyRtcStats stats)?
离开频道回调
final
onLocalAudioStateChanged → void Function(SyLocalAudioStreamState state, SyLocalAudioStreamError error)?
本地音频状态变化回调
final
onLocalVideoStateChanged → void Function(SyLocalVideoStreamState state, SyLocalVideoStreamError error)?
本地视频状态变化回调
final
onNetworkQuality → void Function(String uid, SyNetworkQuality txQuality, SyNetworkQuality rxQuality)?
网络质量回调。
final
onNetworkQualityLevel → void Function(String uid, SyNetworkQualityLevel txLevel, SyNetworkQualityLevel rxLevel)?
网络质量回调(推荐)。档位两端统一,见 SyNetworkQualityLevel。
final
onReconnected → void Function(String reason)?
重连成功。reason 为 signaling 或 ice。
final
onReconnectFailed → void Function(String reason)?
重连次数用完,之后 onError(1003)。
final
onReconnecting → void Function(SyReconnectingEvent event)?
开始重连(两端同一策略,见 SyReconnectPolicy)。
final
onRejoinChannelSuccess → void Function(String channelId, String uid, int elapsed)?
重新加入频道成功回调
final
onRemoteAudioStateChanged → void Function(String uid, SyRemoteAudioState state, SyRemoteAudioStateReason reason, int elapsed)?
远端音频状态变化回调
final
onRemoteVideoStateChanged → void Function(String uid, SyRemoteVideoState state, SyRemoteVideoStateReason reason, int elapsed)?
远端视频状态变化回调
final
onRequestToken → void Function()?
Token 已过期回调
final
onRtcStats → void Function(SyRtcStats stats)?
通话统计信息回调。RTT、丢包(0–1)、码率与统一档位见 SyRtcStats。
final
onSeiMessage → void Function(String uid, int streamId, List<int> data)?
sendSei 发来的 DataChannel 消息(已去掉 SYSEI 前缀),不是码流 SEI。两端都会回调。 原始字节(Android 含 SYSEI 前缀)仍会通过 onStreamMessage 给出。
final
onServerMuteAudio → void Function(String uid, bool muted)?
服务端静音/解静音本端或远端(mute-audio 信令 / poll)
final
onStreamExtraInfoUpdated → void Function(String uid, String reason)?
流附加信息。同一条原文仍会先走 onChannelMessage。
final
onStreamMessage → void Function(String uid, int streamId, List<int> data)?
数据流消息回调
final
onStreamMessageError → void Function(String uid, int streamId, int code, int missed, int cached)?
数据流消息错误回调
final
onTokenError → void Function(SyTokenBusinessCode code, String message)?
业务码 4031 / 4032 / 4033。
final
onTokenPrivilegeWillExpire → void Function()?
Token 即将过期回调(30秒前)
final
onUserJoined → void Function(String uid, int elapsed)?
远端用户加入回调
final
onUserMuteAudio → void Function(String uid, bool muted)?
远端用户静音/取消静音回调
final
onUserMuteVideo → void Function(String uid, bool muted)?
iOS 远端视频静音。Android 不回调这个方法。
final
onUserOffline → void Function(String uid, String reason)?
远端用户离开回调
final
onVideoSizeChanged → void Function(String uid, int width, int height, int elapsed)?
远端视频宽、高或旋转变化(首帧也回调一次)。两端相同。
final
onVolumeIndication → void Function(List<Map<String, dynamic>> speakers)?
音量指示回调。
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited