Showing
5 changed files
with
150 additions
and
0 deletions
| ... | @@ -80,6 +80,7 @@ | ... | @@ -80,6 +80,7 @@ |
| 80 | - (void)getInboxAsync:(void (^)(NSArray *list))success failureBlock:(void (^)(NSError *error))failure; | 80 | - (void)getInboxAsync:(void (^)(NSArray *list))success failureBlock:(void (^)(NSError *error))failure; |
| 81 | - (void)verifyTicketAsync:(NSString*)guid :(NSString*)ticket :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure; | 81 | - (void)verifyTicketAsync:(NSString*)guid :(NSString*)ticket :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure; |
| 82 | - (void)getProfileAsync:(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure; | 82 | - (void)getProfileAsync:(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure; |
| 83 | +- (void)consumerIntegrationAsync:(NSNumber*)nonTelco :(NSNumber*)acceptedConsent :(NSArray*)msisdnList :(NSString*)guid :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure; | ||
| 83 | 84 | ||
| 84 | @end | 85 | @end |
| 85 | #endif /* MyApi_h */ | 86 | #endif /* MyApi_h */ | ... | ... |
| ... | @@ -1321,4 +1321,18 @@ CMPedometer *pedometer; | ... | @@ -1321,4 +1321,18 @@ CMPedometer *pedometer; |
| 1321 | failure(error); | 1321 | failure(error); |
| 1322 | }]; | 1322 | }]; |
| 1323 | } | 1323 | } |
| 1324 | + | ||
| 1325 | +- (void)consumerIntegrationAsync:(NSNumber*)nonTelco :(NSNumber*)acceptedConsent :(NSArray*)msisdnList :(NSString*)guid :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure | ||
| 1326 | +{ | ||
| 1327 | + [[Warply sharedService] consumerIntegrationWithSuccessBlock:nonTelco :acceptedConsent :msisdnList :guid :^(NSDictionary *response) { | ||
| 1328 | + if (success) { | ||
| 1329 | + success(response); | ||
| 1330 | + } | ||
| 1331 | + } failureBlock:^(NSError *error) { | ||
| 1332 | + if (failure) { | ||
| 1333 | + failure(error); | ||
| 1334 | + } | ||
| 1335 | + }]; | ||
| 1336 | +} | ||
| 1337 | + | ||
| 1324 | @end | 1338 | @end | ... | ... |
| ... | @@ -328,6 +328,8 @@ WL_VERSION_INTERFACE() | ... | @@ -328,6 +328,8 @@ WL_VERSION_INTERFACE() |
| 328 | andNickname:(NSString*)nickname andGender:(NSString*)gender andBirthday:(NSString*)birthday andNameDay:(NSString*)nameday andTaxID:(NSString*)taxID andProfileMetadata:(NSDictionary*)profileMetadata optin:(NSNumber*) optin newsLetter:(NSNumber*)newsletter | 328 | andNickname:(NSString*)nickname andGender:(NSString*)gender andBirthday:(NSString*)birthday andNameDay:(NSString*)nameday andTaxID:(NSString*)taxID andProfileMetadata:(NSDictionary*)profileMetadata optin:(NSNumber*) optin newsLetter:(NSNumber*)newsletter |
| 329 | andSMS:(NSNumber*)sms andSegmentation:(NSNumber*)segmentation andSMSSegmentation:(NSNumber*)smsSegmentation :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure; | 329 | andSMS:(NSNumber*)sms andSegmentation:(NSNumber*)segmentation andSMSSegmentation:(NSNumber*)smsSegmentation :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure; |
| 330 | 330 | ||
| 331 | +- (void)consumerIntegrationWithSuccessBlock:(NSNumber*)nonTelco :(NSNumber*)acceptedConsent :(NSArray*)msisdnList :(NSString*)guid :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure; | ||
| 332 | + | ||
| 331 | - (void)changeProfileImageWithSuccessBlock:(NSString*)image andUserId:(NSString*)userId :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure; | 333 | - (void)changeProfileImageWithSuccessBlock:(NSString*)image andUserId:(NSString*)userId :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure; |
| 332 | 334 | ||
| 333 | 335 | ... | ... |
| ... | @@ -994,6 +994,78 @@ WL_VERSION_IMPLEMENTATION(WL_VERSION) | ... | @@ -994,6 +994,78 @@ WL_VERSION_IMPLEMENTATION(WL_VERSION) |
| 994 | }]; | 994 | }]; |
| 995 | } | 995 | } |
| 996 | 996 | ||
| 997 | +- (void)consumerIntegrationWithSuccessBlock:(NSNumber*)nonTelco :(NSNumber*)acceptedConsent :(NSArray*)msisdnList :(NSString*)guid :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure | ||
| 998 | +{ | ||
| 999 | + NSMutableDictionary* data = [[NSMutableDictionary alloc] init]; | ||
| 1000 | + | ||
| 1001 | + if (nonTelco && ![nonTelco isEqual:@NO]) { | ||
| 1002 | + [data setValue:nonTelco forKey:@"nonTelco"]; | ||
| 1003 | + } else { | ||
| 1004 | + [data setValue:0 forKey:@"nonTelco"]; | ||
| 1005 | + } | ||
| 1006 | + | ||
| 1007 | + if (acceptedConsent && ![acceptedConsent isEqual:@NO]) { | ||
| 1008 | + [data setValue:acceptedConsent forKey:@"acceptedConsent"]; | ||
| 1009 | + } else { | ||
| 1010 | + [data setValue:0 forKey:@"acceptedConsent"]; | ||
| 1011 | + } | ||
| 1012 | + | ||
| 1013 | + if (msisdnList && (msisdnList != nil) && ([msisdnList count] != 0)) { | ||
| 1014 | + [data setValue:msisdnList forKey:@"msisdnList"]; | ||
| 1015 | + } else { | ||
| 1016 | + [data setValue:nil forKey:@"msisdnList"]; | ||
| 1017 | + } | ||
| 1018 | + | ||
| 1019 | + if (guid && ![guid isEqual:@""]) { | ||
| 1020 | + [data setValue:guid forKey:@"guid"]; | ||
| 1021 | + } else { | ||
| 1022 | + [data setValue:@"" forKey:@"guid"]; | ||
| 1023 | + } | ||
| 1024 | + | ||
| 1025 | + NSMutableDictionary* consumerData = [[NSMutableDictionary alloc] init]; | ||
| 1026 | + [consumerData setValue:@"integration" forKey:@"action"]; | ||
| 1027 | + | ||
| 1028 | + if(data && ![data isEqual:@{}]) { | ||
| 1029 | + [consumerData setValue:data forKey:@"data"]; | ||
| 1030 | + } | ||
| 1031 | + | ||
| 1032 | + NSMutableDictionary *postDictionary = [[NSMutableDictionary alloc] init]; | ||
| 1033 | + [postDictionary setValue:consumerData forKey:@"consumer_data"]; | ||
| 1034 | + | ||
| 1035 | + NSData *jsonData = [NSJSONSerialization dataWithJSONObject:postDictionary options:0 error:NULL]; | ||
| 1036 | + [self sendContext8:jsonData successBlock:^(NSDictionary *contextResponse) { | ||
| 1037 | + if (success) { | ||
| 1038 | + success(contextResponse); | ||
| 1039 | + } | ||
| 1040 | + } failureBlock:^(NSError *error) { | ||
| 1041 | + if (failure) { | ||
| 1042 | + NSDictionary* dict = [NSDictionary alloc]; | ||
| 1043 | + dict = [error userInfo]; | ||
| 1044 | + NSString* errorCode = [dict objectForKey:@"NSLocalizedDescription"]; | ||
| 1045 | + if ([errorCode isEqual:@"Request failed: unauthorized (401)"]) { | ||
| 1046 | + [self refreshToken:^(NSDictionary *response) { | ||
| 1047 | + [self sendContext8:jsonData successBlock:^(NSDictionary *contextResponse) { | ||
| 1048 | + if (success) { | ||
| 1049 | + success(contextResponse); | ||
| 1050 | + } | ||
| 1051 | + } failureBlock:^(NSError *error) { | ||
| 1052 | + if (failure) { | ||
| 1053 | + failure(error); | ||
| 1054 | + } | ||
| 1055 | + }]; | ||
| 1056 | + } failureBlock:^(NSError *error) { | ||
| 1057 | + if (failure) { | ||
| 1058 | + [_db executeUpdate:@"DROP TABLE requestVariables"]; | ||
| 1059 | + failure(error); | ||
| 1060 | + } | ||
| 1061 | + NSLog(@"Error at token %@", error ); | ||
| 1062 | + }]; | ||
| 1063 | + } | ||
| 1064 | + NSLog(@"Error at consumer Integration %@", error ); | ||
| 1065 | + } | ||
| 1066 | + }]; | ||
| 1067 | +} | ||
| 1068 | + | ||
| 997 | - (void)changeProfileImageWithSuccessBlock:(NSString*)image andUserId:(NSString*)userId :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure | 1069 | - (void)changeProfileImageWithSuccessBlock:(NSString*)image andUserId:(NSString*)userId :(void(^)(NSDictionary *response))success failureBlock:(void(^)(NSError *error))failure |
| 998 | { | 1070 | { |
| 999 | NSDictionary *postDictionary = @{@"action": @"upload", @"user_id": userId, @"imageOnBase64": image }; | 1071 | NSDictionary *postDictionary = @{@"action": @"upload", @"user_id": userId, @"imageOnBase64": image }; | ... | ... |
| ... | @@ -1493,4 +1493,65 @@ public class swiftApi { | ... | @@ -1493,4 +1493,65 @@ public class swiftApi { |
| 1493 | } | 1493 | } |
| 1494 | } | 1494 | } |
| 1495 | 1495 | ||
| 1496 | + | ||
| 1497 | + public class GenericResponseModel { | ||
| 1498 | + private var result: Int? | ||
| 1499 | + private var status: Int? | ||
| 1500 | + private var msg: String? | ||
| 1501 | + | ||
| 1502 | + | ||
| 1503 | + init(dictionary: [String: Any]) { | ||
| 1504 | + self.result = dictionary["result"] as? Int? ?? -1 | ||
| 1505 | + self.status = dictionary["status"] as? Int? ?? -1 | ||
| 1506 | + self.msg = dictionary["msg"] as? String? ?? "" | ||
| 1507 | + } | ||
| 1508 | + | ||
| 1509 | + public var getResult: Int { | ||
| 1510 | + get { // getter | ||
| 1511 | + return self.result ?? -1 | ||
| 1512 | + } | ||
| 1513 | + } | ||
| 1514 | + | ||
| 1515 | + public var getStatus: Int { | ||
| 1516 | + get { // getter | ||
| 1517 | + return self.status ?? -1 | ||
| 1518 | + } | ||
| 1519 | + } | ||
| 1520 | + | ||
| 1521 | + public var getMsg: String { | ||
| 1522 | + get { // getter | ||
| 1523 | + return self.msg ?? "" | ||
| 1524 | + } | ||
| 1525 | + } | ||
| 1526 | + } | ||
| 1527 | + | ||
| 1528 | + | ||
| 1529 | + public func consumerIntegrationAsync(nonTelco: Bool, acceptedConsent: Bool, msisdnList: Array<String>, guid: String, _ consumerIntegrationCallback: @escaping (_ responseData: GenericResponseModel?) -> Void) -> Void { | ||
| 1530 | + | ||
| 1531 | + let instanceOfMyApi = MyApi() | ||
| 1532 | + instanceOfMyApi.consumerIntegrationAsync(nonTelco as NSNumber, acceptedConsent as NSNumber, msisdnList, guid, requestCallback, failureBlock: requestFailureCallback) | ||
| 1533 | + | ||
| 1534 | + func requestCallback(_ responseData: [AnyHashable: Any]?) -> Void { | ||
| 1535 | + | ||
| 1536 | + if let responseDataDictionary = responseData as? [String: Any] { | ||
| 1537 | + | ||
| 1538 | + let tempResponse = GenericResponseModel(dictionary: responseDataDictionary) | ||
| 1539 | + | ||
| 1540 | + consumerIntegrationCallback(tempResponse); | ||
| 1541 | + | ||
| 1542 | + } else { | ||
| 1543 | + consumerIntegrationCallback(nil) | ||
| 1544 | + } | ||
| 1545 | + | ||
| 1546 | + } | ||
| 1547 | + | ||
| 1548 | + func requestFailureCallback(_ error: Error?) -> Void { | ||
| 1549 | + print("consumerIntegration error: ") | ||
| 1550 | + print(error) | ||
| 1551 | + print("====================") | ||
| 1552 | + consumerIntegrationCallback(nil) | ||
| 1553 | + } | ||
| 1554 | + | ||
| 1555 | + } | ||
| 1556 | + | ||
| 1496 | } | 1557 | } | ... | ... |
-
Please register or login to post a comment