@regulaforensics/face-sdk 8.2.846-rc → 8.2.855-nightly
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/RNFaceSDK.podspec +4 -4
- package/android/{CVDFaceSDK.kt → CDVFaceSDK.kt} +1 -1
- package/android/build.gradle +2 -2
- package/android/cordova.gradle +2 -2
- package/android/src/main/java/com/regula/plugin/facesdk/JSONConstructor.kt +12 -7
- package/examples/capacitor/android/app/build.gradle +2 -2
- package/examples/capacitor/android/app/capacitor.build.gradle +2 -3
- package/examples/capacitor/android/app/src/main/AndroidManifest.xml +1 -1
- package/examples/capacitor/android/build.gradle +3 -3
- package/examples/capacitor/android/capacitor.settings.gradle +2 -5
- package/examples/capacitor/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/examples/capacitor/android/gradle/wrapper/gradle-wrapper.properties +1 -1
- package/examples/capacitor/android/gradlew +4 -5
- package/examples/capacitor/android/gradlew.bat +2 -2
- package/examples/capacitor/android/variables.gradle +10 -10
- package/examples/capacitor/ios/App/App.xcodeproj/project.pbxproj +20 -4
- package/examples/capacitor/ios/App/Podfile +5 -1
- package/examples/capacitor/ios/App/Podfile.lock +14 -14
- package/examples/capacitor/package-lock.json +811 -847
- package/examples/capacitor/package.json +17 -17
- package/examples/ionic/images/icon.png +0 -0
- package/examples/ionic/package-lock.json +2587 -2373
- package/examples/ionic/package.json +16 -14
- package/examples/ionic/patches/cordova-plugin-ionic-webview+5.0.1.patch +23 -0
- package/examples/ionic/scripts/ios.sh +1 -1
- package/examples/react_native/package-lock.json +1168 -1450
- package/examples/react_native/package.json +2 -2
- package/ios/CDVFaceSDK.swift +42 -0
- package/ios/Config.swift +242 -0
- package/ios/Decoder.swift +934 -0
- package/ios/Main.swift +191 -0
- package/ios/RNFaceSDK.m +7 -39
- package/ios/RNFaceSDK.swift +42 -0
- package/ios/Utils.swift +82 -0
- package/package.json +1 -1
- package/plugin.xml +11 -13
- package/test/package-lock.json +1 -1
- package/ios/CVDFaceSDK.h +0 -7
- package/ios/CVDFaceSDK.m +0 -43
- package/ios/RFSWConfig.h +0 -27
- package/ios/RFSWConfig.m +0 -199
- package/ios/RFSWJSONConstructor.h +0 -135
- package/ios/RFSWJSONConstructor.m +0 -985
- package/ios/RFSWMain.h +0 -24
- package/ios/RFSWMain.m +0 -381
- package/ios/RNFaceSDK.h +0 -8
package/ios/RFSWMain.h
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
#import "RFSWJSONConstructor.h"
|
|
2
|
-
@import FaceSDK;
|
|
3
|
-
|
|
4
|
-
typedef void (^RFSWCallback)(id _Nullable response);
|
|
5
|
-
typedef void (^RFSWEventSender)(NSString* _Nonnull event, id _Nullable data);
|
|
6
|
-
extern UIViewController*_Nonnull(^ _Nonnull RFSWRootViewController)(void);
|
|
7
|
-
|
|
8
|
-
@interface RFSWMain: NSObject<RFSURLRequestInterceptingDelegate,
|
|
9
|
-
RFSVideoUploadingDelegate,
|
|
10
|
-
RFSCustomizationActionDelegate,
|
|
11
|
-
RFSFaceCaptureDelegate,
|
|
12
|
-
RFSLivenessDelegate>
|
|
13
|
-
|
|
14
|
-
+(void)methodCall:(NSString* _Nonnull)method
|
|
15
|
-
:(NSArray* _Nonnull)args
|
|
16
|
-
:(RFSWCallback _Nonnull)callback
|
|
17
|
-
:(RFSWEventSender _Nonnull)eventSender;
|
|
18
|
-
|
|
19
|
-
@end
|
|
20
|
-
|
|
21
|
-
static NSString* _Nonnull cameraSwitchEvent = @"cameraSwitchEvent";
|
|
22
|
-
static NSString* _Nonnull livenessNotificationEvent = @"livenessNotificationEvent";
|
|
23
|
-
static NSString* _Nonnull videoEncoderCompletionEvent = @"video_encoder_completion";
|
|
24
|
-
static NSString* _Nonnull onCustomButtonTappedEvent = @"onCustomButtonTappedEvent";
|
package/ios/RFSWMain.m
DELETED
|
@@ -1,381 +0,0 @@
|
|
|
1
|
-
#import "RFSWMain.h"
|
|
2
|
-
|
|
3
|
-
@implementation RFSWMain
|
|
4
|
-
|
|
5
|
-
+(void)methodCall:(NSString*)method :(NSArray*)args :(RFSWCallback)callback :(RFSWEventSender)eventSender {
|
|
6
|
-
if(!this) this = [RFSWMain new];
|
|
7
|
-
sendEvent = eventSender;
|
|
8
|
-
NSDictionary* Switch = @{
|
|
9
|
-
@"getVersion": ^{ [self getVersion :callback]; },
|
|
10
|
-
@"getServiceUrl": ^{ [self getServiceUrl :callback]; },
|
|
11
|
-
@"setServiceUrl": ^{ [self setServiceUrl :args[0] :callback]; },
|
|
12
|
-
@"getTenant": ^{ [self getTenant :callback]; },
|
|
13
|
-
@"setTenant": ^{ [self setTenant :args[0]]; },
|
|
14
|
-
@"getEnv": ^{ [self getEnv :callback]; },
|
|
15
|
-
@"setEnv": ^{ [self setEnv :args[0]]; },
|
|
16
|
-
@"getLocale": ^{ [self getLocale :callback]; },
|
|
17
|
-
@"setLocale": ^{ [self setLocale :args[0]]; },
|
|
18
|
-
@"setLocalizationDictionary": ^{ [self setLocalizationDictionary :args[0]]; },
|
|
19
|
-
@"setRequestHeaders": ^{ [self setRequestHeaders :args[0]]; },
|
|
20
|
-
@"setCustomization": ^{ [self setCustomization :args[0]]; },
|
|
21
|
-
@"isInitialized": ^{ [self isInitialized :callback]; },
|
|
22
|
-
@"initialize": ^{ [self initialize :args[0] :callback]; },
|
|
23
|
-
@"deinitialize": ^{ [self deinitialize]; },
|
|
24
|
-
@"startFaceCapture": ^{ [self startFaceCapture :args[0] :callback]; },
|
|
25
|
-
@"stopFaceCapture": ^{ [self stopFaceCapture]; },
|
|
26
|
-
@"startLiveness": ^{ [self startLiveness :args[0] :callback]; },
|
|
27
|
-
@"stopLiveness": ^{ [self stopLiveness]; },
|
|
28
|
-
@"matchFaces": ^{ [self matchFaces :args[0] :args[1] :callback]; },
|
|
29
|
-
@"splitComparedFaces": ^{ [self splitComparedFaces :args[0] :args[1] :callback]; },
|
|
30
|
-
@"detectFaces": ^{ [self detectFaces :args[0] :callback]; },
|
|
31
|
-
@"createPerson": ^{ [self createPerson :args[0] :args[1] :args[2] :callback]; },
|
|
32
|
-
@"updatePerson": ^{ [self updatePerson :args[0] :callback]; },
|
|
33
|
-
@"deletePerson": ^{ [self deletePerson :args[0] :callback]; },
|
|
34
|
-
@"getPerson": ^{ [self getPerson :args[0] :callback]; },
|
|
35
|
-
@"addPersonImage": ^{ [self addPersonImage :args[0] :args[1] :callback]; },
|
|
36
|
-
@"deletePersonImage": ^{ [self deletePersonImage :args[0] :args[1] :callback]; },
|
|
37
|
-
@"getPersonImage": ^{ [self getPersonImage :args[0] :args[1] :callback]; },
|
|
38
|
-
@"getPersonImages": ^{ [self getPersonImages :args[0] :callback]; },
|
|
39
|
-
@"getPersonImagesForPage": ^{ [self getPersonImagesForPage :args[0] :args[1] :args[2] :callback]; },
|
|
40
|
-
@"createGroup": ^{ [self createGroup :args[0] :args[1] :callback]; },
|
|
41
|
-
@"updateGroup": ^{ [self updateGroup :args[0] :callback]; },
|
|
42
|
-
@"editPersonsInGroup": ^{ [self editPersonsInGroup :args[0] :args[1] :callback]; },
|
|
43
|
-
@"deleteGroup": ^{ [self deleteGroup :args[0] :callback]; },
|
|
44
|
-
@"getGroup": ^{ [self getGroup :args[0] :callback]; },
|
|
45
|
-
@"getGroups": ^{ [self getGroups :callback]; },
|
|
46
|
-
@"getGroupsForPage": ^{ [self getGroupsForPage :args[0] :args[1] :callback]; },
|
|
47
|
-
@"getPersonGroups": ^{ [self getPersonGroups :args[0] :callback]; },
|
|
48
|
-
@"getPersonGroupsForPage": ^{ [self getPersonGroupsForPage :args[0] :args[1] :args[2] :callback]; },
|
|
49
|
-
@"getPersonsInGroup": ^{ [self getPersonsInGroup :args[0] :callback]; },
|
|
50
|
-
@"getPersonsInGroupForPage": ^{ [self getPersonsInGroupForPage :args[0] :args[1] :args[2] :callback]; },
|
|
51
|
-
@"searchPerson": ^{ [self searchPerson :args[0] :callback]; },
|
|
52
|
-
};
|
|
53
|
-
((void(^)(void))Switch[method])();
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
static RFSWMain* this;
|
|
57
|
-
static RFSWEventSender sendEvent;
|
|
58
|
-
static NSDictionary* headers;
|
|
59
|
-
|
|
60
|
-
+(void)getVersion:(RFSWCallback)callback {
|
|
61
|
-
callback([RFSWJSONConstructor generateFaceSDKVersion:RFSFaceSDK.service.version]);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
+(void)getServiceUrl:(RFSWCallback)callback {
|
|
65
|
-
callback([RFSFaceSDK.service serviceURL]);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
+(void)setServiceUrl:(NSString*)url :(RFSWCallback)callback {
|
|
69
|
-
[RFSFaceSDK.service setServiceURL:url];
|
|
70
|
-
callback(@"");
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
+(void)getTenant:(RFSWCallback)callback {
|
|
74
|
-
callback([RFSFaceSDK.service tenant]);
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
+(void)setTenant:(NSString*)tag {
|
|
78
|
-
[RFSFaceSDK.service setTenant:tag];
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
+(void)getEnv:(RFSWCallback)callback {
|
|
82
|
-
callback([RFSFaceSDK.service env]);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
+(void)setEnv:(NSString*)tag {
|
|
86
|
-
[RFSFaceSDK.service setEnv:tag];
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
+(void)getLocale:(RFSWCallback)callback {
|
|
90
|
-
callback([RFSFaceSDK.service languageLocaleCode]);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
+(void)setLocale:(NSString*)locale {
|
|
94
|
-
[RFSFaceSDK.service setLanguageLocaleCode:locale];
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
+(void)setLocalizationDictionary:(NSDictionary*)dictionary {
|
|
98
|
-
RFSFaceSDK.service.localizationHandler = ^NSString* (NSString* localizationKey) {
|
|
99
|
-
if (dictionary[localizationKey]) return dictionary[localizationKey];
|
|
100
|
-
return nil;
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
+(void)setRequestHeaders:(NSDictionary*)headersDict {
|
|
105
|
-
headers = headersDict;
|
|
106
|
-
RFSFaceSDK.service.requestInterceptingDelegate = this;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
-(NSURLRequest*)interceptorPrepareRequest:(NSURLRequest*)request {
|
|
110
|
-
NSMutableURLRequest *interceptedRequest = [request mutableCopy];
|
|
111
|
-
for (NSString* key in headers.allKeys)
|
|
112
|
-
[interceptedRequest addValue:[headers valueForKey:key] forHTTPHeaderField:key];
|
|
113
|
-
return interceptedRequest;
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
+(void)setCustomization:(NSDictionary*)config {
|
|
117
|
-
[RFSWConfig setCustomization:config :RFSFaceSDK.service.customization];
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
+(void)isInitialized:(RFSWCallback)callback {
|
|
121
|
-
callback(@([RFSFaceSDK.service isInitialized]));
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
+(void)initialize:(NSDictionary*)config :(RFSWCallback)callback {
|
|
125
|
-
[RFSFaceSDK.service initializeWithConfiguration:[RFSWJSONConstructor initConfigFromJSON:config]
|
|
126
|
-
completion:[RFSWMain initCompletion:callback]];
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
+(void)deinitialize {
|
|
130
|
-
[RFSFaceSDK.service deinitialize];
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
+(void)startFaceCapture:(NSDictionary*)config :(RFSWCallback)callback {
|
|
134
|
-
dispatch_async(dispatch_get_main_queue(), ^{
|
|
135
|
-
[RFSFaceSDK.service presentFaceCaptureViewControllerFrom:RFSWRootViewController()
|
|
136
|
-
animated:true
|
|
137
|
-
configuration:[RFSWConfig faceCaptureConfigFromJSON:config]
|
|
138
|
-
onCapture:[self faceCaptureCompletion:callback]
|
|
139
|
-
completion:nil];
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
+(void)stopFaceCapture {
|
|
144
|
-
[RFSFaceSDK.service stopFaceCaptureViewController];
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
+(void)startLiveness:(NSDictionary*)config :(RFSWCallback)callback {
|
|
148
|
-
dispatch_async(dispatch_get_main_queue(), ^{
|
|
149
|
-
[RFSFaceSDK.service startLivenessFrom:RFSWRootViewController()
|
|
150
|
-
animated:true
|
|
151
|
-
configuration:[RFSWConfig livenessConfigFromJSON:config]
|
|
152
|
-
onLiveness:[self livenessCompletion:callback]
|
|
153
|
-
completion:nil];
|
|
154
|
-
});
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
+(void)stopLiveness {
|
|
158
|
-
[RFSFaceSDK.service stopLivenessProcessing];
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
+(void)matchFaces:(NSDictionary*)request :(NSDictionary*)config :(RFSWCallback)callback {
|
|
162
|
-
[RFSFaceSDK.service matchFaces:[RFSWJSONConstructor matchFacesRequestFromJSON:request]
|
|
163
|
-
configuration:[RFSWConfig matchFacesConfigFromJSON:config]
|
|
164
|
-
completion:[self matchFacesCompletion:callback]];
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
+(void)splitComparedFaces:(NSArray*)faces :(NSNumber*)similarity :(RFSWCallback)callback {
|
|
168
|
-
NSArray* array = [RFSWJSONConstructor arrayFromJSON:faces :@selector(comparedFacesPairFromJSON:)];
|
|
169
|
-
RFSMatchFacesSimilarityThresholdSplit *split = [RFSMatchFacesSimilarityThresholdSplit splitPairs:array bySimilarityThreshold:similarity];
|
|
170
|
-
callback([RFSWJSONConstructor generateComparedFacesSplit:split]);
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
+(void)detectFaces:(NSDictionary*)request :(RFSWCallback)callback {
|
|
174
|
-
[RFSFaceSDK.service detectFacesByRequest:[RFSWJSONConstructor detectFacesRequestFromJSON:request]
|
|
175
|
-
completion:[self detectFacesCompletion:callback]];
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
+(void)createPerson:(NSString*)name :(NSArray<NSString*>*)groupIds :(NSDictionary*)metadata :(RFSWCallback)callback {
|
|
179
|
-
[RFSFaceSDK.service.personDatabase createPersonWithName:name
|
|
180
|
-
metadata:metadata
|
|
181
|
-
groupIds:groupIds
|
|
182
|
-
completion:[self databaseItemCompletion :callback :@selector(generatePerson:)]];
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
+(void)updatePerson:(NSDictionary*)person :(RFSWCallback)callback {
|
|
186
|
-
[RFSFaceSDK.service.personDatabase getPersonByPersonId:[RFSWJSONConstructor idFromJSON:person] completion:^(RFSItemResponse<RFSPerson *> * response) {
|
|
187
|
-
if (response.error) callback([RFSWJSONConstructor generatePersonDBResponse:nil :response.error]);
|
|
188
|
-
else [RFSFaceSDK.service.personDatabase updatePerson:[RFSWJSONConstructor updatePersonFromJSON:response.item :person]
|
|
189
|
-
completion:[self databaseCompletion:callback]];
|
|
190
|
-
}];
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
+(void)deletePerson:(NSString*)personId :(RFSWCallback)callback {
|
|
194
|
-
[RFSFaceSDK.service.personDatabase deletePersonByPersonId:personId
|
|
195
|
-
completion:[self databaseCompletion:callback]];
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
+(void)getPerson:(NSString*)personId :(RFSWCallback)callback {
|
|
199
|
-
[RFSFaceSDK.service.personDatabase getPersonByPersonId:personId
|
|
200
|
-
completion:[self databaseItemCompletion :callback :@selector(generatePerson:)]];
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
+(void)addPersonImage:(NSString*)personId :(NSDictionary*)image :(RFSWCallback)callback {
|
|
204
|
-
[RFSFaceSDK.service.personDatabase addPersonImageByPersonId:personId
|
|
205
|
-
imageUpload:[RFSWJSONConstructor imageUploadFromJSON:image]
|
|
206
|
-
completion:[self databaseItemCompletion :callback :@selector(generatePersonImage:)]];
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
+(void)deletePersonImage:(NSString*)personId :(NSString*)imageId :(RFSWCallback)callback {
|
|
210
|
-
[RFSFaceSDK.service.personDatabase deletePersonImageByPersonId:personId
|
|
211
|
-
imageId: imageId
|
|
212
|
-
completion:[self databaseCompletion:callback]];
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
+(void)getPersonImage:(NSString*)personId :(NSString*)imageId :(RFSWCallback)callback {
|
|
216
|
-
[RFSFaceSDK.service.personDatabase getPersonImageByPersonId:personId imageId:imageId completion:^(RFSDataResponse* response) {
|
|
217
|
-
callback([RFSWJSONConstructor generatePersonDBResponse:[RFSWJSONConstructor base64Encode:response.data] :response.error]);
|
|
218
|
-
}];
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
+(void)getPersonImages:(NSString*)personId :(RFSWCallback)callback {
|
|
222
|
-
[RFSFaceSDK.service.personDatabase getPersonImagesByPersonId:personId
|
|
223
|
-
completion:[self databasePageCompletion :callback :@selector(generatePersonImage:)]];
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
+(void)getPersonImagesForPage:(NSString*)personId :(NSNumber*)page :(NSNumber*)size :(RFSWCallback)callback {
|
|
227
|
-
[RFSFaceSDK.service.personDatabase getPersonImagesByPersonId:personId
|
|
228
|
-
page:[page integerValue]
|
|
229
|
-
size:[size integerValue]
|
|
230
|
-
completion:[self databasePageCompletion :callback :@selector(generatePersonImage:)]];
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
+(void)createGroup:(NSString*)name :(NSDictionary*)metadata :(RFSWCallback)callback {
|
|
234
|
-
[RFSFaceSDK.service.personDatabase createGroupWithName:name
|
|
235
|
-
metadata:metadata
|
|
236
|
-
completion:[self databaseItemCompletion :callback :@selector(generatePersonGroup:)]];
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
+(void)updateGroup:(NSDictionary*)group :(RFSWCallback)callback {
|
|
240
|
-
[RFSFaceSDK.service.personDatabase getGroupByGroupId:[RFSWJSONConstructor idFromJSON:group] completion:^(RFSItemResponse<RFSPersonGroup *> * response) {
|
|
241
|
-
if (response.error) callback([RFSWJSONConstructor generatePersonDBResponse:nil :response.error]);
|
|
242
|
-
else [RFSFaceSDK.service.personDatabase updateGroup:[RFSWJSONConstructor updatePersonGroupFromJSON:response.item :group]
|
|
243
|
-
completion:[self databaseCompletion:callback]];
|
|
244
|
-
}];
|
|
245
|
-
}
|
|
246
|
-
|
|
247
|
-
+(void)editPersonsInGroup:(NSString*)groupId :(NSDictionary*)editGroupPersonsRequest :(RFSWCallback)callback {
|
|
248
|
-
[RFSFaceSDK.service.personDatabase editGroupPersonsByGroupId:groupId
|
|
249
|
-
request:[RFSWJSONConstructor editGroupPersonsRequestFromJSON:editGroupPersonsRequest]
|
|
250
|
-
completion:[self databaseCompletion:callback]];
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
+(void)deleteGroup:(NSString*)groupId :(RFSWCallback)callback {
|
|
254
|
-
[RFSFaceSDK.service.personDatabase deleteGroupByGroupId:groupId
|
|
255
|
-
completion:[self databaseCompletion:callback]];
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
+(void)getGroup:(NSString*)groupId :(RFSWCallback)callback {
|
|
259
|
-
[RFSFaceSDK.service.personDatabase getGroupByGroupId:groupId
|
|
260
|
-
completion:[self databaseItemCompletion :callback :@selector(generatePersonGroup:)]];
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
+(void)getGroups:(RFSWCallback)callback {
|
|
264
|
-
[RFSFaceSDK.service.personDatabase getGroups:[self databasePageCompletion :callback :@selector(generatePersonGroup:)]];
|
|
265
|
-
}
|
|
266
|
-
|
|
267
|
-
+(void)getGroupsForPage:(NSNumber*)page :(NSNumber*)size :(RFSWCallback)callback {
|
|
268
|
-
[RFSFaceSDK.service.personDatabase getGroupsForPage:[page integerValue]
|
|
269
|
-
size:[size integerValue]
|
|
270
|
-
completion:[self databasePageCompletion :callback :@selector(generatePersonGroup:)]];
|
|
271
|
-
}
|
|
272
|
-
|
|
273
|
-
+(void)getPersonGroups:(NSString*)personId :(RFSWCallback)callback {
|
|
274
|
-
[RFSFaceSDK.service.personDatabase getPersonGroupsByPersonId:personId
|
|
275
|
-
completion:[self databasePageCompletion :callback :@selector(generatePersonGroup:)]];
|
|
276
|
-
}
|
|
277
|
-
|
|
278
|
-
+(void)getPersonGroupsForPage:(NSString*)personId :(NSNumber*)page :(NSNumber*)size :(RFSWCallback)callback {
|
|
279
|
-
[RFSFaceSDK.service.personDatabase getPersonGroupsByPersonId:personId
|
|
280
|
-
page:[page integerValue]
|
|
281
|
-
size:[size integerValue]
|
|
282
|
-
completion:[self databasePageCompletion :callback :@selector(generatePersonGroup:)]];
|
|
283
|
-
}
|
|
284
|
-
|
|
285
|
-
+(void)getPersonsInGroup:(NSString*)groupId :(RFSWCallback)callback {
|
|
286
|
-
[RFSFaceSDK.service.personDatabase getGroupPersonsByGroupId:groupId
|
|
287
|
-
completion:[self databasePageCompletion :callback :@selector(generatePerson:)]];
|
|
288
|
-
}
|
|
289
|
-
|
|
290
|
-
+(void)getPersonsInGroupForPage:(NSString*)groupId :(NSNumber*)page :(NSNumber*)size :(RFSWCallback)callback {
|
|
291
|
-
[RFSFaceSDK.service.personDatabase getGroupPersonsByGroupId:groupId
|
|
292
|
-
page:[page integerValue]
|
|
293
|
-
size:[size integerValue]
|
|
294
|
-
completion:[self databasePageCompletion :callback :@selector(generatePerson:)]];
|
|
295
|
-
}
|
|
296
|
-
|
|
297
|
-
+(void)searchPerson:(NSDictionary*)searchPersonRequest :(RFSWCallback)callback {
|
|
298
|
-
[RFSFaceSDK.service.personDatabase searchPerson:[RFSWJSONConstructor searchPersonRequestFromJSON:searchPersonRequest]
|
|
299
|
-
completion:^(RFSSearchPersonResponse *response) {
|
|
300
|
-
callback([RFSWJSONConstructor generatePersonDBResponse:[RFSWJSONConstructor generateArray:response.results :@selector(generateSearchPerson:)] :response.error]);
|
|
301
|
-
}];
|
|
302
|
-
}
|
|
303
|
-
|
|
304
|
-
+(RFSInitializationCompletion)initCompletion:(RFSWCallback)callback {
|
|
305
|
-
return ^(BOOL success, NSError* error) {
|
|
306
|
-
RFSFaceSDK.service.customization.configuration = [RFSUIConfiguration defaultConfiguration];
|
|
307
|
-
[RFSFaceSDK.service setVideoUploadingDelegate:this];
|
|
308
|
-
[RFSFaceSDK.service setFaceCaptureDelegate:this];
|
|
309
|
-
[RFSFaceSDK.service setLivenessDelegate:this];
|
|
310
|
-
RFSFaceSDK.service.customization.actionDelegate = this;
|
|
311
|
-
callback([RFSWJSONConstructor generateInitCompletion:success :error]);
|
|
312
|
-
};
|
|
313
|
-
}
|
|
314
|
-
|
|
315
|
-
+(void (^)(RFSFaceCaptureResponse*)) faceCaptureCompletion:(RFSWCallback)callback {
|
|
316
|
-
return ^(RFSFaceCaptureResponse* response) {
|
|
317
|
-
callback([RFSWJSONConstructor generateFaceCaptureResponse:response]);
|
|
318
|
-
};
|
|
319
|
-
}
|
|
320
|
-
|
|
321
|
-
+(void (^)(RFSLivenessResponse*)) livenessCompletion:(RFSWCallback)callback {
|
|
322
|
-
return ^(RFSLivenessResponse* response) {
|
|
323
|
-
callback([RFSWJSONConstructor generateLivenessResponse:response]);
|
|
324
|
-
};
|
|
325
|
-
}
|
|
326
|
-
|
|
327
|
-
+(void (^)(RFSMatchFacesResponse*)) matchFacesCompletion:(RFSWCallback)callback {
|
|
328
|
-
return ^(RFSMatchFacesResponse* response) {
|
|
329
|
-
callback([RFSWJSONConstructor generateMatchFacesResponse:response]);
|
|
330
|
-
};
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
+(void (^)(RFSDetectFacesResponse*)) detectFacesCompletion:(RFSWCallback)callback {
|
|
334
|
-
return ^(RFSDetectFacesResponse* response) {
|
|
335
|
-
callback([RFSWJSONConstructor generateDetectFacesResponse:response]);
|
|
336
|
-
};
|
|
337
|
-
}
|
|
338
|
-
|
|
339
|
-
+(void (^)(RFSComfirmResponse *response))databaseCompletion:(RFSWCallback)callback {
|
|
340
|
-
return ^(RFSComfirmResponse *response) {
|
|
341
|
-
callback([RFSWJSONConstructor generatePersonDBResponse:@YES :response.error]);
|
|
342
|
-
};
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
+(void (^)(RFSItemResponse<RFSDBBaseItem *> *response))databaseItemCompletion:(RFSWCallback)callback :(SEL)toJson {
|
|
346
|
-
return ^(RFSItemResponse<RFSDBBaseItem *> *response) {
|
|
347
|
-
callback([RFSWJSONConstructor generatePersonDBResponse:[RFSWJSONConstructor performSelector:toJson withObject:response.item] :response.error]);
|
|
348
|
-
};
|
|
349
|
-
}
|
|
350
|
-
|
|
351
|
-
+(void (^)(RFSPageResponse<RFSDBBaseItem *> *response))databasePageCompletion:(RFSWCallback)callback :(SEL)toJson {
|
|
352
|
-
return ^(RFSPageResponse<RFSDBBaseItem *> *response) {
|
|
353
|
-
callback([RFSWJSONConstructor generatePersonDBResponse:@{
|
|
354
|
-
@"items": [RFSWJSONConstructor generateArray:response.items :toJson],
|
|
355
|
-
@"page": @(response.page),
|
|
356
|
-
@"totalPages": @(response.totalPages),
|
|
357
|
-
} :response.error]);
|
|
358
|
-
};
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
// RFSFaceCaptureDelegate & RFSLivenessDelegate
|
|
362
|
-
-(void)cameraPositionChanged:(RFSCameraPosition)cameraPosition {
|
|
363
|
-
sendEvent(cameraSwitchEvent, @(cameraPosition));
|
|
364
|
-
}
|
|
365
|
-
|
|
366
|
-
// RFSLivenessDelegate
|
|
367
|
-
-(void)processStatusChanged:(RFSLivenessProcessStatus)status result:(RFSLivenessResponse*)result {
|
|
368
|
-
sendEvent(livenessNotificationEvent, [RFSWJSONConstructor generateLivenessNotification:status result:result]);
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
// RFSVideoUploadingDelegate
|
|
372
|
-
-(void)videoUploadingForTransactionId:(NSString*)transactionId didFinishedWithSuccess:(BOOL)success {
|
|
373
|
-
sendEvent(videoEncoderCompletionEvent, [RFSWJSONConstructor generateVideoEncoderCompletion:transactionId :success]);
|
|
374
|
-
}
|
|
375
|
-
|
|
376
|
-
// RFSCustomizationActionDelegate
|
|
377
|
-
-(void)onFaceCustomButtonTappedWithTag:(NSInteger)tag {
|
|
378
|
-
sendEvent(onCustomButtonTappedEvent, @(tag));
|
|
379
|
-
}
|
|
380
|
-
|
|
381
|
-
@end
|