TP-12345 | Vkyc Multiple View Issue Fix (#10551)
Co-authored-by: Shivam Goyal <shivam.goyal@navi.com>
This commit is contained in:
@@ -29,6 +29,7 @@ import com.navi.ap.utils.constants.FAILURE_CAP
|
||||
import com.navi.ap.utils.constants.HYPERVERGE_SELFIE_ERROR
|
||||
import com.navi.ap.utils.constants.HYPERVERGE_SELFIE_SUCCESS
|
||||
import com.navi.ap.utils.constants.HYPERVERGE_START_ERROR
|
||||
import com.navi.ap.utils.constants.IMAGE_URI
|
||||
import com.navi.ap.utils.constants.RESULT
|
||||
import com.navi.ap.utils.logApEvent
|
||||
import com.navi.base.sharedpref.PreferenceManager
|
||||
@@ -76,7 +77,7 @@ class PLHyperVergeSelfieInitStrategy : IHypervergeSelfieCapture() {
|
||||
uuid: String?,
|
||||
listener: HyperVergeSelfieCaptureListener?
|
||||
) {
|
||||
logApEvent(eventName = HYPERVERGE_SELFIE_SUCCESS)
|
||||
logApEvent(Pair(IMAGE_URI, data.imageURI), eventName = HYPERVERGE_SELFIE_SUCCESS)
|
||||
listener?.onSelfieSuccess(
|
||||
hyperVergeSelfieUploadRequestData =
|
||||
createSelfieUploadRequestData(
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
/*
|
||||
*
|
||||
* * Copyright © 2024 by Navi Technologies Limited
|
||||
* * All rights reserved. Strictly confidential
|
||||
*
|
||||
*/
|
||||
|
||||
package com.navi.ap.di
|
||||
|
||||
import javax.inject.Qualifier
|
||||
|
||||
@Qualifier @Retention(AnnotationRetention.BINARY) annotation class HmsSDK
|
||||
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
*
|
||||
* * Copyright © 2024 by Navi Technologies Limited
|
||||
* * All rights reserved. Strictly confidential
|
||||
*
|
||||
*/
|
||||
|
||||
package com.navi.ap.di
|
||||
|
||||
import android.content.Context
|
||||
import dagger.Module
|
||||
import dagger.Provides
|
||||
import dagger.hilt.InstallIn
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import dagger.hilt.components.SingletonComponent
|
||||
import javax.inject.Singleton
|
||||
import live.hms.video.sdk.HMSSDK
|
||||
|
||||
@Module
|
||||
@InstallIn(SingletonComponent::class)
|
||||
class SDKModule {
|
||||
|
||||
@Singleton
|
||||
@HmsSDK
|
||||
@Provides
|
||||
fun providesHmsSDK(@ApplicationContext applicationContext: Context): HMSSDK {
|
||||
return HMSSDK.Builder(applicationContext).build()
|
||||
}
|
||||
}
|
||||
@@ -281,6 +281,7 @@ private fun handleVKYAgentAssignedResponseState(
|
||||
eventName = VKYC_AGENT_POLLING_RESPONSE
|
||||
)
|
||||
if (vkycAgentAssignedResponse.data?.status == AGENT_JOINED) {
|
||||
viewModel.periodicTaskScheduler?.stopTask()
|
||||
val hmsSdkSettingsData =
|
||||
viewModel.handle.get<VKYCSettingsData>(HMS_SDK_SETTINGS_DATA)
|
||||
val formattedLoanAmount = viewModel.handle.get<String>(FORMATTED_LOAN_AMOUNT)
|
||||
|
||||
@@ -66,3 +66,4 @@ const val CANCEL_VKYC_CALL = "CANCEL_VKYC_CALL"
|
||||
const val VKYC_AGENT_JOINED = "VKYC_AGENT_JOINED"
|
||||
const val COROUTINE_JOB_ON_COMPLETION_CALLED = "COROUTINE_JOB_ON_COMPLETION_CALLED"
|
||||
const val FORMATTED_LOAN_AMOUNT = "FORMATTED_LOAN_AMOUNT"
|
||||
const val VKYC_VIDEO_CALLING_SCREEN_VIEWMODEL = "VKYC_VIDEO_CALLING_SCREEN_VIEWMODEL"
|
||||
|
||||
@@ -18,6 +18,7 @@ import com.navi.ap.common.lambda.verticals.personalloan.PLLambdaRepository
|
||||
import com.navi.ap.common.models.NetworkResultState
|
||||
import com.navi.ap.common.usecase.APApiResponseUseCase
|
||||
import com.navi.ap.common.usecase.UpdateShouldPollStrategyUseCase
|
||||
import com.navi.ap.di.HmsSDK
|
||||
import com.navi.ap.screens.genericscreen.vm.ApGenericScreenVM
|
||||
import com.navi.ap.screens.vkyc.utils.CUSTOMER_EXECUTIVE_IMAGE
|
||||
import com.navi.ap.screens.vkyc.utils.CUSTOMER_EXECUTIVE_IMAGE_WITH_QUOTES
|
||||
@@ -40,6 +41,8 @@ import com.navi.ap.screens.vkyc.utils.VKYC_CAMERA_FLIP_EVENT
|
||||
import com.navi.ap.screens.vkyc.utils.VKYC_EVENT_TYPE
|
||||
import com.navi.ap.screens.vkyc.utils.VKYC_NOTIFICATION_EVENT
|
||||
import com.navi.ap.screens.vkyc.utils.VKYC_SDK_CLOSED
|
||||
import com.navi.ap.screens.vkyc.utils.VKYC_VIDEO_CALLING_SCREEN
|
||||
import com.navi.ap.screens.vkyc.utils.VKYC_VIDEO_CALLING_SCREEN_VIEWMODEL
|
||||
import com.navi.ap.screens.vkyc.utils.VOLUME_PERMISSIBLE
|
||||
import com.navi.ap.screens.vkyc.utils.eventName
|
||||
import com.navi.ap.screens.vkyc.utils.eventType
|
||||
@@ -48,6 +51,7 @@ import com.navi.ap.screens.vkyc.utils.referenceId
|
||||
import com.navi.ap.screens.vkyc.utils.timestamp
|
||||
import com.navi.ap.utils.EventUtil
|
||||
import com.navi.ap.utils.constants.ImageType
|
||||
import com.navi.ap.utils.constants.SCREEN_NAME
|
||||
import com.navi.ap.utils.logApEvent
|
||||
import com.navi.base.utils.isNotNull
|
||||
import com.navi.base.utils.isNull
|
||||
@@ -102,6 +106,7 @@ constructor(
|
||||
responseUseCase: APApiResponseUseCase,
|
||||
shouldPollStrategyUseCase: UpdateShouldPollStrategyUseCase,
|
||||
eventUtil: EventUtil,
|
||||
@HmsSDK private val hmsSdk: HMSSDK
|
||||
) :
|
||||
ApGenericScreenVM(
|
||||
repository,
|
||||
@@ -124,8 +129,6 @@ constructor(
|
||||
MutableStateFlow<NetworkResultState<VkycCancelStatus>>(NetworkResultState.Nothing())
|
||||
val cancelVKYCCall = _cancelVKYCCall.asStateFlow()
|
||||
|
||||
private val hmsSdk = HMSSDK.Builder(applicationContext).build()
|
||||
|
||||
private var previewPutUrl: String? = null
|
||||
private var vKycReferenceId: String? = null
|
||||
private lateinit var screenName: String
|
||||
@@ -146,6 +149,10 @@ constructor(
|
||||
ImageType.find(imageType)?.let { sendVkycFailedEvent(it) }
|
||||
}
|
||||
}
|
||||
logApEvent(
|
||||
Pair(SCREEN_NAME, VKYC_VIDEO_CALLING_SCREEN),
|
||||
eventName = VKYC_VIDEO_CALLING_SCREEN_VIEWMODEL
|
||||
)
|
||||
setVideoTrackSettings()
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user