Skip to content
This repository has been archived by the owner on Feb 20, 2023. It is now read-only.

[Meta] Integration of Leanplum Events, Attributes & Deeplinks #4421

Closed
24 of 29 tasks
lwa-moz opened this issue Jul 31, 2019 · 15 comments
Closed
24 of 29 tasks

[Meta] Integration of Leanplum Events, Attributes & Deeplinks #4421

lwa-moz opened this issue Jul 31, 2019 · 15 comments
Assignees
Labels
E8 Estimation Point: about 8 days eng:qa:verified QA Verified Feature:Telemetry
Milestone

Comments

@lwa-moz
Copy link

lwa-moz commented Jul 31, 2019

Why/User Benefit/User Problem

As a Marketer I want to be able to educated users about useful features or services that are relevant to the user at their specific stage of using the product. I want to make sure I am not providing redundant or irrelevant information so as to ensure I am providing value to the user and not annoying them.

I also want to ensure that when a user is being told about a feature/service, they can easily access the feature/service through a deeplink.

What/Requirements

Q3 Requirements Documented here:
https://docs.google.com/spreadsheets/d/1vp3Km7qyyAvkDiUQ3b4lRQUFyA7DQixR8xP1VadA4iw/edit#gid=1742911874

These requirements are repeated here,
Top Event Priorities

  • FxA Sign-up/Sign-in Event
  • Cleared Private Data
  • User has signed into Sync
  • User creates a new Collection
  • User opens an existing Collection
  • Saved Login and Password (Sawyer: we don't have this in Fenix.)

Top Attribute Priorities

Top Deeplink Priorities

  • Link to Set Default Browser settings
  • Link to sync signup/sign in
  • Link to default search engine settings
  • Link to Collections (Sawyer: this is covered by a "home screen" link.)
  • Link to main preferences
  • Link to privacy preferences (Sawyer: we don't have this in Fenix as a separate setting)
  • Link to notifications preferences (Sawyer: we don't have this in Fenix.)
  • Link to accessibility preferences
  • Link to a general setting (Sawyer: we don't have this in Fenix.)
  • Link into Homepage settings (Sawyer: we don't have this in Fenix.)
  • Link to private browsing (Sawyer: do we just want this to enable private browsing?)
  • Link to clear all private data
  • Link to web page

Acceptance Criteria (how do I know when I’m done?)

Events and attributes have been integrated and validated by Marketing QA.

FOR QA: to test the deep links use:
adb shell
am start -W -a android.intent.action.VIEW -d "fenix://private_browsing" where the deep link follows the -d flag.

┆Issue is synchronized with this Jira Task

@lwa-moz lwa-moz added the feature request 🌟 New functionality and improvements label Jul 31, 2019
@vesta0 vesta0 changed the title Integration of Leanplum Events, Attributes & Deeplinks [Meta] Integration of Leanplum Events, Attributes & Deeplinks Aug 1, 2019
@vesta0 vesta0 added Feature:Telemetry must and removed feature request 🌟 New functionality and improvements labels Aug 1, 2019
@vesta0
Copy link
Collaborator

vesta0 commented Aug 1, 2019

@boek would you please take a look at #3060 and #3059 and close them if they are already covered here?

@liuche
Copy link
Contributor

liuche commented Aug 2, 2019

Some of these LeanPlum things are already in-product - check them off and don't duplicate them?

@liuche liuche added the E8 Estimation Point: about 8 days label Aug 2, 2019
@boek boek added this to the v1.3 milestone Aug 2, 2019
@sblatz sblatz self-assigned this Aug 7, 2019
@lwa-moz
Copy link
Author

lwa-moz commented Aug 7, 2019

FxA Signup Event Bug (in Fennec):
https://bugzilla.mozilla.org/show_bug.cgi?id=1568605

Leanplum Documentation for:
Events - https://docs.leanplum.com/reference#events
Attributes - https://docs.leanplum.com/reference#user-attributes

@sblatz
Copy link
Contributor

sblatz commented Aug 8, 2019

@jyeontaek will pick up the search widget portion 😄

sblatz added a commit to sblatz/fenix that referenced this issue Aug 8, 2019
sblatz added a commit to sblatz/fenix that referenced this issue Aug 8, 2019
@lnicola
Copy link

lnicola commented Aug 9, 2019

Will it be possible to disable Leanplum at all? If yes, will there be a separate toggle from Telemetry like in Fennec (FHR vs. Telemetry)?

@sblatz
Copy link
Contributor

sblatz commented Aug 9, 2019

@lnicola Hey thanks for asking! You can disable all telemetry data with the data collection toggle: Settings > Data collection > Usage and technical data OFF

@lnicola
Copy link

lnicola commented Aug 9, 2019

@sblatz thank you, but in Fennec I keep Telemetry enabled, but disable FHR to avoid sending data to third parties and because I'm not interested in marketing push notifications and the like.

I leave Telemetry on because I'm fine sending technical data, although I realize that -- at least in Fenix -- it also contains a lot of interaction data.

@sblatz
Copy link
Contributor

sblatz commented Aug 9, 2019

@lnicola Ah, that's a great point! Appreciate your feedback. I've filed #4663 to address this and will raise it with product ASAP 😄

@vesta0
Copy link
Collaborator

vesta0 commented Aug 12, 2019

Historically in Fennec, telemetry collects browser and feature usage data (including attributes for 3rd party apps such as LeanPlum), whereas Firefox Health Report collects stability and performance information about the browser to help us improve performance and fix problems.

@lnicola
Copy link

lnicola commented Aug 12, 2019

https://firefox-source-docs.mozilla.org/mobile/android/fennec/mma.html says

Who will have Leanplum enabled?
If the user has “Health Report” setting enabled.

Is that incorrect or incomplete? If so, that's pretty bad.

@lwa-moz
Copy link
Author

lwa-moz commented Aug 12, 2019

Strongly in support of the functionality mentioned in #4663, and @lnicola 's related comment that Health Report and Leanplum data should be kept separate.

We want to give users full transparency and control over what data is collected, and also allow them to turn off notifications. We shouldn't conflate the data collected to send contextual notifications about the product with data collected to ensure the product works correctly.

jyeontaek added a commit to jyeontaek/fenix that referenced this issue Aug 12, 2019
sblatz added a commit to sblatz/fenix that referenced this issue Aug 12, 2019
sblatz added a commit to sblatz/fenix that referenced this issue Aug 14, 2019
sblatz added a commit to sblatz/fenix that referenced this issue Aug 14, 2019
jyeontaek added a commit to jyeontaek/fenix that referenced this issue Aug 14, 2019
sblatz added a commit to sblatz/fenix that referenced this issue Aug 14, 2019
sblatz added a commit to sblatz/fenix that referenced this issue Aug 14, 2019
boek pushed a commit that referenced this issue Aug 14, 2019
* For #4421: Adds Leanplum events and attributes

* For #4421: Adds Leanplum deep links
ekager pushed a commit that referenced this issue Aug 14, 2019
* For #4421: Adds Leanplum events and attributes

* For #4421: Adds Leanplum deep links
@sblatz sblatz added the eng:qa:needed QA Needed label Aug 14, 2019
@sblatz
Copy link
Contributor

sblatz commented Aug 14, 2019

QA: can you please verify the items that have checkmarks? :)

@AndiAJ AndiAJ removed the eng:qa:needed QA Needed label Aug 19, 2019
@AndiAJ
Copy link
Collaborator

AndiAJ commented Aug 19, 2019

Hi, just finished testing on Fenix 1.3.0-rc.3 from 19/8.

Please review the following:

1. Top Event Priorities

  • FxA Sign-up ❓
    Ping c9c97e0c-df0f-437d-a22f-616b673f012b

  • Sign out
    Ping e5c6d994-f0e3-4afe-9ee1-0981e25b7aeb ✔️

  • User creates a new Collection ❓
    Ping 889c649e-f4ee-423d-aeba-4dea29cca73a

  • User opens an existing Collection ✔️
    Ping 80d9ca8c-ff1e-45c6-ad55-fd69555c0dc9

  • Cleared Private Data ❌

Logcat
Glean dashboard

Remarks

FxA Sign-up ❓ - as per #3060 when signing up/signing in rename_button from the collections sections gets triggered

User creates a new Collection ❓ - Not sure, I had 4 open tabs and added 2 tabs to a collection, meaning that I should have 2 tabs_open and 2 tabs_selected.

This is how it got generated:
"timestamp": 7233,
"category": "collections",
"name": "saved",
"extra": {
"tabs_open": "6",
"tabs_selected": "2"

No ping was created for Cleared Private Data ❌

2.Top Attribute Priorities

  • Signed In Sync ❓
    Ping 6aa16a9b-bc14-4809-826c-de8f380553ea

  • Sync items ❓

History
Ping 908d9601-c895-4162-9d29-a40eeff37c87
Ping 53fc8e64-952a-4457-98f2-21d729e1973e

Bookmarks
Ping 8f6aeefb-8524-41cb-ab4b-9f231d1f4e1d
Ping 1ce50e23-5a78-4171-9b66-46530d8d6282

  • Signed out of Sync ✔️
    Ping 4f1e1618-e311-4f58-90dc-6dd4cacd927a

  • Fenix as default browser Ping c9f9a6f9-5d54-4ba6-b870-bda1e026a0f6✔️
    •Fennec Installed
    •Focus Installed
    •Klar Installed

Logcat
Glean dashboard

  • Focus as default browser Ping c00b9d07-8f1f-4749-b095-24902b51745a ✔️
    •Fennec Installed
    •Focus Installed
    •Klar Installed

Logcat
Glean dashboard

  • Fennec as default browser ✔️
    •Fennec Installed
    •Focus Installed
    •Klar Installed

Widget ✔️
•Tap on Widget Fenix icon
Ping f41750e7-84ab-45ca-9d55-44d8137f0364
•Tap on "Search the web" from the widget
Ping 2e7a45e2-eefc-4080-a2a4-041607ae6405
•Tap on the microphone from the widget
Ping 3013f8ae-da32-4214-9f80-ee3feaeccfe7

Logcat
Glean dashboard

Remarks

Signed In Sync ❓ - the rename_button from the collections sections gets triggered
Sync items ❓ - Not sure, but as mentioned in #3060 after after signing in, the sync starts automatically, and it generates 2x bookmarks_sync & 2x history_sync afterwards 1 for each.

3.Top Deeplink Priorities

Link to Set Default Browser settings ✔️
adb shell am start -W -a android.intent.action.VIEW -d "fenix://make_default_browser"

Link to sync signup/sign in ✔️
adb shell am start -W -a android.intent.action.VIEW -d "fenix://turn_on_sync"

Link to default search engine settings ✔️
adb shell am start -W -a android.intent.action.VIEW -d "fenix://settings_search_engine"

Link to Collections ✔️ (Sawyer: this is covered by a "home screen" link.)
adb shell am start -W -a android.intent.action.VIEW -d "fenix://home"

Link to main preferences ✔️
adb shell am start -W -a android.intent.action.VIEW -d "fenix://settings"

Link to accessibility preferences ✔️
adb shell am start -W -a android.intent.action.VIEW -d "fenix://settings_accessibility"

Link to private browsing ✔️ (Sawyer: do we just want this to enable private browsing?)
adb shell am start -W -a android.intent.action.VIEW -d "fenix://enable_private_browsing"

Link to clear all private data ✔️
adb shell am start -W -a android.intent.action.VIEW -d "fenix://settings_delete_browsing_data"

Link to web page ✔️
adb shell am start -W -a android.intent.action.VIEW -d "https://www.theverge.com"

Remarks

Link to web page ✔️ - not sure if I proceeded accordingly, I've set Fenix as default browser and afterwards used the above mentioned command, no issues encountered, it worked properly.

Is this the correct way to use the link to web page deeplink

@sblatz - Please be kind and review the above mentioned remarks.
Help me clarify the matters that have the ❓ sign.
And check the Clear Private Data ❌ issue

@sblatz
Copy link
Contributor

sblatz commented Aug 19, 2019

@AndiAJ I have a PR up to address all but the "Clear private data" issue. Are you not seeing the event generated in leanplum? It should not be tracked in Glean. Leanplum should just have an E_Cleared_Private_Data event.

Please also verify that you're seeing E_New_Sign_Up_FxA as a Leanplum event.

Link to web page ✔️ - not sure if I proceeded accordingly, I've set Fenix as default browser and afterwards used the above mentioned command, no issues encountered, it worked properly.

You can actually do:
adb shell am start -W -a android.intent.action.VIEW -d "fenix://open?url=https://www.theverge.com"

to test that event. What you did works, but was already working prior to this patch :)

sblatz added a commit to sblatz/fenix that referenced this issue Aug 19, 2019
sblatz added a commit to sblatz/fenix that referenced this issue Aug 19, 2019
sblatz added a commit to sblatz/fenix that referenced this issue Aug 19, 2019
sblatz added a commit to sblatz/fenix that referenced this issue Aug 19, 2019
@sblatz sblatz added the eng:qa:needed QA Needed label Aug 19, 2019
@AndiAJ AndiAJ added eng:qa:verified QA Verified and removed eng:qa:needed QA Needed labels Aug 21, 2019
@AndiAJ
Copy link
Collaborator

AndiAJ commented Aug 21, 2019

Hi @sblatz, great news! the E_Cleared_Private_Data & E_New_Sign_Up_FxA were successfully generated in Leanplum and the Link to web page Deeplink works!

Details

c9251dbd-6303-4472-a36a-a3bffd5f4669
Is developer: No
Devices:
c9251dbd-6303-4472-a36a-a3bffd5f4669
Leanplum account owner: None Register as test device
Created: August 21, 2019, 3:17 pm
Last active: August 21, 2019, 3:19 pm
Model: Google Pixel 3a
System name: Android OS
System version: 9
App version: 1.3.0-rc.3
Android push token: None
Country: RO
Region: cj
City: cluj-napoca
Location accuracy: ip
Locale: en_US
User attributes:
default_browser:
fennec_installed: True
focus_installed: True
fxa_has_synced_items: True
fxa_signed_in: True
klar_installed: True
search_widget_installed: False
Time spent in app: 0 seconds
Number of sessions: 1
User bucket: 291
Milestones
Convert to my time zone
August 21, 2019
5:17:10 am PDT Created
5:17:10 am PDT First E_Opened_App
5:17:10 am PDT E_Opened_App_FirstRun
5:17:10 am PDT Last Session
5:18:04 am PDT Last E_Opened_App(Lifetime occurrences: 2)
5:18:36 am PDT E_New_Sign_Up_FxA
5:18:36 am PDT E_Sign_In_FxA
5:18:47 am PDT E_Interact_With_Search_URL_Area
5:19:07 am PDT E_Add_Bookmark
5:19:22 am PDT E_Cleared_Private_Data
5:19:24 am PDT Last Active

Leanplum link

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
E8 Estimation Point: about 8 days eng:qa:verified QA Verified Feature:Telemetry
Projects
None yet
Development

No branches or pull requests

8 participants