NTP-66822 | Adding downtime events for digitap vendor (#16421)
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
*
|
||||
* * Copyright © 2022-2024 by Navi Technologies Limited
|
||||
* * Copyright © 2022-2025 by Navi Technologies Limited
|
||||
* * All rights reserved. Strictly confidential
|
||||
*
|
||||
*/
|
||||
@@ -30,3 +30,4 @@ const val VENDOR_GI_PAYU = "gi_payu"
|
||||
const val VENDOR_GI_JUSPAY = "gi_juspay"
|
||||
const val VENDOR_GI_RAZORPAY = "gi_razorpay"
|
||||
const val VENDOR_MEDIBUDDY = "gi_medibuddy"
|
||||
const val VENDOR_GI_DIGITAP = "gi_digitap"
|
||||
|
||||
@@ -25,6 +25,7 @@ import com.navi.base.utils.SUCCESS
|
||||
import com.navi.base.utils.isNotNull
|
||||
import com.navi.common.ResponseState
|
||||
import com.navi.common.constants.GI
|
||||
import com.navi.common.constants.VENDOR_GI_DIGITAP
|
||||
import com.navi.common.network.models.ErrorMessage
|
||||
import com.navi.insurance.R
|
||||
import com.navi.insurance.analytics.InsuranceAnalyticsConstants
|
||||
@@ -52,6 +53,7 @@ import com.navi.insurance.util.Constants
|
||||
import com.navi.insurance.util.JOURNEY_KEY_EXTRA
|
||||
import com.navi.insurance.util.QUERY_PARAMS
|
||||
import com.navi.insurance.util.TRUE
|
||||
import com.navi.insurance.util.logGiAppErrorEvent
|
||||
import com.navi.naviwidgets.extensions.addOnMultipleClicksHandler
|
||||
import com.navi.naviwidgets.extensions.getJsonObject
|
||||
import com.navi.naviwidgets.extensions.setTextFieldData
|
||||
@@ -428,6 +430,17 @@ class GiAadhaarVerificationFragment : GiBaseFragment(), OKYCListener {
|
||||
Pair("txnId", txnId),
|
||||
)
|
||||
)
|
||||
if (containsKnownUIDAIError(error.errorMessage)) {
|
||||
logGiAppErrorEvent(
|
||||
screen = screenName,
|
||||
errorCode = error.errorCode.toString(),
|
||||
errorTitle = error.errorMessage.toString(),
|
||||
errorDes = error.message,
|
||||
isSourceExternal = true,
|
||||
vendor = VENDOR_GI_DIGITAP,
|
||||
exception = error.stackTraceToString(),
|
||||
)
|
||||
}
|
||||
aadhaarVerificationData =
|
||||
AadhaarVerificationData(
|
||||
error.errorCode,
|
||||
@@ -465,6 +478,15 @@ class GiAadhaarVerificationFragment : GiBaseFragment(), OKYCListener {
|
||||
}
|
||||
}
|
||||
|
||||
private fun containsKnownUIDAIError(errorMessage: String): Boolean {
|
||||
val cleaned = errorMessage.trim()
|
||||
return KNOWN_UIDAI_ERROR_MESSAGES.any { known ->
|
||||
known.equals(cleaned, ignoreCase = true) ||
|
||||
known.contains(cleaned, ignoreCase = true) ||
|
||||
cleaned.contains(known, ignoreCase = true)
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
const val DEFAULT_POLLING_DURATION = 3000L
|
||||
const val DEFAULT_TIMEOUT_DURATION = 10000L
|
||||
@@ -475,5 +497,13 @@ class GiAadhaarVerificationFragment : GiBaseFragment(), OKYCListener {
|
||||
private const val OKYC_FORM_ENABLED_KEY = "okycFormEnabled"
|
||||
private const val IS_NAVI_ONE_PROFILE_ENABLED = "isNaviOneProfileEnabled"
|
||||
private const val TRANSITION_KEY = "transition"
|
||||
private val KNOWN_UIDAI_ERROR_MESSAGES =
|
||||
listOf(
|
||||
"Error from UIDAI - Error while processing the request. Please retry.",
|
||||
"Authentication Failed",
|
||||
"Error from UIDAI - required fields are missing",
|
||||
"Something went wrong. Please Try after some time",
|
||||
"Error from UIDAI - Unable to resolve host \"svc.digitap.ai\": No address associated with hostname",
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user