Windows SDK API Reference
Loading...
Searching...
No Matches
meeting_service_interface.h
Go to the documentation of this file.
1
6#ifndef _MEETING_SERVICE_INTERFACE_H_
7#define _MEETING_SERVICE_INTERFACE_H_
8#include "zoom_sdk_def.h"
10
17{
34};
35
41{
73 MEETING_FAIL_HOST_DISALLOW_OUTSIDE_USER_JOIN = 62, //Forbidden to join meeting
74 MEETING_FAIL_APP_PRIVILEGE_TOKEN_ERROR = 500, //App join token error.
75 MEETING_FAIL_JMAK_USER_EMAIL_NOT_MATCH = 1143 //Jmak user email not match
76
77};
78
84{
93};
94
100{
105};
106
112{
115};
116
122{
125};
126
132{
134 const wchar_t* vanityID;
135 const wchar_t* userName;
136 const wchar_t* psw;
137 const wchar_t* app_privilege_token;
139 const wchar_t* userZAK;
140 const wchar_t* customer_key;
141 const wchar_t* webinarToken;
145 const wchar_t* join_token;
147
153{
155 const wchar_t* vanityID;
156 const wchar_t* userName;
157 const wchar_t* psw;
158 const wchar_t* app_privilege_token;
160 const wchar_t* customer_key;
161 const wchar_t* webinarToken;
165 const wchar_t* join_token;
167
172typedef struct tagJoinParam
173{
175 union
176 {
181 {
183 memset(&param, 0, sizeof(param)); //checked safe
184 }
186
187
193{
200};
201
207{
208 const wchar_t* userID;
209 const wchar_t* userZAK;
210 const wchar_t* userName;
213 const wchar_t* vanityID;
215 const wchar_t* customer_key;
220
226{
228 const wchar_t* vanityID;
230 const wchar_t* customer_key;
235
236
241typedef struct tagStartParam
242{
244 union
245 {
250 {
252 memset(&param, 0, sizeof(param)); //checked safe
253 }
255
261{
269};
270
276{
280};
281
287{
294
300{
304};
305
309{
310public:
313 virtual UINT64 GetMeetingNumber() = 0;
314
317 virtual const wchar_t* GetMeetingID() = 0;
318
321 virtual const wchar_t* GetMeetingTopic() = 0;
322
325 virtual const wchar_t* GetMeetingPassword() = 0;
326
330
333 virtual const wchar_t* GetInviteEmailTeamplate() = 0;
334
337 virtual const wchar_t* GetInviteEmailTitle() = 0;
338
341 virtual const wchar_t* GetJoinMeetingUrl() = 0;
342
345 virtual const wchar_t* GetMeetingHostTag() = 0;
346
349 virtual bool IsInternalMeeting() = 0;
350
354
355 virtual ~IMeetingInfo(){};
356};
357
363{
369 const wchar_t* meeting_topic;
370 const wchar_t* meeting_host;
372 {
374 is_view_only = true;
377 meeting_number = 0;
378 meeting_topic = NULL;
379 meeting_host = NULL;
380 }
381
383 {
384 if (meeting_host)
385 {
386 delete[] meeting_host;
387 meeting_host = NULL;
388 }
389 if (meeting_topic)
390 {
391 delete[] meeting_topic;
392 meeting_topic = NULL;
393 }
394 }
396
402{
406};
407
413{
418};
422{
423public:
425
431 virtual void onMeetingStatusChanged(MeetingStatus status, int iResult = 0) = 0;
432
436
440 virtual void onMeetingParameterNotification(const MeetingParameter* meeting_param) = 0;
441};
442
445class IMeetingBreakoutRoomsController;
470{
471public:
477
482 virtual SDKError HandleZoomWebUriProtocolAction(const wchar_t* protocol_action) = 0;
483
488 virtual SDKError Join(JoinParam& joinParam) = 0;
489
494 virtual SDKError Start(StartParam& startParam) = 0;
495
500 virtual SDKError Leave(LeaveMeetingCmd leaveCmd) = 0;
501
506
510 virtual SDKError LockMeeting() = 0;
511
515 virtual SDKError UnlockMeeting() = 0;
516
519 virtual bool IsMeetingLocked() = 0;
520
524
529 virtual ConnectionQuality GetSharingConnQuality(bool bSending = true) = 0;
530
535 virtual ConnectionQuality GetVideoConnQuality(bool bSending = true) = 0;
536
541 virtual ConnectionQuality GetAudioConnQuality(bool bSending = true) = 0;
542
546
550
554
558
562
566
570
574
578
582
586
590
594
598
602
606
610
614
618
622
626
630
634
638};
640#endif
Meeting annotation tool interface.
Closed caption controller interface.
Emoji Reaction controller interface.
Meeting AAN controller interface.
Meeting audio controller interface.
Meeting breakout rooms controller interface.
Meeting chat controller interface.
Meeting configuration interface.
Meeting H323 Helper Interface.
Meeting information Interface.
virtual const wchar_t * GetMeetingTopic()=0
Get the meeting topic.
virtual MeetingConnType GetMeetingConnType()=0
Get the connection type of the current meeting.
virtual MeetingType GetMeetingType()=0
Get the meeting type.
virtual bool IsInternalMeeting()=0
Determine whether the current meeting is internal or not.
virtual const wchar_t * GetMeetingHostTag()=0
Get the host tag of the current meeting.
virtual const wchar_t * GetMeetingPassword()=0
Get the meeting password.
virtual const wchar_t * GetInviteEmailTitle()=0
Get the meeting title in the email invitation template.
virtual const wchar_t * GetInviteEmailTeamplate()=0
Get the email invitation template for the current meeting.
virtual UINT64 GetMeetingNumber()=0
Get the current meeting number.
virtual const wchar_t * GetJoinMeetingUrl()=0
Get the URL of invitation to join the meeting.
virtual const wchar_t * GetMeetingID()=0
Get the current meeting ID.
Meeting interpretation controller interface.
Live stream meeting controller interface.
Meeting waiting room controller interface.
Meeting phone helper interface.
Meeting q&a controller interface class.
Meeting AAN controller interface.
Meeting recording controller interface.
Meeting remote control interface.
Meeting service callback event.
virtual void onMeetingStatisticsWarningNotification(StatisticsWarningType type)=0
Meeting statistics warning notification callback.
virtual void onMeetingStatusChanged(MeetingStatus status, int iResult=0)=0
Meeting status changed callback.
virtual void onMeetingParameterNotification(const MeetingParameter *meeting_param)=0
Meeting parameter notification callback.
Meeting Service Interface.
virtual IMeetingRecordingController * GetMeetingRecordingController()=0
Get the recording controller interface.
virtual IMeetingWebinarController * GetMeetingWebinarController()=0
Get the webinar controller interface.
virtual SDKError UnlockMeeting()=0
Unlock the current meeting.
virtual IMeetingAANController * GetMeetingAANController()=0
Get the AAN controller.
virtual IMeetingConfiguration * GetMeetingConfiguration()=0
Get the meeting configuration interface.
virtual IMeetingParticipantsController * GetMeetingParticipantsController()=0
Get the participants controller interface.
virtual IMeetingChatController * GetMeetingChatController()=0
Get the chat controller interface.
virtual SDKError Leave(LeaveMeetingCmd leaveCmd)=0
Leave meeting.
virtual IMeetingWaitingRoomController * GetMeetingWaitingRoomController()=0
Get the waiting room controller interface.
virtual IMeetingQAController * GetMeetingQAController()=0
Get the Q&A controller.
virtual IMeetingBOController * GetMeetingBOController()=0
Get the Breakout Room controller.
virtual SDKError Join(JoinParam &joinParam)=0
Join the meeting.
virtual SDKError HandleZoomWebUriProtocolAction(const wchar_t *protocol_action)=0
Join meeting with web uri.
virtual IMeetingPhoneHelper * GetMeetingPhoneHelper()=0
Get the meeting phone helper interface.
virtual SDKError SetEvent(IMeetingServiceEvent *pEvent)=0
Set meeting service callback event handler.
virtual ConnectionQuality GetAudioConnQuality(bool bSending=true)=0
Get the Internet connection quality of audio.
virtual MeetingStatus GetMeetingStatus()=0
Get meeting status.
virtual IMeetingInfo * GetMeetingInfo()=0
Get meeting information.
virtual IMeetingInterpretationController * GetMeetingInterpretationController()=0
Get the Interpretation controller.
virtual IMeetingLiveStreamController * GetMeetingLiveStreamController()=0
Get the live stream controller interface.
virtual IMeetingUIController * GetUIController()=0
Get the meeting UI controller interface.
virtual IZoomRealNameAuthMeetingHelper * GetMeetingRealNameAuthController()=0
Get the real name auth controller interface.
virtual IMeetingRawArchivingController * GetMeetingRawArchivingController()=0
Get the Raw Archiving controller.
virtual IEmojiReactionController * GetMeetingEmojiReactionController()=0
Get the Reaction controller.
virtual IMeetingAudioController * GetMeetingAudioController()=0
Get the audio controller interface.
virtual bool IsMeetingLocked()=0
Determine if the meeting is locked.
virtual IAnnotationController * GetAnnotationController()=0
Get the annotation controller interface.
virtual IClosedCaptionController * GetMeetingClosedCaptionController()=0
Get the Closed Caption controller interface.
virtual IMeetingVideoController * GetMeetingVideoController()=0
Get video controller interface.
virtual IMeetingSignInterpretationController * GetMeetingSignInterpretationController()=0
Get the sign interpretation controller.
virtual SDKError Start(StartParam &startParam)=0
Start meeting.
virtual ConnectionQuality GetVideoConnQuality(bool bSending=true)=0
Get the Internet connection quality of video.
virtual IMeetingShareController * GetMeetingShareController()=0
Get the sharing controller interface.
virtual ConnectionQuality GetSharingConnQuality(bool bSending=true)=0
Get the quality of Internet connection when sharing.
virtual IMeetingRemoteController * GetMeetingRemoteController()=0
Get the remote controller interface.
virtual SDKError LockMeeting()=0
Lock the current meeting.
virtual IMeetingH323Helper * GetH323Helper()=0
Get the meeting H.323 helper interface.
Meeting share controller interface.
Meeting interpretation controller interface.
Meeting UI Controller Interface.
Meeting video controller interface.
Meeting waiting room controller interface.
Webinar controller interface.
Real name auth meeting helper Interface.
ZoomUserType
SDK user type. Here are more detailed structural descriptions.
@ ZoomUserType_Unknown
User of unknown type.
@ ZoomUserType_EMAIL_LOGIN
User logged in with email.
@ ZoomUserType_SSO
User logged in with SSO.
@ ZoomUserType_FACEBOOK
User logged in with Facebook.
@ ZoomUserType_GoogleOAuth
User logged in with Google.
@ ZoomUserType_APIUSER
API user.
MeetingEndReason
Meeting end reason. Here are more detailed structural descriptions.
@ EndMeetingReason_HostStartAnotherMeeting
Host starts another meeting.
@ EndMeetingReason_JBHTimeOut
JBH times out.
@ EndMeetingReason_None
For initialization.
@ EndMeetingReason_FreeMeetingTimeOut
Free meeting times out.
@ EndMeetingReason_EndByHost
Ended by host.
@ EndMeetingReason_KickByHost
Kicked by host.
@ EndMeetingReason_NoAttendee
No attendee.
@ EndMeetingReason_NetworkBroken
Network is broken.
SDKViewType
SDK View Type, primary displayer and secondary displayer. Here are more detailed structural descripti...
@ SDK_SECOND_VIEW
Primary displayer.
SDKUserType
SDK user type. Here are more detailed structural descriptions.
@ SDK_UT_NORMALUSER
Type of ordinary user who needs to login.
@ SDK_UT_WITHOUT_LOGIN
Start meeting without login.
MeetingConnType
Meeting connection type. Here are more detailed structural descriptions.
@ Meeting_Conn_None
Disconnection.
@ Meeting_Conn_FailOver
Failure and reconnection.
@ Meeting_Conn_Normal
Normal connection.
struct tagStartParam4WithoutLogin StartParam4WithoutLogin
SDKShareViewZoomRatio
Share view zoom ratio. Here are more detailed structural descriptions.
@ SDK_ShareViewZoomRatio_100
@ SDK_ShareViewZoomRatio_150
@ SDK_ShareViewZoomRatio_300
@ SDK_ShareViewZoomRatio_200
@ SDK_ShareViewZoomRatio_50
ConnectionQuality
Connection quality. Here are more detailed structural descriptions.
@ Conn_Quality_Excellent
The connection quality is excellent.
@ Conn_Quality_Bad
The connection quality is poor.
@ Conn_Quality_Very_Bad
The connection quality is very poor.
@ Conn_Quality_Unknow
Unknown connection status.
@ Conn_Quality_Not_Good
The connection quality is not good.
@ Conn_Quality_Good
The connection quality is good.
@ Conn_Quality_Normal
The connection quality is normal.
struct tagMeetingParameter MeetingParameter
struct tagJoinParam4WithoutLogin JoinParam4WithoutLogin
MeetingStatus
Meeting status. Here are more detailed structural descriptions.
@ MEETING_STATUS_RECONNECTING
Reconnecting meeting server status.
@ MEETING_STATUS_JOIN_BREAKOUT_ROOM
Join the breakout room.
@ MEETING_STATUS_IN_WAITING_ROOM
Participants who join the meeting before the start are in the waiting room.
@ MEETING_STATUS_DISCONNECTING
Disconnect the meeting server, leave meeting status.
@ MEETING_STATUS_WEBINAR_PROMOTE
Upgrade the attendees to panelist in webinar.
@ MEETING_STATUS_WAITINGFORHOST
Waiting for the host to start the meeting.
@ MEETING_STATUS_CONNECTING
Connect to the meeting server status.
@ MEETING_STATUS_ENDED
Meeting ends.
@ MEETING_STATUS_LOCKED
Meeting is locked to prevent the further participants to join the meeting.
@ MEETING_STATUS_WEBINAR_DEPROMOTE
Downgrade the attendees from the panelist.
@ MEETING_STATUS_LEAVE_BREAKOUT_ROOM
Leave the breakout room.
@ MEETING_STATUS_UNKNOW
Unknown status.
@ MEETING_STATUS_UNLOCKED
Meeting is open and participants can join the meeting.
@ MEETING_STATUS_INMEETING
Meeting is ready, in meeting status.
@ MEETING_STATUS_FAILED
Failed to connect the meeting server.
@ MEETING_STATUS_IDLE
No meeting is running.
StatisticsWarningType
Meeting statistics warning type. Here are more detailed structural descriptions.
@ Statistics_Warning_None
No warning.
@ Statistics_Warning_Busy_System
The system is busy.
@ Statistics_Warning_Network_Quality_Bad
The network connection quality is bad.
MeetingType
Meeting type. Here are more detailed structural descriptions.
@ MEETING_TYPE_NONE
For initialization.
@ MEETING_TYPE_WEBINAR
Webinar.
@ MEETING_TYPE_NORMAL
Ordinary meeting.
@ MEETING_TYPE_BREAKOUTROOM
Breakout meeting.
struct tagStartParam4NormalUser StartParam4NormalUser
struct tagJoinParam4NormalUser JoinParam4NormalUser
LeaveMeetingCmd
Leave meeting command. Here are more detailed structural descriptions.
@ LEAVE_MEETING
Leave meeting.
@ END_MEETING
End meeting.
struct tagStartParam StartParam
OSSessionType
OS session type. Here are more detailed structural descriptions.
@ OS_SessionType_Lock
equals to WTS_SESSION_LOCK
@ OS_SessionType_Remote_DISCONNECT
equals to WTS_REMOTE_DISCONNECT
@ OS_SessionType_Logoff
equals to WTS_SESSION_LOGOFF
@ OS_SessionType_NotHandle
struct tagJoinParam JoinParam
MeetingFailCode
Meeting failure code. Here are more detailed structural descriptions.
@ MEETING_FAIL_HOST_DISALLOW_OUTSIDE_USER_JOIN
@ MEETING_FAIL_REGISTERWEBINAR_FULL
The number of webinar registered has reached the upper limit.
@ MEETING_FAIL_CANNOT_START_TOKENEXPIRE
@ MEETING_FAIL_SESSION_ERR
Session error.
@ MEETING_FAIL_MEETING_OVER
Meeting is over.
@ MEETING_FAIL_CLIENT_INCOMPATIBLE
The client is incompatible.
@ MEETING_FAIL_MEETING_NOT_EXIST
Meeting does not exist.
@ MEETING_FAIL_REGISTERWEBINAR_HOSTREGISTER
Register webinar with the role of webinar host.
@ CONF_FAIL_ZC_CERTIFICATE_CHANGED
Invalid for Windows SDK.
@ SESSION_VIDEO_ERR
The token is expired.
@ MEETING_FAIL_MEETING_NOT_START
Meeting has not begun.
@ MEETING_FAIL_REGISTERWEBINAR_PANELISTREGISTER
Register webinar with the role of panelist member.
@ MEETING_FAIL_MEETING_RESTRICTED_JBH
The meeting is restricted by the same account while the attendee is allowed to join before the host.
@ MEETING_FAIL_MEETING_RESTRICTED
The meeting is failed because of the restriction by the same account.
@ MEETING_FAIL_RECONNECT_ERR
Reconnect error.
@ MEETING_FAIL_NO_MMR
The Multi-media router is not founded.
@ MEETING_FAIL_MEETING_USER_FULL
The capacity of meeting is full.
@ MEETING_FAIL_REGISTERWEBINAR_DENIED_EMAIL
Register webinar with the denied email.
@ MEETING_FAIL_MMR_ERR
Multi-media Router error.
@ MEETING_FAIL_ENFORCE_LOGIN
Webinar request to login.
@ MEETING_FAIL_APP_PRIVILEGE_TOKEN_ERROR
@ CONF_FAIL_DISALLOW_HOST_MEETING
Meeting settings is not allowed to start a meeting.
@ CONF_FAIL_JOIN_WEBINAR_WITHSAMEEMAIL
Join webinar with the same email.
@ MEETING_FAIL_WRITE_CONFIG_FILE
Disabled to write the configure file.
@ CONF_FAIL_VANITY_NOT_EXIST
Vanity conference ID does not exist.
@ MEETING_FAIL_JMAK_USER_EMAIL_NOT_MATCH
@ MEETING_FAIL_FORBID_TO_JOIN_INTERNAL_MEETING
Forbidden to join the internal meeting.
@ MEETING_FAIL_PASSWORD_ERR
Password is wrong.
@ MEETING_FAIL_NETWORK_ERR
Network error.
@ MEETING_FAIL_CONFLOCKED
The meeting is locked.
@ SESSION_AUDIO_AUTOSTARTERR
Audio autostart error.
@ MEETING_SUCCESS
Start meeting successfully.
@ CONF_FAIL_REMOVED_BY_HOST
Removed by the host.
@ MEETING_FAIL_CANNOT_EMIT_WEBREQUEST
Unable to send web request.
The parameter of ordinary logged-in user. Here are more detailed structural descriptions.
const wchar_t * customer_key
The customer key that need the app intergrated with sdk to specify. The SDK will set this value when ...
bool isDirectShareDesktop
Share the desktop directly or not. True indicates to Share.
UINT64 meetingNumber
Meeting number.
bool isAudioOff
Turn off the audio or not. True indicates to turn off. In addition, this flag is affected by meeting ...
const wchar_t * webinarToken
Webinar token.
const wchar_t * psw
Meeting password.
HWND hDirectShareAppWnd
The window handle of the direct sharing application.
const wchar_t * app_privilege_token
app_privilege_token.
const wchar_t * userName
Username when logged in the meeting.
bool isVideoOff
Turn off the video or not. True indicates to turn off. In addition, this flag is affected by meeting ...
const wchar_t * join_token
Join token.
const wchar_t * vanityID
Meeting vanity ID.
The parameters of non-login user when joins the meeting. Here are more detailed structural descriptio...
const wchar_t * userZAK
ZOOM access token.
bool isDirectShareDesktop
Share the desktop directly or not. True indicates to Share.
const wchar_t * webinarToken
Webinar token.
HWND hDirectShareAppWnd
The window handle of the direct Sharing application.
const wchar_t * userName
Username when logged in the meeting.
bool isVideoOff
Turn off the video of not. True indicates to turn off. In addition, this flag is affected by meeting ...
const wchar_t * psw
Meeting password.
const wchar_t * app_privilege_token
app_privilege_token.
const wchar_t * join_token
Join token.
const wchar_t * customer_key
The customer key that need the app intergrated with sdk to specify. The SDK will set this value when ...
const wchar_t * vanityID
Meeting vanity ID.
bool isAudioOff
Turn off the audio or not. True indicates to turn off. In addition, this flag is affected by meeting ...
The way and the parameter of the users when join the meeting. Here are more detailed structural descr...
SDKUserType userType
User type. For more details, see SDKUserType enum.
JoinParam4NormalUser normaluserJoin
The parameter of ordinary user when joins the meeting.
union tagJoinParam::@2 param
JoinParam4WithoutLogin withoutloginuserJoin
The parameters of unlogged-in user when joins the meeting.
Meeting parameter. Here are more detailed structural descriptions.
const wchar_t * meeting_host
Meeting host.
MeetingType meeting_type
Meeting type.
bool is_view_only
View only or not. True indicates to view only.
bool is_auto_recording_local
Auto local recording or not. True indicates to auto local recording.
UINT64 meeting_number
Meeting number.
const wchar_t * meeting_topic
Meeting topic.
bool is_auto_recording_cloud
Auto cloud recording or not. True indicates to auto cloud recording.
The parameter of ordinary user when starts meeting. Here are more detailed structural descriptions.
const wchar_t * customer_key
The customer key that need the app intergrated with sdk to specify. The SDK will set this value when ...
bool isDirectShareDesktop
Share the desktop directly or not. True indicates to Share.
UINT64 meetingNumber
Meeting number.
HWND hDirectShareAppWnd
The window handle of the direct sharing application.
bool isAudioOff
Turn off audio or not. True indicates to turn off. In addition, this flag is affected by meeting attr...
bool isVideoOff
Turn off video or not. True indicates to turn off. In addition, this flag is affected by meeting attr...
const wchar_t * vanityID
Meeting vanity ID. Generate a ZOOM access token via REST API.
The parameter used by unlogged-in user when starts the meeting. Here are more detailed structural des...
const wchar_t * vanityID
Meeting vanity ID.
const wchar_t * userName
Username when logged in the meeting.
bool isDirectShareDesktop
Share the desktop directly or not. True indicates to share.
const wchar_t * userZAK
ZOOM access token.
bool isVideoOff
Turn off the video or not. True indicates to turn off. In addition, this flag is affected by meeting ...
const wchar_t * customer_key
The customer key that need the app intergrated with sdk to specify. The SDK will set this value when ...
HWND hDirectShareAppWnd
The window handle of the direct sharing application.
bool isAudioOff
Turn off the audio or not. True indicates to turn off. In addition, this flag is affected by meeting ...
SDKUserType userType
User type.
StartParam4NormalUser normaluserStart
The parameter for ordinary user when starts the meeting.
union tagStartParam::@3 param
StartParam4WithoutLogin withoutloginStart
The parameter for unlogged-in user when starts the meeting.
ZOOM windows SDK Common Definition File.
#define END_ZOOM_SDK_NAMESPACE
Definition: zoom_sdk_def.h:21
#define BEGIN_ZOOM_SDK_NAMESPACE
Definition: zoom_sdk_def.h:20
SDKError
SDK error types. Here are more detailed structural descriptions.
Definition: zoom_sdk_def.h:30