Activity Stream Telemetry - my-swift-lab/firefox-ios GitHub Wiki
The New Tab experience for Activity Stream on iOS makes use of a Swift version of the Ping Centre for sending data to our telemetry servers.
All pings for the New Tab screen contain the following information (source):
Field Name | Type | Description | Example |
---|---|---|---|
app_version | String | Version of Firefox for iOS | 7.0 |
build | String | Build number of Firefox for iOS | 2431 |
locale | String | User's device locale | en_US |
release_channel | String | Release channel of the build is using | beta |
Event Data 👉📱
There are two types of events we currently send:
- Action events are sent when a user interacts with an element on the New Tab page
- Bad State events are sent after we try to populate highlights with missing image/textual data
Action Events
Action events add the following to the base event data:
Field Name | Type | Description |
---|---|---|
event | String | The type of interaction the user invoked |
page | String | The panel the user was on (Only set to NEW_TAB) |
source | String | The section/source of the event |
action_position | Integer | Index of the item the user interacted with |
event can be one of the following (source):
Field Name | Description |
---|---|
CLICK | Clicked/tapped an item on the New Tab panel |
DELETE | Deleted an item from their top sites or highlights |
DISMISS | Dismissed an item from their top sites or highlights |
SHARE | Invoked the share menu from an item on the panel |
NEW_TAB | Opened a new tab using the selected item's link |
NEW_PRIVATE_TAB | Opened a new private tab using the selected item's link |
ADD_BOOKMARK | Added item to bookmarks |
REMOVE_BOOKMARK | Removed item from bookmarks |
REMOVE | Removed item from top sites |
source reflects the section the event originated from: TOP_SITES, HIGHLIGHTS, HIGHLIGHTS_INTRO
Bad State Events ❗️
Bad state events contain following (source):
Field Name | Type | Description |
---|---|---|
event | String | The type of interaction the user invoked |
page | String | The panel the user was on (Only set to NEW_TAB) |
source | String | The section/source of the event |
source and page have the same possible values as the Action events.
events can be one of the following: MISSING_METADATA_IMAGE, MISSING_FAVICON
Session Data 🕗
We currently only track sessions for the New Tab panel. The session is started when the panel appears and ends when the user navigates away from it. The ping is sent only when the session is ended.
The only additional information we send is the session_duration measured in milliseconds.