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< 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<String, dynamic> >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< speakers)?String, dynamic> > -
音量指示回调。
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