When a user requests that a content or channel is played, what the client app needs to do depends on the applicable parental rating body.
For standard deployments, the client needs to:
-
Determine the age rating on the content (for VOD) or channel (for live TV). See Determining the age rating for a channel, event, or content.
-
Determine the age ratings for which it needs to prompt for the parental PIN (that is, the age rating threshold that is set for the account). See Getting the rating thresholds for the account.
-
Compare the two and prompt for the parental PIN if the age rating for the content/channel is greater than the defined threshold.
For deployments where the rating needs to be checked per broadcast event (for example, for the German ratings body, FSK), the client app needs to:
-
If no parental ratings threshold (that is, the rating at which the user will be prompted for the parental PIN) has been set (for example, if this is not done as part of provisioning, then client application should prompt the user for a threshold as part of the initial setup and then call the appropriate endpoint to set the threshold. See Setting/updating the rating threshold.
-
When the user tunes to a channel, the app needs to:Determine the age rating on the content/event. See (24.50_Q4) Determining the age rating for a channel, event, or content.Determine the age ratings for which it needs to request PIN entry (that is, the age rating threshold that is set for the account). See (24.50_Q4) Getting the rating thresholds for the account.Check whether it needs to request PIN entry:For VOD content and non-free-to-air channels, the client must prompt for the parental PIN if the rating of the content/channel is the same or greater than the defined threshold.For free-to-air channels, whether the client should prompt for a parental PIN depends on:The account's age rating threshold – see (24.50_Q4) Getting the rating thresholds for the accountWhether the channel is free-to-air – see (24.50_Q4) Determining whether a channel is free-to-airThe rating of the event – see (24.50_Q4) Determining the age rating for a channel, event, or contentThe time of dayThis is explained in the table below. Account thresholdTime of dayEvent ratingFSK 6FSK 12FSK 16FSK 18FSK 606:00–18:00PromptPromptPromptPrompt18:00–06:00Don't promptDon't promptDon't promptDon't promptFSK 1206:00–20:00Don't promptPromptPromptPrompt20:00–06:00Don't promptDon't promptDon't promptDon't promptFSK 1606:00–22:00Don't promptDon't promptPromptPrompt22:00–06:00Don't promptDon't promptDon't promptDon't prompt Scroll conditional content Marking this note as internal until Craig's comments are resolved.The highest FSK rating is FSK 18. However, FSK 16 is the highest threshold that can be set. This means that the parental PIN is always required to watch FSK 18 content. internal For a DVB broadcast channel, a client app running on an STB will typically have cached EPG data that it obtained from MDS / Content Discovery Facade. Because schedules can change, the app should not rely on checking the cached EPG to see which event is currently being broadcast (and therefore whether it needs to prompt the user for the parental PIN).Instead, the client app should match the event ID from the Android TV Input Framework (TIF) with the broadcastEventId that MDS / Content discovery facade provide in their event metadata to get the correct event metadata.See:The Content Discovery Facade's pre-defined EPG queries include broadcastEventId in their responses:(24.50_Q4) Retrieving events for an EPG window – pre-defined queries(24.50_Q4) Retrieving previous/now/next programmes – pre-defined queriesIf you want to retrieve a specific event by its broadcastEventId, run an advanced query with this field as a filter. See (24.50_Q4) Retrieving events for an EPG window – advanced queries.