DOM 이벤트이벤트 구조
Widget.AgeGate.Result
연령 게이트 흐름이 결과와 함께 완료될 때 발생합니다. 흐름이 성공적으로 완료되면 세션이 생성되며, 흐름에 챌린지가 필요할 때마다 확인 가능한 보호자 동의 또는 플레이어가 보호자 동의를 건너뛸 수 있는 연령을 신고한 경우의 Automatic age assurance를 위해 챌린지가 생성됩니다.
필드
| 필드 | 유형 | 필수 | 설명 |
|---|---|---|---|
eventType | string | 예 | 항상 "Widget.AgeGate.Result" |
data | object | 예 | 결과 세부 정보 |
data.status | string | 예 | 결과 상태. "PASS", "FAIL", 또는 "PROHIBITED" 중 하나입니다(상태 값 참조). |
data.sessionId | string (UUID) | 아니오 | 흐름이 성공적으로 완료될 때의 세션 ID입니다. status가 "PASS"인 경우 항상 존재하며, 그 외에는 존재하지 않습니다. |
data.challengeId | string (UUID) | 아니오 | 흐름에 챌린지가 관여한 경우의 Challenge ID입니다(예: 보호자 동의 또는 Automatic age assurance). 챌린지가 생성된 경우에만 존재합니다. |
data.age | number | 아니오 | 플레이어가 연령 게이트에서 입력한 연령입니다. status가 "PROHIBITED"인 경우 존재합니다. |
상태 값
status | 의미 | 조치 |
|---|---|---|
PASS | 플레이어가 연령 게이트를 통과했으며 세션이 생성되었습니다. sessionId가 존재합니다. | 반환된 sessionId를 사용하여 액세스를 허용합니다. |
FAIL | 흐름에 필요한 챌린지가 통과되지 않았습니다. 예를 들어 신뢰할 수 있는 성인이 보호자 동의를 거부했거나 플레이어가 Automatic age assurance를 완료하지 않은 경우입니다. 세션이 생성되지 않습니다. challengeId가 해당 챌린지를 식별합니다. | 액세스를 허용하지 마세요. |
PROHIBITED | 플레이어가 이 관할 구역에서 제품의 최소 연령에 미달하여 계속 진행할 수 없습니다. 세션이 생성되지 않습니다. age에 입력된 연령이 포함됩니다. | 플레이어의 계속 진행을 차단합니다. |
결과를 서버 측에서 확인하세요
이벤트 status는 UX 힌트로 취급하세요. 액세스를 허용하기 전에 Challenge.StateChange webhook 또는 /session/get를 통해 서버 측에서 결과를 확인하세요.
예시
흐름 중에 챌린지가 해결된 경우
{
"eventType": "Widget.AgeGate.Result",
"data": {
"status": "PASS",
"sessionId": "f1af4704-74b4-4966-b13a-18eb16bccf9c",
"challengeId": "a04467a0-83de-40ca-8572-8cc761e896aa"
}
}챌린지가 필요하지 않았던 경우
{
"eventType": "Widget.AgeGate.Result",
"data": {
"status": "PASS",
"sessionId": "f1af4704-74b4-4966-b13a-18eb16bccf9c"
}
}플레이어가 최소 연령에 미달한 경우
세션이 생성되지 않습니다. 플레이어의 계속 진행을 차단하세요.
{
"eventType": "Widget.AgeGate.Result",
"data": {
"status": "PROHIBITED",
"age": 8
}
}