mindsdigital / minds-sdk-mobile-ios

MIT License
1 stars 0 forks source link

Padronização objeto de retorno da SDK para o aplicativo host #13

Open divino-minds opened 2 years ago

divino-minds commented 2 years ago

O objeto padrão de retorno da SDK para o aplicativo host deve conter os seguintes atributos(Atributos sem valor deveram ser retornados no objeto com valor null ou empty associado, variando o valor empty de tipo para tipo do atributo):

@SerializedName("id") val id: Int? = null, @SerializedName("success") val success: Boolean? = null, @SerializedName("message") val message: String? = null, @SerializedName("external_id") val externalId: String? = null, @SerializedName("status") val status: String? = null, @SerializedName("cpf") val cpf: String? = null, @SerializedName("verification_id") val verificationId: String? = null, @SerializedName("action") val action: String? = null, @SerializedName("whitelisted") val whitelisted: Boolean? = null, @SerializedName("fraud_risk") val fraudRisk: String? = null, @SerializedName("enrollment_external_id") val enrollmentExternalId: String? = null, @SerializedName("match_prediction") val matchPrediction: String? = null, @SerializedName("confidence") val confidence: String? = null, @SerializedName("number_of_retries") val numberOfRetries: Int? = 0 -> Não vem da API, fazer o contador local


azepechouka-minds commented 2 years ago

Corrigir

guilhermeluisdomingues commented 2 years ago

Caso de sucesso via simulador:

BiometricResponse(id: Optional(3731226),
cpf: Optional("72502267030"),
verificationID: Optional(3731226),
action: Optional("enrollment"),
externalId: Optional("3731226"),
status: Optional("ok"),
createdAt: Optional("2022-07-03T18:11:04.837000"),
success: true,
whitelisted: nil,
fraudRisk: Optional("low"),
enrollmentExternalId: nil,
matchPrediction: nil,
confidence: nil,
message: Optional("Request for enrollment was successfully processed."))
azepechouka-minds commented 2 years ago

Resumo: Ao realizar o processo de enrollment e dando um erro, ao clicar em tentar mais tarde já na primeira vez que o erro acontece o status ainda não é sobrescrito com “do_biometrics_later”, ele apenas está sobrescrevendo quando é clicado em tentar novamente primeiro e na sequencia em tentar mais tarde

Passos para reproduzir

  1. Iniciar a SDK
  2. Realizar o fluxo de enrollment gravando o áudio com tempo insuficiente para causar um erro
  3. Clicar em enviar gravações
  4. Clicar em tentar mais tarde

Resultado esperado: O status ser sobrescrito para “do_biometrics_later” Resultado obtido: É retornado o status de “invalid_length” Evidencia:

Video

guilhermeluisdomingues commented 2 years ago

A correção está nesse PR: https://github.com/mindsdigital/minds-sdk-mobile-ios/pull/23