HIVE SDK for iOS

HIVEAuthV4.h
Go to the documentation of this file.
1 //
2 // HIVEAuthV4.h
3 // Hive_v2_source
4 //
5 // Created by Arkeo Lucid on 2017. 3. 22..
6 // Copyright © 2017년 COM2US. All rights reserved.
7 //
8 
55 #import <Foundation/Foundation.h>
56 
57 @class HIVEResultAPI;
58 @class HIVEProviderInfo;
59 @class HIVEPlayerInfo;
60 @class HIVEProfileInfo;
62 @class HIVEAuthV4Helper;
63 @class HIVEAuthV4MaintenanceExtraButton;
64 @class HIVEPermissionViewData;
65 
66 typedef NSString HIVEProviderTypeStr;
67 
82 typedef NS_ENUM(NSUInteger, HIVEProviderType) {
83  kHIVEProviderTypeGUEST = 0,
84  kHIVEProviderTypeHIVE,
85  kHIVEProviderTypeFACEBOOK,
86  kHIVEProviderTypeGOOGLE,
87  kHIVEProviderTypeQQ,
88  kHIVEProviderTypeWEIBO,
89  kHIVEProviderTypeVK,
90  kHIVEProviderTypeWECHAT,
91  kHIVEProviderTypeAPPLE,
92  kHIVEProviderTypeSIGNIN_APPLE,
93  kHIVEProviderTypeAUTO = 99
94 };
95 
96 
114 typedef NS_ENUM(NSInteger, HIVEAuthV4MaintenanceActionType) {
115  kHIVEAuthV4MaintenanceActionTypeOPEN_URL = 1,
116  kHIVEAuthV4MaintenanceActionTypeEXIT,
117  kHIVEAuthV4MaintenanceActionTypeDONE
118 };
119 
127 typedef NS_ENUM(NSUInteger, HIVEAuthV4MaintenanceDialogType) {
128 
129  kHIVEAuthV4MaintenanceDialogDefault = 0,
130  kHIVEAuthV4MaintenanceDialogBlacklist = 1,
131 };
132 
158 typedef void (^HIVEAuthV4SetupHandler) (HIVEResultAPI *result, BOOL isAutoSignIn, NSString *did, NSArray<NSNumber *> *providerTypeList);
159 
160 
188 typedef void (^HIVEAuthV4SignInHandler) (HIVEResultAPI *result, HIVEPlayerInfo *playerInfo);
189 
190 
208 typedef void (^HIVEAuthV4SignOutHandler) (HIVEResultAPI *result);
209 
210 
244 typedef void (^HIVEAuthV4ConnectHandler) (HIVEResultAPI *result, HIVEPlayerInfo *conflictPlayer);
245 
246 
269 typedef void (^HIVEAuthV4DisconnectHandler) (HIVEResultAPI *result);
270 
271 
292 
293 
317 typedef void (^HIVEAuthV4GetProfileHandler) (HIVEResultAPI *result, NSArray<HIVEProfileInfo *> *profileInfoList);
318 
319 
340 typedef void(^HIVEProviderFriendsCallback)(HIVEResultAPI* result, HIVEProviderType providerType, NSDictionary<NSString*,NSNumber*> *providerUserIdList);
341 
342 
363 typedef void (^HIVEAuthV4ShowProfileHandler) (HIVEResultAPI *result);
364 
365 
385 typedef void (^HIVEAuthV4ShowCafeHandler) (HIVEResultAPI *result);
386 
387 
407 typedef void (^HIVEAuthV4ShowInquiryHandler) (HIVEResultAPI *result);
408 
409 
428 typedef void (^HIVEAuthV4ShowTermsHandler) (HIVEResultAPI *result);
429 
430 
451 // REMOVE: 성인인증 안씀
453 
454 
477 typedef void (^HIVEAuthV4CheckProviderHandler) (HIVEResultAPI *result, HIVEProviderInfo *providerInfo);
478 
479 
506 typedef void (^HIVEAuthV4MaintenanceHandler) (HIVEResultAPI *result, NSArray<HIVEAuthV4MaintenanceInfo *> *maintenanceInfolist);
507 
521 typedef void (^HIVEAuthV4DialogDismissHandler) (BOOL isDismiss);
522 
523 // MARK: -
524 // MARK: HIVEPlayerInfo
525 
546 @interface HIVEProfileInfo : NSObject <NSCopying>
547 
548  @property (nonatomic) int64_t playerId;
549  @property (nonatomic, copy) NSString *playerName;
550  @property (nonatomic, copy) NSString *playerImageUrl;
551 
552 - (NSString *)toJson;
553 
554 - (NSString*)privacySafeDescription;
555 
556 @end
557 
558 
581 @interface HIVEPlayerInfo : HIVEProfileInfo <NSCopying>
582 
583  @property (nonatomic, copy) NSString *playerToken;
584  @property (nonatomic, copy) NSString *did;
585  @property (nonatomic, copy) NSDictionary<HIVEProviderTypeStr *, HIVEProviderInfo *> *providerInfoData;
586 
587 - (NSString *)toJson;
588 - (NSString *)privacySafeDescription;
589 
590 @end
591 
592 
593 // MARK: -
594 // MARK: HIVEProviderInfo
595 
617 @interface HIVEProviderInfo : NSObject <NSCopying>
618 
619  @property (nonatomic) HIVEProviderType providerType;
620  @property (nonatomic, copy) NSString *providerUserId;
621 
622 
631 // MOVE: 외부 노출 필요? -> impl로 이동 필요. Authv1도 동일한 확인 필요. (확인)
632 + (NSString *)stringProviderType:(HIVEProviderType)providerType;
633 
634 
643 // MOVE: 외부 노출 필요? -> impl로 이동 필요. Authv1도 동일한 확인 필요. (확인)
644 + (HIVEProviderType)providerTypeFromString:(NSString *)typeString;
645 
646 - (NSString *)toJson;
647 
648 @end
649 
650 
651 // MARK: -
652 // MARK: HIVEAuthV4MaintenanceInfo
653 
681 @interface HIVEAuthV4MaintenanceInfo : NSObject <NSCopying>
682 
683  @property (nonatomic, copy) NSString *title;
684  @property (nonatomic, copy) NSString *message;
685  @property (nonatomic, copy) NSString *button;
686  @property (nonatomic) HIVEAuthV4MaintenanceActionType action;
687  @property (nonatomic, copy) NSString *url;
688  @property (nonatomic, copy) NSString *startDate;
689  @property (nonatomic, copy) NSString *endDate;
690  @property (nonatomic) NSInteger remainingTime;
691  //TODO : 주석 오탈자 확인 (확인)
692  //EDIT : Authv1부분에서 동일하게 확인 후 편집 필요 (확인)
693  @property (nonatomic, copy) NSString *customerButton;
694  @property (nonatomic, copy) NSString *customerLink;
695 
696  @property (nonatomic, copy) NSMutableArray *exButtons;
697 
698 - (NSString *)toJson;
699 
700 @end
701 
702 
703 @interface HIVEAuthV4MaintenanceExtraButton : NSObject <NSCopying>
704 
705  @property (nonatomic) HIVEAuthV4MaintenanceActionType action;
706  @property (nonatomic, copy) NSString *url;
707  @property (nonatomic, copy) NSString *button;
708 
709 - (NSString *)toJson;
710 
711 @end
712 
713 
714 // MARK: -
715 // MARK: HIVEAuthV4
716 
720 @interface HIVEAuthV4 : NSObject
721 
722 + (HIVEAuthV4Helper*)helper;
723 
773 + (void)setup:(HIVEAuthV4SetupHandler)handler;
774 
775 
822 + (void)signIn:(HIVEProviderType)providerType handler:(HIVEAuthV4SignInHandler)handler;
823 
824 
847 + (void)signOut:(HIVEAuthV4SignOutHandler)handler;
848 
849 
916 + (void)connect:(HIVEProviderType)providerType handler:(HIVEAuthV4ConnectHandler)handler;
917 
918 
954 + (void)disconnect:(HIVEProviderType)providerType handler:(HIVEAuthV4DisconnectHandler)handler;
955 
956 
990 + (void)selectConflict:(int64_t)selectedPlayerId handler:(HIVEAuthV4SignInHandler)handler;
991 
992 
1022 + (void)resolveConflict:(HIVEAuthV4ResolveConflictHandler)handler;
1023 
1024 
1058 + (BOOL)isAutoSignIn;
1059 
1060 
1085 + (HIVEPlayerInfo *)getPlayerInfo;
1086 
1087 
1109 + (void)getProfile:(NSArray<NSNumber *> *)playerIdList handler:(HIVEAuthV4GetProfileHandler)handler;
1110 
1111 
1112 
1137 + (void)getProviderFriendsList:(HIVEProviderType)providerType handler:(HIVEProviderFriendsCallback)handler;
1138 
1139 
1140 
1162 + (void)showSignIn:(HIVEAuthV4SignInHandler)handler;
1163 
1164 
1206 + (void)showConflictSelection:(NSDictionary<NSString *, NSObject *> *)currentPlayerData
1207  conflictPlayerData:(NSDictionary<NSString *, NSObject *> *)conflictPlayerData
1208  handler:(HIVEAuthV4SignInHandler)handler;
1209 
1210 
1234 + (void)showProfile:(int64_t)playerId handler:(HIVEAuthV4ShowProfileHandler)handler;
1235 
1236 
1256 + (void)showCafe:(HIVEAuthV4ShowCafeHandler)handler;
1257 
1258 
1278 + (void)showInquiry:(HIVEAuthV4ShowInquiryHandler)handler;
1279 
1280 
1304 + (void)showTerms:(HIVEAuthV4ShowTermsHandler)handler;
1305 
1306 
1328 // REMOVE: 성인인증
1329 + (void)showAdultConfirm:(HIVEAuthV4AdultConfirmHandler)handler;
1330 
1366 + (void)checkProvider:(HIVEProviderType)providerType handler:(HIVEAuthV4CheckProviderHandler)handler;
1367 
1368 
1404 + (void)checkMaintenance:(BOOL)isShow handler:(HIVEAuthV4MaintenanceHandler)handler;
1405 
1406 
1438 + (void)checkBlacklist:(BOOL)isShow handler:(HIVEAuthV4MaintenanceHandler)handler;
1439 
1440 
1468 + (void)setProviderChangedListener:(HIVEAuthV4CheckProviderHandler)handler;
1469 
1470 
1484 + (void)reset;
1485 
1486 + (void)showGameCenterLoginCancelDialog:(HIVEAuthV4DialogDismissHandler)handler;
1487 
1488 + (void)setFacebookPermission:(NSArray *) permission;
1489 
1508 + (bool)getAgeGateU13;
1509 
1524 + (void)requestPermissionViewData:(void(^)(HIVEResultAPI *result, HIVEPermissionViewData *data))handler __deprecated_msg("Use Configration.getPermissionViewData");
1525 
1526 @end
1527 
void(^ HIVEAuthV4CheckProviderHandler)(HIVEResultAPI *result, HIVEProviderInfo *providerInfo)
AuthV4 Provider status request result callback If the requested provider is not logged in...
Definition: HIVEAuthV4.h:477
Sign-in User Information it includes user&#39;s tocken and DID value along with ProfileInfo.
Definition: HIVEAuthV4.h:581
void(^ HIVEAuthV4GetProfileHandler)(HIVEResultAPI *result, NSArray< HIVEProfileInfo *> *profileInfoList)
AuthV4 Profile information request result callback The profile information of the playerIds which are...
Definition: HIVEAuthV4.h:317
void(^ HIVEAuthV4MaintenanceHandler)(HIVEResultAPI *result, NSArray< HIVEAuthV4MaintenanceInfo *> *maintenanceInfolist)
AuthV4 Sever maintenance check request result callback Check whether the server is in the server main...
Definition: HIVEAuthV4.h:506
void(^ HIVEAuthV4DisconnectHandler)(HIVEResultAPI *result)
AuthV4 Provider disconnect result callback It pass the disconnect status to the authentication server...
Definition: HIVEAuthV4.h:269
void(^ HIVEAuthV4SignInHandler)(HIVEResultAPI *result, HIVEPlayerInfo *playerInfo)
AuthV4 Sign-in result callback.
Definition: HIVEAuthV4.h:188
API 호출에 대한 결과를 담는 클래스
Definition: HIVEResultAPI.h:25
NSString * playerImageUrl
사용자 image url. PlayerName과 마찬가지로 처음 연결된 Provider의 정보로 채워지며, HIVE와 연동시 변경...
Definition: HIVEAuthV4.h:550
Server Maintenance and Update status display information title : Title message : Contents button : ...
Definition: HIVEAuthV4.h:681
void(^ HIVEAuthV4ShowCafeHandler)(HIVEResultAPI *result)
AuthV4 Cafe UI request result callback Invoked when the UI window is closed.
Definition: HIVEAuthV4.h:385
void(^ HIVEAuthV4AdultConfirmHandler)(HIVEResultAPI *result)
AuthV4 Adult authentication request result callback Invoked when the UI window is closed...
Definition: HIVEAuthV4.h:452
void(^ HIVEAuthV4ShowProfileHandler)(HIVEResultAPI *result)
AuthV4 Profile UI request result callback Invoked when the UI window is closed.
Definition: HIVEAuthV4.h:363
int64_t playerId
사용자 Player ID
Definition: HIVEAuthV4.h:548
void(^ HIVEAuthV4ResolveConflictHandler)(HIVEResultAPI *result)
Result callback of resolveConflict(HIVEAuthV4ResolveConflictHandler) call AuthV4.resolveConflict() us...
Definition: HIVEAuthV4.h:291
Provides advanced features of HIVE Authentication.
Definition: HIVEAuthV4Helper.h:275
void(^ HIVEProviderFriendsCallback)(HIVEResultAPI *result, HIVEProviderType providerType, NSDictionary< NSString *, NSNumber *> *providerUserIdList)
HIVE SDK Provider friend list request result callback.
Definition: HIVEAuthV4.h:340
void(^ HIVEAuthV4ShowTermsHandler)(HIVEResultAPI *result)
AuthV4 Terms of Service UI request result callback Invoked when the UI window is closed.
Definition: HIVEAuthV4.h:428
NSString * playerName
사용자 Player name. 처음 연결된 Provider의 정보로 채워지며, HIVE 와 연동시 변경이 가능하다...
Definition: HIVEAuthV4.h:549
Identity Provider (IdP) Information It contains the UserId of the associated Identity Provider...
Definition: HIVEAuthV4.h:617
void(^ HIVEAuthV4SignOutHandler)(HIVEResultAPI *result)
AuthV4 Sign out result callback.
Definition: HIVEAuthV4.h:208
typedef NS_ENUM(NSUInteger, HIVEProviderType)
Provider Types AUTO is for Automatic Login If the result of isAutoSignIn() call is true...
Definition: HIVEAuthV4.h:82
User Profile Information playerID : User&#39;s unique ID playerName : The nickname of the user to be sho...
Definition: HIVEAuthV4.h:546
void(^ HIVEAuthV4ConnectHandler)(HIVEResultAPI *result, HIVEPlayerInfo *conflictPlayer)
AuthV4 Provider connect result callback.
Definition: HIVEAuthV4.h:244
void(^ HIVEAuthV4DialogDismissHandler)(BOOL isDismiss)
AuthV4 Result callback after Game Center login pops up
Definition: HIVEAuthV4.h:521
void(^ HIVEAuthV4ShowInquiryHandler)(HIVEResultAPI *result)
AuthV4 1:1 Inquiry UI request result callback Invoked when the UI window is closed.
Definition: HIVEAuthV4.h:407
void(^ HIVEAuthV4SetupHandler)(HIVEResultAPI *result, BOOL isAutoSignIn, NSString *did, NSArray< NSNumber *> *providerTypeList)
AuthV4 initialization result callback.
Definition: HIVEAuthV4.h:158
Copyright © GAMEVIL COM2US PLATFORM Inc. All Right Reserved. Terms of Use Privacy Policy