互动模块
头文件
callback_monitor.h
类名
VHRoomMonitor
/*
**===================================
**
** 互动SDK事件监听回调接口,所有接口回调处于SDK业务线程。
** 如果回调处理app业务事件不建议在回调中进行。
**
**===================================
*/
方法
- 监听互动房间内所有成功事件
/*监听互动房间内所有成功事件*/
virtual void OnRoomSuccessedEvent(RoomEvent code, std::string userData = std::string());
- 监听互动房间内所有失败事件
virtual void OnRoomFailedEvent(RoomEvent code, int respCode, const std::string& msg, std::string userData = std::string());
- 收到成员列表回调
virtual void OnGetVHRoomMembers(const std::string&, std::list<VHRoomMember>&);
- 收到踢出成员列表回调
virtual void OnGetVHRoomKickOutMembers(std::list<VHRoomMember>&);
- 本地网络重连成功之后重推流回调
/*
* 本地网络重连成功之后重推流,流ID发生改变通知
**/
virtual void OnRePublishStreamIDChanged(VHStreamType streamType, const std::wstring& user_id, const std::string& old_streamid, const std::string& new_streamid);
- 收到申请上麦消息回调
/*收到申请上麦消息 ,消息为广播消息,收到消息后,通过进入互动房间时获取的权限列表,判断用户是否有审核权限*/
virtual void OnRecvApplyInavPublishMsg(std::wstring& third_party_user_id) ;
- 收到审核上麦消息回调
/*收到审核上麦消息 ,消息为广播消息,收到同意上麦后执行上麦操作*/
virtual void OnRecvAuditInavPublishMsg(const std::wstring& third_party_user_id, AuditPublish);
- 收到邀请上麦消息回调
/*邀请上麦消息 消息为广播消息,收到消息后,提示邀请信息*/
virtual void OnRecvAskforInavPublishMsg(const std::wstring& third_party_user_id);
- 收到踢出流消息回调
/*踢出流消息 消息为广播消息,收到消息后,执行踢出流*/
virtual void OnRecvKickInavStreamMsg(const std::wstring& third_party_user_id);
- 收到踢出互动房间回调
/*踢出互动房间 , 消息为广播消息,收到消息后,判断是当前用户后,执行踢出房间操作*/
virtual void OnRecvKickInavMsg(const std::wstring& third_party_user_id);
- 收到邀请上麦回应回调
/*上/下/拒绝上麦消息 消息为广播消息*/
virtual void OnUserPublishCallback(const std::wstring& third_party_user_id, const std::string& stream_id, PushStreamEvent event);
- 收到互动房间关闭消息
/*互动房间关闭消息 接受到该消息后,所有在互动房间的人员,全部下麦,退出房间*/
virtual void OnRecvInavCloseMsg();
- 收到用户上下线通知
/*
* 用户上下线通知
* online: true 用户上线/ false 用户下线
* user_id: 用户id
*/
virtual void OnUserOnLineState(bool online, const std::string user_id);
- 房间链接事件
/*房间链接事件*/
virtual void OnWebRtcRoomConnetEventCallback(const VHRoomConnectEnum/*, const std::string&*/);
- 成功打开本地采集设备回调
/*本地打开采集设备,包括摄像头、桌面共享、开始插播视频回调*/
virtual void OnOpenCaptureCallback(VHStreamType streamType, VHCapture code);
- 开始推流成功回调
/*开始推流成功回调*/
virtual void OnPushStreamSuc(VHStreamType streamType, std::string& streamid);
- 推流失败回调
/*推流失败回调*/
virtual void OnPushStreamError(VHStreamType streamType, const int codeErr = 0, const std::string& msg = std::string());
- 停止推流成功回调
/*停止推流成功回调*/
virtual void OnStopPushStreamCallback(VHStreamType streamType, int code, const std::string& msg);
- 收到远端的媒体流回调
/*接收到远端的媒体流 hasVideo :是否包含视频*/
virtual void OnReciveRemoteUserLiveStream(const std::wstring& user, const std::string& stream, const VHStreamType type, bool hasVideo, bool hasAudio);
- 收到远端的媒体流退出回调
/*远端的媒体流退出了*/
virtual void OnRemoveRemoteUserLiveStream(const std::wstring& user, const std::string& stream, const VHStreamType type);