-
Notifications
You must be signed in to change notification settings - Fork 12
Intents
Version Intents 0.0.0-unknown.0
undefined
A Firebolt compliant representation of a user intention to navigate to a specific place in an app.
type NavigationIntent = HomeIntent | LaunchIntent | EntityIntent | PlaybackIntent | SearchIntent | SectionIntent | TuneIntent
See also:
HomeIntent LaunchIntent EntityIntent PlaybackIntent SearchIntent SectionIntent TuneIntent
A Firebolt compliant representation of a user intention to navigate an app to it's home screen, and bring that app to the foreground if needed.
type HomeIntent = {
action: "home"
context: {
source: 'voice' | 'channel-lineup' | 'editorial' | 'device'
}
}
A Firebolt compliant representation of a user intention to launch an app.
type LaunchIntent = {
action: "launch"
context: {
source: 'voice' | 'channel-lineup' | 'editorial' | 'device'
}
}
A Firebolt compliant representation of a user intention to navigate an app to a specific entity page, and bring that app to the foreground if needed.
type EntityIntent = {
action: "entity"
data: MovieEntity | TVEpisodeEntity | TVSeriesEntity | TVSeasonEntity | AdditionalEntity | UntypedEntity
context: {
source: 'voice' | 'channel-lineup' | 'editorial' | 'device'
}
}
See also:
MovieEntity TVEpisodeEntity TVSeriesEntity TVSeasonEntity AdditionalEntity UntypedEntity
A Firebolt compliant representation of a user intention to navigate an app to a the video player for a specific, playable entity, and bring that app to the foreground if needed.
type PlaybackIntent = {
action: "playback"
data: MovieEntity | TVEpisodeEntity | AdditionalEntity
context: {
source: 'voice' | 'channel-lineup' | 'editorial' | 'device'
}
}
See also:
MovieEntity TVEpisodeEntity AdditionalEntity
A Firebolt compliant representation of a user intention to navigate an app to it's search UI with a search term populated, and bring that app to the foreground if needed.
type SearchIntent = {
action: "search"
data?: {
query: string
}
context: {
source: 'voice' | 'channel-lineup' | 'editorial' | 'device'
}
}
A Firebolt compliant representation of a user intention to navigate an app to a section not covered by home
, entity
, player
, or search
, and bring that app to the foreground if needed.
type SectionIntent = {
action: "section"
data?: {
sectionName: string
}
context: {
source: 'voice' | 'channel-lineup' | 'editorial' | 'device'
}
}
A Firebolt compliant representation of a user intention to 'tune' to a traditional over-the-air broadcast, or an OTT Stream from an OTT or vMVPD App.
type TuneIntent = {
action: "tune"
data: {
entity: ChannelEntity
options?: {
assetId?: string // The ID of a specific 'listing', as scoped by the target App's ID-space, which the App should begin playback from.
restartCurrentProgram?: boolean // Denotes that the App should start playback at the most recent program boundary, rather than 'live.'
time?: string // ISO 8601 Date/Time where the App should begin playback from.
}
}
context: {
source: 'voice' | 'channel-lineup' | 'editorial' | 'device'
}
}
See also:
A Firebolt compliant representation of a user intention.
type Intent = {
action: string
context: {
source: 'voice' | 'channel-lineup' | 'editorial' | 'device'
}
}
type IntentProperties = {
action: any
data: any
context: any
}
type MovieEntity = {
entityType: "program"
programType: "movie"
entityId: string
assetId?: string
appContentData?: string
}
See also:
type TVEpisodeEntity = {
entityType: "program"
programType: "episode"
entityId: string
seriesId: string
seasonId: string
assetId?: string
appContentData?: string
}
See also:
type TVSeriesEntity = {
entityType: "program"
programType: "series"
entityId: string
assetId?: string
appContentData?: string
}
See also:
A Firebolt compliant representation of a TV Season entity.
type TVSeasonEntity = {
entityType: "program"
programType: "season"
entityId: string
seriesId: string
assetId?: string
appContentData?: string
}
See also:
type AdditionalEntity = {
entityType: "program"
programType: ProgramType // In the case of a program `entityType`, specifies the program type.
entityId: string
assetId?: string
appContentData?: string
}
See also:
type UntypedEntity = {
entityId: string
assetId?: string
appContentData?: string
}
type ChannelEntity = {
entityType: "channel"
channelType: 'streaming' | 'overTheAir'
entityId: string // ID of the channel, in the target App's scope.
appContentData?: string
}
type ProgramEntity = {
entityType: "program"
programType: ProgramType // In the case of a program `entityType`, specifies the program type.
entityId: string
}
See also:
'movie' | 'episode' | 'season' | 'series' | 'other' | 'preview' | 'extra' | 'concert' | 'sportingEvent' | 'advertisement' | 'musicVideo' | 'minisode'
type Identifier = string