Meeting SDK for Linux API Reference
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
meeting_participants_ctrl_interface.h
Go to the documentation of this file.
1
6#ifndef _MEETING_ParticipantsCtrl_INTERFACE_H_
7#define _MEETING_ParticipantsCtrl_INTERFACE_H_
8#include "zoom_sdk_def.h"
10#if defined(WIN32)
11#include "meeting_service_components/meeting_emoji_reaction_interface.h"
12#endif
27
40
51
70{
71public:
76 virtual const zchar_t* GetUserName() = 0;
77
80 virtual bool IsHost() = 0;
81
86 virtual unsigned int GetUserID() = 0;
87
91 virtual const zchar_t* GetAvatarPath() = 0;
92
96 virtual const zchar_t* GetPersistentId() = 0;
97
103 virtual const zchar_t* GetCustomerKey() = 0;
104
108 virtual bool IsVideoOn() = 0;
109
112 virtual bool IsAudioMuted() = 0;
113
117
120 virtual bool IsMySelf() = 0;
121
124 virtual bool IsInWaitingRoom() = 0;
125
128 virtual bool IsRaiseHand() = 0;
129
132 virtual UserRole GetUserRole() = 0;
133
136 virtual bool IsPurePhoneUser() = 0;
137
140 virtual int GetAudioVoiceLevel() = 0;
141
144 virtual bool IsClosedCaptionSender() = 0;
145
148 virtual bool IsTalking() = 0;
149
152 virtual bool IsH323User() = 0;
153
157#if defined(WIN32)
160 virtual bool IsInterpreter() = 0;
161
164 virtual bool IsSignLanguageInterpreter() = 0;
165
168 virtual const zchar_t* GetInterpreterActiveLanguage() = 0;
169
172 virtual SDKEmojiFeedbackType GetEmojiFeedbackType() = 0;
173
176 virtual bool IsCompanionModeUser() = 0;
177#endif
181
184 virtual bool IsRawLiveStreaming() = 0;
185
188 virtual bool HasRawLiveStreamPrivilege() = 0;
189
192 virtual bool HasCamera() = 0;
193
196 virtual bool IsProductionStudioUser() = 0;
197
200 virtual bool IsInWebinarBackstage() = 0;
201
204 virtual unsigned int GetProductionStudioParent() = 0;
205
208 virtual bool IsBotUser() = 0;
209
213 virtual const zchar_t* GetBotAppName() = 0;
214
217 virtual bool IsVirtualNameTagEnabled() = 0;
218
222
223 virtual ~IUserInfo(){};
224};
225
229{
230public:
232
237 virtual void onUserJoin(IList<unsigned int >* lstUserID, const zchar_t* strUserList = nullptr) = 0;
238
243 virtual void onUserLeft(IList<unsigned int >* lstUserID, const zchar_t* strUserList = nullptr) = 0;
244
247 virtual void onHostChangeNotification(unsigned int userId) = 0;
248
252 virtual void onLowOrRaiseHandStatusChanged(bool bLow, unsigned int userid) = 0;
253
257 virtual void onUserNamesChanged(IList<unsigned int>* lstUserID) = 0;
258
262 virtual void onCoHostChangeNotification(unsigned int userId, bool isCoHost) = 0;
263
265 virtual void onInvalidReclaimHostkey() = 0;
266
268 virtual void onAllHandsLowered() = 0;
269
273 virtual void onLocalRecordingStatusChanged(unsigned int user_id, RecordingStatus status) = 0;
274
277 virtual void onAllowParticipantsRenameNotification(bool bAllow) = 0;
278
281 virtual void onAllowParticipantsUnmuteSelfNotification(bool bAllow) = 0;
282
285 virtual void onAllowParticipantsStartVideoNotification(bool bAllow) = 0;
286
290
294
297 virtual void onAllowParticipantsRequestCloudRecording(bool bAllow) = 0;
298
301 virtual void onInMeetingUserAvatarPathUpdated(unsigned int userID) = 0;
302
305 virtual void onParticipantProfilePictureStatusChange(bool bHidden) = 0;
306
309 virtual void onFocusModeStateChanged(bool bEnabled) = 0;
310
314
317 virtual void onBotAuthorizerRelationChanged(unsigned int authorizeUserID) = 0;
318
322 virtual void onVirtualNameTagStatusChanged(bool bOn, unsigned int userID) = 0;
323
326 virtual void onVirtualNameTagRosterInfoUpdated(unsigned int userID) = 0;
327
328#if defined(WIN32)
332 virtual void onCreateCompanionRelation(unsigned int parentUserID, unsigned int childUserID) = 0;
333
336 virtual void onRemoveCompanionRelation(unsigned int childUserID) = 0;
337#endif
338};
339
343{
344public:
350
356
362 virtual IUserInfo* GetUserByUserID(unsigned int userid) = 0;
363
368 virtual IUserInfo* GetMySelfUser() = 0;
369
375 virtual IUserInfo* GetBotAuthorizedUserInfoByUserID(unsigned int userid) = 0;
376
382 virtual IList<unsigned int >* GetAuthorizedBotListByUserID(unsigned int userid) = 0;
383
384#if defined(WIN32)
390 virtual IUserInfo* GetCompanionParentUser(unsigned int userid) = 0;
391
397 virtual IList<unsigned int >* GetCompanionChildList(unsigned int userid) = 0;
398#endif
399
406 virtual SDKError LowerAllHands(bool forWebinarAttendees) = 0;
407
415 virtual SDKError ChangeUserName(const unsigned int userid, const zchar_t* userName, bool bSaveUserName) = 0;
416
422 virtual SDKError LowerHand(unsigned int userid) = 0;
423
428 virtual SDKError RaiseHand() = 0;
429
435 virtual SDKError MakeHost(unsigned int userid) = 0;
436
442 virtual SDKError CanbeCohost(unsigned int userid) = 0;
443
449 virtual SDKError AssignCoHost(unsigned int userid) = 0;
450
456 virtual SDKError RevokeCoHost(unsigned int userid) = 0;
457
463 virtual SDKError ExpelUser(unsigned int userid) = 0;
464
467 virtual bool IsSelfOriginalHost() = 0;
468
473 virtual SDKError ReclaimHost() = 0;
474
480 virtual SDKError CanReclaimHost(bool& bCanReclaimHost) = 0;
481
487 virtual SDKError ReclaimHostByHostKey(const zchar_t* host_key) = 0;
488
489 virtual SDKError AllowParticipantsToRename(bool bAllow) = 0;
490
491 virtual bool IsParticipantsRenameAllowed() = 0;
492
493 virtual SDKError AllowParticipantsToUnmuteSelf(bool bAllow) = 0;
494
496
498
503 virtual SDKError AllowParticipantsToStartVideo(bool bAllow) = 0;
504
508
514
518
524 virtual SDKError AllowParticipantsToChat(bool bAllow) = 0;
525
529 virtual bool IsParticipantAllowedToChat() = 0;
530
534
540
544
549 virtual SDKError AutoAllowLocalRecordingRequest(bool bAllow) = 0;
550
555
559
565
568 virtual bool IsFocusModeEnabled() = 0;
569
572 virtual bool IsFocusModeOn() = 0;
573
578 virtual SDKError TurnFocusModeOn(bool turnOn) = 0;
579
583
589
593
597
603
606 virtual bool IsSupportVirtualNameTag() = 0;
607
612 virtual SDKError EnableVirtualNameTag(bool bEnabled) = 0;
613
619
625
631
632};
634#endif
Meeting waiting room controller interface.
virtual SDKError SetEvent(IMeetingParticipantsCtrlEvent *pEvent)=0
Set the participants controller callback event handler.
virtual IUserInfo * GetUserByUserID(unsigned int userid)=0
Get the information of specified user.
virtual SDKError HideParticipantProfilePictures(bool bHide)=0
Hide/Show participant profile pictures.
virtual SDKError CreateVirtualNameTagRosterInfoCommit()=0
Batch create virtual name tag roster infoTo according to the prepare list.
virtual bool IsParticipantsStartVideoAllowed()=0
Check whether the current meeting allows participants to start video, it can only be used in regular ...
virtual SDKError CreateVirtualNameTagRosterInfoBegin()=0
Prepare to Update virtual name tag roster infomation.
virtual bool IsParticipantsUnmuteSelfAllowed()=0
virtual SDKError AllowParticipantsToRequestCloudRecording(bool bAllow)=0
Toggle whether attendees can requests for the host to start a cloud recording. This can only be used ...
virtual bool AddVirtualNameTagRosterInfoToList(ZoomSDKVirtualNameTag userRoster)=0
Add the userRoster to a prepared list.
virtual bool IsParticipantAllowedToChat()=0
Check whether the current meeting allows participants to chat, it can only be used in regular meeetin...
virtual SDKError AllowParticipantsToStartVideo(bool bAllow)=0
Allowing the regular attendees to start video, it can only be used in regular meeetings(no bo).
virtual SDKError AskAllToUnmute()=0
virtual bool IsSelfOriginalHost()=0
Check whether myself is original host.
virtual SDKError LowerAllHands(bool forWebinarAttendees)=0
Cancel all hands raised.
virtual IUserInfo * GetBotAuthorizedUserInfoByUserID(unsigned int userid)=0
Get the information about the bot's authorized user.
virtual SDKError ChangeUserName(const unsigned int userid, const zchar_t *userName, bool bSaveUserName)=0
Change the screen name of specified user. Only the host or co-host can change the others' name.
virtual FocusModeShareType GetFocusModeShareType()=0
Get focus mode share type indicating who can see the shared content which is controlled by host or co...
virtual bool IsParticipantsShareWhiteBoardAllowed()=0
Check whether the current meeting allows participants to share whiteboard, it can only be used in reg...
virtual SDKError AllowParticipantsToShareWhiteBoard(bool bAllow)=0
Allowing the regular attendees to share whiteboard, it can only be used in regular meeetings(no bo).
virtual bool CanEnableParticipantRequestCloudRecording()=0
Determine if the current user can enable participant request clould recording.
virtual SDKError ReclaimHost()=0
Reclaim the role of the host.
virtual IList< unsigned int > * GetParticipantsList()=0
Get the list of all the panelists in the meeting.
virtual SDKError RaiseHand()=0
Raise hands in the meeting.
virtual SDKError AllowParticipantsToRequestLocalRecording(bool bAllow)=0
Allowing the regular attendees to send local recording privilege request, it can only be used in regu...
virtual SDKError CanReclaimHost(bool &bCanReclaimHost)=0
Determine if the user has the right to reclaim the host role.
virtual SDKError AssignCoHost(unsigned int userid)=0
Set the specified user as the co-host.
virtual bool IsParticipantRequestCloudRecordingAllowed()=0
Check whether the current meeting allows participants to send cloud recording privilege request,...
virtual bool IsParticipantsRenameAllowed()=0
virtual SDKError MakeHost(unsigned int userid)=0
Set the specified user as the host.
virtual bool IsAutoAllowLocalRecordingRequest()=0
Check whether the current meeting auto grant participants local recording privilege request,...
virtual SDKError EnableVirtualNameTag(bool bEnabled)=0
Enable the virtual name tag feature for the account.
virtual bool IsSupportVirtualNameTag()=0
Determine if support virtual name tag feature.
virtual SDKError LowerHand(unsigned int userid)=0
Cancel the hands raised of specified user.
virtual SDKError AllowParticipantsToUnmuteSelf(bool bAllow)=0
virtual SDKError CanHideParticipantProfilePictures()=0
Determine if the current user can hide participant profile pictures.
virtual SDKError CanbeCohost(unsigned int userid)=0
Determine if it is able to change the specified user role as the co-host.
virtual IUserInfo * GetMySelfUser()=0
Get the information of current user.
virtual SDKError TurnFocusModeOn(bool turnOn)=0
Turn focus mode on or off. Focus mode on means Participants will only be able to see hosts' videos an...
virtual SDKError ReclaimHostByHostKey(const zchar_t *host_key)=0
Reclaim role of host via host_key.
virtual SDKError AllowParticipantsToChat(bool bAllow)=0
Allowing the regular attendees to use chat, it can only be used in regular meeetings(no webinar or bo...
virtual SDKError RevokeCoHost(unsigned int userid)=0
Get back the co-host role from the specified user.
virtual bool IsParticipantRequestLocalRecordingAllowed()=0
Check whether the current meeting allows participants to send local recording privilege request,...
virtual SDKError AllowParticipantsToRename(bool bAllow)=0
virtual bool IsFocusModeOn()=0
Determine if the focus mode on or off.
virtual bool IsParticipantProfilePicturesHidden()=0
Check whether the current meeting hides participant pictures.
virtual SDKError SetFocusModeShareType(FocusModeShareType shareType)=0
Set the focus mode type indicating who can see the shared content which is controlled by host or co-h...
virtual SDKError AutoAllowLocalRecordingRequest(bool bAllow)=0
Auto grant or deny the regular attendee's local recording privilege request, it can only be used in r...
virtual IList< unsigned int > * GetAuthorizedBotListByUserID(unsigned int userid)=0
Get the authorizer's bot list.
virtual SDKError ExpelUser(unsigned int userid)=0
Expel the specified user.
virtual bool IsFocusModeEnabled()=0
Determine if the focus mode enabled or not by web portal.
Meeting Participants Controller Callback Event.
virtual void onVirtualNameTagStatusChanged(bool bOn, unsigned int userID)=0
Notification of virtual name tag status change.
virtual void onFocusModeShareTypeChanged(FocusModeShareType type)=0
Callback event that that focus mode share type changed by host or co-host.
virtual void onUserNamesChanged(IList< unsigned int > *lstUserID)=0
Callback event of changing the screen name.
virtual void onAllHandsLowered()=0
Callback event of the host calls the lower all hands interface, the host/cohost/panelist will receive...
virtual void onInMeetingUserAvatarPathUpdated(unsigned int userID)=0
Callback event that the user avatar path is updated in the meeting.
virtual void onAllowParticipantsStartVideoNotification(bool bAllow)=0
Callback event that lets participants start a video.
virtual void onVirtualNameTagRosterInfoUpdated(unsigned int userID)=0
Notification of virtual name tag roster info updated.
virtual void onLocalRecordingStatusChanged(unsigned int user_id, RecordingStatus status)=0
Callback event that the status of local recording changes.
virtual void onInvalidReclaimHostkey()=0
Callback event of invalid host key.
virtual void onBotAuthorizerRelationChanged(unsigned int authorizeUserID)=0
Callback event that the bot relationship changed in the meeting.
virtual void onHostChangeNotification(unsigned int userId)=0
Callback event of notification of the new host.
virtual void onAllowParticipantsShareWhiteBoardNotification(bool bAllow)=0
Callback event that lets participants share a new whiteboard.
virtual void onParticipantProfilePictureStatusChange(bool bHidden)=0
Callback event that participant profile status change.
virtual void onAllowParticipantsRenameNotification(bool bAllow)=0
Callback event that lets participants rename themself.
virtual void onFocusModeStateChanged(bool bEnabled)=0
Callback event that focus mode changed by host or co-host.
virtual void onAllowParticipantsUnmuteSelfNotification(bool bAllow)=0
Callback event that lets participants unmute themself.
virtual void onRequestLocalRecordingPrivilegeChanged(LocalRecordingRequestPrivilegeStatus status)=0
Callback event that the request local recording privilege changes.
virtual void onUserLeft(IList< unsigned int > *lstUserID, const zchar_t *strUserList=nullptr)=0
Callback event of notification of user who leaves the meeting.
virtual void onUserJoin(IList< unsigned int > *lstUserID, const zchar_t *strUserList=nullptr)=0
Callback event of notification of users who are in the meeting.
virtual void onAllowParticipantsRequestCloudRecording(bool bAllow)=0
Callback event that lets participants request that the host starts cloud recording.
virtual void onCoHostChangeNotification(unsigned int userId, bool isCoHost)=0
Callback event of changing the co-host.
virtual void onLowOrRaiseHandStatusChanged(bool bLow, unsigned int userid)=0
Callback event of changing the state of the hand.
User information interface.
virtual bool IsProductionStudioUser()=0
Determine whether the user is production studio user.
virtual RecordingStatus GetLocalRecordingStatus()=0
Get the local recording status.
virtual unsigned int GetProductionStudioParent()=0
Get the parent user ID of the production studio user.
virtual AudioType GetAudioJoinType()=0
Get the audio type of the user specified by the current information when joins the meeting.
virtual bool IsVideoOn()=0
Determine the video status of the user specified by the current information.
virtual const zchar_t * GetUserName()=0
Get the username matched with the current user information.
virtual bool IsAudioMuted()=0
Determine the audio status of the user specified by the current information.
virtual bool IsMySelf()=0
Determine whether the current information corresponds to the user himself or not.
virtual bool IsRaiseHand()=0
Determine whether the user specified by the current information raises hand or not.
virtual const zchar_t * GetPersistentId()=0
Get the user persistent id matched with the current user information.
virtual const zchar_t * GetAvatarPath()=0
Get the avatar file path matched with the current user information.
virtual bool IsH323User()=0
Determine whether the user specified by the current information is H323 user or not.
virtual bool IsHost()=0
Determine whether the member corresponding with the current information is the host or not.
virtual unsigned int GetUserID()=0
Get the user ID matched with the current user information.
virtual bool IsClosedCaptionSender()=0
Determine whether the user corresponding to the current information is the sender of Closed Caption o...
virtual bool IsVirtualNameTagEnabled()=0
Query if the participant enabled virtual name tag.
virtual bool IsTalking()=0
Determine whether the user specified by the current information is talking or not.
virtual UserRole GetUserRole()=0
Get the type of role of the user specified by the current information.
virtual bool IsInWaitingRoom()=0
Determine whether the user specified by the current information is in the waiting room or not.
virtual bool IsRawLiveStreaming()=0
Determine whether the user has started a raw live stream.
virtual const zchar_t * GetBotAppName()=0
Get the bot app name.
virtual bool HasCamera()=0
Query if the participant has a camera.
virtual bool IsPurePhoneUser()=0
Determine whether the user corresponding to the current information joins the meeting by telephone or...
virtual const zchar_t * GetCustomerKey()=0
Get the customer_key matched with the current user information. If you assign a customer_key for a us...
virtual int GetAudioVoiceLevel()=0
Get the Mic level of the user corresponding to the current information.
virtual bool HasRawLiveStreamPrivilege()=0
Determine whether the user has raw live stream privilege.
virtual bool IsBotUser()=0
Determine whether the user specified by the current information is bot user or not.
virtual bool IsInWebinarBackstage()=0
Determine whether the user specified by the current information is in the webinar backstage or not.
virtual WebinarAttendeeStatus * GetWebinarAttendeeStatus()=0
Get the webinar status of the user specified by the current information.
virtual IList< ZoomSDKVirtualNameTag > * GetVirtualNameTagList()=0
Query the virtual name tag roster infomation.
AudioType
Define the audio type of the user. Here are more detailed structural descriptions.
UserRole
Role of user. Here are more detailed structural descriptions.
@ USERROLE_COHOST
Role of co-host.
@ USERROLE_BREAKOUTROOM_MODERATOR
Host role in breakout room.
@ USERROLE_ATTENDEE
Role of attendee.
@ USERROLE_HOST
Role of the host.
@ USERROLE_PANELIST
Role of the panelist, valid only in webinar.
@ USERROLE_NONE
For initialization.
struct tagZoomSDKVirtualNameTag ZoomSDKVirtualNameTag
FocusModeShareType
Type of focus mode. Here are more detailed structural descriptions.
struct tagWebinarAttendeeStatus WebinarAttendeeStatus
Recording of Meeting Service Interface Valid for both ZOOM style and user custom interface mode.
RecordingStatus
Recording status. Here are more detailed structural descriptions.
LocalRecordingRequestPrivilegeStatus
Status of webinar attendee. Here are more detailed structural descriptions.
bool allow_talk
TRUE indicates that it is able to talk.
Info of virtual name tag. Here are more detailed structural descriptions.
int tagID
Tag ID.tagID is the unique identifier.The range of tagID is 0 - 1024.
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.