27#ifndef IWebinarBreakoutRoomHelper_h
28#define IWebinarBreakoutRoomHelper_h
BO_USER_STATUS
BO user status Here are more detailed structural descriptions.
BO_STOP_COUNTDOWN
BO stop count down. Here are more detailed structural descriptions.
BO_STATUS
BO status Here are more detailed structural descriptions.
ZRCSDKError
SDK error types. Here are more detailed structural descriptions.
WebinarBO admin interface.
virtual void RegisterSink(IWebinarBOAdminHelperSink *pSink)=0
virtual ZRCSDKError StopBreakoutRooms()=0
Stop all breakout rooms.
WebinarBO admin callback handler.
virtual void OnBOEndTimerUpdate(uint64_t remainingSecond)=0
BO end timer update notification, if BO enable timer, you will receive this notification when bo star...
virtual void OnBOTimeIsUpNotification()=0
BO time is up notification, you can decide to stop BO immediately or later.
virtual ~IWebinarBOAdminHelperSink()
WebinarBO assistant interface.
virtual ZRCSDKError JoinBreakoutRoom(const std::string &sessionBID)=0
Join breakout room.
virtual ZRCSDKError ResponseHostInviteToMainSession(bool accept)=0
Response host invite to main session when receiving OnHostInviteReturnToMainSession.
WebinarBO attendee interface.
virtual ZRCSDKError JoinBreakoutRoom()=0
Join the assigned breakout room.
virtual ZRCSDKError LeaveBreakoutRoom()=0
Leave joined breakout room.
virtual ZRCSDKError IsCanReturnMainSession(bool &canReturn)=0
Determine if participant can return to main session.
WebinarBO creator interface.
virtual void RegisterSink(IWebinarBOCreatorHelperSink *pSink)=0
virtual ZRCSDKError GetBOOptions(WebinarBOOptions &boOptions)=0
Get current WebinarBO options.
WebinarBO creator callback handler.
virtual ~IWebinarBOCreatorHelperSink()
virtual void OnBOOptionsNotification(const WebinarBOOptions &boOptions)=0
Breakout room options notification.
virtual void OnBORoomInfoListChanged(const std::vector< BreakoutRoomInfo > &boRoomInfoList)=0
Breakout room info list changed callback. If bo room count or name changed, you will receive this cal...
WebinarBO data interface.
virtual void RegisterSink(IWebinarBODataHelperSink *pSink)=0
virtual ZRCSDKError GetBreakoutRoomUserList(const std::string &sessionBID)=0
Get users info of breakout room.
virtual ZRCSDKError GetBOUserStatus(BO_USER_STATUS &boUserStatus)=0
Query self breakout room user status.
virtual ZRCSDKError GetBreakoutRoomList(std::vector< BreakoutRoomInfo > &boRoomList)=0
Get all breakout room info list.
WebinarBO data callback handler.
virtual ~IWebinarBODataHelperSink()
virtual void OnGetBreakoutRoomUserList(const BreakoutRoomUsersInfo &roomUsers)=0
BO users info notification.
Breakout Room helper interface.
virtual ZRCSDKError IsInMainSession(bool &isInMainSession)=0
Query if you are in main session.
virtual ZRCSDKError IsBOEnabled(bool &enabled)=0
Determine if the WebinarBO feature is enabled in current meeting.
virtual ZRCSDKError RegisterSink(IWebinarBreakoutRoomHelperSink *pSink)=0
Register webinar breakout room helper callback sink.
virtual IWebinarBOAdminHelper * GetBOAdminHelper()=0
Get the pointer of WebinarBO administrator object.
virtual ZRCSDKError DeregisterSink(IWebinarBreakoutRoomHelperSink *pSink)=0
Deregister webinar breakout room helper callback sink.
virtual ZRCSDKError GetBOStatus(BO_STATUS &boStatus)=0
Query current breakout room status.
virtual IWebinarBODataHelper * GetBODataHelper()=0
Get the pointer of WebinarBO data object.
virtual ZRCSDKError IsBOStarted(bool &started)=0
Determine if the WebinarBO is started or not.
virtual IWebinarBOCreatorHelper * GetBOCreatorHelper()=0
Get the pointer of WebinarBO creator object.
virtual IWebinarBOAttendeeHelper * GetBOAttendeeHelper()=0
Get the pointer of WebinarBO attendee object.
virtual IWebinarBOAssistantHelper * GetBOAssistantHelper()=0
Get the pointer of WebinarBO assistant object.
virtual ~IWebinarBreakoutRoomHelper()
Breakout Room helper event callback.
virtual ~IWebinarBreakoutRoomHelperSink()
virtual void OnHostInviteReturnToMainSession()=0
Host invite you to return to main session notification.
virtual void OnUpdateMeetingInfoNotification(const MeetingInfo &meetingInfo)=0
virtual void OnStartJoinBONotification()=0
Start to join BO notification.
virtual void OnBOStatusChanged(BO_STATUS boStatus)=0
Breakout room status changed notification.
virtual void OnBOStopCountDown(uint64_t remainingSeconds)=0
BO stop countdown, if BO enable countdown, you will receive this notification when bo is stopping,...
virtual void OnBOSwitchRequestReceived(const std::string &fromUserName, const BreakoutRoomInfo &newBORoomInfo)=0
Receive switch to breakout room request.
std::vector< int32_t > userJoinIndexes
user's uniqueJoinIndex in MasterSession, attendee can't access other attendee's information
int32_t userCount
user count including assigned and joined
std::string sessionBID
Session BID.
Webinar breakout room options.
int maxParticipantsCountPerRoom
Max participants count of each room.
bool isNotifyMeWhenTimeIsUp
True indicates will receive a notification when duration time is up. Otherwise BO is auto stopped.
BO_STOP_COUNTDOWN countdownSeconds
BO stop countdown seconds, see BO_STOP_COUNTDOWN enum.
bool isAutoMoveAllAssignedParticipantsEnabled
True indicates automatically move all assigned participants into breakout rooms.
bool isAttendeeCanChooseRoom
True indicates attendee can choose room.
uint64_t boTimerDuration
Seconds of BO timer duration, if BO timer is enabled, boTimerDuration is 30*60 seconds by default.
bool isBOTimerEnabled
True indicates it's a timer BO.
bool isParticipantCanReturnToMainSessionAtAnyTime
True indicates participants can return to main session at any time.
bool isPanelistCanChooseRoom
True indicates panelist can choose room.