VOVoucherManagerProtocol
@protocol VOVoucherManagerProtocol
VOVoucherManagerProtocol is the protocol for the VOVoucherManager. This protocol is responsible for all
network and caching methods for a VOVoucher (Gift).
-
Creates a pending
VOVoucher. This will save & validate theVOVouchercreated in the create process ThisVOVoucherwill not be sent to users until the activate call is made.Declaration
Objective-C
- (void)createPendingVoucher:(nonnull VOVoucher *)voucher onSuccess:(nonnull void (^)(VOVoucher *_Nonnull))onSucceed onError:(nonnull void (^)(NSError *_Nonnull))onError;Swift
func createPendingVoucher(_ voucher: Any!, onSuccess onSucceed: ((UnsafeMutablePointer<Int32>?) -> Void)!, onError: ((UnsafeMutablePointer<Int32>?) -> Void)!)Parameters
voucher- the
VOVoucherthat is being createdonSucceed- success callblock when the request completes
onError- block to be executed upon failure of the request.
-
Validates payment and sends the
VOVoucherto usersDeclaration
Objective-C
- (void)activateVoucherWithId:(long long)voucherId paymentSourceDictionary:(nullable NSDictionary *)paymentSourceDictionary onSuccess:(nonnull void (^)(VOVoucher *_Nonnull))onSuccess onError:(nonnull void (^)(NSError *_Nonnull))onError;Swift
func activateVoucher(withId voucherId: Int64, paymentSourceDictionary: Any!, onSuccess: ((UnsafeMutablePointer<Int32>?) -> Void)!, onError: ((UnsafeMutablePointer<Int32>?) -> Void)!)Parameters
voucherId- the id of the
VOVouchersent to the serverpaymentSourceDictionary- payment information if necessary, if nil it is assumed this is a FREE
VOVoucheronSuccess- block to be executed upon successful completion of the request.
onError- block to be executed upon failure of the request.
-
Unwraps a
VOVoucher. @discussion - Multiple people can unwrap aVOVoucherbut only one person can claim aVOVoucher. Usually the unwrap & claim call occur one right after the other. ## Note - Unwrap must be called before claim for the user.Declaration
Objective-C
- (void)unwrapVoucherWithId:(long long)voucherId score:(NSInteger)score onSuccess:(nonnull void (^)(VOVoucher *_Nonnull))onSuccess onError:(nonnull void (^)(NSError *_Nonnull))onError;Swift
func unwrapVoucher(withId voucherId: Int64, score: Any!, onSuccess: ((UnsafeMutablePointer<Int32>?) -> Void)!, onError: ((UnsafeMutablePointer<Int32>?) -> Void)!)Parameters
voucherId- the id of the
VOVouchersent to the serverscore- the score achieved in the game, if a game was played
onSuccess- block to be executed upon successful completion of the request.
onError- block to be executed upon failure of the request.
-
Declaration
Objective-C
- (void)claimVoucherWithId:(long long)voucherId onSuccess:(nonnull void (^)(VOVoucher *_Nonnull))onSuccess onError:(nonnull void (^)(NSError *_Nonnull))onError;Swift
func claimVoucher(withId voucherId: Int64, onSuccess: ((UnsafeMutablePointer<Int32>?) -> Void)!, onError: ((UnsafeMutablePointer<Int32>?) -> Void)!)Parameters
voucherId- the id of the
VOVouchersent to the serveronSuccess- block to be executed upon successful completion of the request.
onError- block to be executed upon failure of the request.
-
Declaration
Objective-C
- (void)claimVoucherWithId:(long long)voucherId claimDestInfo:(nullable NSDictionary *)claimDestInfo onSuccess:(nonnull void (^)(VOVoucher *_Nonnull))onSuccess onError:(nonnull void (^)(NSError *_Nonnull))onError;Swift
func claimVoucher(withId voucherId: Int64, claimDestInfo: Any!, onSuccess: ((UnsafeMutablePointer<Int32>?) -> Void)!, onError: ((UnsafeMutablePointer<Int32>?) -> Void)!)Parameters
voucherId- the id of the
VOVouchersent to the serverclaimDestInfo- the claim parameters to be sent back with the request
onSuccess- block to be executed upon successful completion of the request.
onError- block to be executed upon failure of the request.
-
Retrieves a
VOVoucherfrom server or cache.Declaration
Objective-C
- (void)requestVoucher:(long long)voucherId forceFetch:(BOOL)forceFetch onSuccess:(nonnull void (^)(VOVoucher *_Nonnull))onSuccess onError:(nonnull void (^)(NSError *_Nonnull))onError;Swift
func requestVoucher(_ voucherId: Int64, forceFetch: Any!, onSuccess: ((UnsafeMutablePointer<Int32>?) -> Void)!, onError: ((UnsafeMutablePointer<Int32>?) -> Void)!)Parameters
voucherId- the id of the
VOVouchersent to the serverforceFetch- If enabled, a network request will be made regardless of how up-to-date the cache value is.
onSuccess- block to be executed upon successful completion of the request.
onError- block to be executed upon failure of the request.
-
Retrieves sent feed vouchers of the logged in user. The vouchers are ordered from newest to oldest.
Note
A
VOUserneeds to be logged in withVOUserManageror the request will 403.Declaration
Objective-C
- (void)requestSentFeedVouchersWithLimit:(int)limit onCompletion: (nonnull void (^)( NSArray<VOFeedVoucher *> *_Nullable, NSURL *_Nullable, NSError *_Nullable))onCompletion;Swift
func requestSentFeedVouchers(withLimit limit: Int32, onCompletion: ((Int32) -> Void)!)Parameters
limit- the number of results on each page.
onCompletion- block to be executed upon completion of the request. Has the list of feed vouchers and the url to the next page.
-
Retrieves received feed vouchers of the logged in user. The vouchers are ordered from newest to oldest.
Note
A
VOUserneeds to be logged in withVOUserManageror the request will 403.Declaration
Objective-C
- (void)requestReceivedFeedVouchersWithLimit:(int)limit onCompletion: (nonnull void (^)( NSArray<VOFeedVoucher *> *_Nullable, NSURL *_Nullable, NSError *_Nullable))onCompletion;Swift
func requestReceivedFeedVouchers(withLimit limit: Int32, onCompletion: ((Int32) -> Void)!)Parameters
limit- the number of results on each page.
onCompletion- block to be executed upon completion of the request. Has the list of feed vouchers and the url to the next page.
-
Retrieves feed vouchers with an amount for the logged in user. The vouchers are ordered from newest to oldest.
Note
A
VOUserneeds to be logged in withVOUserManageror the request will 403.Declaration
Objective-C
- (void)requestWalletFeedVouchersWithLimit:(int)limit onCompletion: (nonnull void (^)( NSArray<VOFeedVoucher *> *_Nullable, NSURL *_Nullable, NSError *_Nullable))onCompletion;Swift
func requestWalletFeedVouchers(withLimit limit: Int32, onCompletion: ((Int32) -> Void)!)Parameters
limit- the number of results on each page.
onCompletion- block to be executed upon completion of the request. Has the list of feed vouchers and the url to the next page.
-
Retrieves feed vouchers using a page URL from one of the calls that returns a nextPageUrl. The vouchers are ordered from newest to oldest.
Note
A
VOUserneeds to be logged in withVOUserManageror the request will 403.Declaration
Objective-C
- (void)requestFeedVouchersWithPageUrl:(nonnull NSURL *)pageUrl onCompletion:(nonnull void (^)( NSArray<VOFeedVoucher *> *_Nullable, NSURL *_Nullable, NSError *_Nullable))onCompletion;Swift
func requestFeedVouchers(withPageUrl pageUrl: Any!, onCompletion: ((Int32) -> Void)!)Parameters
pageUrl- the page URL from one of the calls that returns a nextPageUrl
onCompletion- block to be executed upon completion of the request. Has the list of feed vouchers and the url to the next page.
-
Retrieves the voucher associated with an invite code if one exists.
Declaration
Objective-C
- (void)requestVoucherWithInviteCode:(nonnull NSString *)inviteCode onSuccess: (nonnull void (^)(VOVoucher *_Nonnull))onSuccess onError: (nonnull void (^)(NSError *_Nonnull))onError;Swift
func requestVoucher(withInviteCode inviteCode: Any!, onSuccess: ((UnsafeMutablePointer<Int32>?) -> Void)!, onError: ((UnsafeMutablePointer<Int32>?) -> Void)!)Parameters
onSuccess- block to be executed upon successful completion of the request. Passes the voucher as a parameter.
onError- block to be executed upon failure of the request.
-
Retrieves the promo associated with the promo code
Declaration
Objective-C
- (void)requestPromo:(nonnull NSString *)promoCode onCompletion:(nonnull void (^)(VOPromo *_Nullable, NSError *_Nullable))onCompletion;Swift
func requestPromo(_ promoCode: Any!, onCompletion: ((UnsafeMutablePointer<Int32>?, UnsafeMutablePointer<Int32>?) -> Void)!)Parameters
promoCodethe promo code for the promotion.
onCompletionblock to be executed upon completion of the request.
-
Retrieves a voucher based on the promoCode
Declaration
Objective-C
- (void)requestVoucherWithPromoCode:(nonnull NSString *)promoCode onCompletion: (nonnull void (^)(VOVoucher *_Nullable, NSError *_Nullable))onCompletion;Swift
func requestVoucher(withPromoCode promoCode: Any!, onCompletion: ((UnsafeMutablePointer<Int32>?, UnsafeMutablePointer<Int32>?) -> Void)!)Parameters
promoCodethe promo code for the promotion
onCompletionblock to be executed upon completion of the request
-
Retrieves the share URL for a Voucher
Declaration
Objective-C
- (void)requestShareUrlForVoucherId:(long long)voucherID onCompletion: (nonnull void (^)(NSURL *_Nullable, NSError *_Nullable))onCompletion;Swift
func requestShareUrl(forVoucherId voucherID: Int64, onCompletion: ((UnsafeMutablePointer<Int32>?, UnsafeMutablePointer<Int32>?) -> Void)!)Parameters
voucherID- the id for the desired Voucher
onCompletion- code block to be completed when the request is finished
-
Returns an in-progress
VOVoucherthat has been previously saved via thesaveVoucherDraft:method.Note
This method returns nil if one does not exist.Declaration
Objective-C
- (nullable VOMutableVoucher *)voucherDraft;Swift
func voucherDraft() -> Any!Return Value
An instance of
VOMutableVoucher -
Persists an in-progress
VOVoucher.Declaration
Objective-C
- (void)saveVoucherDraft:(nonnull VOMutableVoucher *)voucher;Swift
func saveVoucherDraft(_ voucher: Any!)Parameters
voucher- the in-progress
VOVoucherthat needs to be cached. -
Clears the in-progress
VOVoucherin cache that has been previously saved via thesaveVoucherDraft:method.Declaration
Objective-C
- (void)deleteVoucherDraft;Swift
func deleteVoucherDraft() -
Deletes the voucher identified by voucherId.
Declaration
Objective-C
- (void)deleteVoucherWithId:(long long)voucherId onCompletion:(nonnull void (^)(NSError *_Nullable))onCompletion;Swift
func deleteVoucher(withId voucherId: Int64, onCompletion: ((UnsafeMutablePointer<Int32>?) -> Void)!)Parameters
voucherId- the id of the
VOVoucherto deleteonCompletion- block to be executed upon completion of the request. Returns nil on success, otherwise returns an error.
View on GitHub
VOVoucherManagerProtocol Protocol Reference