Screentime.ScheduleChanged
当父母在 Family Connect 中更改某位玩家的屏幕时间规则时发出,涉及每日限制、安静时段或休息提醒间隔。
请为您的端点订阅此事件
k-ID 只会把 Screentime.ScheduleChanged 投递给已订阅它的端点,其余端点会被丢弃,既不尝试投递也不报错。请在产品的 Developer Settings 页面为您的端点选择它。请参阅开始之前。
负载中有意不包含规则本身。它是缓存失效提示,而不是差异内容。收到该事件后,请针对该会话调用 GET /screentime/get-state 并替换您保存的状态。这样规则就只有一个可信来源,您也无需合并部分更新。
处理此事件正是让父母的更改在玩家已经在使用您产品时生效的方式。若不处理,新的就寝时间或提高后的限制在玩家的下一个会话之前对您的产品都是不可见的。
字段
| 字段 | 类型 | 必需 | 说明 |
|---|---|---|---|
eventType | string | 是 | 始终为 "Screentime.ScheduleChanged" |
data | object | 是 | 安排变更数据 |
data.sessionId | string (UUID) | 是 | 安排发生变更的会话 ID |
data.productId | number | 是 | 产品 ID |
示例
{
"eventType": "Screentime.ScheduleChanged",
"data": {
"sessionId": "b1a6482d-5242-4b4a-aa88-3fa52595a672",
"productId": 42
}
}
不会发出的情况
此事件面向会话投递,因此当玩家在您的产品中没有有效会话时会被跳过。如果父母在玩家从未游玩过的情况下设置了安排,则不会发送任何事件;此时您的产品会在首个会话开始时从 GET /screentime/get-state 获取规则。
一次安排变更最多产生一个事件。一份安排属于某一个产品中的某一位玩家,k-ID 只会解析该组合对应的那一个有效会话并进行通知,因此不存在按产品扩散的投递。当没有有效会话时,则完全不会发送事件。