Screentime.LimitReached
当玩家的使用时间达到或超过当天的屏幕时间每日限制时发出。它与更早发出的 Screentime.LimitWarning 成对出现,后者的作用是在限制生效之前而不是恰好在生效时告知玩家。
请为您的端点订阅此事件
k-ID 只会把 Screentime.LimitReached 投递给已订阅它的端点,其余端点会被丢弃,既不尝试投递也不报错。请在产品的 Developer Settings 页面为您的端点选择它。请参阅开始之前。
k-ID 不会结束会话、不会将玩家登出,也不会屏蔽任何内容。它只报告限制已经生效。这在您的产品中意味着什么由您决定,而应当查询的端点是 GET /screentime/get-state:当 access.allowed 为 false 且 access.details.reason 为 limit_reached 时,access.details.resumesAt 会告知限制何时解除。
请在此时向玩家提供 /screentime/request-override,让他们可以向父母申请更多时间,而不是无从选择。父母的答复会作为 Screentime.OverrideResult 到达。
/screentime/push 不会发出此事件与其他实时信号一样,此事件在 /screentime/start 时安排,并在 /screentime/end 时取消。/screentime/push 会计入使用时间,但不会发出任何限制相关事件。
字段
| 字段 | 类型 | 必需 | 说明 |
|---|---|---|---|
eventType | string | 是 | 始终为 "Screentime.LimitReached" |
data | object | 是 | 限制到达数据 |
data.sessionId | string (UUID) | 是 | 限制适用的会话 ID |
data.productId | number | 是 | 产品 ID |
data.timeUsedSeconds | number | 是 | 当天的使用时间(秒),包含进行中会话的时长 |
data.timeLimitSeconds | number | 是 | 当天的每日限制(秒) |
timeUsedSeconds 在事件发出时测量,因此可能略微超过 timeLimitSeconds。
示例
{
"eventType": "Screentime.LimitReached",
"data": {
"sessionId": "b1a6482d-5242-4b4a-aa88-3fa52595a672",
"productId": 42,
"timeUsedSeconds": 7200,
"timeLimitSeconds": 7200
}
}
不会发出的情况
- 父母没有设置屏幕时间安排,或安排已停用。
- 在安排所用时区中,当天所属的星期未设置每日限制。
- 当天已经达到过限制。