logoDokumen
Cari

API SDK iOS

GTCaptcha4SessionTaskDelegate

Protokol delegasi tugas sesi verifikasi

gtCaptchaSession:didReceive:result:

Callback untuk parameter hasil dari sesi verifikasi.

Deklarasi

- (void)gtCaptchaSession:(GTCaptcha4Session *)captchaSession didReceive:(NSString *)status result:(nullable NSDictionary *)result;
              
              - (void)gtCaptchaSession:(GTCaptcha4Session *)captchaSession
              didReceive:(NSString *)status
                  result:(nullable NSDictionary *)result;

            
Tampilkan blok kode ini di jendela mengambang

Parameter

Param Deskripsi
captchaSession Sesi verifikasi
status Kode status. @"0"/@"1": Belum Selesai/Selesai.
Jika status adalah @"1", berarti berhasil, dan hasilnya perlu diverifikasi sekunder.
result Parameter hasil verifikasi.

Diskusi

Setelah mendapatkan parameter hasil verifikasi, parameter tersebut perlu dikirimkan ke server bisnis untuk menyelesaikan verifikasi parameter. Contoh result:

{ pass_token = "eb6d2e064524ae96ddc99a0e6e15f95dbb234008d108f0db269f27d426bcf3c6"; gen_time = "1660894030"; captcha_output = "fI9I34MDjVi10gJO_EqXwNpN8hK0rYLEPVWSDE4W6kc1umDoTHIlD_t6YQNNpPG2tJlKR8he6WFWkkllU8goGeNVNOzhqmAm256BpK8qAEHNrOjHzkNagfIcx_A21ssPrG6YlnnHFx3PfBnbrn5fb2aKDIi0I5xmCUjxq0dsFuANLIQVtllMjkJ7-1l_j-Wz"; captcha_id = "647f5ed2ed8acb4be36784e01556bb71"; lot_number = "0861c607d519469b9117d0c6dd551fe3"; }
              
              {
    pass_token = "eb6d2e064524ae96ddc99a0e6e15f95dbb234008d108f0db269f27d426bcf3c6";
    gen_time = "1660894030";
    captcha_output = "fI9I34MDjVi10gJO_EqXwNpN8hK0rYLEPVWSDE4W6kc1umDoTHIlD_t6YQNNpPG2tJlKR8he6WFWkkllU8goGeNVNOzhqmAm256BpK8qAEHNrOjHzkNagfIcx_A21ssPrG6YlnnHFx3PfBnbrn5fb2aKDIi0I5xmCUjxq0dsFuANLIQVtllMjkJ7-1l_j-Wz";
    captcha_id = "647f5ed2ed8acb4be36784e01556bb71";
    lot_number = "0861c607d519469b9117d0c6dd551fe3";
}

            
Tampilkan blok kode ini di jendela mengambang

gtCaptchaSession:didReceiveError:

Callback untuk error yang terjadi selama sesi verifikasi.

Deklarasi

- (void)gtCaptchaSession:(GTCaptcha4Session *)captchaSession didReceiveError:(GTC4Error *)error;
              
              - (void)gtCaptchaSession:(GTCaptcha4Session *)captchaSession
         didReceiveError:(GTC4Error *)error;

            
Tampilkan blok kode ini di jendela mengambang

Parameter

Param Deskripsi
captchaSession Sesi verifikasi
error Objek deskripsi error

Lihat juga

Error

GTCaptcha4Session

Sesi verifikasi

delegate

Delegasi tugas sesi verifikasi.

Deklarasi

@property (nonatomic, weak) id<GTCaptcha4SessionTaskDelegate> delegate;
              
              @property (nonatomic, weak) id<GTCaptcha4SessionTaskDelegate> delegate;

            
Tampilkan blok kode ini di jendela mengambang

captchaID

ID verifikasi dari sesi saat ini.

Deklarasi

@property (nonnull, readonly, nonatomic, strong) NSString *captchaID;
              
              @property (nonnull, readonly, nonatomic, strong) NSString *captchaID;

            
Tampilkan blok kode ini di jendela mengambang

challenge

Nomor seri dari sesi verifikasi saat ini.

Deklarasi

@property (nullable, readonly, nonatomic, strong) NSString *challenge;
              
              @property (nullable, readonly, nonatomic, strong) NSString *challenge;

            
Tampilkan blok kode ini di jendela mengambang

configuration

Konfigurasi dari sesi verifikasi saat ini.

Deklarasi

@property (nonnull, readonly, nonatomic, strong) GTCaptcha4SessionConfiguration *configuration;
              
              @property (nonnull, readonly, nonatomic, strong) GTCaptcha4SessionConfiguration *configuration;

            
Tampilkan blok kode ini di jendela mengambang

sessionWithCaptchaID:

Buat instance sesi verifikasi baru.

Deklarasi

+ (instancetype)sessionWithCaptchaID:(NSString *)captchaID;
              
              + (instancetype)sessionWithCaptchaID:(NSString *)captchaID;

            
Tampilkan blok kode ini di jendela mengambang

Parameter

Param Deskripsi
captchaID ID verifikasi

Nilai Kembali

Instance baru dari GTCaptcha4Session

sessionWithCaptchaID:configuration:

Buat instance sesi verifikasi baru.

Deklarasi

+ (instancetype)sessionWithCaptchaID:(NSString *)captchaID configuration:(nullable GTCaptcha4SessionConfiguration *)configuration;
              
              + (instancetype)sessionWithCaptchaID:(NSString *)captchaID
                       configuration:(nullable GTCaptcha4SessionConfiguration *)configuration;

            
Tampilkan blok kode ini di jendela mengambang
Param Deskripsi
captchaID ID verifikasi
configuration Konfigurasi sesi

Nilai Kembali

Instance baru dari GTCaptcha4Session

initWithCaptchaID:

Buat instance sesi verifikasi baru.

Deklarasi

- (instancetype)initWithCaptchaID:(NSString *)captchaID;
              
              - (instancetype)initWithCaptchaID:(NSString *)captchaID;

            
Tampilkan blok kode ini di jendela mengambang

Parameter

Param Deskripsi
captchaID ID verifikasi

Nilai Kembali

Instance baru dari GTCaptcha4Session

initWithCaptchaID:configuration:

Buat instance sesi verifikasi baru.

Deklarasi

- (instancetype)initWithCaptchaID:(NSString *)captchaID configuration:(nullable GTCaptcha4SessionConfiguration *)configuration;
              
              - (instancetype)initWithCaptchaID:(NSString *)captchaID
                    configuration:(nullable GTCaptcha4SessionConfiguration *)configuration;

            
Tampilkan blok kode ini di jendela mengambang
Param Deskripsi
captchaID ID verifikasi
configuration Konfigurasi sesi

Nilai Kembali

Instance baru dari GTCaptcha4Session

verify

Mulai verifikasi.

Deklarasi

- (void)verify;
              
              - (void)verify;

            
Tampilkan blok kode ini di jendela mengambang

cancel

Batalkan verifikasi.

Deklarasi

- (void)cancel;
              
              - (void)cancel;

            
Tampilkan blok kode ini di jendela mengambang

sdkVersion

Dapatkan nomor versi SDK.

Deklarasi

+ (NSString *)sdkVersion;
              
              + (NSString *)sdkVersion;

            
Tampilkan blok kode ini di jendela mengambang

GTCaptcha4SessionConfiguration

Konfigurasi sesi verifikasi

GTC4UserInterfaceStyle

Gaya antarmuka verifikasi.

Deklarasi

typedef NS_ENUM(NSInteger, GTC4UserInterfaceStyle) { /** Ikuti gaya sistem */ GTC4UserInterfaceStyleSystem = 0, /** Gaya terang */ GTC4UserInterfaceStyleLight, /** Gaya gelap */ GTC4UserInterfaceStyleDark, /** Gaya default */ GTC4UserInterfaceStyleDefault = GTC4UserInterfaceStyleLight };
              
              typedef NS_ENUM(NSInteger, GTC4UserInterfaceStyle) {
    /** Ikuti gaya sistem */
    GTC4UserInterfaceStyleSystem = 0,
    /** Gaya terang */
    GTC4UserInterfaceStyleLight,
    /** Gaya gelap */
    GTC4UserInterfaceStyleDark,
    /** Gaya default */
    GTC4UserInterfaceStyleDefault = GTC4UserInterfaceStyleLight
};

            
Tampilkan blok kode ini di jendela mengambang

resourcePath

Path lengkap untuk akses jarak jauh ke sumber daya statis, default kosong.

Deklarasi

@property (nullable, nonatomic, strong) NSString *resourcePath;
              
              @property (nullable, nonatomic, strong) NSString *resourcePath;

            
Tampilkan blok kode ini di jendela mengambang

protocol

Protokol yang digunakan untuk akses jarak jauh ke sumber daya statis, default adalah @“https”.

Deklarasi

@property (nonatomic, strong) NSString *protocol;
              
              @property (nonatomic, strong) NSString *protocol;

            
Tampilkan blok kode ini di jendela mengambang

userInterfaceStyle

Gaya antarmuka dan status bar, default putih polos.

Deklarasi

@property (nonatomic, assign) GTC4UserInterfaceStyle userInterfaceStyle;
              
              @property (nonatomic, assign) GTC4UserInterfaceStyle userInterfaceStyle;

            
Tampilkan blok kode ini di jendela mengambang

backgroundColor

Warna latar belakang, default transparan.

Deklarasi

@property (nonatomic, strong) UIColor *backgroundColor;
              
              @property (nonatomic, strong) UIColor *backgroundColor;

            
Tampilkan blok kode ini di jendela mengambang

debugEnable

Sakelar mode debug, default nonaktif.

Deklarasi

@property (nonatomic, assign) BOOL debugEnable;
              
              @property (nonatomic, assign) BOOL debugEnable;

            
Tampilkan blok kode ini di jendela mengambang

backgroundUserInteractionEnable

Interaksi dengan latar belakang, default aktif.

Deklarasi

@property (nonatomic, assign) BOOL backgroundUserInteractionEnable;
              
              @property (nonatomic, assign) BOOL backgroundUserInteractionEnable;

            
Tampilkan blok kode ini di jendela mengambang

timeout

Durasi batas waktu permintaan, default 8 detik.

Deklarasi

@property (nonatomic, assign) NSTimeInterval timeout;
              
              @property (nonatomic, assign) NSTimeInterval timeout;

            
Tampilkan blok kode ini di jendela mengambang

language

Bahasa, default mengikuti sistem. Untuk bahasa tertentu, lihat kode singkat bahasa.

Deklarasi

@property (nonatomic, strong) NSString *language;
              
              @property (nonatomic, strong) NSString *language;

            
Tampilkan blok kode ini di jendela mengambang

supportedInterfaceOrientations

Orientasi layar yang didukung.

Deklarasi

@property (assign, nonatomic) UIInterfaceOrientationMask supportedInterfaceOrientations;
              
              @property (assign, nonatomic) UIInterfaceOrientationMask supportedInterfaceOrientations;

            
Tampilkan blok kode ini di jendela mengambang

additionalParameter

Parameter tambahan, default kosong. Parameter akan dirangkai dan dikirim ke engagelab.

Deklarasi

@property (nullable, nonatomic, strong) NSDictionary *additionalParameter;
              
              @property (nullable, nonatomic, strong) NSDictionary *additionalParameter;

            
Tampilkan blok kode ini di jendela mengambang

Diskusi

Daftar key-value yang didukung sebagai berikut:

Key Tipe Deskripsi Nilai Default
@"loading" NSString Indikator status loading kustom, path relatif resource loading untuk WebView yang memuat html. Mengatur string kosong akan membatalkan loading. @"./gt4-loading.gif"
@"rem" NSNumber Mengatur rasio skala keseluruhan kode verifikasi. @(1)
@"hideBar" NSArray<NSString *> * Sembunyikan tombol tutup dan refresh pada layar verifikasi berikutnya. Mengatur @[@"close", @"refresh"] akan menyembunyikan tombol tutup dan refresh. @[]
@"nextWidth" NSString Lebar popup kode verifikasi, dengan satuan seperti @"300px". nil
@"riskType" NSString Tentukan tipe verifikasi bersama integrasi kontrol risiko. nil
@"hideSuccess" NSNumber Sembunyikan popup sukses verifikasi, @(0)/@(1) untuk tidak/sembunyikan. @(0)

Contoh Kode

#define captchaID @"1234567890abcdef" GTCaptcha4SessionConfiguration *config = [GTCaptcha4SessionConfiguration defaultConfiguration]; NSMutableDictionary *params = [@{} mutableCopy]; [params setValue:@(1.25) forKey:@"rem"]; // Perbesar 1,25 kali [params setValue:@[@"close", @"refresh"] forKey:@"hideBar"]; // Sembunyikan tombol tutup dan refresh [params setValue:@"300px" forKey:@"nextWidth"]; [params setValue:@"click" forKey:@"riskType"]; // Tentukan verifikasi klik pintar, konsisten dengan konfigurasi backend [params setValue:@(1) forKey:@"hideSuccess"]; // Gunakan NSNumber untuk merepresentasikan nilai boolean [params setValue:@"./gt4-loading.gif" forKey:@"loading"]; config.additionalParameter = params; GTCaptcha4Session *captchaSession = [GTCaptcha4Session sessionWithCaptchaID:captchaID configuration:config]; ...
              
              #define captchaID @"1234567890abcdef"

GTCaptcha4SessionConfiguration *config = [GTCaptcha4SessionConfiguration defaultConfiguration];

NSMutableDictionary *params = [@{} mutableCopy];
[params setValue:@(1.25)                  forKey:@"rem"]; // Perbesar 1,25 kali
[params setValue:@[@"close", @"refresh"]  forKey:@"hideBar"]; // Sembunyikan tombol tutup dan refresh
[params setValue:@"300px"                 forKey:@"nextWidth"];
[params setValue:@"click"                 forKey:@"riskType"]; // Tentukan verifikasi klik pintar, konsisten dengan konfigurasi backend
[params setValue:@(1)                     forKey:@"hideSuccess"]; // Gunakan NSNumber untuk merepresentasikan nilai boolean
[params setValue:@"./gt4-loading.gif"     forKey:@"loading"];

config.additionalParameter = params;

GTCaptcha4Session *captchaSession = [GTCaptcha4Session sessionWithCaptchaID:captchaID configuration:config];
...

            
Tampilkan blok kode ini di jendela mengambang

defaultConfiguration

Dapatkan konfigurasi default.

Deklarasi

+ (GTCaptcha4SessionConfiguration *)defaultConfiguration;
              
              + (GTCaptcha4SessionConfiguration *)defaultConfiguration;

            
Tampilkan blok kode ini di jendela mengambang

Nilai Kembali

+ (GTCaptcha4SessionConfiguration *)defaultConfiguration { GTCaptcha4SessionConfiguration *config = [[GTCaptcha4SessionConfiguration alloc] init]; config.debugEnable = NO; config.timeout = 8.0; config.language = [GTC4Utils systemLanguage]; config.protocol = @"https"; config.userInterfaceStyle = GTC4UserInterfaceStyleDefault; config.backgroundColor = [UIColor clearColor]; config.backgroundUserInteractionEnable = YES; return config; }
              
              + (GTCaptcha4SessionConfiguration *)defaultConfiguration {
    GTCaptcha4SessionConfiguration *config = [[GTCaptcha4SessionConfiguration alloc] init];
    config.debugEnable  = NO;
    config.timeout      = 8.0;
    config.language     = [GTC4Utils systemLanguage];
    config.protocol     = @"https";
    config.userInterfaceStyle = GTC4UserInterfaceStyleDefault;
    config.backgroundColor = [UIColor clearColor];
    config.backgroundUserInteractionEnable = YES;
    
    return config;
}

            
Tampilkan blok kode ini di jendela mengambang

Error

Objek deskripsi error

/// Parameter tidak valid. Silakan periksa parameter input. FOUNDATION_EXPORT NSString * const GTC4ErrorCodeInvalidParameter; /// Operasi gagal. Periksa deskripsi detail. FOUNDATION_EXPORT NSString * const GTC4ErrorCodeOperationFail; /// Sumber daya hilang. Silakan periksa apakah file GTCaptcha4.bundle sudah lengkap. FOUNDATION_EXPORT NSString * const GTC4ErrorCodeMissedResource; /// Pengguna membatalkan verifikasi. FOUNDATION_EXPORT NSString * const GTC4ErrorCodeUserDidCancel; /// Gagal memuat file. Silakan periksa apakah file GTCaptcha4.bundle sudah diimpor lengkap atau sumber daya statis jarak jauh yang dikonfigurasi dapat diakses. FOUNDATION_EXPORT NSString * const GTC4ErrorCodeLoadFileFailure; /// Batas waktu loading. FOUNDATION_EXPORT NSString * const GTC4ErrorCodeTimeout; /// Gagal menjalankan skrip Javascript. FOUNDATION_EXPORT NSString * const GTC4ErrorCodeEvaluatingJavascriptFail; /// Javascript mengembalikan error. FOUNDATION_EXPORT NSString * const GTC4ErrorCodeJavascriptError; /// Peringatan memori WebView. FOUNDATION_EXPORT NSString * const GTC4ErrorCodeWebViewMemoryWarning; /// Error tidak diketahui. FOUNDATION_EXPORT NSString * const GTC4ErrorCodeUnknown;
              
              /// Parameter tidak valid. Silakan periksa parameter input.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeInvalidParameter;
/// Operasi gagal. Periksa deskripsi detail.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeOperationFail;
/// Sumber daya hilang. Silakan periksa apakah file GTCaptcha4.bundle sudah lengkap.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeMissedResource;

/// Pengguna membatalkan verifikasi.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeUserDidCancel;

/// Gagal memuat file. Silakan periksa apakah file GTCaptcha4.bundle sudah diimpor lengkap atau sumber daya statis jarak jauh yang dikonfigurasi dapat diakses.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeLoadFileFailure;
/// Batas waktu loading.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeTimeout;
/// Gagal menjalankan skrip Javascript.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeEvaluatingJavascriptFail;
/// Javascript mengembalikan error.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeJavascriptError;
/// Peringatan memori WebView.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeWebViewMemoryWarning;

/// Error tidak diketahui.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeUnknown;

            
Tampilkan blok kode ini di jendela mengambang

code

Kode error. Dapat digunakan untuk pencocokan dan penanganan.

Deklarasi

@property (readonly, nonatomic, strong) NSString *code;
              
              @property (readonly, nonatomic, strong) NSString *code;

            
Tampilkan blok kode ini di jendela mengambang

Lihat juga

Lihat daftar kode error di atas.

msg

Pesan error. Dapat digunakan untuk tampilan antarmuka pengguna.

Deklarasi

@property (readonly, nonatomic, strong) NSString *msg;
              
              @property (readonly, nonatomic, strong) NSString *msg;

            
Tampilkan blok kode ini di jendela mengambang

desc

Deskripsi error detail. Digunakan untuk penelusuran masalah secara detail.

Deklarasi

@property (readonly, nonatomic, strong) NSDictionary *desc;
              
              @property (readonly, nonatomic, strong) NSDictionary *desc;

            
Tampilkan blok kode ini di jendela mengambang

Diskusi

Dapat digunakan untuk mendukung penanganan masalah operasional pada verifikasi pengguna.

icon
Hubungi Sales