8#import <Foundation/Foundation.h>
10#import "AgoraChatClientDelegate.h"
11#import "AgoraChatError.h"
12#import "AgoraChatMultiDevicesDelegate.h"
13#import "AgoraChatOptions.h"
14#import "AgoraChatPushOptions.h"
16#import "IAgoraChatManager.h"
17#import "IAgoraChatroomManager.h"
18#import "IAgoraChatContactManager.h"
19#import "IAgoraChatGroupManager.h"
20#import "IAgoraChatThreadManager.h"
21#import "IAgoraChatPushManager.h"
22#import "IAgoraChatUserInfoManager.h"
23#import "IAgoraChatTranslateManager.h"
24#import "IAgoraChatPresenceManager.h"
26#import "AgoraChatDeviceConfig.h"
27#import "AgoraChatLocalNotificationManager.h"
28#import "AgoraChatTranslationResult.h"
29#import "AgoraChatLogDelegate.h"
39typedef NS_ENUM(NSInteger, AgoraChatServerCheckType) {
40 AgoraChatServerCheckAccountValidation = 0,
41 AgoraChatServerCheckGetDNSListFromServer,
42 AgoraChatServerCheckGetTokenFromServer,
43 AgoraChatServerCheckDoLogin,
44 AgoraChatServerCheckDoLogout,
68@property(nonatomic, strong, readonly) NSString * _Nonnull version;
77@property(nonatomic, strong, readonly) NSString * _Nullable currentUsername;
95@property(nonatomic, strong, readonly) id<IAgoraChatManager> _Nullable chatManager;
104@property(nonatomic, strong, readonly) id<IAgoraChatContactManager> _Nullable contactManager;
113@property(nonatomic, strong, readonly) id<IAgoraChatGroupManager> _Nullable groupManager;
123@property (nonatomic, strong, readonly) id<IAgoraChatThreadManager> _Nullable threadManager;
132@property(nonatomic, strong, readonly) id<IAgoraChatroomManager> _Nullable roomManager;
141@property (nonatomic, strong, readonly) id<IAgoraChatPushManager> _Nullable pushManager;
151@property(nonatomic, readonly) BOOL isAutoLogin;
160@property(nonatomic, readonly) BOOL isLoggedIn;
169@property(nonatomic, readonly) BOOL isConnected;
178@property(nonatomic, readonly) NSString * _Nullable accessUserToken;
187@property(nonatomic, strong, readonly) id<IAgoraChatUserInfoManager> _Nullable userInfoManager;
196@property (nonatomic, strong, readonly) id<IAgoraChatPresenceManager> _Nullable presenceManager;
205+ (instancetype _Nonnull )sharedClient;
215- (NSString *)version;
217#pragma mark - Delegate
232 delegateQueue:(dispatch_queue_t _Nullable )aQueue;
245- (void)removeDelegate:(
id _Nonnull )aDelegate;
261 delegateQueue:(dispatch_queue_t _Nullable )aQueue NS_SWIFT_NAME(addMultiDevices(delegate:queue:));
276#pragma mark - Initialize SDK
295#pragma mark - Change AppKey
314- (
AgoraChatError *_Nullable)changeAppkey:(NSString * _Nonnull)aAppkey;
316#pragma mark - User Registeration
341- (
AgoraChatError *_Nullable)registerWithUsername:(NSString * _Nonnull)aUsername
342 password:(NSString * _Nonnull)aPassword;
370- (void)registerWithUsername:(NSString *_Nonnull)aUsername
371 password:(NSString *_Nonnull)aPassword
372 completion:(
void (^_Nullable)(NSString * _Nonnull aUsername,
AgoraChatError * _Nullable aError))aCompletionBlock;
396- (void)fetchTokenWithUsername:(NSString *_Nonnull)aUsername
397 password:(NSString *_Nonnull)aPassword
398 completion:(
void (^_Nullable)(NSString * _Nullable aToken,
AgoraChatError * _Nullable aError))aCompletionBlock;
421- (
AgoraChatError *_Nullable)loginWithUsername:(NSString *_Nonnull)aUsername
422 password:(NSString *_Nonnull)aPassword;
444- (void)loginWithUsername:(NSString *_Nonnull)aUsername
445 password:(NSString *_Nonnull)aPassword
446 completion:(
void (^_Nullable)(NSString * _Nonnull aUsername,
AgoraChatError *_Nullable aError))aCompletionBlock;
469- (
AgoraChatError *_Nullable)loginWithUsername:(NSString *_Nonnull)aUsername
470 token:(NSString *_Nonnull)aToken;
492- (void)loginWithUsername:(NSString *_Nonnull)aUsername
493 token:(NSString *_Nonnull)aToken
494 completion:(
void (^_Nullable)(NSString * _Nonnull aUsername,
AgoraChatError *_Nullable aError))aCompletionBlock;
517- (
AgoraChatError *_Nullable)loginWithUsername:(NSString *_Nonnull)aUsername
518 agoraToken:(NSString *_Nonnull)aAgoraToken;
537- (void)loginWithUsername:(NSString *_Nonnull)aUsername
538 agoraToken:(NSString *_Nonnull)aAgoraToken
539 completion:(
void (^_Nullable)(NSString * _Nonnull aUsername,
AgoraChatError *_Nullable aError))aCompletionBlock;
566- (
AgoraChatError *_Nullable)renewToken:(NSString *_Nonnull)newAgoraToken;
609- (void)logout:(BOOL)aIsUnbindDeviceToken
610 completion:(
void (^_Nullable)(
AgoraChatError * _Nullable aError))aCompletionBlock;
612#pragma mark - PushKit
635- (
AgoraChatError *_Nullable)bindPushKitToken:(NSData *_Nullable)aPushToken;
656- (void)registerPushKitToken:(NSData *_Nullable)aPushToken
657 completion:(
void (^_Nullable)(
AgoraChatError * _Nullable aError))aCompletionBlock;
691- (void)unRegisterPushKitTokenWithCompletion:(
void (^_Nullable)(
AgoraChatError * _Nullable aError))aCompletionBlock;
716- (
AgoraChatError *_Nullable)bindDeviceToken:(NSData *_Nonnull)aDeviceToken;
735- (void)registerForRemoteNotificationsWithDeviceToken:(NSData *_Nonnull)aDeviceToken
736 completion:(
void (^_Nullable)(
AgoraChatError *_Nullable aError))aCompletionBlock;
770- (void)uploadDebugLogToServerWithCompletion:(
void (^_Nullable)(
AgoraChatError *_Nullable aError))aCompletionBlock;
792- (NSString *_Nullable)getLogFilesPath:(
AgoraChatError **_Nullable)pError;
809- (void)getLogFilesPathWithCompletion:(
void (^_Nullable)(NSString *_Nullable aPath,
AgoraChatError * _Nullable aError))aCompletionBlock;
826- (void)log:(NSString *_Nonnull)aLog;
842 delegateQueue:(dispatch_queue_t _Nullable )aQueue NS_SWIFT_NAME(addLog(delegate:queue:));
855- (void)removeLogDelegate:(
id<
AgoraChatLogDelegate>_Nonnull)aDelegate NS_SWIFT_NAME(removeLog(delegate:));
857#pragma mark - Multi Devices
882- (NSArray<
AgoraChatDeviceConfig*> *_Nullable)getLoggedInDevicesFromServerWithUsername:(NSString * _Nonnull)aUsername
883 password:(NSString * _Nonnull)aPassword
906- (void)getLoggedInDevicesFromServerWithUsername:(NSString *_Nonnull)aUsername
907 password:(NSString *_Nonnull)aPassword
933- (
AgoraChatError *_Nullable)kickDeviceWithUsername:(NSString *_Nonnull)aUsername
934 password:(NSString *_Nonnull)aPassword
935 resource:(NSString *_Nonnull)aResource;
960- (void)kickDeviceWithUsername:(NSString *_Nonnull)aUsername
961 password:(NSString *_Nonnull)aPassword
962 resource:(NSString *_Nonnull)aResource
963 completion:(
void (^_Nullable)(
AgoraChatError *_Nullable aError))aCompletionBlock;
986- (
AgoraChatError *_Nullable)kickAllDevicesWithUsername:(NSString *_Nonnull)aUsername
987 password:(NSString *_Nonnull)aPassword;
1008- (void)kickAllDevicesWithUsername:(NSString *_Nonnull)aUsername
1009 password:(NSString *_Nonnull)aPassword
1010 completion:(
void (^_Nullable)(
AgoraChatError *_Nullable aError))aCompletionBlock;
1031- (BOOL)migrateDatabaseToLatestSDK;
1044- (void)applicationDidEnterBackground:(
id _Nonnull )aApplication;
1057- (void)applicationWillEnterForeground:(
id _Nonnull )aApplication;
1072- (void)application:(
id _Nonnull)application didReceiveRemoteNotification:(NSDictionary * _Nullable)userInfo;
1074#pragma mark - Service Check
1098- (void)serviceCheckWithUsername:(NSString *_Nonnull)aUsername
1099 password:(NSString *_Nonnull)aPassword
1100 completion:(
void (^_Nullable)(AgoraChatServerCheckType aType,
AgoraChatError *_Nullable aError))aCompletionBlock;
1102@property (nonatomic, strong, readonly) id<IAgoraChatTranslateManager> _Nonnull translateManager EM_DEPRECATED_IOS(3_8_9, 3_9_5,
"Use -IAgoraChatManager translateMessage: instead");
Definition: AgoraChatClient.h:57
Definition: AgoraChatDeviceConfig.h:25
Definition: AgoraChatError.h:27
Definition: AgoraChatOptions.h:41
Definition: AgoraChatPushOptions.h:58
Definition: AgoraChatClientDelegate.h:45
Definition: AgoraChatLogDelegate.h:18
Definition: AgoraChatMultiDevicesDelegate.h:73