Screentime.LimitWarning
플레이어가 오늘의 스크린 타임 일일 한도에 가까워졌을 때, 아직 대응할 수 있는 시점에 발생합니다. 활동 중간에 중단되는 대신 저장 지점을 찾거나 마무리할 수 있도록 플레이어에게 알리세요.
엔드포인트를 이 이벤트에 구독하세요
k-ID는 Screentime.LimitWarning를 구독한 엔드포인트에만 전달하고, 나머지에는 전달 시도나 오류 없이 버립니다. 제품의 Developer Settings 페이지에서 엔드포인트에 대해 선택하세요. 시작하기 전에를 참조하세요.
k-ID는 15분 남은 시점과 5분 남은 시점에 경고를 보냅니다. 이 버전에서는 두 임계값이 모두 고정되어 있으며 제품별로 설정할 수 없습니다.
한도에 도달하기 전에 경고하는 것은 부수 효과가 아니라 의도된 동작입니다. 이 이벤트와 Screentime.LimitReached를 한 쌍으로 다루세요. 경고는 "플레이어에게 알린다", 한도 도달 이벤트는 "한도가 적용되었다"로 생각하면 됩니다.
/screentime/push에서는 발생하지 않습니다경고는 /screentime/start를 호출할 때 예약되고 /screentime/end를 호출할 때 취소되므로, 세션의 시작과 종료를 실시간으로 보고하는 제품에서만 발생합니다. /screentime/push로 보고된 사용 시간도 일일 합계에 반영되지만 경고는 발생하지 않습니다.
필드
| 필드 | 유형 | 필수 | 설명 |
|---|---|---|---|
eventType | string | 예 | 항상 "Screentime.LimitWarning" |
data | object | 예 | 한도 경고 데이터 |
data.sessionId | string (UUID) | 예 | 경고 대상 세션 ID |
data.productId | number | 예 | 제품 ID |
data.timeUsedSeconds | number | 예 | 진행 중인 세션의 시간을 포함한 오늘의 사용 시간(초) |
data.timeLimitSeconds | number | 예 | 오늘의 일일 한도(초) |
data.timeRemainingSeconds | number | 예 | 한도에 도달하기까지 남은 시간(초), 최소 0 |
두 경고를 구분하려면 이벤트 수를 세지 말고 timeRemainingSeconds를 읽으세요. 이 값은 발생 시점에 측정되므로 900 또는 300에 가깝지만 항상 정확히 일치하지는 않습니다.
예시
{
"eventType": "Screentime.LimitWarning",
"data": {
"sessionId": "b1a6482d-5242-4b4a-aa88-3fa52595a672",
"productId": 42,
"timeUsedSeconds": 6300,
"timeLimitSeconds": 7200,
"timeRemainingSeconds": 900
}
}
발생하지 않는 경우
- 부모가 스크린 타임 일정을 설정하지 않았거나 일정이 비활성화되어 있습니다.
- 일정의 시간대 기준 오늘 요일에 일일 한도가 설정되어 있지 않습니다.
- 해당 임계값이 오늘 이미 발생했습니다.