DigitalID 1.1.10

DigitalID 1.1.10

Maintained by Almas Adilbek, Almas Adilbek, Izabek.



 
Depends on:
FMDB~> 2.0
Reachability~> 3.0
Valet~> 3.0
SCrypto~> 2.0
libPhoneNumber-iOS~> 0.0
 

DigitalID 1.1.10

  • By
  • DigitalID

Digital ID SDK for iOS

Установка

Cocoapods

# Digital ID SDK
pod 'DigitalID'

# В Podfile добавьте зависимости:
pod 'FMDB', '~> 2.0'
pod 'Reachability', '~> 3.0'
pod 'Valet', '~> 3.0'
pod 'SCrypto', '~> 2.0'
pod 'libPhoneNumber-iOS', '~> 0.0'

Использование SDK

Импортируйте модуль:

Swift

import DigitalID

Objective-C

#import <DigitalID/DigitalID.h>

Методы

Инициализация SDK

DigitalID.initialize(initializeWithOptions: DigitalIDOptions, styles: DigitalIDStyles?)
initializeWithOptions: DigitalIDOptions // опции сдк
clientId: String // идентификатор клиента
userAgreement: String // ссылка на файл пользовательского соглашения вашей компании

styles: DigitalIDStyles // (опциональный) Стили интерфейса
// DigitalIDStyles параметры:
primaryColor: UIColor // primary цвет
secondaryColor: UIColor // secondary цвет
warningColor: UIColor // warn цвет

Для подтверждения номера телефона необходимо использовать контроллер

ConfirmViewController(phoneConfig: PhoneConfig?)
// PhoneConfig (опциональный)
phone: String // номер телефона
countryCode: CountryCode // код страны
isInputFieldReadOnly: Bool // возможность редактирования номера телефона пользователем

Устанавливаем делегат ConfirmPhoneDelegate и реализуем метод

func digitalIDConfirmPhoneResult(_ result: ConfirmPhoneResult)
// result: ConfirmPhoneResult
authorizationInProcessToken: String? // токен авторизации (для метода startGetDocument)
phone: String? // подтвержденный номер телефона 
userId: Int? // идентификатор пользователя в системе Digital ID
errorType: DigitalIDError? // тип ошибки

Для получения доступа к документу пользователя необходимо использовать контроллер

GetDocumentViewController(authInProcessToken: String, documentType: DocumentType)
authInProcessToken: String // authorizationInProcessToken, из объекта ConfirmPhoneResult полученного при подтверждении номера телефона

documentType: DocumentType // тип запрашиваемого документа: kIdCard или kPassport

Устанавливаем делегат DigitalIDGetDocumentDelegate и реализуем метод

func digitalIDGetDocumentResult(_ result: GetDocumentResult)
// GetDocumentResult
code: String? // код для получения информации о документе
errorType: DigitalIDError? // тип ошибки

DigitalIDError

kNone // нет ошибки
kErrorNoConnection // проблемы с интернет-соединением
kErrorUnauthenticated // истекла авторизационная сессия пользователя
kErrorInvalidDocumentType // передан неизвестный тип документа
kErrorDocumentUnderModeration // документ отправлен на модерацию
kErrorOauth // ошибка, связанная с oauth процессом
kErrorInternalError // серверная ошибка
kUserCanceled // пользователь закрыл экран Digital ID SDK
kUserBlocked // пользователь заблокирован