Meeting SDK for Linux API Reference
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
meeting_configuration_interface.h
Go to the documentation of this file.
1
6#ifndef _MEETING_Configuration_INTERFACE_H_
7#define _MEETING_Configuration_INTERFACE_H_
8#include "zoom_sdk_def.h"
9#if defined(WIN32)
10#include "customized_resource_helper_interface.h"
11#endif
53
74
78{
79public:
82 virtual const zchar_t* GetWebinarRegisterUrl() = 0;
83
85 virtual void Release() = 0;
87};
88
92{
93public:
96 virtual SDKError InputWebinarRegisterEmailAndScreenName(const zchar_t* email, const zchar_t* screenName) = 0;
97
100 virtual void Cancel() = 0;
101
103};
104
108{
109public:
115 virtual SDKError InputName(const zchar_t* screenName) = 0;
116
121 virtual SDKError Cancel() = 0;
122
124};
125
129{
130public:
132
134 virtual const zchar_t* GetDefaultDisplayName() = 0;
135
138 virtual bool CanModifyDefaultDisplayName() = 0;
139
143 virtual bool IsValidEmail(const zchar_t* email) = 0;
144
149 virtual SDKError InputUserInfo(const zchar_t* name, const zchar_t* email) = 0;
150
153 virtual void Cancel() = 0;
154};
155
159{
160public:
162
164 virtual const zchar_t* GetArchiveConfirmContent() = 0;
165
170 virtual SDKError JoinWithArchive(bool bStartArchive) = 0;
171};
172
173
177{
178public:
181 virtual bool EndOtherMeeting() = 0;
182
185 virtual void Cancel() = 0;
187};
188
228
257#if defined(WIN32)
258enum SDKInviteDlgTabPage
259{
260 SDK_INVITEDLG_TAB_EMAILCONTACT = 0,
261 SDK_INVITEDLG_TAB_PHONECONTACT,
262 SDK_INVITEDLG_TAB_ROOMSYSTEM,
263};
264
265enum SDKH323TabPage
266{
267 SDK_INVITEDLG_H323_DIALIN = 0,
268 SDK_INVITEDLG_H323_CALLOUT,
269};
270
275typedef struct tagRedirectWarningMsgOption
276{
277 bool bRedirectBadNetwork;
278 bool bRedirectWarnHighCPU;
279 tagRedirectWarningMsgOption()
280 {
281 bRedirectBadNetwork = false;
282 bRedirectWarnHighCPU = false;
283 }
284
285}RedirectWarningMsgOption;
286
287
292typedef struct tagPanelistMenuItemOption
293{
294 bool bNotShowDowngradePanelist;
295 tagPanelistMenuItemOption()
296 {
297 bNotShowDowngradePanelist = false;
298 }
299
300}PanelistMenuItemOption;
301
306typedef struct tagAttendeeMenuItemOption
307{
308 bool bNotShowPromoteToPanelist;
309 tagAttendeeMenuItemOption()
310 {
311 bNotShowPromoteToPanelist = false;
312 }
313
314}AttendeeMenuItemOption;
315
318class IMeetingUIElemConfiguration
319{
320public:
323 virtual void SetMeetingUIPos(WndPosition pos) = 0;
324
328 virtual void SetFloatVideoPos(WndPosition pos) = 0;
329
333 virtual void SetSharingToolbarVisibility(bool bShow) = 0;
334
337 virtual void SetBottomFloatToolbarWndVisibility(bool bShow) = 0;
338
342 virtual void EnableApproveRemoteControlDlg(bool bEnable) = 0;
343
347 virtual void EnableDeclineRemoteControlResponseDlg(bool bEnable) = 0;
348
351 virtual void EnableLeaveMeetingOptionForHost(bool bEnable) = 0;
352
357 virtual void EnableInviteButtonOnMeetingUI(bool bEnable) = 0;
358
361 virtual void EnableVideoButtonOnMeetingUI(bool bEnable) = 0;
362
365 virtual void EnableAudioButtonOnMeetingUI(bool bEnable) = 0;
366
369 virtual void EnableEnterAndExitFullScreenButtonOnMeetingUI(bool bEnable) = 0;
370
373 virtual void EnableLButtonDBClick4SwitchFullScreenMode(bool bEnable) = 0;
374
377 virtual void SetFloatVideoWndVisibility(bool bShow) = 0;
378
382 virtual void RedirectClickShareBTNEvent(bool bRedirect) = 0;
383
387 virtual void RedirectClickEndMeetingBTNEvent(bool bRedirect) = 0;
388
392 virtual void RedirectFreeMeetingEndingReminderDlg(bool bRedirect) = 0;
393
397 virtual void RedirectClickCustomLiveStreamMenuEvent(bool bRedirect) = 0;
398
402 virtual void RedirectClickParticipantListBTNEvent(bool bRedirect) = 0;
403
407 virtual void RedirectClickCCBTNEvent(bool bRedirect) = 0;
408
412 virtual void RedirectMeetingWarningMsg(RedirectWarningMsgOption redirectOption) = 0;
413
416 virtual void EnableToolTipsShow(bool bEnable) = 0;
417
421 virtual void EnableClaimHostFeature(bool bEnable) = 0;
422
425 virtual void EnableAutoHideJoinAudioDialog(bool bEnable) = 0;
426
429 virtual void AlwaysShowIconOnTaskBar(bool bAlwaysShow) = 0;
430
434 virtual void DisableSplitScreenModeUIElements(bool bDisable) = 0;
435
438 virtual void SetShowAudioUseComputerSoundChkbox(bool bShow) = 0;
439
442 virtual void SetShowVideoOptimizeChkbox(bool bShow) = 0;
443
446 virtual void SetShowCallInTab(bool bShow) = 0;
447
450 virtual void SetShowCallMeTab(bool bShow) = 0;
451
456 virtual SDKError DisableTopMostAttr4SettingDialog(bool bDisable) = 0;
457
462 virtual SDKError EnableGrabShareWithoutReminder(bool bEnable) = 0;
463
467 virtual void EnableShowShareSwitchMultiToSingleConfirmDlg(bool bEnable) = 0;
468
472 virtual void DisableFreeMeetingRemainTimeNotify(bool bDisable) = 0;
473
476 virtual void HideChatItemOnMeetingUI(bool bHide) = 0;
477
480 virtual void HideRecordItemOnMeetingUI(bool bHide) = 0;
481
484 virtual void HideUpgradeFreeMeetingButton(bool bHide) = 0;
485
489 virtual void SetShowInviteDlgTabPage(SDKInviteDlgTabPage tabPage, bool bShow) = 0;
490
494 virtual void SetShowH323SubTabPage(SDKH323TabPage tabPage, bool bShow) = 0;
495
496
497 // \brief Set the visibility of the local recording convert progress bar dialog. Default: TRUE.
499 virtual void EnableLocalRecordingConvertProgressBarDialog(bool bShow) = 0;
500
501 // \brief Set the visibility of Switch Camera button on 2nd camera share window,Default: TRUE.
503 virtual void HideSwitchCameraButton(bool bHide) = 0;
504
505 // \brief Set the visibility of CopyURL button on invite window, Default: TRUE.
507 virtual void HideCopyUrlOnInviteWindow(bool bHide) = 0;
508
509 // \brief Set the visibility of CopyInvitation button on invite window, Default: TRUE.
511 virtual void HideCopyInvitationOnInviteWindow(bool bHide) = 0;
512
513 // \brief Set the visibility of Keypad button on meeting window, Default: TRUE.
515 virtual void HideKeypadButtonOnMeetingWindow(bool bHide) = 0;
516
520 virtual void HideRemoteControlOnMeetingUI(bool bHide) = 0;
521
524 virtual void HideQAOnMeetingUI(bool bHide) = 0;
525
528 virtual void HidePollOnMeetingUI(bool bHide) = 0;
529
533 virtual void DisableAdvanceAudioDeivceCtrl(bool bDisable) = 0;
534
538 virtual void RedirectClickAudioBTNEvent(bool bRedirect) = 0;
539
543 virtual void RedirectClickAudioMenuBTNEvent(bool bRedirect) = 0;
544
548 virtual void RedirectClickBreakoutRoomButtonEvent(bool bRedirect) = 0;
549
552 virtual void HideReactionsOnMeetingUI(bool bHide) = 0;
553
556 virtual void HideMeetingInfoOnMeetingUI(bool bHide) = 0;
557
560 virtual void HideShareButtonOnMeetingUI(bool bHide) = 0;
561
564 virtual void DisablePanelistMenuItem(PanelistMenuItemOption menuOption) = 0;
565
568 virtual void DisableAttendeeMenuItem(AttendeeMenuItemOption menuOption) = 0;
569
572 virtual void EnableInviteLinkOnMeetingUI(bool bEnable) = 0;
573
576 virtual void EnableCloudWhiteboard(bool bEnable) = 0;
577
580 virtual void HideCloudWhiteboardFeedbackButton(bool bHide) = 0;
581
584 virtual void HideCloudWhiteboardShareButton(bool bHide) = 0;
585
588 virtual void HideCloudWhiteboardAboutButton(bool bHide) = 0;
589
592 virtual void HideCloudWhiteboardHelperCenterButton(bool bHide) = 0;
593
596 virtual void HideCloudWhiteboardOpenInBrowserButton(bool bHide) = 0;
597
600 virtual void HideRequestRecordPrivilegeDialog(bool bHide) = 0;
601};
602#endif
606{
607public:
608
611 virtual void EnableAutoEndOtherMeetingWhenStartMeeting(bool bEnable) = 0;
612
616 virtual void RedirectWebinarNeedRegister(bool bRedirect) = 0;
617
621 virtual void RedirectWebinarNameInputDialog(bool bRedirect) = 0;
622
626 virtual void RedirectMeetingInputUserInfoDialog(bool bRedirect) = 0;
627
631 virtual void RedirectConfirmStartArchiveDialog(bool bRedirect) = 0;
632
636 virtual void RedirectEndOtherMeeting(bool bRedirect) = 0;
637
641 virtual void EnableForceAutoStartMyVideoWhenJoinMeeting(bool bEnable) = 0;
642
646 virtual void EnableForceAutoStopMyVideoWhenJoinMeeting(bool bEnable) = 0;
647#if defined(WIN32)
651 virtual void DisablePopupMeetingWrongPSWDlg(bool bDisable) = 0;
652
655 virtual void DisableWaitingForHostDialog(bool bDisable) = 0;
656
660 virtual void EnableInputMeetingPasswordDlg(bool bEnable) = 0;
661
665 virtual void EnableInputMeetingScreenNameDlg(bool bEnable) = 0;
666
670 virtual void PrePopulateWebinarRegistrationInfo(const zchar_t* email, const zchar_t* username) = 0;
671
674 virtual void DisableAutoShowSelectJoinAudioDlgWhenJoinMeeting(bool bDisable) = 0;
675
678 virtual void DisableShowJoinMeetingWnd(bool bDisable) = 0;
679#endif
680};
681
685#if defined(WIN32)
686public IMeetingUIElemConfiguration,
687#endif
689{
690public:
693 virtual void SetEvent(IMeetingConfigurationEvent* pEvent) = 0;
694
696 virtual void Reset() = 0;
697
702 virtual void EnableAutoAdjustSpeakerVolumeWhenJoinAudio(bool bEnable) = 0;
703
708 virtual void EnableAutoAdjustMicVolumeWhenJoinAudio(bool bEnable) = 0;
709
712 virtual void SetMaxDurationForOnlyHostInMeeting(int nDuration) = 0;
713#if defined(WIN32)
716 virtual void SetDirectShareMonitorID(const zchar_t* monitorID) = 0;
717
723 virtual void ConfigDSCP(int dscpAudio, int dscpVideo, bool bReset) = 0;
724
729 virtual void EnableLengthLimitationOfMeetingNumber(bool bEnable) = 0;
730
733 virtual void EnableShareIOSDevice(bool bEnable) = 0;
734
737 virtual void EnableShareWhiteBoard(bool bEnable) = 0;
738
741 virtual void ForceDisableMultiShare(bool bDisable) = 0;
742#endif
743};
744
746#endif
End other meeting to join the new meeting Handler.
virtual bool EndOtherMeeting()=0
Close another ongoing meeting.
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...
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.
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 onWebinarNeedInputScreenName(IWebinarInputScreenNameHandler *pHandler)=0
When joining the webinar, this callback is triggered if the user needs to input a username.
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...
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
Upgrade the free meeting by the gift link.
@ FreeMeetingNeedUpgradeType_BY_ADMIN
It is necessary for administrator to upgrade the free meeting.
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.
virtual bool CanModifyDefaultDisplayName()=0
Check whether the user can modify default display name.
virtual const zchar_t * GetDefaultDisplayName()=0
Get default display name.
virtual bool IsValidEmail(const zchar_t *email)=0
Check whether the inputed email is a valid email format. The email must meet the email format require...
virtual SDKError InputUserInfo(const zchar_t *name, const zchar_t *email)=0
Complete the name and email information.
virtual void Cancel()=0
Ignore the prompt of completing the information.
Meeting screen name and password handler.
virtual void Cancel()=0
Ignore the prompt of completing the information.
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
The user needs to enter the screen name and the meeting id,via the InputMeetingMeetingIDAndScreenName...
@ REQUIRED_INFO_TYPE_PasswordAndScreenName
The user needs to enter the screen name and the password,via the InputMeetingPasswordAndScreenName() ...
@ REQUIRED_INFO_TYPE_ScreenName
The user needs to enter the screen name. Via the InputMeetingPasswordAndScreenName() to specify the s...
@ REQUIRED_INFO_TYPE_Password4WrongPassword
If the password is invalid, the user needs to re-enter it. Via the InputMeetingPasswordAndScreenName(...
@ REQUIRED_INFO_TYPE_Password
The user needs to enter the password when joins the meeting. Via the InputMeetingPasswordAndScreenNam...
virtual bool InputMeetingIDAndScreenName(const zchar_t *meetingID, const zchar_t *screenName)=0
Complete the meeting id and screen name information.
Webinar input screen name handler.
virtual SDKError InputName(const zchar_t *screenName)=0
Input screen name to join webinar.
virtual SDKError Cancel()=0
Cancel to join webinar.
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 void Cancel()=0
Ignore the prompt of the register.
virtual void Release()=0
Release object.
virtual const zchar_t * GetWebinarRegisterUrl()=0
Get the URL to register webinar.
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
Register webinar account by email and the screen name.
@ WebinarReg_By_Register_Url
Register webinar account by URL.
ZOOM windows SDK Common Definition File.
#define END_ZOOM_SDK_NAMESPACE
#define BEGIN_ZOOM_SDK_NAMESPACE
char zchar_t
SDKError
SDK error types. Here are more detailed structural descriptions.