6#ifndef _MEETING_Configuration_INTERFACE_H_
7#define _MEETING_Configuration_INTERFACE_H_
10#include "customized_resource_helper_interface.h"
379enum SDKInviteDlgTabPage
382 SDK_INVITEDLG_TAB_EMAILCONTACT = 0,
384 SDK_INVITEDLG_TAB_PHONECONTACT,
386 SDK_INVITEDLG_TAB_ROOMSYSTEM,
392 SDK_INVITEDLG_H323_DIALIN = 0,
394 SDK_INVITEDLG_H323_CALLOUT,
401typedef struct tagRedirectWarningMsgOption
404 bool bRedirectBadNetwork;
406 bool bRedirectWarnHighCPU;
407 tagRedirectWarningMsgOption()
409 bRedirectBadNetwork =
false;
410 bRedirectWarnHighCPU =
false;
413}RedirectWarningMsgOption;
420typedef struct tagPanelistMenuItemOption
423 bool bNotShowDowngradePanelist;
424 tagPanelistMenuItemOption()
426 bNotShowDowngradePanelist =
false;
429}PanelistMenuItemOption;
435typedef struct tagAttendeeMenuItemOption
438 bool bNotShowPromoteToPanelist;
439 tagAttendeeMenuItemOption()
441 bNotShowPromoteToPanelist =
false;
444}AttendeeMenuItemOption;
449class IMeetingUIElemConfiguration
456 virtual void SetMeetingUIPos(WndPosition pos) = 0;
463 virtual void SetFloatVideoPos(WndPosition pos) = 0;
470 virtual void SetSharingToolbarVisibility(
bool bShow) = 0;
475 virtual void SetBottomFloatToolbarWndVisibility(
bool bShow) = 0;
483 virtual void EnableApproveRemoteControlDlg(
bool bEnable) = 0;
491 virtual void EnableDeclineRemoteControlResponseDlg(
bool bEnable) = 0;
497 virtual void EnableLeaveMeetingOptionForHost(
bool bEnable) = 0;
505 virtual void EnableInviteButtonOnMeetingUI(
bool bEnable) = 0;
511 virtual void EnableVideoButtonOnMeetingUI(
bool bEnable) = 0;
517 virtual void EnableAudioButtonOnMeetingUI(
bool bEnable) = 0;
523 virtual void EnableEnterAndExitFullScreenButtonOnMeetingUI(
bool bEnable) = 0;
529 virtual void EnableLButtonDBClick4SwitchFullScreenMode(
bool bEnable) = 0;
535 virtual void SetFloatVideoWndVisibility(
bool bShow) = 0;
543 virtual void RedirectClickShareBTNEvent(
bool bRedirect) = 0;
551 virtual void RedirectClickEndMeetingBTNEvent(
bool bRedirect) = 0;
558 virtual void RedirectFreeMeetingEndingReminderDlg(
bool bRedirect) = 0;
566 virtual void RedirectClickCustomLiveStreamMenuEvent(
bool bRedirect) = 0;
574 virtual void RedirectClickParticipantListBTNEvent(
bool bRedirect) = 0;
581 virtual void RedirectClickCCBTNEvent(
bool bRedirect) = 0;
588 virtual void RedirectMeetingWarningMsg(RedirectWarningMsgOption redirectOption) = 0;
594 virtual void EnableToolTipsShow(
bool bEnable) = 0;
601 virtual void EnableClaimHostFeature(
bool bEnable) = 0;
608 virtual void EnableAutoHideJoinAudioDialog(
bool bEnable) = 0;
615 virtual void AlwaysShowIconOnTaskBar(
bool bAlwaysShow) = 0;
623 virtual void DisableSplitScreenModeUIElements(
bool bDisable) = 0;
629 virtual void SetShowAudioUseComputerSoundChkbox(
bool bShow) = 0;
635 virtual void SetShowVideoOptimizeChkbox(
bool bShow) = 0;
641 virtual void SetShowCallInTab(
bool bShow) = 0;
647 virtual void SetShowCallMeTab(
bool bShow) = 0;
654 virtual SDKError DisableTopMostAttr4SettingDialog(
bool bDisable) = 0;
661 virtual SDKError EnableGrabShareWithoutReminder(
bool bEnable) = 0;
668 virtual void EnableShowShareSwitchMultiToSingleConfirmDlg(
bool bEnable) = 0;
675 virtual void DisableFreeMeetingRemainTimeNotify(
bool bDisable) = 0;
681 virtual void HideChatItemOnMeetingUI(
bool bHide) = 0;
687 virtual void HideRecordItemOnMeetingUI(
bool bHide) = 0;
693 virtual void HideUpgradeFreeMeetingButton(
bool bHide) = 0;
700 virtual void SetShowInviteDlgTabPage(SDKInviteDlgTabPage tabPage,
bool bShow) = 0;
707 virtual void SetShowH323SubTabPage(SDKH323TabPage tabPage,
bool bShow) = 0;
713 virtual void EnableLocalRecordingConvertProgressBarDialog(
bool bShow) = 0;
719 virtual void HideSwitchCameraButton(
bool bHide) = 0;
725 virtual void HideCopyUrlOnInviteWindow(
bool bHide) = 0;
731 virtual void HideCopyInvitationOnInviteWindow(
bool bHide) = 0;
737 virtual void HideKeypadButtonOnMeetingWindow(
bool bHide) = 0;
744 virtual void HideRemoteControlOnMeetingUI(
bool bHide) = 0;
750 virtual void HideQAOnMeetingUI(
bool bHide) = 0;
756 virtual void HidePollOnMeetingUI(
bool bHide) = 0;
763 virtual void DisableAdvanceAudioDeivceCtrl(
bool bDisable) = 0;
770 virtual void RedirectClickAudioBTNEvent(
bool bRedirect) = 0;
777 virtual void RedirectClickAudioMenuBTNEvent(
bool bRedirect) = 0;
784 virtual void RedirectClickBreakoutRoomButtonEvent(
bool bRedirect) = 0;
790 virtual void HideReactionsOnMeetingUI(
bool bHide) = 0;
796 virtual void HideMeetingInfoOnMeetingUI(
bool bHide) = 0;
802 virtual void HideShareButtonOnMeetingUI(
bool bHide) = 0;
808 virtual void DisablePanelistMenuItem(PanelistMenuItemOption menuOption) = 0;
814 virtual void DisableAttendeeMenuItem(AttendeeMenuItemOption menuOption) = 0;
820 virtual void EnableInviteLinkOnMeetingUI(
bool bEnable) = 0;
826 virtual void EnableCloudWhiteboard(
bool bEnable) = 0;
832 virtual void HideCloudWhiteboardFeedbackButton(
bool bHide) = 0;
838 virtual void HideCloudWhiteboardShareButton(
bool bHide) = 0;
845 virtual void HideCloudWhiteboardAboutButton(
bool bHide) = 0;
851 virtual void HideCloudWhiteboardHelperCenterButton(
bool bHide) = 0;
857 virtual void HideCloudWhiteboardOpenInBrowserButton(
bool bHide) = 0;
863 virtual void HideRequestRecordPrivilegeDialog(
bool bHide) = 0;
945 virtual void DisablePopupMeetingWrongPSWDlg(
bool bDisable) = 0;
951 virtual void DisableWaitingForHostDialog(
bool bDisable) = 0;
960 virtual void EnableInputMeetingPasswordDlg(
bool bEnable) = 0;
969 virtual void EnableInputMeetingScreenNameDlg(
bool bEnable) = 0;
976 virtual void PrePopulateWebinarRegistrationInfo(
const zchar_t* email,
const zchar_t* username) = 0;
982 virtual void DisableAutoShowSelectJoinAudioDlgWhenJoinMeeting(
bool bDisable) = 0;
988 virtual void DisableShowJoinMeetingWnd(
bool bDisable) = 0;
998public IMeetingUIElemConfiguration,
1041 virtual void SetDirectShareMonitorID(
const zchar_t* monitorID) = 0;
1050 virtual void ConfigDSCP(
int dscpAudio,
int dscpVideo,
bool bReset) = 0;
1057 virtual void EnableLengthLimitationOfMeetingNumber(
bool bEnable) = 0;
1063 virtual void EnableShareIOSDevice(
bool bEnable) = 0;
1069 virtual void EnableShareWhiteBoard(
bool bEnable) = 0;
1075 virtual void ForceDisableMultiShare(
bool bDisable) = 0;
1082 virtual SDKError EnableZoomDocs(
bool bEnable) = 0;
End other meeting to join the new meeting Handler.
virtual bool EndOtherMeeting()=0
Close another ongoing meeting.
virtual ~IEndOtherMeetingToJoinMeetingHandler()
virtual void Cancel()=0
Ignore the prompt of closing another ongoing meeting.
Meeting connect configuration Interface.
virtual void EnableForceAutoStopMyVideoWhenJoinMeeting(bool bEnable)=0
Set if it is able to force turn off video when joining the meeting. Default: FALSE.
virtual void RedirectConfirmStartArchiveDialog(bool bRedirect)=0
Set if it is able to handle the confirm start archive dialog dlg with user's own program in the meeti...
virtual void EnableAutoEndOtherMeetingWhenStartMeeting(bool bEnable)=0
Set if it is able to end automatically another ongoing meeting when joining a new meeting....
virtual void EnableForceAutoStartMyVideoWhenJoinMeeting(bool bEnable)=0
Set if it is able to force to turn on the video when join meeting. Default: FALSE.
virtual void RedirectEndOtherMeeting(bool bRedirect)=0
Set if it is able to redirect the process to end another meeting by user's own program....
virtual void RedirectWebinarNeedRegister(bool bRedirect)=0
Set if it is able to handle the webinar register process with user's own program in the meeting....
virtual void RedirectWebinarNameInputDialog(bool bRedirect)=0
Set if it is able to handle the webinar username input dlg with user's own program in the meeting....
virtual void RedirectMeetingInputUserInfoDialog(bool bRedirect)=0
Set if it is able to handle the display name and email input dlg with user's own program in the meeti...
virtual void RedirectConfirmRecoverMeetingDialog(bool bRedirect)=0
Set if it is able to handle the confirm recover meeting dialog dlg with user's own program in the mee...
user to handle confirm whether start archiving after joining the meeting.
virtual SDKError JoinWithArchive(bool bStartArchive)=0
Join the meeting.
virtual const zchar_t * GetArchiveConfirmContent()=0
The content that notifies the user to confirm starting to archive when joining the meeting.
virtual ~IMeetingArchiveConfirmHandler()
Meeting configuration event callback.
virtual void onJoinMeetingNeedUserInfo(IMeetingInputUserInfoHandler *pHandler)=0
When joining the meeting, this callback is triggered if the user needs to input a username and email.
virtual void onUserConfirmRecoverMeeting(IMeetingConfirmRecoverHandler *handler)=0
Callback event when the host starts a deleted or expired meeting(not PMI meeting).
virtual void onWebinarNeedInputScreenName(IWebinarInputScreenNameHandler *pHandler)=0
When joining the webinar, this callback is triggered if the user needs to input a username.
virtual ~IMeetingConfigurationEvent()
virtual void onUserConfirmToStartArchive(IMeetingArchiveConfirmHandler *pHandler)=0
Callback event when joining a meeting if the admin allows the the user to choose to archive the meeti...
virtual void onWebinarNeedRegisterNotification(IWebinarNeedRegisterHandler *handler_)=0
During the webinar, this callback event will be triggered if the user needs to register.
virtual void onInputMeetingPasswordAndScreenNameNotification(IMeetingPasswordAndScreenNameHandler *pHandler)=0
The SDK will trigger the callback event if the password or screen name is required.
virtual void onEndOtherMeetingToJoinMeetingNotification(IEndOtherMeetingToJoinMeetingHandler *handler_)=0
The user will receive this callback event if the user wants to join the new meeting while the ongoing...
Free meeting event handler.
virtual ~IMeetingConfigurationFreeMeetingEvent()
virtual void onFreeMeetingRemainTime(unsigned int leftTime)=0
The SDK will trigger this callback event during the free meeting to inform the user how much time is ...
virtual void onFreeMeetingNeedToUpgrade(FreeMeetingNeedUpgradeType type_, const zchar_t *gift_url)=0
The callback of upgrading the free meeting.
virtual void onFreeMeetingRemainTimeStopCountDown()=0
The callback of free meeting stops the countdown.
virtual void onFreeMeetingUpgradeToProMeeting()=0
Callback function of free meting upgrades successfully.
virtual void onFreeMeetingUpgradeToGiftFreeTrialStart()=0
Callback function of starting to upgrade the free meeting by the gift link.
FreeMeetingNeedUpgradeType
Upgrade types of free meeting. Here are more detailed structural descriptions.
@ FreeMeetingNeedUpgradeType_BY_GIFTURL
@ FreeMeetingNeedUpgradeType_NONE
@ FreeMeetingNeedUpgradeType_BY_ADMIN
virtual void onFreeMeetingUpgradeToGiftFreeTrialStop()=0
Callback function of ending upgrade the free meeting by the gift link.
Meeting configuration interface.
virtual void SetMaxDurationForOnlyHostInMeeting(int nDuration)=0
Set the maximum duration of the meeting when there is no attendee in the meeting. Default: 24*60.
virtual void EnableAutoAdjustMicVolumeWhenJoinAudio(bool bEnable)=0
Set if it is able to auto-adjust the volume of the mic when joining the meeting. Default: TRUE.
virtual void Reset()=0
Reset the meeting configuration and back to the default state.
virtual void EnableAutoAdjustSpeakerVolumeWhenJoinAudio(bool bEnable)=0
Set if it is able to auto-adjust the volume of the speaker when joining the meeting....
virtual void SetEvent(IMeetingConfigurationEvent *pEvent)=0
Set meeting configuration controller callback event handler.
host to handle confirm whether recover meeting or not when start a deleted or expired meeting.
virtual SDKError RecoverMeeting(bool bRecover)=0
Join the meeting.
virtual ~IMeetingConfirmRecoverHandler()
virtual const zchar_t * GetRecoverMeetingContent()=0
The content that notifies the host to recover the meeting.
Meeting screen name and password handler.
virtual void Cancel()=0
Ignore the prompt of completing the information.
virtual ~IMeetingPasswordAndScreenNameHandler()
virtual RequiredInfoType GetRequiredInfoType()=0
Get the type of required information to be completed.
virtual bool InputMeetingPasswordAndScreenName(const zchar_t *meetingPassword, const zchar_t *screenName)=0
Complete the password and screen name information.
virtual bool InputMeetingScreenName(const zchar_t *screenName)=0
Complete the screen name.
RequiredInfoType
Type of necessary information to join the meeting. Here are more detailed structural descriptions.
@ REQUIRED_INFO_TYPE_MeetingIDAndScreenName
@ REQUIRED_INFO_TYPE_PasswordAndScreenName
@ REQUIRED_INFO_TYPE_ScreenName
@ REQUIRED_INFO_TYPE_Password4WrongPassword
@ REQUIRED_INFO_TYPE_NONE
@ REQUIRED_INFO_TYPE_Password
virtual bool InputMeetingIDAndScreenName(const zchar_t *meetingID, const zchar_t *screenName)=0
Complete the meeting id and screen name information.
Webinar register with email and screen name Handler.
virtual SDKError InputWebinarRegisterEmailAndScreenName(const zchar_t *email, const zchar_t *screenName)=0
Configure the information of email and screen name.
virtual ~IWebinarNeedRegisterHandlerByEmail()
virtual void Cancel()=0
Ignore the prompt of the register.
Register webinar with URL Handler.
virtual void Release()=0
Release object.
virtual const zchar_t * GetWebinarRegisterUrl()=0
Get the URL to register webinar.
virtual ~IWebinarNeedRegisterHandlerByUrl()
Webinar register handler.
virtual WebinarNeedRegisterType GetWebinarNeedRegisterType()=0
Get the type to register. For more details, see WebinarNeedRegisterType enum.
WebinarNeedRegisterType
Register type of webinar. Here are more detailed structural descriptions.
@ WebinarReg_By_Email_and_DisplayName
@ WebinarReg_By_Register_Url
virtual ~IWebinarNeedRegisterHandler()
ZOOM windows SDK Common Definition File.
#define END_ZOOM_SDK_NAMESPACE
#define BEGIN_ZOOM_SDK_NAMESPACE
SDKError
Enumeration of common errors of SDK.