Meeting SDK for Linux API Reference
Loading...
Searching...
No Matches
auth_service_interface.h
Go to the documentation of this file.
1
5#ifndef _AUTH_SERVICE_INTERFACE_H_
6#define _AUTH_SERVICE_INTERFACE_H_
7#include "zoom_sdk_def.h"
8
10
43
58
95#if defined(WIN32)
99typedef enum
100{
102 SDK_Notification_Service_None = 0,
104 SDK_Notification_Service_Starting,
106 SDK_Notification_Service_Started,
108 SDK_Notification_Service_StartFailed,
110 SDK_Notification_Service_Closed,
111}SDKNotificationServiceStatus;
112
116typedef enum
117{
119 SDK_Notification_Service_Error_Success = 0,
121 SDK_Notification_Service_Error_Unknown,
123 SDK_Notification_Service_Error_Internal_Error,
125 SDK_Notification_Service_Error_Invalid_Token,
132 SDK_Notification_Service_Error_Multi_Connect,
134 SDK_Notification_Service_Error_Network_Issue,
140 SDK_Notification_Service_Error_Max_Duration,
141}SDKNotificationServiceError;
142
143#endif
144
148typedef struct tagAuthContext
149{
175
181 {
182 jwt_token = nullptr;
183 publicAppKey = nullptr;
184 }
185
187
198
204{
205public:
210 virtual const zchar_t* GetDisplayName() = 0;
215 virtual LoginType GetLoginType() = 0;
216 virtual ~IAccountInfo(){};
217};
218
224{
225public:
227
232 virtual void onAuthenticationReturn(AuthResult ret) = 0;
233
240 virtual void onLoginReturnWithReason(LOGINSTATUS ret, IAccountInfo* pAccountInfo, LoginFailReason reason) = 0;
241
245 virtual void onLogout() = 0;
246
250 virtual void onZoomIdentityExpired() = 0;
251
255 virtual void onZoomAuthIdentityExpired() = 0;
256#if defined(WIN32)
262 virtual void onNotificationServiceStatus(SDKNotificationServiceStatus status, SDKNotificationServiceError error) = 0;
263#endif
264};
265#if defined(WIN32)
266class IDirectShareServiceHelper;
267class IOutlookPluginIntegrationHelper;
268class INotificationServiceHelper;
269#endif
275{
276public:
282 virtual SDKError SetEvent(IAuthServiceEvent* pEvent) = 0;
283
289 virtual SDKError SDKAuth(AuthContext& authContext) = 0;
290
296
301 virtual const zchar_t* GetSDKIdentity() = 0;
302
308 virtual const zchar_t* GenerateSSOLoginWebURL(const zchar_t* prefix_of_vanity_url) = 0;
309
316 virtual SDKError SSOLoginWithWebUriProtocol(const zchar_t* uri_protocol) = 0;
317
322 virtual SDKError LogOut() = 0;
323
329
335#if defined(WIN32)
340 virtual IDirectShareServiceHelper* GetDirectShareServiceHelper() = 0;
341
346 virtual void EnableAutoRegisterNotificationServiceForLogin(bool bEnable) = 0;
347
353 virtual SDKError RegisterNotificationService(const zchar_t* accessToken) = 0;
354
359 virtual SDKError UnregisterNotificationService() = 0;
360
365 virtual INotificationServiceHelper* GetNotificationServiceHelper() = 0;
366#endif
367};
369#endif
LoginType
Enumeration of user login type.
@ LoginType_Unknown
struct tagAuthContext AuthContext
SDK authentication parameter with JWT token or public app key.
LOGINSTATUS
Enumeration of SDK login status.
@ LOGIN_PROCESSING
LoginFailReason
Enumeration of SDK login failed reason.
@ LoginFail_SMSCodeError
@ LoginFail_OtherIssue
@ LoginFail_Mfa_Required
@ LoginFail_PhoneNumberFormatInValid
@ LoginFail_SMSCodeExpired
@ LoginFail_Need_Bitrthday_ask
@ LoginFail_SDKNeedUpdate
@ LoginFail_LoginTokenInvalid
@ LoginFail_WrongPassword
@ LoginFail_EmailLoginDisable
@ LoginFail_UserDisagreeLoginDisclaimer
@ LoginFail_UserNotExist
@ LoginFail_TooManyFailedAttempts
@ LoginFail_AccountLocked
AuthResult
Enumeration of SDK authentication result.
@ AUTHRET_UNKNOWN
@ AUTHRET_OVERTIME
@ AUTHRET_SERVICE_BUSY
@ AUTHRET_SUCCESS
@ AUTHRET_LIMIT_EXCEEDED_EXCEPTION
@ AUTHRET_JWTTOKENWRONG
@ AUTHRET_ACCOUNTNOTSUPPORT
@ AUTHRET_KEYORSECRETEMPTY
@ AUTHRET_NETWORKISSUE
@ AUTHRET_ACCOUNTNOTENABLESDK
@ AUTHRET_CLIENT_INCOMPATIBLE
@ AUTHRET_KEYORSECRETWRONG
Account information interface.
virtual const zchar_t * GetDisplayName()=0
Gets the screen name of user.
virtual LoginType GetLoginType()=0
Gets login type.
Authentication service callback event.
virtual void onZoomIdentityExpired()=0
Notification of Zoom identity has expired, please re-login or generate a new zoom access token via RE...
virtual void onLoginReturnWithReason(LOGINSTATUS ret, IAccountInfo *pAccountInfo, LoginFailReason reason)=0
Notification of login result with fail reason.
virtual void onAuthenticationReturn(AuthResult ret)=0
Notification of authentication result.
virtual void onZoomAuthIdentityExpired()=0
Notification of Zoom authentication identity will be expired in 10 minutes, please re-auth.
virtual void onLogout()=0
Notification of logout.
Authentication Service Interface.
virtual AuthResult GetAuthResult()=0
Gets authentication status.
virtual SDKError SetEvent(IAuthServiceEvent *pEvent)=0
Sets the authentication service callback event handler.
virtual LOGINSTATUS GetLoginStatus()=0
Gets login status.
virtual const zchar_t * GetSDKIdentity()=0
Gets SDK identity.
virtual IAccountInfo * GetAccountInfo()=0
Gets login account information.
virtual SDKError LogOut()=0
Performs account logout.
virtual SDKError SDKAuth(AuthContext &authContext)=0
Authenticates SDK.
virtual const zchar_t * GenerateSSOLoginWebURL(const zchar_t *prefix_of_vanity_url)=0
Gets SSO login web URL.
virtual SDKError SSOLoginWithWebUriProtocol(const zchar_t *uri_protocol)=0
Performs account login.
const zchar_t * jwt_token
JWT token. You may generate your JWT token using the online tool https://jwt.io/.
const zchar_t * publicAppKey
Public app key used for SDK authentication. Alternative to JWT token.
ZOOM windows SDK Common Definition File.
#define END_ZOOM_SDK_NAMESPACE
#define BEGIN_ZOOM_SDK_NAMESPACE
char zchar_t
SDKError
Enumeration of common errors of SDK.