Screentime.ScheduleChanged
保護者がFamily Connectでプレイヤーのスクリーンタイムのルールを変更したときに発行されます。対象は1日の制限、静かな時間帯、休憩リマインダーの間隔です。
k-IDはScreentime.ScheduleChangedを、購読しているエンドポイントにのみ配信します。それ以外には配信の試行もエラーもなく破棄されます。プロダクトのDeveloper Settingsページで、エンドポイントに対して選択してください。始める前にを参照してください。
ペイロードには意図的にルールが含まれていません。これは差分ではなくキャッシュ無効化のヒントです。受信したら、対象のセッションについてGET /screentime/get-stateを呼び出し、保持している状態を置き換えてください。こうすることでルールの真実の源が1つに保たれ、部分的な更新をマージする必要がなくなります。
プレイヤーがすでにプロダクトを利用している間に保護者の変更を反映させるのは、このイベントを処理することによって実現されます。処理しない場合、新しい就寝時間や引き上げられた制限は、プレイヤーの次のセッションまでプロダクトから見えません。
フィールド
| フィールド | タイプ | 必須 | 説明 |
|---|---|---|---|
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からルールを取得します。
1回のスケジュール変更で発行されるイベントは最大1件です。スケジュールは1つのプロダクトの1人のプレイヤーに属し、k-IDはその組み合わせに対応する有効なセッションを1つだけ解決して通知します。そのため、プロダクトごとに配信が広がることはありません。有効なセッションがない場合、イベントはまったく送信されません。