5#ifndef _AUTH_SERVICE_INTERFACE_H_
6#define _AUTH_SERVICE_INTERFACE_H_
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;
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;
262 virtual void onNotificationServiceStatus(SDKNotificationServiceStatus status, SDKNotificationServiceError error) = 0;
267class IOutlookPluginIntegrationHelper;
306 * @brief Gets SSO login web URL.
307 * @param prefix_of_vanity_url The prefix of vanity URL.
308 * @return If the function succeeds, it returns the SSO login web URL. Otherwise, this function fails and returns nullptr.
310 virtual const zchar_t* GenerateSSOLoginWebURL(
const zchar_t* prefix_of_vanity_url) = 0;
318 virtual SDKError SSOLoginWithWebUriProtocol(
const zchar_t* uri_protocol) = 0;
LoginType
Enumeration of user login type.
struct tagAuthContext AuthContext
SDK authentication parameter with JWT token or public app key.
LOGINSTATUS
Enumeration of SDK login status.
LoginFailReason
Enumeration of SDK login failed reason.
@ LoginFail_PhoneNumberFormatInValid
@ LoginFail_SMSCodeExpired
@ LoginFail_Need_Bitrthday_ask
@ LoginFail_SDKNeedUpdate
@ LoginFail_LoginTokenInvalid
@ LoginFail_WrongPassword
@ LoginFail_EmailLoginDisable
@ LoginFail_UserDisagreeLoginDisclaimer
@ LoginFail_TooManyFailedAttempts
@ LoginFail_AccountLocked
AuthResult
Enumeration of SDK authentication result.
@ AUTHRET_LIMIT_EXCEEDED_EXCEPTION
@ AUTHRET_ACCOUNTNOTSUPPORT
@ AUTHRET_KEYORSECRETEMPTY
@ 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 ~IAuthServiceEvent()
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 IDirectShareServiceHelper * GetDirectShareServiceHelper()=0
Gets direct share service helper interface.
virtual SDKError SetEvent(IAuthServiceEvent *pEvent)=0
Sets the authentication service callback event handler.
virtual SDKError RegisterNotificationService(const zchar_t *accessToken)=0
Registers notification service.
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 INotificationServiceHelper * GetNotificationServiceHelper()=0
Gets notification service helper interface.
virtual void EnableAutoRegisterNotificationServiceForLogin(bool bEnable)=0
Enables or disables auto register notification service. This is enabled by default.
virtual SDKError UnregisterNotificationService()=0
Unregisters notification service.
Direct sharing helper Interface.
Notification service control interface.
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
SDKError
Enumeration of common errors of SDK.