Bug 1640026 - Telemetry requirement for multistage about:welcome r=Mardak

Differential Revision: https://phabricator.services.mozilla.com/D76933
This commit is contained in:
Punam Dahiya
2020-05-28 01:49:08 +00:00
parent e8786ece38
commit 58386c8c40
6 changed files with 337 additions and 112 deletions

View File

@@ -12,6 +12,34 @@ export const AboutWelcomeUtils = {
message_id: messageId,
});
},
sendActionTelemetry(messageId, elementId) {
const ping = {
event: "CLICK_BUTTON",
event_context: {
source: elementId,
page: "about:welcome",
},
message_id: messageId,
};
window.AWSendEventTelemetry(ping);
},
async fetchFlowParams(metricsFlowUri) {
let flowParams;
try {
const response = await fetch(metricsFlowUri, {
credentials: "omit",
});
if (response.status === 200) {
const { deviceId, flowId, flowBeginTime } = await response.json();
flowParams = { deviceId, flowId, flowBeginTime };
} else {
console.error("Non-200 response", response); // eslint-disable-line no-console
}
} catch (e) {
flowParams = null;
}
return flowParams;
},
sendEvent(type, detail) {
document.dispatchEvent(
new CustomEvent(`AWPage:${type}`, {