26#ifndef ZRC_IBREAKOUTROOMHELPER_H
27#define ZRC_IBREAKOUTROOMHELPER_H
526 virtual void OnInitBOParticipants(
const std::vector<MeetingParticipant>& participants, int32_t totalParticipantsCount,
bool needCleanUpUserList) = 0;
538 virtual void OnBOUserJoin(
const std::vector<MeetingParticipant>& participants) = 0;
550 virtual void OnBOUserLeave(
const std::vector<MeetingParticipant>& participants) = 0;
562 virtual void OnBOUserUpdate(
const std::vector<MeetingParticipant>& participants) = 0;
BO_HELP_ATTENDEE_RESULT
BO help attendee result. Here are more detailed structural descriptions.
@ BO_HELP_ATTENDEE_RESULT_IGNORE
Host click "later" button or close the request dialog directly.
@ BO_HELP_ATTENDEE_RESULT_BUSY
Host is handling other's request with the request dialog.
@ BO_HELP_ATTENDEE_RESULT_UNKNOWN
Invalid.
@ BO_HELP_ATTENDEE_RESULT_HOST_ALREADY_IN_BO
Host already in your BO meeting.
@ BO_HELP_ATTENDEE_RESULT_ACCEPT
Host accept attendee's help request.
BO_ASSIGN_PARTICIPANTS_TYPE
After creating breakout rooms, assign participants type. Here are more detailed structural descriptio...
@ ASSIGN_PARTICIPANTS_AUTOMATICALLY
Assign participants to breakout rooms automatically.
@ LET_PARTICIPANTS_CHOOSE_ROOM
Let participants choose breakout rooms.
@ ASSIGN_PARTICIPANTS_MANUALLY
Assign participants to breakout rooms manually.
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_STOP_COUNTDOWN_SECONDS_60
BO_STATUS
BO status Here are more detailed structural descriptions.
ZRCSDKError
SDK error types. Here are more detailed structural descriptions.
virtual ZRCSDKError StartBreakoutRooms()=0
Start all breakout rooms.
virtual ZRCSDKError CanBroadcastMessageToBO(bool &canBroadcast)=0
Query if you can broadcast message to BO.
virtual void RegisterSink(IBOAdminHelperSink *pSink)=0
virtual ZRCSDKError InviteBOUserReturnToMainSession(const std::string &userGUID)=0
Host invite user return to main session, When BO is started and user is in BO.
virtual ZRCSDKError IgnoreUserHelpRequest(const std::string &userGUID)=0
Ignore user help request.
virtual ZRCSDKError BroadcastMessageToBreakoutRoom(const std::string &message)=0
Broadcast message to all breakout rooms.
virtual ZRCSDKError StopBreakoutRooms()=0
Stop all breakout rooms.
virtual ZRCSDKError JoinBOByUserRequest(const std::string &userGUID, const BreakoutRoomInfo &boRoomInfo)=0
Join breakout room by user help request.
virtual ZRCSDKError MoveUserToRunningBO(const std::string &userGUID, const std::string &sessionBID)=0
Assign a unassigned user to a BO, when BO is started.
BO 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 OnBOHelpRequestReceived(const std::string &userGUID, const BreakoutRoomInfo &boRoomInfo)=0
Receive help request from user in bo.
virtual void OnBOTimeIsUpNotification()=0
BO time is up notification, you can decide to stop BO immediately or later.
virtual ~IBOAdminHelperSink()
virtual ZRCSDKError LeaveBreakoutRoom(const std::string &sessionBID)=0
Leave breakout room.
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.
virtual ZRCSDKError JoinBreakoutRoom()=0
Join the assigned breakout room.
virtual ZRCSDKError IsHostInThisBO(bool &in)=0
Determine if host is in the BO which attendee is assigned to.
virtual ZRCSDKError IsCanReturnMainSession(bool &canReturn)=0
Determine if participant can return to main session.
virtual void RegisterSink(IBOAttendeeHelperSink *pSink)=0
virtual ZRCSDKError LeaveBreakoutRoom()=0
Leave breakout room.
virtual ZRCSDKError AskHostForHelpInBO()=0
Ask host for help when you are in need in BO.
BO attendee callback handler.
virtual void OnBOHelpAttendeeResult(BO_HELP_ATTENDEE_RESULT result)=0
Help attendee result.
virtual ~IBOAttendeeHelperSink()
virtual ZRCSDKError RecoverToWebPreAssignBO()=0
Recover breakout rooms to web pre-assigned options.
virtual ZRCSDKError IsWebPreAssignBOEnabled(bool &enabled)=0
Query if web pre-assign BO options enabled.
virtual ZRCSDKError AssignUsersToBO(const std::vector< std::string > &userGUIDList, const std::string &sessionBID)=0
Assign users to a BO.
virtual ZRCSDKError AddBreakoutRoom()=0
Add a breakout room.
virtual ZRCSDKError GetBOOptions(BOOptions &boOptions)=0
Get current BO options.
virtual ZRCSDKError CreateBreakoutRooms(int count, BO_ASSIGN_PARTICIPANTS_TYPE type)=0
Create breakout rooms.
virtual ZRCSDKError DeleteBreakoutRoom(const std::string &sessionBID)=0
Delete breakout room.
virtual ZRCSDKError RenameBreakoutRoom(const std::string &sessionBID, const std::string &newBOName)=0
Rename the breakout room.
virtual void RegisterSink(IBOCreatorHelperSink *pSink)=0
virtual ZRCSDKError SetBOOptions(const BOOptions &boOptions)=0
Set the BO options.
BO creator callback handler.
virtual void OnBOOptionsNotification(const BOOptions &boOptions)=0
Breakout room options notification. Options are only used for configure BO settings before BO starts.
virtual ~IBOCreatorHelperSink()
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...
virtual ZRCSDKError GetBOUserStatus(BO_USER_STATUS &boUserStatus)=0
Query self breakout room user status.
virtual ZRCSDKError GetBreakoutRoomUserList(std::vector< MeetingParticipant > &userList)=0
Get all breakout rooms' user list.
virtual void RegisterSink(IBODataHelperSink *pSink)=0
virtual ZRCSDKError GetBreakoutRoomList(std::vector< BreakoutRoomInfo > &boRoomList)=0
Get all breakout room info list.
BO data callback handler.
virtual void OnBOUserLeave(const std::vector< MeetingParticipant > &participants)=0
BO participants leave meeting notification,.
virtual void OnBOUserJoin(const std::vector< MeetingParticipant > &participants)=0
BO participants join meeting notification.
virtual void OnBOUserUpdate(const std::vector< MeetingParticipant > &participants)=0
BO participants update notification.
virtual void OnInitBOParticipants(const std::vector< MeetingParticipant > &participants, int32_t totalParticipantsCount, bool needCleanUpUserList)=0
BO participants update notification.
virtual void OnBOUserStatusChanged(BO_USER_STATUS boUserStatus, const BreakoutRoomInfo &boRoomInfo)=0
Breakout room user status changed notification.
virtual ~IBODataHelperSink()
Breakout Room helper interface.
virtual ZRCSDKError GetBOStatus(BO_STATUS &boStatus)=0
Query current breakout room status.
virtual ~IBreakoutRoomHelper()
virtual IBOAttendeeHelper * GetBOAttendeeHelper()=0
Get the pointer of BO attendee object.
virtual ZRCSDKError IsInMainSession(bool &isInMainSession)=0
Query if you are in main session.
virtual IBOAssistantHelper * GetBOAssistantHelper()=0
Get the pointer of BO assistant object.
virtual IBODataHelper * GetBODataHelper()=0
Get the pointer of BO data object.
virtual ZRCSDKError IsBOStarted(bool &started)=0
Determine if the BO is started or not.
virtual IBOCreatorHelper * GetBOCreatorHelper()=0
Get the pointer of BO creator object.
virtual ZRCSDKError DeregisterSink(IBreakoutRoomHelperSink *pSink)=0
Deregister breakout room help callback sink.
virtual ZRCSDKError RegisterSink(IBreakoutRoomHelperSink *pSink)=0
Register breakout room help callback sink.
virtual IBOAdminHelper * GetBOAdminHelper()=0
Get the pointer of BO administrator object.
virtual ZRCSDKError IsBOEnabled(bool &enabled)=0
Determine if the BO feature is enabled in current meeting.
Breakout Room helper event callback.
virtual void OnBOSwitchRequestReceived(const std::string &fromUserName, const BreakoutRoomInfo &newBORoomInfo)=0
Receive switch to breakout room request.
virtual ~IBreakoutRoomHelperSink()
virtual void OnStartJoinBONotification()=0
Start to join BO notification.
virtual void OnHostInviteReturnToMainSession(const std::string &fromUserName)=0
Host invite you to return to main session 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 OnBOStatusChanged(BO_STATUS boStatus)=0
Breakout room status changed notification.
uint64_t defaultBOTimerDuration
Default BO timer duration in seconds.
bool isParticipantCanChooseRoom
options support configure
bool isNotifyMeWhenTimeIsUp
True indicates will receive a notification when duration time is up. Otherwise BO is auto stopped.
BO_STOP_COUNTDOWN defaultCountDown
options not support configure
uint64_t boTimerDuration
Seconds of BO timer duration, if BO timer is enabled, boTimerDuration is 30*60 seconds by default.
bool isPreAssignEnabled
True indicates web enabled pre-assigned BO options when schedule the meeting.
int maxRoomCount
Max room count when creating BO.
BO_STOP_COUNTDOWN countdownSeconds
BO stop countdown seconds, see BO_STOP_COUNTDOWN enum.
bool isBOTimerEnabled
True indicates it's a timer BO.
bool isAutoMoveAllAssignedParticipantsEnabled
True indicates automatically move all assigned participants into breakout rooms.
bool isParticipantCanReturnToMainSessionAtAnyTime
True indicates participants can return to main session at any time.