From 64a9ccb952568eef0cfa4712c4df233c2c9a50f6 Mon Sep 17 00:00:00 2001 From: rahulsainani Date: Fri, 13 Jan 2023 14:53:24 +0000 Subject: [PATCH] [fenix] Bug 1810115 - Add telemetry for notification per permission prompt --- mobile/android/fenix/app/metrics.yaml | 68 ++++++++++++++++++++++ .../view/NotificationPermissionDialogScreen.kt | 19 ++++-- 2 files changed, 83 insertions(+), 4 deletions(-) diff --git a/mobile/android/fenix/app/metrics.yaml b/mobile/android/fenix/app/metrics.yaml index 141aa072dd19..08e349c4e468 100644 --- a/mobile/android/fenix/app/metrics.yaml +++ b/mobile/android/fenix/app/metrics.yaml @@ -871,6 +871,74 @@ onboarding: metadata: tags: - Onboarding + notif_ppp_impression: + type: event + description: | + Notification pre permission prompt was shown to the user. + bugs: + - https://bugzilla.mozilla.org/show_bug.cgi?id=1810115 + data_reviews: + - https://github.com/mozilla-mobile/fenix/pull/28529 + data_sensitivity: + - interaction + notification_emails: + - android-probes@mozilla.com + expires: 124 + metadata: + tags: + - Notifications + - Onboarding + notif_ppp_close_click: + type: event + description: | + User clicked the close button on the notification pre permission prompt. + bugs: + - https://bugzilla.mozilla.org/show_bug.cgi?id=1810115 + data_reviews: + - https://github.com/mozilla-mobile/fenix/pull/28529 + data_sensitivity: + - interaction + notification_emails: + - android-probes@mozilla.com + expires: 124 + metadata: + tags: + - Notifications + - Onboarding + notif_ppp_positive_btn_click: + type: event + description: | + User clicked the positive button on notification pre permission prompt. + bugs: + - https://bugzilla.mozilla.org/show_bug.cgi?id=1810115 + data_reviews: + - https://github.com/mozilla-mobile/fenix/pull/28529 + data_sensitivity: + - interaction + notification_emails: + - android-probes@mozilla.com + expires: 124 + metadata: + tags: + - Notifications + - Onboarding + notif_ppp_negative_btn_click: + type: event + description: | + User clicked the negative button on notification pre permission prompt. + bugs: + - https://bugzilla.mozilla.org/show_bug.cgi?id=1810115 + data_reviews: + - https://github.com/mozilla-mobile/fenix/pull/28529 + data_sensitivity: + - interaction + notification_emails: + - android-probes@mozilla.com + expires: 124 + metadata: + tags: + - Notifications + - Onboarding search_shortcuts: selected: diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/NotificationPermissionDialogScreen.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/NotificationPermissionDialogScreen.kt index b947fd3e8369..e39a535be3a9 100644 --- a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/NotificationPermissionDialogScreen.kt +++ b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/NotificationPermissionDialogScreen.kt @@ -32,6 +32,8 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import com.google.accompanist.insets.navigationBarsPadding import com.google.accompanist.insets.statusBarsPadding +import mozilla.components.service.glean.private.NoExtras +import org.mozilla.fenix.GleanMetrics.Onboarding import org.mozilla.fenix.R import org.mozilla.fenix.compose.button.PrimaryButton import org.mozilla.fenix.compose.button.SecondaryButton @@ -69,9 +71,18 @@ fun NotificationPermissionDialogScreen( ) { NotificationPermissionContent( notificationPermissionPageState = NotificationPageState, - onDismiss = onDismiss, - onPrimaryButtonClick = grantNotificationPermission, - onSecondaryButtonClick = onDismiss, + onDismiss = { + onDismiss() + Onboarding.notifPppCloseClick.record(NoExtras()) + }, + onPrimaryButtonClick = { + grantNotificationPermission() + Onboarding.notifPppPositiveBtnClick.record(NoExtras()) + }, + onSecondaryButtonClick = { + onDismiss() + Onboarding.notifPppNegativeBtnClick.record(NoExtras()) + }, ) } @@ -205,7 +216,7 @@ private val NotificationPageState = NotificationPermissionPageState( description = R.string.onboarding_home_enable_notifications_description, primaryButtonText = R.string.onboarding_home_enable_notifications_positive_button, secondaryButtonText = R.string.onboarding_home_enable_notifications_negative_button, - onRecordImpressionEvent = {}, + onRecordImpressionEvent = { Onboarding.notifPppImpression.record(NoExtras()) }, ) private const val IMAGE_HEIGHT_RATIO = 0.4f -- 2.11.4.GIT