- onRoomJoined
- onRoomLeaved
- onConnectionLost
- onError
- onWarning
- onUserJoined
- onUserLeft
- onKickedout
- onUserPropertyChanged
- onUserVideoStatus
- onUserAudioStatus
- onRemotePubMsg
- onRemoteDelMsg
- onMessageReceived
- onServerRecordState
- onVideoStatsReport
- onAudioStatsReport
- onRtcStatsReport
- onMicVolumeReport
- onRemoteAudioVolume
- onAudioRoomSwitch
- onFirstVideoFrame
- onFirstAudioFrame
- onVideoStateChanged
- onAudioStateChanged
- onShareMediaState
- onShareScreenState
- onVideoSizeChange
- onMediaFileProgress
- onVideoDeviceStateChanged
- onAudioDeviceStateChanged
- onBecomeBigRoom
- onGotUserNumber
- onGotUserInfo
- onShareScreenStateChanged
- onSystemResourceReport
TKRoomManagerObserver
属于
TKRoomManager
的观察者,其中的器械操作的结果会调用TKRoomManagerObserver
中的方法来回调给用户,如果需要监听行为的结果,需要继承TKRoomManagerObserver
类来实现
onRoomJoined
-
简要描述
成功进入房间的回调 调用joinRoom 或者 joinRoomEx 接口进入房间,成功后会回调. 失败则会以
void onError(int errorCode, const std::string& errMsg)
回调。 房间内存在其他用户,这些用户会收到void onUserJoined(TKRoomUserPtr peer, bool inList)
的回调 -
接口详情
void onRoomJoined()
onRoomLeaved
-
简要描述
离开房间的回调。调用 leaveRoom 接口离开房间会回调。 如果房间内存在其他的用户,这些用户会收到void onUserLeft(TKRoomUserPtr peer)的回调
-
接口详情
void onRoomLeaved()
onConnectionLost
-
简要描述
掉线回调
-
接口详情
void onConnectionLost()
onError
-
简要描述
joinRoom,发布,订阅,取消发布,取消订阅的回调中的错误
-
接口详情
void onError(int errorCode, const std::string& errMsg)
参数 | 说明 |
---|---|
errorCode | 错误码(详情请见TKRoomDefines.h 文件中的枚举值 TK_ERROR) |
errMsg | 错误信息 |
onWarning
-
简要描述
SDK出现警告的回调
-
接口详情
void onWarning(int warningCode)
参数 | 说明 |
---|---|
warningCode | 警告码(详情请见TKRoomDefines.h 文件中的枚举值 TK_WARNING) |
onUserJoined
-
简要描述
有用户进入房间
-
接口详情
void onUserJoined(TKRoomUserPtr peer, bool inList)
参数 | 说明 |
---|---|
peer(TKRoomUserPtr) | 用户ID |
inList(bool) | YES:表示该用户是在我之前进入房间,NO:表示该用户是在我之后进入房间 |
onUserLeft
-
简要描述
有用户离开房间时回调
-
接口详情
void onUserLeft(TKRoomUserPtr peer)
参数 | 说明 |
---|---|
peer(TKRoomUserPtr) | 用户ID |
onKickedout
-
简要描述
我自己被踢出房间时回调
-
接口详情
void onKickedout(TK_KICKOUT_REASON reason)
参数 | 说明 |
---|---|
reason(TK_KICKOUT_REASON) | 被踢原因 |
onUserPropertyChanged
-
简要描述
用户的属性发生变化时回调
-
接口详情
void onUserPropertyChanged(tk_uid peerId,const std::string& key,const tk::Variant& value)
参数 | 说明 |
---|---|
peerId(std::string) | 用户ID |
key | 属性关键字 |
value | 属性值 |
onUserVideoStatus
-
简要描述
用户视频状态变化时回调 单流模式:用户视频状态变化时回调 多流模式:用户某一视频设备的视频状态变化回调
-
接口详情
void onUserVideoStatus(tk_uid peerId, std::string mediatype,TK_MEDIA_STATUS state)
(单个设备时有效)void onUserVideoStatus(tk_uid peerId, std::string mediatype, std::string deviceId,TK_MEDIA_STATUS state)
(多个设备时有效)
参数 | 说明 |
---|---|
peerId(std::string) | 用户ID |
mediatype | 媒体类型 |
state | 视频发布状态 |
deviceId | 设备id |
onUserAudioStatus
-
简要描述
用户音频状态变化时回调
-
接口详情
1 2 3 4 5
void onUserAudioStatus( tk_uid peerId, std::string mediatype, std::string deviceId, TK_MEDIA_STATUS state)`
参数 | 说明 |
---|---|
peerId(std::string) | 用户ID |
mediatype | 媒体类型 |
deviceId | 设备id |
state | 音频状态,详情查看 TK_MEDIA_STATUS 文件中的枚举值 |
onRemotePubMsg
-
简要描述
当某用户发送了发布信令消息 pubMsg,若我是该信令的接受对象时,即可收到用户发布的自定义信令的回调
-
接口详情
1 2 3 4 5 6 7 8 9
void onRemotePubMsg( std::string msgid, std::string msgname, tk_uid fromId, tk_uid toId, tk::Variant data, tk_uid associatedUserID, const std::string& associatedMsgID , long ts)
参数 | 说明 |
---|---|
msgid | 消息id |
msgname | 消息名 |
fromId | 消息来源用户id |
toId | 消息接收者 |
data | 消息数据,可以是Number、String、Map或List |
associatedUserID | 绑定的用户id |
daassociatedMsgIDta | 绑定的父级信令id |
ts | 消息时间戳 |
onRemoteDelMsg
-
简要描述
当某用户发送了删除信令消息 delMsg,若我是该信令的接受对象时,即可收到用户发送的自定义信令的回调
-
接口详情
1 2 3 4 5 6 7 8 9
void onRemoteDelMsg( std::string msgid, std::string msgname, tk_uid fromId, tk_uid toId, tk::Variant data, tk_uid associatedUserID, const std::string& associatedMsgID , long ts)
参数 | 说明 |
---|---|
msgid | 消息id |
msgname | 消息名 |
fromId | 消息来源用户id |
toId | 消息接收者 |
data | 消息数据,可以是Number、String、Map或List |
associatedUserID | 绑定的用户id |
daassociatedMsgIDta | 绑定的父级信令id |
ts | 消息时间戳 |
onMessageReceived
-
简要描述
当某用户调用sendMessage发送消息,若我是该消息的接受对象时,即可收到用户发送的消息
-
接口详情
1 2 3 4
void onMessageReceived( tk_uid peerId, const std::string& message, const tk::VariantMap& extendJson)
参数 | 说明 |
---|---|
peerId(std::string) | 用户ID |
msgid | 消息id |
message | 接收到的消息 |
extendJson | 用户自定义扩展字段 |
onServerRecordState
-
简要描述
录制回放时,录制状态的回调 可以调用 startServerRecord 接口开启服务器录制
-
接口详情
void onServerRecordState(TK_RECORDSTATE state, const tk::VariantMap extension = tk::VariantMap())
参数 | 说明 |
---|---|
state | 状态值, 详情查看 TKRoomDefines.h 文件中的枚举值 |
extension | 返回录制的相关参数(目前返回:常规录制件和MP4录制件的ID) |
- 使用案例
1 2 3 4 5 |
|
onVideoStatsReport
-
简要描述
自己订阅其他用户视频时的数据统计的回调,1秒/次
-
接口详情
void onVideoStatsReport(const VideoStats& stats,tk_uid peerId, const std::string& type)
参数 | 说明 |
---|---|
state | 通讯状态信息, 详情查看 VideoStats 文件中的枚举值 |
peerId | 用户ID,表示视频数据是该用户的 |
type | 媒体类型 (可以是媒体文件,屏幕,默认是空值) |
onAudioStatsReport
-
简要描述
自己订阅其他用户音频时的数据统计的回调,1秒/次
-
接口详情
void onAudioStatsReport(const AudioStats& stats,tk_uid peerId, TK_MEDIATYPE mediaType)
参数 | 说明 |
---|---|
state | 音频数据对象, 详情查看 AudioStats 文件中的枚举值 |
peerId | 用户ID,表示音频数据是该用户的 |
type | 媒体类型,详情查看 TK_MEDIATYPE 文件中的枚举值 |
onRtcStatsReport
-
简要描述
自己上下行音视频数据统计的回调,1秒/次
-
接口详情
void onRtcStatsReport(const RtcStats& stats)
参数 | 说明 |
---|---|
state | 音视频数据对象, 详情查看 RtcStats 文件中的枚举值 |
onMicVolumeReport
-
简要描述
本地麦克风音量统计的回调
-
接口详情
void onMicVolumeReport(int vol)
参数 | 说明 |
---|---|
vol | 麦克风音量 |
onRemoteAudioVolume
-
简要描述
远程控制音量的回调
-
接口详情
void onRemoteAudioVolume(tk_uid peerId, int vol)
参数 | 说明 |
---|---|
peerId | 用户ID |
vol | 麦克风音量 |
onAudioRoomSwitch
-
简要描述
房间模式发送变化的回调,纯音频 与音视频 房间切换 房间内所有的用户的视频都会消失
-
接口详情
void onAudioRoomSwitch(tk_uid from,bool onlyAudio)
参数 | 说明 |
---|---|
from | 切换房间模式的用户ID,即信令发送者ID |
onlyAudio | true:表示纯音频房间,false:表示音视频房间 |
onFirstVideoFrame
-
简要描述
播放用户音视频时,收到第一帧视频数据的回调 播放某用户视频,渲染视频第一帧时,会收到回调;如果没有unplay某用户的视频,而再次play该用户视频时,不会再次收到此回调 单流模式:播放用户视频,渲染视频第一帧回调 多流模式:播放用户某一设备视频,渲染视频第一帧回调 默认是:单流模式。
-
接口详情
void onFirstVideoFrame(int width, int height,tk_uid peerId, std::string mediaType)
参数 | 说明 |
---|---|
width | 视频宽 |
height | 视频高 |
peerId | 用户ID |
mediaType | 媒体类型 |
onFirstAudioFrame
-
简要描述
播放用户音视频时,收到第一帧音频数据的回调
-
接口详情
void onFirstAudioFrame(tk_uid peerId, TK_MEDIATYPE mediaType)
参数 | 说明 |
---|---|
peerId | 用户ID |
mediaType | 媒体类型 |
onVideoStateChanged
-
简要描述
观看用户音视频过程中,视频状态变化的回调
-
接口详情
void onVideoStateChanged(std::string connectionId, std::string id, TK_MEDIA_STATE state)
参数 | 说明 |
---|---|
connectionId | 用户ID |
id | 媒体类型(media、screen、camera device id) |
state | 视频的状态(暂停和继续)详情请查看 TK_MEDIA_STATE |
onAudioStateChanged
-
简要描述
观看用户音视频过程中,音频状态变化的回调
-
接口详情
void onAudioStateChanged(std::string connectionId , TK_MEDIATYPE mediaType , TK_MEDIA_STATE state)
参数 | 说明 |
---|---|
mediaType(TK_MEDIATYPE) | 媒体类型 |
state(TK_MEDIA_STATE) | 媒体状态 |
onShareMediaState
-
简要描述
用户分享媒体流时,媒体流状态变化的回调 可调用 playMediaFile 接口播放该媒体流 调用startShareMediaFile() 和 stopShareMediaFile() 会触发这个回调
-
接口详情
void onShareMediaState(tk_uid peerId, TK_MEDIA_STATUS state)
参数 | 说明 |
---|---|
peerId | 用户ID |
state | 媒体状态 |
onShareScreenState
-
简要描述
用户桌面共享时,状态变化的回调,playScreen 调用startShareScreen()和stopShareScreen()会触发次回调
-
接口详情
void onShareScreenState(tk_uid peerId, TK_MEDIA_STATUS state)
参数 | 说明 |
---|---|
peerId | 用户ID |
state | 媒体状态 |
onVideoSizeChange
-
简要描述
视频分辨率发生变化回调
-
接口详情
void onVideoSizeChange(tk_uid peerId,int w,int h)
参数 | 说明 |
---|---|
peerId | 用户ID |
w | 视频宽 |
h | 视频高 |
- 注意
此回调接口目前没有实现
onMediaFileProgress
-
简要描述
分享媒体进度回调 调用startShareMediaFile()会触发回调
-
接口详情
void onMediaFileProgress(uint64_t pos, uint64_t total)
参数 | 说明 |
---|---|
pos | 当前时长 |
total | 总时长 |
onVideoDeviceStateChanged
-
简要描述
视频设备状态改变的回调 当视频设备状态改变(插入或移除)时,将调用该函数
-
接口详情
void onVideoDeviceStateChanged(const std::string& deviceId, TK_DEVICE_STATE deviceState)
参数 | 说明 |
---|---|
deviceId | 设备ID |
deviceState | 设备状态,详情查看 TK_DEVICE_STATE |
onAudioDeviceStateChanged
-
简要描述
音频设备状态改变的回调 当音频设备状态改变(插入或移除)时,将调用该函数
-
接口详情
1 2 3 4
void onAudioDeviceStateChanged( const std::string& deviceId, TK_AUDIO_DEVICE deviceType, TK_DEVICE_STATE deviceState)
参数 | 说明 |
---|---|
deviceId | 设备ID |
deviceType | 设备类型(播放设备或录音设备) |
deviceState | 设备状态,详情查看 TK_DEVICE_STATE |
onBecomeBigRoom
-
简要描述
进入大教室的回调 当用户数量达到一定数量时触发的房间事件
-
接口详情
void onBecomeBigRoom()
onGotUserNumber
-
简要描述
通过角色列表获取用户数量的回调 调用getUserNumberByRoles()函数得到结果会以这个回调的方式返回
-
接口详情
void onGotUserNumber(int num)
参数 | 说明 |
---|---|
num | 返回的数量 |
onGotUserInfo
-
简要描述
通过角色列表获取用户信息
-
接口详情
void onGotUserInfo(const std::string& jsonResult)
参数 | 说明 |
---|---|
jsonResult | 请求的用户信息 |
onShareScreenStateChanged
-
简要描述
桌面共享中所共享的窗口状态发生变化
-
接口详情
void onShareScreenStateChanged(TK_SHARESCREENE_STATE code)
参数 | 说明 |
---|---|
code(TK_SHARESCREENE_STATE) | 返回的状态码 |
onSystemResourceReport
-
简要描述
系统信息的回调(目前只有CPU、内存信息)
-
接口详情
void onSystemResourceReport(const TKSystemResourceInfo& infos)
参数 | 说明 |
---|---|
infos(TKSystemResourceInfo) | 返回的信息值 |