“心跳” Ping

此 Ping 在 Firefox 心跳调查后提交。即使用户退出浏览器、关闭调查窗口或忽略调查,心跳也会在同一会话期间向遥测提供一个 Ping 以发送。

有效负载包含用户的调查回复(如果有)以及各种心跳事件的时间戳(显示调查、关闭调查、点击链接等)。

Ping 还将报告“surveyId”、“surveyVersion”和“testing”心跳调查参数(如果它们存在于调查配置中)。这些“元字段”将在有效负载部分逐字重复。

此 Ping 会提交环境块、客户端 ID 和配置文件组 ID。

结构

{
  type: "heartbeat",
  version: 4,
  clientId: <UUID>,
  profileGroupId: <UUID>,
  environment: { /* ... */ }
  // ... common ping data
  payload: {
    version: 1,
    flowId: <string>,
    ... timestamps below ...
    offeredTS: <integer epoch timestamp>,
    learnMoreTS: <integer epoch timestamp>,
    votedTS: <integer epoch timestamp>,
    engagedTS: <integer epoch timestamp>,
    closedTS: <integer epoch timestamp>,
    expiredTS: <integer epoch timestamp>,
    windowClosedTS: <integer epoch timestamp>,
    // ... user's rating below
    score: <integer>,
    // ... survey meta fields below
    surveyId: <string>,
    surveyVersion: <integer>,
    testing: <boolean>
  }
}

注释

  • Ping **不会**包含所有可能的时间戳,时间戳仅针对实际发生的事件报告。

  • 时间戳含义
    • offeredTS:向用户显示调查的时间

    • learnMoreTS:用户点击“了解更多”链接的时间

    • votedTS:用户投票的时间

    • engagedTS:用户点击调查提供的按钮的时间(投票功能的替代方案)

    • closedTS:心跳通知栏关闭的时间

    • expiredTS:表示调查在 2 小时无交互后过期(阈值由“browser.uitour.surveyDuration”首选项调节)

    • windowClosedTS:用户关闭了包含调查的整个 Firefox 窗口,从而结束调查。当浏览器关闭导致调查结束时,也会报告此时间戳。

  • surveyId/surveyVersion 字段标识特定调查(如“1040EZ”税务表格)。flowID 是一个 UUID,用于唯一标识用户与调查的单个交互。将其视为会话令牌。

  • 自助支持页面不能在此有效负载中包含其他数据。只有 4 个 flowId/surveyId/surveyVersion/testing 字段在自助支持页面的控制之下。

另请参阅:通用 Ping 字段