NTP-58044 | Added Analytics event for composable cta action (#16095)
This commit is contained in:
@@ -8,8 +8,6 @@
|
||||
package com.naviapp.home.compose.home.utils
|
||||
|
||||
import com.navi.common.utils.TemporaryStorageHelper
|
||||
import com.navi.pay.common.model.view.NaviPayScreenType
|
||||
import com.navi.pay.utils.NAVI_PAY_CTA_URL_PREFIX
|
||||
import com.naviapp.home.compose.activity.HomePageActivity
|
||||
import com.naviapp.home.compose.listener.HomeScreenCallbackListener
|
||||
import com.naviapp.home.compose.model.CtaActionEvent
|
||||
@@ -47,12 +45,11 @@ fun handleCtaAction(
|
||||
}
|
||||
|
||||
is CtaActionEvent.ShowComposable -> {
|
||||
if (
|
||||
event.ctaData?.url ==
|
||||
"$NAVI_PAY_CTA_URL_PREFIX${NaviPayScreenType.NAVI_PAY_QR_SCANNER_SCREEN.name}"
|
||||
) {
|
||||
TemporaryStorageHelper.scanAndPayClickTime = System.currentTimeMillis()
|
||||
sharedVM.updateQRScreenVisibility(true)
|
||||
event.ctaData?.let {
|
||||
homeVM.handleComposableCtaData(
|
||||
naviClickAction = it,
|
||||
onShowComposableClicked = { sharedVM.updateQRScreenVisibility(true) },
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -30,6 +30,8 @@ import com.navi.common.utils.Constants.SCREEN_HASH
|
||||
import com.navi.common.utils.Constants.UPI_NUX_SCREEN
|
||||
import com.navi.common.utils.TemporaryStorageHelper
|
||||
import com.navi.naviwidgets.utils.CURRENT_VERSION_IN_STORE
|
||||
import com.navi.pay.common.model.view.NaviPayScreenType
|
||||
import com.navi.pay.utils.NAVI_PAY_CTA_URL_PREFIX
|
||||
import com.navi.uitron.model.data.UiTronAction
|
||||
import com.navi.uitron.model.data.UiTronActionData
|
||||
import com.naviapp.BuildConfig
|
||||
@@ -260,6 +262,21 @@ constructor(
|
||||
}
|
||||
}
|
||||
|
||||
fun handleComposableCtaData(naviClickAction: CtaData, onShowComposableClicked: () -> Unit) {
|
||||
naviClickAction.analyticsEventProperties?.let { eventProperties ->
|
||||
eventProperties.name?.let { eventName ->
|
||||
NaviTrackEvent.trackEventOnClickStream(eventName, eventProperties.properties)
|
||||
}
|
||||
}
|
||||
if (
|
||||
naviClickAction.url ==
|
||||
"$NAVI_PAY_CTA_URL_PREFIX${NaviPayScreenType.NAVI_PAY_QR_SCANNER_SCREEN.name}"
|
||||
) {
|
||||
TemporaryStorageHelper.scanAndPayClickTime = System.currentTimeMillis()
|
||||
onShowComposableClicked()
|
||||
}
|
||||
}
|
||||
|
||||
fun fetchNuxScreenDataForEligibleUsers(naeScreenName: String, navigateToNuxScreen: () -> Unit) {
|
||||
viewModelScope.safeLaunch((Dispatchers.IO)) {
|
||||
nuxHandler.fetchNuxScreenDataForEligibleUsers(
|
||||
|
||||
@@ -1854,6 +1854,7 @@ class NaviPayAnalytics private constructor() {
|
||||
streamState: PreviewView.StreamState,
|
||||
naviPaySessionAttributes: Map<String, String>,
|
||||
qrScreenStateLoadTime: Long,
|
||||
isNaviPayActivity: Boolean,
|
||||
) {
|
||||
NaviTrackEvent.trackEventOnClickStream(
|
||||
eventName = "NaviPay_QrScanner_CameraStateChange",
|
||||
@@ -1865,6 +1866,7 @@ class NaviPayAnalytics private constructor() {
|
||||
"naviPayCustomerStatusMap" to
|
||||
naviPaySessionAttributes["naviPayCustomerStatusMap"].orEmpty(),
|
||||
"newQrScreenStateLoadTime" to qrScreenStateLoadTime.toString(),
|
||||
"isNaviPayActivity" to isNaviPayActivity.toString(),
|
||||
),
|
||||
)
|
||||
}
|
||||
|
||||
@@ -809,6 +809,7 @@ private fun QrCamera(
|
||||
streamState = it,
|
||||
naviPaySessionAttributes = naviPaySessionAttributes,
|
||||
qrScreenStateLoadTime = qrScreenStateLoadTime,
|
||||
isNaviPayActivity = activity is NaviPayActivity,
|
||||
)
|
||||
if (it.name == "STREAMING") {
|
||||
TemporaryStorageHelper.scanAndPayClickTime = 0L
|
||||
|
||||
Reference in New Issue
Block a user