1.2.0 • Published 3 years ago

my-ekyc v1.2.0

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

my-ekyc

Create new module

For create new module follow: https://github.com/brodybits/create-react-native-module

Getting started

$ npm install my-ekyc --save

Mostly automatic installation

$ react-native link my-ekyc

Manual installation

iOS (Pending...)

  1. In XCode, in the project navigator, right click LibrariesAdd Files to [your project's name]
  2. Go to node_modulesmy-ekyc and add MyEkyc.xcodeproj
  3. In XCode, in the project navigator, select your project. Add libMyEkyc.a to your project's Build PhasesLink Binary With Libraries
  4. Run your project (Cmd+R)<

Android

  1. Open up android/app/src/main/java/[...]/MainActivity.java
  • Add import com.reactlibrary.MyEkycPackage; to the imports at the top of the file
  • Add new MyEkycPackage() to the list returned by the getPackages() method
  1. Append the following lines to android/settings.gradle:
    include ':my-ekyc'
    project(':my-ekyc').projectDir = new File(rootProject.projectDir, 	'../node_modules/my-ekyc/android')
  2. Insert the following lines inside the dependencies block in android/app/build.gradle:
      compile project(':my-ekyc')

Usage

import {
  Ekyc,
  CameraType,
  DocumentIdType,
  DocumentType,
  Language,
  VersionSDK,
} from 'my-ekyc';

Set up

Android permission

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

Set up in file app/build.gradle

android {
...
aaptOptions {
    noCompress "tflite"
    noCompress "lite"
    }
}

Function

  1. register

    componentDidMount() {
    Ekyc.register(accessToken, tokenId, tokenKey, (code, msg) => {
        console.log('register: code: ' + code + ', msg: ' + msg);
        });
        ...
    }
    KeyKiểu dữ liệu
    accessTokenString
    tokenIdString
    tokenKeyString
  2. orcFull

    Ekyc.orcFull(parameters, (code, msg) => {
        console.log('orcFull: code: ' + code + ', msg: ' + msg);
    });

    Parameter:

    const myObj = {
      DOCUMENT_TYPE: DocumentType.IDENTITY_CARD,
      SELECT_DOCUMENT: false,
      VERSION_SDK: VersionSDK.STANDARD,
      SHOW_RESULT: true,
      SHOW_DIALOG_SUPPORT: true,
      CAMERA_FOR_PORTRAIT: CameraType.FRONT,
      SHOW_SWITCH: false,
      CALL_ADD_FACE: false,
      LIVENESS_ADVANCED: false,
      CHECK_MASKED_FACE: false,
      CHECK_LIVENESS_CARD: false,
      LANGUAGE: Language.VIETNAMESE,
      CHALLENGE_CODE: 'challengeCode',
    };
    
    const parameters = JSON.stringify(myObj);
  3. ocrFront

    Ekyc.ocrFront(parameters, (code, msg) => {
        console.log('ocrFront: code: ' + code + ', msg: ' + msg);
    });

    Parameter:

    const myObj = {
      DOCUMENT_TYPE: DocumentType.IDENTITY_CARD,
      SELECT_DOCUMENT: false,
      SHOW_DIALOG_SUPPORT: true,
      CHECK_LIVENESS_CARD: false,
      LANGUAGE: Language.VIETNAMESE,
      CHALLENGE_CODE: 'challengeCode',
    };
    
    const parameters = JSON.stringify(myObj);
  4. ocrFrontAndBack

    Ekyc.ocrFrontAndBack(parameters, (code, msg) => {
        console.log('ocrFrontAndBack: code: ' + code + ', msg: ' + msg);
    });

    Parameter:

    const myObj = {
      DOCUMENT_TYPE: DocumentType.IDENTITY_CARD,
      SELECT_DOCUMENT: false,
      SHOW_RESULT: true,
      SHOW_DIALOG_SUPPORT: true,
      CHECK_LIVENESS_CARD: false,
      LANGUAGE: Language.VIETNAMESE,
      CHALLENGE_CODE: 'challengeCode',
    };
    
    const parameters = JSON.stringify(myObj);
  5. ocrSelfieCompareFace

    Ekyc.ocrSelfieCompareFace(parameters, (code, msg) => {
        console.log('ocrSelfieCompareFace: code: ' + code + ', msg: ' + msg);
    });

    Parameter:

    import {IDENTITY_CARD} from 'my-ekyc/src/CustomerInfo.js';
    ...
    const myObj = {
      DOCUMENT_TYPE: DocumentType.IDENTITY_CARD,
      VERSION_SDK: VersionSDK.STANDARD,
      SHOW_DIALOG_SUPPORT: true,
      CAMERA_FOR_PORTRAIT: CameraType.FRONT,
      SHOW_SWITCH: false,
      COMPARE_FLOW: true,
      CALL_ADD_FACE: true,
      LIVENESS_ADVANCED: true,
      CHECK_MASKED_FACE: true,
      HASH_IMAGE_COMPARE: 'HASH_IMAGE_COMPARE',
      CUSTOMER_INFO: new IDENTITY_CARD({
        card_id: 'card_id',
        full_name: 'full_name',
        dob: 'dob',
        gender: 'gender',
        address: 'address',
        home_town: 'home_town',
        nationality: 'nationality',
      }),
      LANGUAGE: Language.VIETNAMESE,
      CHALLENGE_CODE: 'challengeCode',
      UNIT_ADD_FACE: 'unitAddFace',
    };
    
    const parameters = JSON.stringify(myObj);
  6. ocrSelfieVerifyFace

    Ekyc.ocrSelfieVerifyFace(parameters, (code, msg) => {
        console.log('ocrSelfieVerifyFace: code: ' + code + ', msg: ' + msg);
    });

    Parameter:

    const myObj = {
      VERSION_SDK: VersionSDK.STANDARD,
      SHOW_DIALOG_SUPPORT: true,
      CAMERA_FOR_PORTRAIT: CameraType.FRONT,
      SHOW_SWITCH: false,
      VERIFY_FACE_FLOW: true,
      VERIFY_ID: 'verifyId',
      ID_TYPE: DocumentIdType.IDENTITY_CARD,
      LIVENESS_ADVANCED: true,
      CHECK_MASKED_FACE: true,
      LANGUAGE: Language.VIETNAMESE,
      CHALLENGE_CODE: 'challengeCode',
    };
    
    const parameters = JSON.stringify(myObj);

Receive result

    componentDidMount() {
    ...
    const eventEmitter = new NativeEventEmitter(NativeModules.Ekyc);
    this.eventListener = eventEmitter.addListener('EkycResult', event => {
        console.log(event);
        });
    }

Parameter attributes

KeyKiểu dữ liệuNhiệm vụ
DOCUMENT_TYPEDocumentTypeLoại giấy tờ bóc tách. Giá trị mặc định là CMT/CCCD : DocumentType.IDENTITY_CARD
SELECT_DOCUMENTBooleanCó hiển thị màn hình chọn loại giấy tờ hay không. Giá trị mặc định là false.
VERSION_SDKVersionSDKPhiên bản SDK mong muốn sử dụng. Giá trị mặc định là phiên bản tiêu chuẩn : VersionSDK.STANDARD
CAMERA_FOR_PORTRAITCameraTypeLoại camera trước hoặc sau ở màn hình chụp chân dung. Giá trị mặc định là camera trước : CameraType.FRONT
SHOW_RESULTBooleanCó hiển thị màn hình thông tin cá nhân hay không. Mặc định là false.
SHOW_SWITCHBooleanCó hiển thị nút xoay camera khi chụp chân dung không. Mặc định là false.
SHOW_DIALOG_SUPPORTBooleanCó hiển thị hướng dẫn sử dụng SDK hay không. Mặc định là true.
HIDE_TRADE_MARKBooleanTắt hiển thị logo trademark. Mặc định là false.
LANGUAGELanguageNgôn ngữ muốn thể hiện ở các dialog hướng dẫn. Mặc định làLanguage.VIETNAMESE
LIVENESS_STANDARDBooleanCó kiểm tra xác thực người thật giả ở bản tiêu chuẩn hay không. Mặc định là false.
LIVENESS_ADVANCEDBooleanCó kiểm tra xác thực người thật giả ở bản nâng cao hay không. Mặc định là false.
CHECK_MASKED_FACEBooleanCó kiểm tra che mặt hay không. Mặc định là false.
CHECK_LIVENESS_CARDBooleanCó kiểm tra xác thực giấy tờ thật hay không thật hay không. Mặc định là false.
VALIDATE_POSTCODEBooleanCó kiểm tra mã vùng ID trên giấy tờ hay không. Kiểm tra mã ID có bị giả mạo hay không. Áp dụng với (CMT/CCCD) Mặc định là false.
GET_POST_CODEArrayListCó lấy kết quả mã vùng từ thông tin bóc tách địa chỉ trên giấy tờ hay không. Nếu truyền vào rỗng hoặc không truyền vào thì mặc định là không lấy.
CALL_ADD_FACEBooleanCó thực hiện thêm thông tin cá nhân vào CSDL hay không. Mặc định là false
VERIFY_IDStringDữ liệu truyền vào để xác minh thông tin. Số CMT với loại giấy tờ CMT (tương tự với các loại giấy tờ khác)
ID_TYPEDocumentIdTypeLoại giấy tờ muốn xác minh thông tin. DocumentIdType.IDENTITY_CARD
CHALLENGE_CODEStringChữ ký số truyền vào đảm bảo thông tin gửi đi và kết quả trả về không bị sửa đổi.
USE_DIFFERENT_SERVERBooleanCó sử dụng server của khách hàng hay không. Mặc định là false
URL_UPLOAD_IMAGEStringĐường dẫn của khách hàng truyền vào để upload ảnh
URL_OCRStringĐường dẫn của khách hàng truyền vào bóc tách thông tin.
URL_COMPAREStringĐường dẫn của khách hàng truyền vào so sánh khuôn mặt và mặt trên giấy tờ.
URL_LIVENESSStringĐường dẫn của khách hàng truyền vào xác minh có phải người thật hay không
URL_CHECK_MASKED_FACEStringĐường dẫn của khách hàng truyền vào kiểm tra khách hàng có che mặt hay không
URL_MAPPING_ADDRESSStringĐường dẫn của khách hàng truyền vào bóc tách thông tin địa chỉ tương ứng với mã quận huyện tỉnh.
URL_OCR_FRONTStringĐường dẫn của khách hàng truyền vào bóc tách thông tin mặt trước giấy tờ.
URL_VERIFY_FACEStringĐường dẫn khách hàng truyền vào để xác minh thông tin đã đăng ký trước đó.
URL_ADD_FACEStringĐường dẫn khách hàng truyền vào để thực hiện đăng ký thông tin.
CUSTOMER_INFOObjectIDENTITY_CARD/ PASSPORT/ MILITARY_CARD/ DRIVER_LICENSE
HASH_IMAGE_COMPAREStringMã hash mặt trước của giấy tờ truyền vào để thực hiện so sánh khuôn mặt.
ADD_FACE_TITLEStringThông tin bổ sung theo từng khách hàng. VD: VIP
UNIT_ADD_FACEStringThông tin định danh tên theo từng khách hàng.
CHANGE_THEMEBooleanCó thực hiện thay đổi giao diện SDK hay không. Mặc định là false
LOGOStringTên logo của khách hàng truyền vào. Logo đặt trong thư mục asset của app.
HEIGHT_LOGOintChiều cao của logo truyền vào.
WIDTH_LOGOintChiều rộng của logo truyền vào.
CHANGE_COLORintMã màu thay đổi màu sắc của button trong SDK
CHANGE_COLOR_HELPintMã màu thay đổi màu sắc của hướng dẫn trong SDK
CHANGE_TEXT_COLORintMã màu thay đổi màu sắc của text trong SDK
COMPARE_FLOWBooleanCó thực hiện so sánh khuôn mặt hay không.
CALL_ADD_FACEBooleanCó thực hiện đăng ký khuôn mặt hay không. Mặc đinh là false.
VERIFY_FACE_FLOWBooleanCó thực hiện xác minh khuôn mặt hay không.

Object

  1. IDENTITY_CARD(card_id, full_name, dob, gender, address, nationality, hometown)
  2. PASSPORT(card_id, passpord_id, full_name, dob, gender, nationality, hometown)
  3. MILITARY_CARD(military_id, full_name, dob, gender, nationality, hometown)
  4. DRIVER_LICENSE(driver_license_id, full_name, dob, gender, nationality, hometown)

Constant paramters

  1. DocumentType
    • IDENTITY_CARD
    • PASSPORT
    • MILITARY_CARD
    • DRIVER_LICENSE
  2. VersionSDK
    • STANDARD
    • ADVANCED
  3. CameraType
    • FRONT
    • BACK
  4. Language
    • VIETNAMESE
    • ENGLISH
  5. DocumentIdType
    • IDENTITY_CARD
    • PASSPORT
    • DRIVER_LICENSE
    • MILITARY_CARD
    • POLICE_CARD
1.2.0

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.9

3 years ago

1.0.8

3 years ago

1.1.2

3 years ago

1.0.11

3 years ago

1.0.10

3 years ago

1.0.12

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago