Integrating your linear TV channels with Apple TV Live Tune-In
When integrating your video service app with the Apple TV app, you may want to include access to a linear channel or an aggregation of channels, for an example, from an MVPD (Multichannel Video Programming Distributor) service offering from within your app.
The Apple TV Live Tune-In feature with Siri Remote allows your supported linear TV channels to get links directly from Siri so your customers can tune in to a linear TV offering from within your video service. Note that your linear channel can only be accessed through Siri Remote. To support Apple TV Live Tune-In:
- Set up deep links, so Siri can communicate with your linear TV channels.
- Define metadata for your supported channels and synonyms for channels.
- Define interactions with Siri.
- Send Apple metadata requirements as described in onboarding.
- Use the Partner Manifest to configure your linear feeds.
Set up deep links
Note: If you have already set up deep linking when implementing Universal Search, you have completed the deep linking implementation and do not need to do anything extra for linear Live Tune-In support.
Your app can communicate with Siri using universal links or a custom URL scheme you create and register with Apple.
Review the documentation for allowing apps and websites to link to your content on the App Developer site.
For background on how to implement custom URL schemes, see Defining a custom URL scheme for your app in the Developer documentation. While not required, it is also strongly recommended to support universal links in your app if possible.
Define interactions with Siri
On the Apple TV Siri Remote, the system supports specific utterances to trigger the Live Tune-In feature for deep linking into your app. The types of interactions a user could have with Siri are direct request, ambiguous request, or uninstalled app.
Direct request
A direct request is when a user asks to watch a specific channel, such as “Watch ACME channel.”
User says “Watch ACME channel”: In this example, the user has identified a specific channel associated with an app in our system, so Siri opens directly into that linear channel.
User says “Open ACME live” or “Watch ACME live”: In this example, although the user has identified the app they want to watch, this may require further disambiguation before opening the link to the app. This can occur when there are several linear offerings and they don’t directly map to the app name used in the utterance.
Ambiguous request
An ambiguous request is when a user asks to watch a channel, or uses an app name that does not match a defined utterance for any app.
User says “Watch ACME”: In this example, Siri opens the app referred to by the user, but will not attempt to launch the deep link. This utterance is synonymous with “Open ACME” and “Launch ACME.”
If there is a linear offering within the app with the same Channel Brand name as the app name, the user must then navigate within your app to the linear channel to begin watching.
Uninstalled app behavior
An uninstalled app is when the user’s device does not have the app installed yet.
User says “Watch ACME”: User asks Siri to tune in to a linear channel that is included in Apple’s system, but the app supporting that channel is not installed. Siri presents the user with an Install button that allows the user to install the app from the App Store. Once the app has been installed, the app will be available for future linear Live Tune-In requests.
Define metadata for onboarding
You must define a linear channel list containing metadata attributes so Apple’s system can lookup and map to the correct linear channel(s) within your app.
Linear channel list
Your linear channel list must consist of apps and channels as defined below in linear live tune-in attributes.
In the following example of a channel list, the “ACME Sports” app has two linear channels available, “ACME Sports” and “ACME College Sports.”
App Name | Linear Live Tune-In Channels |
---|---|
ACME |
|
ACME Sports |
|
Linear live tune-in attributes
Use the following attributes of your linear channel list when implementing Live Tune-In. You must provide Apple with the values for all the metadata attributes listed below.
These values are expected in English, but are fully localizable. Localizations can be provided in the partner manifest for these fields.
The following metadata attributes will be collected by your Apple Technical Representative during onboarding for each channel.
Attribute | Description |
---|---|
Linear-Live Channel Service Name | Brand name or “call sign” of the linear channel within your app. Example: ACME News Live
|
Search Brand ID | Your company’s unique identifier for a Search Brand. Your Apple Representative will provide you this identifier during onboarding. Example: com.searchBrand.acmeTV
|
Team Identifier | Unique ID provided to your organization upon enrollment in the Developer Program. The Team Identifier can be found by clicking on your organization name in the upper left of the Developer Portal. |
Application Apple ID | Unique ID for the tvOS app that should be launched to play content associated with this Search Brand. The Application Apple ID is a numeric value that is associated with the app on the App Store. |
Linear-Live Channel ID | Your company’s unique ID for a channel. You choose this value, but it must be limited to 100 characters. A Linear-Live Channel ID is associated with a Search Brand ID, but there can be more than one. Example: com.searchBrand.acmenewslive
|
Linear-Live Channel URL | URL linking your app to the linear channel. Example: acme://acmenewslive
|
Utterance Definitions/Synonyms | Synonyms the system can associate with a channel. Example: “Watch ACME News” or “Watch ACME News channel” |
Partner manifest
To better configure and manage your linear feeds, it is required to use a partner manifest. Learn more about partner manifest.