Initial Home Assistant commit
This commit is contained in:
@@ -0,0 +1,85 @@
|
||||
# ============================================================================
|
||||
# SpotifyPlus integration intent custom sentence and response definitions.
|
||||
#
|
||||
# Language: en, English
|
||||
# Intent: SpotifyPlusFavoriteAddRemove
|
||||
# Location: custom_sentences/en/spotifyplus_FavoriteAddRemove_en.yaml
|
||||
# ============================================================================
|
||||
language: en
|
||||
intents:
|
||||
|
||||
SpotifyPlusFavoriteAddRemove:
|
||||
|
||||
data:
|
||||
|
||||
- sentences:
|
||||
|
||||
- "{favorite_operator} spotify {spotifyplus_media_type} [to|2|from] (favorite|favorites)"
|
||||
|
||||
# Base sentence phrases for this intent.
|
||||
# This sentence is recognized when a name / area is NOT provided in the spoken command.
|
||||
# In this case, the first active SpotifyPlus media player is used.
|
||||
|
||||
# __Example Phrases - Default Player__
|
||||
# - "add spotify track to favorites"
|
||||
# - "add spotify track favorite"
|
||||
# - "remove spotify track from favorites"
|
||||
# - "remove spotify track favorite"
|
||||
|
||||
slots:
|
||||
|
||||
name: "Spotify Premium" # default player to use.
|
||||
is_public: False
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "{favorite_operator} spotify {spotifyplus_media_type} [to|2|from] (favorite|favorites) <on_spotifyplus_player_name>"
|
||||
|
||||
# This sentence is recognized when a player name is provided in the spoken
|
||||
# command (e.g. "on player Spotify Premium", "on Todds player", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Name__
|
||||
# - "add spotify track favorite for player spotify premium"
|
||||
# - "add spotify track favorite for spotify premium player"
|
||||
|
||||
slots:
|
||||
|
||||
name: ""
|
||||
is_public: False
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "{favorite_operator} spotify {spotifyplus_media_type} [to|2|from] (favorite|favorites) <in_spotifyplus_player_area>"
|
||||
|
||||
# This sentence is recognized when a player area is provided in the spoken
|
||||
# command (e.g. "in the Living Room area", "in the Living Room", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Area__
|
||||
# - "add spotify track favorite in the Office area"
|
||||
# - "add spotify track favorite in the Office"
|
||||
|
||||
slots:
|
||||
|
||||
area: ""
|
||||
name: ""
|
||||
is_public: False
|
||||
|
||||
response: default
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# Custom response definitions for THIS intent.
|
||||
# Note - Shared responses for all intents are stored in the Common file.
|
||||
# ============================================================================
|
||||
responses:
|
||||
intents:
|
||||
|
||||
SpotifyPlusFavoriteAddRemove:
|
||||
|
||||
default: "" # not used - see common `favorite_add_remove_xxxxxxx_ok` messages.
|
||||
@@ -0,0 +1,95 @@
|
||||
# ============================================================================
|
||||
# SpotifyPlus integration intent custom sentence and response definitions.
|
||||
#
|
||||
# Language: en, English
|
||||
# Intent: SpotifyPlusGetInfoArtistBio
|
||||
# Location: custom_sentences/en/spotifyplus_GetInfoArtistBio_en.yaml
|
||||
# ============================================================================
|
||||
language: en
|
||||
intents:
|
||||
|
||||
SpotifyPlusGetInfoArtistBio:
|
||||
|
||||
data:
|
||||
|
||||
- sentences:
|
||||
|
||||
- "[get] spotify artist (info|information|details|bio) [for|4] {artist_name}"
|
||||
|
||||
# Base sentence phrases for this intent.
|
||||
# This sentence is recognized when a name / area is NOT provided in the spoken command.
|
||||
# In this case, the first active SpotifyPlus media player is used.
|
||||
|
||||
# __Example Phrases - Default Player__
|
||||
# - "spotify artist info for Phil Wickham"
|
||||
# - "get spotify artist info for Phil Wickham"
|
||||
|
||||
slots:
|
||||
|
||||
name: "Spotify Premium" # default media player alias.
|
||||
target_player: ""
|
||||
artist_bio: ""
|
||||
artist_name: ""
|
||||
artist_title: ""
|
||||
artist_url: ""
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "[get] spotify artist (info|information|details|bio) [for|4] {artist_name} <on_spotifyplus_player_name>"
|
||||
|
||||
# This sentence is recognized when a player name is provided in the spoken
|
||||
# command (e.g. "on player Spotify Premium", "on Todds player", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Name__
|
||||
# - "get spotify artist info for Phil Wickham on player spotify premium"
|
||||
# - "get spotify artist info for Phil Wickham on spotify premium player"
|
||||
|
||||
slots:
|
||||
|
||||
name: ""
|
||||
target_player: ""
|
||||
artist_bio: ""
|
||||
artist_name: ""
|
||||
artist_title: ""
|
||||
artist_url: ""
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "[get] spotify artist (info|information|details|bio) [for|4] {artist_name} <in_spotifyplus_player_area>"
|
||||
|
||||
# This sentence is recognized when a player area is provided in the spoken
|
||||
# command (e.g. "in the Living Room area", "in the Living Room", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Area__
|
||||
# - "get spotify artist info for Phil Wickham in the Office area"
|
||||
# - "get spotify artist info for Phil Wickham in the Office"
|
||||
|
||||
slots:
|
||||
|
||||
area: ""
|
||||
name: ""
|
||||
target_player: ""
|
||||
artist_bio: ""
|
||||
artist_name: ""
|
||||
artist_title: ""
|
||||
artist_url: ""
|
||||
|
||||
response: default
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# Custom response definitions for THIS intent.
|
||||
# Note - Shared responses for all intents are stored in the Common file.
|
||||
# ============================================================================
|
||||
responses:
|
||||
intents:
|
||||
|
||||
SpotifyPlusGetInfoArtistBio:
|
||||
|
||||
default: "" # not used - see common `get_info_artist_bio` message.
|
||||
@@ -0,0 +1,100 @@
|
||||
# ============================================================================
|
||||
# SpotifyPlus integration intent custom sentence and response definitions.
|
||||
#
|
||||
# Language: en, English
|
||||
# Intent: SpotifyPlusGetNowPlayingInfo
|
||||
# Location: custom_sentences/en/spotifyplus_GetNowPlayingInfo_en.yaml
|
||||
# ============================================================================
|
||||
language: en
|
||||
intents:
|
||||
|
||||
SpotifyPlusGetNowPlayingInfo:
|
||||
|
||||
data:
|
||||
|
||||
- sentences:
|
||||
|
||||
- "[get] spotify [nowplaying|now playing] {spotifyplus_media_type} (info|information|details)"
|
||||
|
||||
# Base sentence phrases for this intent.
|
||||
# This sentence is recognized when a name / area is NOT provided in the spoken command.
|
||||
# In this case, the first active SpotifyPlus media player is used.
|
||||
|
||||
# __Example Phrases - Default Player__
|
||||
# - "spotify nowplaying album info"
|
||||
# - "spotify album info"
|
||||
# - "get spotify album info"
|
||||
# - "spotify nowplaying artist info"
|
||||
# - "spotify artist info"
|
||||
# - "get spotify artist info"
|
||||
# - "spotify nowplaying audiobook info"
|
||||
# - "spotify audiobook info"
|
||||
# - "get spotify audiobook info"
|
||||
# - "spotify nowplaying playlist info"
|
||||
# - "spotify playlist info"
|
||||
# - "get spotify playlist info"
|
||||
# - "spotify nowplaying podcast episode info"
|
||||
# - "spotify podcast episode info"
|
||||
# - "get spotify podcast episode info"
|
||||
# - "spotify nowplaying podcast info"
|
||||
# - "spotify podcast info"
|
||||
# - "get spotify podcast info"
|
||||
# - "spotify nowplaying track info"
|
||||
# - "spotify track info"
|
||||
# - "get spotify track info"
|
||||
|
||||
slots:
|
||||
|
||||
name: "Spotify Premium" # default player to use.
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "[get] spotify [nowplaying|now playing] {spotifyplus_media_type} (info|information|details) <on_spotifyplus_player_name>"
|
||||
|
||||
# This sentence is recognized when a player name is provided in the spoken
|
||||
# command (e.g. "on player Spotify Premium", "on Todds player", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Name__
|
||||
# - "get spotify artist info for player spotify premium"
|
||||
# - "get spotify artist info for spotify premium player"
|
||||
|
||||
slots:
|
||||
|
||||
name: ""
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "[get] spotify [nowplaying|now playing] {spotifyplus_media_type} (info|information|details) <in_spotifyplus_player_area>"
|
||||
|
||||
# This sentence is recognized when a player area is provided in the spoken
|
||||
# command (e.g. "in the Living Room area", "in the Living Room", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Area__
|
||||
# - "get spotify artist info in the Office area"
|
||||
# - "get spotify artist info in the Office"
|
||||
|
||||
slots:
|
||||
|
||||
area: ""
|
||||
name: ""
|
||||
|
||||
response: default
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# Custom response definitions for THIS intent.
|
||||
# Note - Shared responses for all intents are stored in the Common file.
|
||||
# ============================================================================
|
||||
responses:
|
||||
intents:
|
||||
|
||||
SpotifyPlusGetNowPlayingInfo:
|
||||
|
||||
default: "" # not used - see common `nowplaying_info_xxxxxxx` messages.
|
||||
|
||||
@@ -0,0 +1,104 @@
|
||||
# ============================================================================
|
||||
# SpotifyPlus integration intent custom sentence and response definitions.
|
||||
#
|
||||
# Language: en, English
|
||||
# Intent: SpotifyPlusPlayerDeckControl
|
||||
# Location: custom_sentences/en/spotifyplus_PlayerDeckControl_en.yaml
|
||||
# ============================================================================
|
||||
language: en
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlayerDeckControl:
|
||||
|
||||
data:
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify {spotifyplus_player_deck_control}"
|
||||
|
||||
# Base sentence phrases for this intent.
|
||||
# This sentence is recognized when a name / area is NOT provided in the spoken command.
|
||||
# In this case, the first active SpotifyPlus media player is used.
|
||||
|
||||
# __Example Phrases - No Player Name__
|
||||
# - "spotify pause"
|
||||
# - "spotify pause track"
|
||||
# - "spotify stop"
|
||||
# - "spotify stop track"
|
||||
# - "spotify resume"
|
||||
# - "spotify resume play"
|
||||
# - "spotify resume player"
|
||||
# - "spotify resume track"
|
||||
# - "spotify start"
|
||||
# - "spotify start track"
|
||||
# - "spotify start player"
|
||||
# - "spotify start play"
|
||||
# - "spotify next track"
|
||||
# - "spotify play next track"
|
||||
# - "spotify play the next track"
|
||||
# - "spotify skip to next track"
|
||||
# - "spotify skip track"
|
||||
# - "spotify previous track"
|
||||
# - "spotify play previous track"
|
||||
# - "spotify play the previous track"
|
||||
# - "spotify skip to previous track"
|
||||
# - "spotify restart track"
|
||||
# - "spotify skip to start of track"
|
||||
|
||||
slots:
|
||||
|
||||
name: "Spotify Premium" # default player to use.
|
||||
delay: 0.50
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify {spotifyplus_player_deck_control} <on_spotifyplus_player_name>"
|
||||
|
||||
# This sentence is recognized when a player name is provided in the spoken
|
||||
# command (e.g. "on player Spotify Premium", "on Todds player", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Name__
|
||||
# - "spotify pause track on player spotify premium"
|
||||
# - "spotify pause track on spotify premium player"
|
||||
|
||||
slots:
|
||||
|
||||
name: ""
|
||||
delay: 0.50
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify {spotifyplus_player_deck_control} <in_spotifyplus_player_area>"
|
||||
|
||||
# This sentence is recognized when a player area is provided in the spoken
|
||||
# command (e.g. "in the Living Room area", "in the Living Room", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Area__
|
||||
# - "spotify pause track in the Office area"
|
||||
# - "spotify pause track in the Office"
|
||||
|
||||
slots:
|
||||
|
||||
area: ""
|
||||
name: ""
|
||||
delay: 0.50
|
||||
|
||||
response: default
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# Custom response definitions for THIS intent.
|
||||
# Note - Shared responses for all intents are stored in the Common file.
|
||||
# ============================================================================
|
||||
responses:
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlayerDeckControl:
|
||||
|
||||
default: "" # not used - see common `player_deck_control_xxxxxxx` messages.
|
||||
@@ -0,0 +1,97 @@
|
||||
# ============================================================================
|
||||
# SpotifyPlus integration intent custom sentence and response definitions.
|
||||
#
|
||||
# Language: en, English
|
||||
# Intent: SpotifyPlusPlayerSetRepeatMode
|
||||
# Location: custom_sentences/en/spotifyplus_PlayerSetRepeatMode_en.yaml
|
||||
# ============================================================================
|
||||
language: en
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlayerSetRepeatMode:
|
||||
|
||||
data:
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify repeat [mode] {player_repeat_mode}"
|
||||
|
||||
# Base sentence phrases for this intent.
|
||||
# This sentence is recognized when a name / area is NOT provided in the spoken command.
|
||||
# In this case, the first active SpotifyPlus media player is used.
|
||||
|
||||
# __Example Phrases - Default Player__
|
||||
# - "spotify repeat on"
|
||||
# - "spotify repeat track"
|
||||
# - "spotify repeat 1 track"
|
||||
# - "spotify repeat single track"
|
||||
# - "spotify repeat context"
|
||||
# - "spotify repeat all"
|
||||
# - "spotify repeat all tracks"
|
||||
# - "spotify repeat list"
|
||||
# - "spotify repeat off"
|
||||
# - "spotify repeat disabled"
|
||||
|
||||
slots:
|
||||
|
||||
name: "Spotify Premium" # default media player alias.
|
||||
delay: 0.50
|
||||
player_repeat_mode: "off"
|
||||
|
||||
response: default_no_player
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify repeat [mode] {player_repeat_mode} <on_spotifyplus_player_name>"
|
||||
|
||||
# This sentence is recognized when a player name is provided in the spoken
|
||||
# command (e.g. "on player Spotify Premium", "on Todds player", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Name__
|
||||
# - "spotify repeat track for player spotify premium"
|
||||
# - "spotify repeat track for spotify premium player"
|
||||
|
||||
slots:
|
||||
|
||||
name: ""
|
||||
delay: 0.50
|
||||
player_repeat_mode: "off"
|
||||
|
||||
response: default_by_name
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify repeat [mode] {player_repeat_mode} <in_spotifyplus_player_area>"
|
||||
|
||||
# This sentence is recognized when a player area is provided in the spoken
|
||||
# command (e.g. "in the Living Room area", "in the Living Room", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Area__
|
||||
# - "spotify repeat track in the Office area"
|
||||
# - "spotify repeat track in the Office"
|
||||
|
||||
slots:
|
||||
|
||||
area: ""
|
||||
name: ""
|
||||
delay: 0.50
|
||||
player_repeat_mode: "off"
|
||||
|
||||
response: default_by_area
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# Custom response definitions for THIS intent.
|
||||
# Note - Shared responses for all intents are stored in the Common file.
|
||||
# ============================================================================
|
||||
responses:
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlayerSetRepeatMode:
|
||||
|
||||
default_by_name: "Okay, Spotify repeat mode is \"{{ slots.player_repeat_mode.text }}\" for named player \"{{ slots.target_player.text }}\"."
|
||||
default_by_area: "Okay, Spotify repeat mode is \"{{ slots.player_repeat_mode.text }}\" in the \"{{ slots.target_player.text }}\" area."
|
||||
default_no_player: "Okay, Spotify repeat mode is \"{{ slots.player_repeat_mode.text }}\" for default player \"{{ slots.target_player.text }}\"."
|
||||
default: "Okay, Spotify repeat mode is \"{{ slots.player_repeat_mode.text }}\"."
|
||||
@@ -0,0 +1,94 @@
|
||||
# ============================================================================
|
||||
# SpotifyPlus integration intent custom sentence and response definitions.
|
||||
#
|
||||
# Language: en, English
|
||||
# Intent: SpotifyPlusPlayerSetShuffleMode
|
||||
# Location: custom_sentences/en/spotifyplus_PlayerSetShuffleMode_en.yaml
|
||||
# ============================================================================
|
||||
language: en
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlayerSetShuffleMode:
|
||||
|
||||
data:
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify shuffle [mode] {player_shuffle_mode}"
|
||||
|
||||
# Base sentence phrases for this intent.
|
||||
# This sentence is recognized when a name / area is NOT provided in the spoken command.
|
||||
# In this case, the first active SpotifyPlus media player is used.
|
||||
|
||||
# __Example Phrases - Default Player__
|
||||
# - "spotify shuffle mode on"
|
||||
# - "spotify shuffle mode off"
|
||||
# - "spotify shuffle on"
|
||||
# - "spotify shuffle off"
|
||||
# - "spotify shuffle enabled"
|
||||
# - "spotify shuffle disabled"
|
||||
|
||||
slots:
|
||||
|
||||
name: "Spotify Premium" # default media player alias.
|
||||
delay: 0.50
|
||||
player_shuffle_mode: "off"
|
||||
|
||||
response: default_no_player
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify shuffle [mode] {player_shuffle_mode} <on_spotifyplus_player_name>"
|
||||
|
||||
# This sentence is recognized when a player name is provided in the spoken
|
||||
# command (e.g. "on player Spotify Premium", "on Todds player", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Name__
|
||||
# - "spotify shuffle on for player spotify premium"
|
||||
# - "spotify shuffle on for spotify premium player"
|
||||
|
||||
slots:
|
||||
|
||||
name: ""
|
||||
delay: 0.50
|
||||
player_shuffle_mode: "off"
|
||||
|
||||
response: default_by_name
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify shuffle [mode] {player_shuffle_mode} <in_spotifyplus_player_area>"
|
||||
|
||||
# This sentence is recognized when a player area is provided in the spoken
|
||||
# command (e.g. "in the Living Room area", "in the Living Room", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Area__
|
||||
# - "spotify shuffle on in the Office area"
|
||||
# - "spotify shuffle on in the Office"
|
||||
|
||||
slots:
|
||||
|
||||
area: ""
|
||||
name: ""
|
||||
delay: 0.50
|
||||
player_shuffle_mode: "off"
|
||||
|
||||
response: default_by_area
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# Custom response definitions for THIS intent.
|
||||
# Note - Shared responses for all intents are stored in the Common file.
|
||||
# ============================================================================
|
||||
responses:
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlayerSetShuffleMode:
|
||||
|
||||
default_no_player: "Okay, Spotify shuffle mode is \"{{ slots.player_shuffle_mode.text }}\" for default player \"{{ slots.target_player.text }}\"."
|
||||
default_by_name: "Okay, Spotify shuffle mode is \"{{ slots.player_shuffle_mode.text }}\" for named player \"{{ slots.target_player.text }}\"."
|
||||
default_by_area: "Okay, Spotify shuffle mode is \"{{ slots.player_shuffle_mode.text }}\" in the \"{{ slots.target_player.text }}\" area."
|
||||
default: "Okay, Spotify shuffle mode is \"{{ slots.player_shuffle_mode.text }}\"."
|
||||
|
||||
@@ -0,0 +1,94 @@
|
||||
# ============================================================================
|
||||
# SpotifyPlus integration intent custom sentence and response definitions.
|
||||
#
|
||||
# Language: en, English
|
||||
# Intent: SpotifyPlusPlayerTransferPlayback
|
||||
# Location: custom_sentences/en/spotifyplus_PlayerTransferPlayback_en.yaml
|
||||
# ============================================================================
|
||||
language: en
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlayerTransferPlayback:
|
||||
|
||||
data:
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify transfer playback [to] [device] {spotifyplus_device_names:device_name}"
|
||||
- "spotify transfer playback [to] [device] {device_name}"
|
||||
|
||||
# Base sentence phrases for this intent.
|
||||
# This sentence is recognized when a name / area is NOT provided in the spoken command.
|
||||
# In this case, the first active SpotifyPlus media player is used.
|
||||
|
||||
# __Example Phrases - Default Player__
|
||||
# - "spotify transfer playback to device Bose-ST10-1"
|
||||
# - "spotify transfer playback to Bose-ST10-1"
|
||||
# - "spotify transfer playback Bose-ST10-1"
|
||||
|
||||
slots:
|
||||
|
||||
name: "Spotify Premium" # default media player alias.
|
||||
target_player: ""
|
||||
delay: 0.50
|
||||
device_name: "*"
|
||||
|
||||
response: default_no_player
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify transfer playback [to] [device] {spotifyplus_device_names:device_name} <on_spotifyplus_player_name>"
|
||||
- "spotify transfer playback [to] [device] {device_name} <on_spotifyplus_player_name>"
|
||||
|
||||
# This sentence is recognized when a player name is provided in the spoken
|
||||
# command (e.g. "on player Spotify Premium", "on Todds player", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Name__
|
||||
# - "spotify transfer playback to Bose-ST10-1 for player spotify premium"
|
||||
# - "spotify transfer playback to Bose-ST10-1 for spotify premium player"
|
||||
|
||||
slots:
|
||||
|
||||
name: ""
|
||||
delay: 0.50
|
||||
device_name: "*"
|
||||
|
||||
response: default_by_name
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify transfer playback [to] [device] {spotifyplus_device_names:device_name} <in_spotifyplus_player_area>"
|
||||
- "spotify transfer playback [to] [device] {device_name} <in_spotifyplus_player_area>"
|
||||
|
||||
# This sentence is recognized when a player area is provided in the spoken
|
||||
# command (e.g. "in the Living Room area", "in the Living Room", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Area__
|
||||
# - "spotify transfer playback to Bose-ST10-1 in the Office area"
|
||||
# - "spotify transfer playback to Bose-ST10-1 in the Office"
|
||||
|
||||
slots:
|
||||
|
||||
area: ""
|
||||
name: ""
|
||||
delay: 0.50
|
||||
device_name: "*"
|
||||
|
||||
response: default_by_area
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# Custom response definitions for THIS intent.
|
||||
# Note - Shared responses for all intents are stored in the Common file.
|
||||
# ============================================================================
|
||||
responses:
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlayerTransferPlayback:
|
||||
|
||||
default_no_player: "Okay, playback transferred to device \"{{ slots.device_name.text }}\", for default player \"{{ slots.target_player.text }}\"."
|
||||
default_by_name: "Okay, playback transferred to device \"{{ slots.device_name.text }}\", for named player \"{{ slots.target_player.text }}\"."
|
||||
default_by_area: "Okay, playback transferred to device \"{{ slots.device_name.text }}\", in the \"{{ slots.target_player.text }}\" area."
|
||||
default: "Okay, playback transferred to device \"{{ slots.device_name.text }}\"."
|
||||
@@ -0,0 +1,123 @@
|
||||
# ============================================================================
|
||||
# SpotifyPlus integration intent custom sentence and response definitions.
|
||||
#
|
||||
# Language: en, English
|
||||
# Intent: SpotifyPlusPlayerVolumeControl
|
||||
# Location: custom_sentences/en/spotifyplus_PlayerVolumeControl_en.yaml
|
||||
# ============================================================================
|
||||
language: en
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlayerVolumeControl:
|
||||
|
||||
data:
|
||||
|
||||
- sentences:
|
||||
|
||||
- "[set] spotify {spotifyplus_player_volume_control}"
|
||||
|
||||
# Base sentence phrases for this intent.
|
||||
# This sentence is recognized when a name / area is NOT provided in the spoken command.
|
||||
# In this case, the first active SpotifyPlus media player is used.
|
||||
|
||||
# __Example Phrases - No Player Name__
|
||||
# - "spotify player volume level down"
|
||||
# - "spotify player volume level decrease"
|
||||
# - "spotify volume level decrease"
|
||||
# - "spotify volume decrease"
|
||||
# - "spotify volume down"
|
||||
|
||||
# - "spotify player volume level up"
|
||||
# - "spotify player volume level increase"
|
||||
# - "spotify volume level increase"
|
||||
# - "spotify volume increase"
|
||||
# - "spotify volume up"
|
||||
|
||||
# - "spotify player volume mute"
|
||||
# - "spotify player volume off"
|
||||
# - "spotify volume mute"
|
||||
# - "spotify volume off"
|
||||
|
||||
# - "spotify player volume unmute"
|
||||
# - "spotify player volume on"
|
||||
# - "spotify player volume restore"
|
||||
# - "spotify volume unmute"
|
||||
# - "spotify volume on"
|
||||
# - "spotify volume restore"
|
||||
|
||||
# - "spotify volume step level to 5 percent"
|
||||
# - "spotify volume step 5 percent"
|
||||
# - "spotify volume step 5"
|
||||
# - "set spotify volume step level to 5 percent"
|
||||
|
||||
# - "spotify volume level 5 percent"
|
||||
# - "spotify volume level 5"
|
||||
# - "spotify volume 5"
|
||||
# - "set spotify volume level to 5 percent"
|
||||
# - "set spotify volume level 5"
|
||||
# - "set spotify volume 5"
|
||||
# - "set spotify player volume level to 5 percent"
|
||||
|
||||
slots:
|
||||
|
||||
name: "Spotify Premium" # default player to use.
|
||||
delay: 0.50
|
||||
player_volume_level_pct: 10
|
||||
player_volume_step_pct: 10
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "[set] spotify {spotifyplus_player_volume_control} <on_spotifyplus_player_name>"
|
||||
|
||||
# This sentence is recognized when a player name is provided in the spoken
|
||||
# command (e.g. "on player Spotify Premium", "on Todds player", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Name__
|
||||
# - "spotify volume decrease for player spotify premium"
|
||||
# - "spotify volume decrease for spotify premium player"
|
||||
|
||||
slots:
|
||||
|
||||
name: ""
|
||||
delay: 0.50
|
||||
player_volume_level_pct: 10
|
||||
player_volume_step_pct: 10
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "[set] spotify {spotifyplus_player_volume_control} <in_spotifyplus_player_area>"
|
||||
|
||||
# This sentence is recognized when a player area is provided in the spoken
|
||||
# command (e.g. "in the Living Room area", "in the Living Room", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Area__
|
||||
# - "spotify volume decrease in the Office area"
|
||||
# - "spotify volume decrease in the Office"
|
||||
|
||||
slots:
|
||||
|
||||
area: ""
|
||||
name: ""
|
||||
delay: 0.50
|
||||
player_volume_level_pct: 10
|
||||
player_volume_step_pct: 10
|
||||
|
||||
response: default
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# Custom response definitions for THIS intent.
|
||||
# Note - Shared responses for all intents are stored in the Common file.
|
||||
# ============================================================================
|
||||
responses:
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlayerVolumeControl:
|
||||
|
||||
default: "" # not used - see common `player_volume_control_xxxxxxx` messages.
|
||||
@@ -0,0 +1,101 @@
|
||||
# ============================================================================
|
||||
# SpotifyPlus integration intent custom sentence and response definitions.
|
||||
#
|
||||
# Language: en, English
|
||||
# Intent: SpotifyPlusPlaylistCreate
|
||||
# Location: custom_sentences/en/spotifyplus_PlaylistCreate_en.yaml
|
||||
# ============================================================================
|
||||
language: en
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlaylistCreate:
|
||||
|
||||
data:
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify create (playlist|play list) {playlist_name}" # freeform playlist text.
|
||||
- "create spotify (playlist|play list) {playlist_name}" # freeform playlist text.
|
||||
|
||||
# Base sentence phrases for this intent.
|
||||
# This sentence is recognized when a name / area is NOT provided in the spoken command.
|
||||
# In this case, the first active SpotifyPlus media player is used.
|
||||
|
||||
# __Example Phrases - Default Player__
|
||||
# - "spotify create playlist My New Playlist"
|
||||
# - "create spotify playlist My New Playlist"
|
||||
|
||||
slots:
|
||||
|
||||
name: "Spotify Premium" # default media player alias.
|
||||
target_player: ""
|
||||
playlist_name: ""
|
||||
description: "Created by Home Assistant Voice Assist intent."
|
||||
is_collaborative: False
|
||||
is_public: False
|
||||
image_path: "" # example: "www/spotifyplus/spotify_playlist_default_image.png"
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify create (playlist|play list) {playlist_name} <on_spotifyplus_player_name>"
|
||||
- "create spotify (playlist|play list) {playlist_name} <on_spotifyplus_player_name>"
|
||||
|
||||
# This sentence is recognized when a player name is provided in the spoken
|
||||
# command (e.g. "on player Spotify Premium", "on Todds player", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Name__
|
||||
# - "spotify create playlist My New Playlist on player spotify premium"
|
||||
# - "create spotify playlist My New Playlist on player spotify premium"
|
||||
|
||||
slots:
|
||||
|
||||
name: ""
|
||||
target_player: ""
|
||||
playlist_name: ""
|
||||
description: "Created by Home Assistant Voice Assist intent."
|
||||
is_collaborative: False
|
||||
is_public: False
|
||||
image_path: "" # example: "www/spotifyplus/spotify_playlist_default_image.png"
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
- "spotify create (playlist|play list) {playlist_name} <in_spotifyplus_player_area>"
|
||||
- "create spotify (playlist|play list) {playlist_name} <in_spotifyplus_player_area>"
|
||||
|
||||
# This sentence is recognized when a player area is provided in the spoken
|
||||
# command (e.g. "in the Living Room area", "in the Living Room", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Area__
|
||||
# - "spotify create playlist My New Playlist in the Office area"
|
||||
# - "create spotify playlist My New Playlist in the Office"
|
||||
|
||||
slots:
|
||||
|
||||
area: ""
|
||||
name: ""
|
||||
target_player: ""
|
||||
playlist_name: ""
|
||||
description: "Created by Home Assistant Voice Assist intent."
|
||||
is_collaborative: False
|
||||
is_public: False
|
||||
image_path: "" # example: "www/spotifyplus/spotify_playlist_default_image.png"
|
||||
|
||||
response: default
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# Custom response definitions for THIS intent.
|
||||
# Note - Shared responses for all intents are stored in the Common file.
|
||||
# ============================================================================
|
||||
responses:
|
||||
intents:
|
||||
|
||||
SpotifyPlusPlaylistCreate:
|
||||
|
||||
default: "Okay, created Spotify playlist named \"{{ slots.playlist_title.text }}\"."
|
||||
@@ -0,0 +1,167 @@
|
||||
# ============================================================================
|
||||
# SpotifyPlus integration intent custom sentence and response definitions.
|
||||
#
|
||||
# Language: en, English
|
||||
# Intent: SpotifyPlusSearchPlayControl
|
||||
# Location: custom_sentences/en/spotifyplus_SearchPlayControl_en.yaml
|
||||
# ============================================================================
|
||||
language: en
|
||||
intents:
|
||||
|
||||
SpotifyPlusSearchPlayControl:
|
||||
|
||||
data:
|
||||
|
||||
- sentences:
|
||||
|
||||
# this sentence template should be used when multiple terms are required.
|
||||
- "spotify play {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) (podcast|pod cast|show) {freeform:criteria_arg_2}"
|
||||
- "spotify play {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) artist {freeform:criteria_arg_2}"
|
||||
- "play spotify {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) (podcast|pod cast|show) {freeform:criteria_arg_2}"
|
||||
- "play spotify {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) artist {freeform:criteria_arg_2}"
|
||||
|
||||
# this sentence template should be used when single terms are required.
|
||||
- "spotify play {spotifyplus_search_play_control_single}"
|
||||
- "spotify play {spotifyplus_search_play_control_single} (by|for) artist {freeform:criteria_arg_1}"
|
||||
- "spotify play {spotifyplus_search_play_control_single} {freeform:criteria_arg_1} [{latest_episode}]"
|
||||
- "play spotify {spotifyplus_search_play_control_single}"
|
||||
- "play spotify {spotifyplus_search_play_control_single} (by|for) artist {freeform:criteria_arg_1}"
|
||||
- "play spotify {spotifyplus_search_play_control_single} {freeform:criteria_arg_1} [{latest_episode}]"
|
||||
|
||||
# Base sentence phrases for this intent.
|
||||
# This sentence is recognized when a name / area is NOT provided in the spoken command.
|
||||
# In this case, the first active SpotifyPlus media player is used.
|
||||
|
||||
# __Example Phrases - Default Player__
|
||||
# - "spotify play artist album Take Everything by artist Seventh Day Slumber"
|
||||
# - "play spotify artist album Take Everything by artist Seventh Day Slumber"
|
||||
|
||||
# - "spotify play artist track I Need You by artist Seventh Day Slumber"
|
||||
# - "play spotify artist track I Need You by artist Seventh Day Slumber"
|
||||
|
||||
# - "spotify play episode Kurt Russell for podcast Armchair Expert with Dax Shepard"
|
||||
# - "play spotify episode Kurt Russell for podcast Armchair Expert with Dax Shepard"
|
||||
|
||||
# - "spotify play favorite tracks for artist test artist list entry"
|
||||
# - "play spotify favorite tracks for artist test artist list entry"
|
||||
# - "spotify play favorite tracks for artist Jeremy Camp"
|
||||
# - "play spotify favorite tracks for artist Jeremy Camp"
|
||||
# - "spotify play favorite tracks"
|
||||
# - "play spotify favorite tracks"
|
||||
|
||||
# - "spotify play audiobook Test Audiobook List Entry"
|
||||
# - "play spotify audiobook Test Audiobook List Entry"
|
||||
# - "spotify play audiobook The Elfstones of Shannara"
|
||||
# - "play spotify audiobook The Elfstones of Shannara"
|
||||
|
||||
# - "spotify play playlist Test Playlist List Entry"
|
||||
# - "play spotify playlist Test Playlist List Entry"
|
||||
# - "spotify play playlist Old Christian Contemporary"
|
||||
# - "play spotify playlist Old Christian Contemporary"
|
||||
|
||||
# - "spotify play podcast Test Podcast List Entry"
|
||||
# - "play spotify podcast Test Podcast List Entry"
|
||||
# - "spotify play podcast Armchair Expert with Dax Shepard"
|
||||
# - "play spotify podcast Armchair Expert with Dax Shepard"
|
||||
# - "spotify play podcast Armchair Expert with Dax Shepard latest episode"
|
||||
# - "play spotify podcast Armchair Expert with Dax Shepard latest episode"
|
||||
|
||||
# - "spotify play track Test Track List Entry"
|
||||
# - "play spotify track Test Track List Entry"
|
||||
# - "spotify play track More Of You"
|
||||
# - "play spotify track More Of You"
|
||||
|
||||
slots:
|
||||
|
||||
name: "Spotify Premium" # default media player alias.
|
||||
delay: 0.50
|
||||
device_name: "*"
|
||||
latest_episode: "off"
|
||||
limit_total: 200
|
||||
player_shuffle_mode: "off"
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
# this sentence template should be used when multiple terms are required.
|
||||
- "spotify play {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) (podcast|pod cast|show) {freeform:criteria_arg_2} <on_spotifyplus_player_name>"
|
||||
- "spotify play {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) artist {freeform:criteria_arg_2} <on_spotifyplus_player_name>"
|
||||
- "play spotify {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) (podcast|pod cast|show) {freeform:criteria_arg_2} <on_spotifyplus_player_name>"
|
||||
- "play spotify {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) artist {freeform:criteria_arg_2} <on_spotifyplus_player_name>"
|
||||
|
||||
# this sentence template should be used when single terms are required.
|
||||
- "spotify play {spotifyplus_search_play_control_single} <on_spotifyplus_player_name>"
|
||||
- "spotify play {spotifyplus_search_play_control_single} (by|for) artist {freeform:criteria_arg_1} <on_spotifyplus_player_name>"
|
||||
- "spotify play {spotifyplus_search_play_control_single} {freeform:criteria_arg_1} [{latest_episode}] <on_spotifyplus_player_name>"
|
||||
- "play spotify {spotifyplus_search_play_control_single} <on_spotifyplus_player_name>"
|
||||
- "play spotify {spotifyplus_search_play_control_single} (by|for) artist {freeform:criteria_arg_1} <on_spotifyplus_player_name>"
|
||||
- "play spotify {spotifyplus_search_play_control_single} {freeform:criteria_arg_1} [{latest_episode}] <on_spotifyplus_player_name>"
|
||||
|
||||
# This sentence is recognized when a player name is provided in the spoken
|
||||
# command (e.g. "on player Spotify Premium", "on Todds player", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Name__
|
||||
# - "spotify play artist track I Need You by artist Seventh Day Slumber on player spotify premium"
|
||||
# - "spotify play track Test Track List Entry on player spotify premium"
|
||||
# - "spotify play track More Of You on player spotify premium"
|
||||
|
||||
slots:
|
||||
|
||||
name: ""
|
||||
delay: 0.50
|
||||
device_name: "*"
|
||||
latest_episode: "off"
|
||||
limit_total: 200
|
||||
player_shuffle_mode: "off"
|
||||
|
||||
response: default
|
||||
|
||||
- sentences:
|
||||
|
||||
# this sentence template should be used when multiple terms are required.
|
||||
- "spotify play {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) (podcast|pod cast|show) {freeform:criteria_arg_2} <in_spotifyplus_player_area>"
|
||||
- "spotify play {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) artist {freeform:criteria_arg_2} <in_spotifyplus_player_area>"
|
||||
- "play spotify {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) (podcast|pod cast|show) {freeform:criteria_arg_2} <in_spotifyplus_player_area>"
|
||||
- "play spotify {spotifyplus_search_play_control_multi} {freeform:criteria_arg_1} (by|for) artist {freeform:criteria_arg_2} <in_spotifyplus_player_area>"
|
||||
|
||||
# this sentence template should be used when single terms are required.
|
||||
- "spotify play {spotifyplus_search_play_control_single} <in_spotifyplus_player_area>"
|
||||
- "spotify play {spotifyplus_search_play_control_single} (by|for) artist {freeform:criteria_arg_1} <in_spotifyplus_player_area>"
|
||||
- "spotify play {spotifyplus_search_play_control_single} {freeform:criteria_arg_1} [{latest_episode}] <in_spotifyplus_player_area>"
|
||||
- "play spotify {spotifyplus_search_play_control_single} <in_spotifyplus_player_area>"
|
||||
- "play spotify {spotifyplus_search_play_control_single} (by|for) artist {freeform:criteria_arg_1} <in_spotifyplus_player_area>"
|
||||
- "play spotify {spotifyplus_search_play_control_single} {freeform:criteria_arg_1} [{latest_episode}] <in_spotifyplus_player_area>"
|
||||
|
||||
# This sentence is recognized when a player area is provided in the spoken
|
||||
# command (e.g. "in the Living Room area", "in the Living Room", etc).
|
||||
# Supports the same base sentence phrases for this intent.
|
||||
|
||||
# __Example Phrases - By Player Area__
|
||||
# - "spotify play artist track I Need You by artist Seventh Day Slumber in the Office area"
|
||||
# - "spotify play track Test Track List Entry in the Office area"
|
||||
# - "spotify play track More Of You in the Office area"
|
||||
|
||||
slots:
|
||||
|
||||
area: ""
|
||||
name: ""
|
||||
delay: 0.50
|
||||
device_name: "*"
|
||||
latest_episode: "off"
|
||||
limit_total: 200
|
||||
player_shuffle_mode: "off"
|
||||
|
||||
response: default
|
||||
|
||||
# ============================================================================
|
||||
# Custom response definitions for THIS intent.
|
||||
# Note - Shared responses for all intents are stored in the Common file.
|
||||
# ============================================================================
|
||||
responses:
|
||||
intents:
|
||||
|
||||
SpotifyPlusSearchPlayControl:
|
||||
|
||||
default: "" # not used - see common `play_xxxxx` message.
|
||||
@@ -0,0 +1,461 @@
|
||||
# ============================================================================
|
||||
# SpotifyPlus integration intent common responses, lists, expand rules, etc.
|
||||
#
|
||||
# Location: custom_sentences/en/spotifyplus_common_en.yaml
|
||||
# Language: en, English
|
||||
# ============================================================================
|
||||
language: en
|
||||
responses:
|
||||
|
||||
# ============================================================================
|
||||
# SpotifyPlus platform responses.
|
||||
#
|
||||
# Note that the HA conversation integration does not understand this concept,
|
||||
# as this functionality is unique to OUR integration. With that said, you
|
||||
# must reload the integration (or restart HA) in order for changes to take
|
||||
# effect for these messages.
|
||||
# ============================================================================
|
||||
spotifyplus:
|
||||
|
||||
# general error messages.
|
||||
error_unhandled: "An unexpected error occurred:\n\n{{ slots.error_info.text }}"
|
||||
error_failed_to_handle: "Failed to handle intent:\n\n{{ slots.error_info.text }}"
|
||||
error_media_type_invalid: "Media type value \"{{ slots.spotifyplus_media_type.text }}\" ({{ slots.spotifyplus_media_type.value }}) was not recognized."
|
||||
error_player_deck_control_invalid: "Player deck control value \"{{ slots.spotifyplus_player_deck_control.text }}\" ({{ slots.spotifyplus_player_deck_control.value }}) was not recognized."
|
||||
error_player_volume_control_invalid: "Player volume control value \"{{ slots.spotifyplus_player_volume_control.text }}\" ({{ slots.spotifyplus_player_volume_control.value }}) was not recognized."
|
||||
error_search_play_control_invalid: "Search play control value \"{{ slots.spotifyplus_search_play_control.text }}\" ({{ slots.spotifyplus_search_play_control.value }}) was not recognized."
|
||||
error_search_no_criteria: "Search criteria not specified for search play control type \"{{ slots.spotifyplus_search_play_control.text }}\" ({{ slots.spotifyplus_search_play_control.value }})."
|
||||
|
||||
# get information request related messages.
|
||||
get_info_artist_bio: "Artist bio for \"{{ slots.artist_title.text }}\" ... \n\n{{ slots.artist_bio.text | truncate(400, end=' ...') }}\n\n[more info at {{ slots.artist_url.text }}]({{ slots.artist_url.value }})"
|
||||
|
||||
# favorites management related messages.
|
||||
favorite_operation_invalid: "Favorite operation type was invalid: \"{{ slots.favorite_operator.text }}\"."
|
||||
favorite_add_remove_album_ok: "Okay, {{ slots.favorite_operator.text }} of Spotify album favorite \"{{ slots.album_title.text }}\", by artist \"{{ slots.artist_title.text }}\", was successful."
|
||||
favorite_add_remove_artist_ok: "Okay, {{ slots.favorite_operator.text }} of Spotify artist favorite \"{{ slots.artist_title.text }}\", was successful."
|
||||
favorite_add_remove_audiobook_ok: "Okay, {{ slots.favorite_operator.text }} of Spotify audiobook favorite \"{{ slots.audiobook_title.text }}\", by author \"{{ slots.author_title.text }}\", was successful."
|
||||
favorite_add_remove_playlist_ok: "Okay, {{ slots.favorite_operator.text }} of Spotify playlist favorite \"{{ slots.playlist_title.text }}\", was successful."
|
||||
favorite_add_remove_podcast_ok: "Okay, {{ slots.favorite_operator.text }} of Spotify podcast favorite \"{{ slots.podcast_title.text }}\", was successful."
|
||||
favorite_add_remove_podcast_episode_ok: "Okay, {{ slots.favorite_operator.text }} of Spotify episode favorite \"{{ slots.episode_title.text }}\", from podcast \"{{ slots.podcast_title.text }}\", was successful."
|
||||
favorite_add_remove_track_ok: "Okay, {{ slots.favorite_operator.text }} of Spotify track favorite \"{{ slots.track_title.text }}\", by artist \"{{ slots.artist_title.text }}\", was successful."
|
||||
|
||||
# now playing information related messages.
|
||||
nowplaying_info_album: "Media player is playing a track from album \"{{ slots.album_title.text }}\", by artist \"{{ slots.artist_title.text }}\".\n\n[more info at {{ slots.album_url.text }}]({{ slots.album_url.value }})"
|
||||
nowplaying_info_audiobook: "Media player is playing \"{{ slots.chapter_title.text }}\", from audiobook \"{{ slots.audiobook_title.text }}\", by author \"{{ slots.author_title.text }}\".\n\n[more info at {{ slots.audiobook_url.text }}]({{ slots.audiobook_url.value }})"
|
||||
nowplaying_info_playlist: "Media player is playing a track from playlist \"{{ slots.playlist_title.text }}\".\n\n[more info at {{ slots.playlist_url.text }}]({{ slots.playlist_url.value }})"
|
||||
nowplaying_info_podcast: "Media player is playing episode \"{{ slots.episode_title.text }}\", from podcast \"{{ slots.podcast_title.text }}\".\n\n[more info at {{ slots.podcast_url.text }}]({{ slots.podcast_url.value }})"
|
||||
nowplaying_info_podcast_episode: "Media player is playing episode \"{{ slots.episode_title.text }}\", from podcast \"{{ slots.podcast_title.text }}\".\n\n[more info at {{ slots.episode_url.text }}]({{ slots.episode_url.value }})"
|
||||
nowplaying_info_track: "Media player is playing track \"{{ slots.track_title.text }}\", from album \"{{ slots.album_title.text }}\", by artist \"{{ slots.artist_title.text }}\".\n\n[more info at {{ slots.album_url.text }}]({{ slots.album_url.value }})"
|
||||
nowplaying_no_media_album: "SpotifyPlus media player is currently not playing media that contains Track Album information."
|
||||
nowplaying_no_media_artist: "SpotifyPlus media player is currently not playing media that contains Track Artist information."
|
||||
nowplaying_no_media_audiobook: "SpotifyPlus media player is currently not playing media that contains Audiobook information."
|
||||
nowplaying_no_media_playlist: "SpotifyPlus media player is currently not playing media that contains Playlist information."
|
||||
nowplaying_no_media_podcast: "SpotifyPlus media player is currently not playing media that contains Podcast information."
|
||||
nowplaying_no_media_podcast_episode: "SpotifyPlus media player is currently not playing media that contains Podcast Episode information."
|
||||
nowplaying_no_media_track: "SpotifyPlus media player is currently not playing media that contains Track information."
|
||||
|
||||
# media player related messages.
|
||||
play_album_with_artist: "Playing Spotify album \"{{ slots.album_title.text }}\", by artist \"{{ slots.artist_title.text }}\"."
|
||||
play_album: "Playing Spotify album \"{{ slots.album_title.text }}\"."
|
||||
play_audiobook: "Playing Spotify audiobook \"{{ slots.audiobook_title.text }}\"."
|
||||
play_audiobook_with_author: "Playing Spotify audiobook \"{{ slots.audiobook_title.text }}\", by author \"{{ slots.author_title.text }}\"."
|
||||
play_favorite_tracks: "Playing Spotify track favorites."
|
||||
play_favorite_tracks_for_artist: "Playing Spotify track favorites, for artist \"{{ slots.artist_title.text }}\"."
|
||||
play_playlist: "Playing Spotify playlist \"{{ slots.playlist_title.text }}\"."
|
||||
play_podcast: "Playing Spotify podcast \"{{ slots.podcast_title.text }}\"."
|
||||
play_podcast_episode: "Playing Spotify episode \"{{ slots.episode_title.text }}\", from podcast \"{{ slots.podcast_title.text }}\"."
|
||||
play_track_with_artist: "Playing Spotify track \"{{ slots.track_title.text }}\", by artist \"{{ slots.artist_title.text }}\"."
|
||||
play_track: "Playing Spotify track \"{{ slots.track_title.text }}\"."
|
||||
player_already_playing_media: "Media player \"{{ slots.target_player.text }}\" is already playing media."
|
||||
player_deck_control_pause: "Okay, Spotify paused the track."
|
||||
player_deck_control_resume: "Okay, Spotify resumed play."
|
||||
player_deck_control_seek_start: "Okay, Spotify restarted the track."
|
||||
player_deck_control_skip_next: "Okay, Spotify skipped to next track."
|
||||
player_deck_control_skip_previous: "Okay, Spotify skipped to previous track."
|
||||
player_features_not_supported: "Media player \"{{ slots.name.text }}\" does not support required features for this request: \"{{ slots.error_features.text }}\"."
|
||||
player_not_exposed_to_voice: "Media player \"{{ slots.target_player.text }}\" has not been exposed to Voice Assistant."
|
||||
player_not_matched: "SpotifyPlus media player could not be resolved by \"{{ slots.target_player.text }}\"."
|
||||
player_not_matched_area: "SpotifyPlus media player could not be resolved for the \"{{ slots.area.text }}\" area."
|
||||
player_not_playing_media: "Media player \"{{ slots.target_player.text }}\" is currently not playing media."
|
||||
player_not_spotifyplus: "Resolved media player \"{{ slots.target_player.text }}\" is not a SpotifyPlus media player."
|
||||
player_volume_control_down: "Okay, Spotify volume level was decreased by {{ slots.player_volume_step_pct.text }} percent."
|
||||
player_volume_control_mute: "Okay, Spotify volume level was muted."
|
||||
player_volume_control_set_step_level: "Okay, Spotify volume step level is {{ slots.player_volume_step_pct.text }} percent."
|
||||
player_volume_control_set_level: "Okay, Spotify volume level set to {{ slots.player_volume_level_pct.text }} percent."
|
||||
player_volume_control_unmute: "Okay, Spotify volume level was restored."
|
||||
player_volume_control_up: "Okay, Spotify volume level was increased by {{ slots.player_volume_step_pct.text }} percent."
|
||||
playlist_created: "Okay, created Spotify playlist named \"{{ slots.playlist_title.text }}\".\n\n[more info at {{ slots.playlist_url.text }}]({{ slots.playlist_url.value }})"
|
||||
|
||||
# general spotify information related messages.
|
||||
spotify_no_artist_info: "Artist information could not be found for \"{{ slots.artist_name.text }}\"."
|
||||
spotify_search_no_items_album: "Album information could not be found for \"{{ slots.criteria_arg_1.text }}\". Search criteria: \"{{ slots.search_criteria.text }}\"."
|
||||
spotify_search_no_items_audiobook: "Audiobook information could not be found for \"{{ slots.criteria_arg_1.text }}\". Search criteria: \"{{ slots.search_criteria.text }}\"."
|
||||
spotify_search_no_items_playlist: "Playlist information could not be found for \"{{ slots.criteria_arg_1.text }}\". Search criteria: \"{{ slots.search_criteria.text }}\"."
|
||||
spotify_search_no_items_podcast: "Podcast information could not be found for \"{{ slots.criteria_arg_1.text }}\". Search criteria: \"{{ slots.search_criteria.text }}\"."
|
||||
spotify_search_no_items_podcast_episode: "Episode information could not be found for \"{{ slots.criteria_arg_1.text }}\". Search criteria: \"{{ slots.search_criteria.text }}\"."
|
||||
spotify_search_no_items_track: "Track information could not be found for \"{{ slots.criteria_arg_1.text }}\". Search criteria: \"{{ slots.search_criteria.text }}\"."
|
||||
spotify_premium_required: "Sorry, a Spotify premium account is required for the requested function using media player \"{{ slots.target_player.text }}\"."
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# SpotifyPlus generic responses.
|
||||
#
|
||||
# Note that the HA conversation integration does not understand this concept,
|
||||
# as this functionality is unique to OUR integration. With that said, you
|
||||
# must reload the integration (or restart HA) in order for changes to take
|
||||
# effect for these messages.
|
||||
# ============================================================================
|
||||
generic-response-1: "This is generic response message 1"
|
||||
generic-response-2: "This is generic response message 2"
|
||||
generic-response-3: "This is generic response message 3"
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# Home Assistant error responses.
|
||||
#
|
||||
# The values here will override HA built-in error responses.
|
||||
# They are purposefully designed to be as generic as possible, as they cover
|
||||
# multiple domain / platform types.
|
||||
# ============================================================================
|
||||
errors:
|
||||
|
||||
# general errors.
|
||||
no_intent: "Sorry, I couldn't understand that"
|
||||
handle_error: "An unexpected error occurred"
|
||||
|
||||
# intent matching contraint errors used when target(s) cannot be resolved.
|
||||
no_area: "Sorry, I am not aware of any area called \"{{ area }}\"."
|
||||
no_floor: "Sorry, I am not aware of any floor called \"{{ floor }}\"."
|
||||
no_domain: "Sorry, I am not aware of any \"{{ domain.replace('_', ' ') }}\"."
|
||||
no_domain_in_area: "Sorry, I am not aware of any \"{{ domain.replace('_', ' ') }}\" in the \"{{ area }}\" area."
|
||||
no_domain_in_floor: "Sorry, I am not aware of any \"{{ domain.replace('_', ' ') }}\" on the \"{{ floor }}\" floor."
|
||||
no_device_class: "Sorry, I am not aware of any \"{{ device_class }}\"."
|
||||
no_device_class_in_area: "Sorry, I am not aware of any \"{{ device_class }}\" in the \"{{ area }}\" area."
|
||||
no_device_class_in_floor: "Sorry, I am not aware of any \"{{ device_class }}\" in the \"{{ floor }}\" floor."
|
||||
no_entity: "Sorry, I am not aware of any device called \"{{ entity }}\"."
|
||||
no_entity_in_area: "Sorry, I am not aware of any device called \"{{ entity }}\" in the \"{{ area }}\" area."
|
||||
no_entity_in_floor: "Sorry, I am not aware of any device called \"{{ entity }}\" in the \"{{ floor }}\" floor."
|
||||
entity_wrong_state: "Sorry, no device is {{ state | lower }}."
|
||||
feature_not_supported: "Sorry, no device supports the required features."
|
||||
|
||||
# intent matching contraint errors used when target(s) can be resolved, but are not exposed to voice assistant.
|
||||
no_entity_exposed: "Sorry, \"{{ entity }}\" is not exposed to Voice Assistant."
|
||||
no_entity_in_area_exposed: "Sorry, \"{{ entity }}\" in the \"{{ area }}\" area is not exposed to Voice Assistant."
|
||||
no_entity_in_floor_exposed: "Sorry, \"{{ entity }}\" in the \"{{ floor }}\" floor is not exposed to Voice Assistant."
|
||||
no_domain_exposed: "Sorry, no \"{{ domain.replace('_', ' ') }}\" is exposed to Voice Assistant."
|
||||
no_domain_in_area_exposed: "Sorry, no \"{{ domain.replace('_', ' ') }}\" in the \"{{ area }}\" area is exposed to Voice Assistant."
|
||||
no_domain_in_floor_exposed: "Sorry, no \"{{ domain.replace('_', ' ') }}\" in the \"{{ floor }}\" floor is exposed to Voice Assistant."
|
||||
no_device_class_exposed: "Sorry, no \"{{ device_class }}\" is exposed to Voice Assistant."
|
||||
no_device_class_in_area_exposed: "Sorry, no \"{{ device_class }}\" in the \"{{ area }}\" area is exposed to Voice Assistant."
|
||||
no_device_class_in_floor_exposed: "Sorry, no \"{{ device_class }}\" in the \"{{ floor }}\" floor is exposed to Voice Assistant."
|
||||
|
||||
# intent matching contraint errors used when multiple (exposed) devices have the same name.
|
||||
duplicate_entities: "Sorry, there are multiple devices called \"{{ entity }}\"."
|
||||
duplicate_entities_in_area: "Sorry, there are multiple devices called \"{{ entity }}\" in the \"{{ area }}\" area."
|
||||
duplicate_entities_in_floor: "Sorry, there are multiple devices called \"{{ entity }}\" in the \"{{ floor }}\" floor."
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# SpotifyPlus common lists
|
||||
# ============================================================================
|
||||
lists:
|
||||
|
||||
freeform:
|
||||
wildcard: true # accept freeform text.
|
||||
|
||||
album_name:
|
||||
wildcard: true # accept freeform text.
|
||||
|
||||
artist_name:
|
||||
wildcard: true # accept freeform text.
|
||||
|
||||
device_name:
|
||||
wildcard: true # accept freeform text.
|
||||
|
||||
playlist_name:
|
||||
wildcard: true # accept freeform text.
|
||||
|
||||
track_name:
|
||||
wildcard: true # accept freeform text.
|
||||
|
||||
favorite_operator:
|
||||
# out values must be English value.
|
||||
values:
|
||||
- in: "add"
|
||||
out: "add"
|
||||
- in: "remove"
|
||||
out: "remove"
|
||||
|
||||
latest_episode:
|
||||
# out values must be English value.
|
||||
values:
|
||||
- in: "(latest|current) episode"
|
||||
out: "on"
|
||||
- in: ""
|
||||
out: "off"
|
||||
|
||||
player_repeat_mode:
|
||||
# out values must be English value.
|
||||
values:
|
||||
- in: "(on|[single|1|one] track|)"
|
||||
out: "track"
|
||||
- in: "(context|all|all tracks|list)"
|
||||
out: "context"
|
||||
- in: "(off|disable[d])"
|
||||
out: "off"
|
||||
|
||||
player_shuffle_mode:
|
||||
# out values must be English value.
|
||||
values:
|
||||
- in: "(on|true|enable[d])"
|
||||
out: "on"
|
||||
- in: "(off|false|disable[d])"
|
||||
out: "off"
|
||||
|
||||
player_volume_level:
|
||||
values:
|
||||
- in: (max|maximum|highest)
|
||||
out: 100
|
||||
- in: (min|minimum|lowest)
|
||||
out: 1
|
||||
|
||||
player_volume_level_pct:
|
||||
range:
|
||||
type: "percentage"
|
||||
from: 0
|
||||
to: 100
|
||||
|
||||
player_volume_step_pct:
|
||||
range:
|
||||
type: "percentage"
|
||||
from: 1
|
||||
to: 100
|
||||
|
||||
spotifyplus_media_type:
|
||||
# out values must be English value.
|
||||
values:
|
||||
- in: "(album|lp)"
|
||||
out: "album"
|
||||
- in: "artist"
|
||||
out: "artist"
|
||||
- in: "(audiobook|audio book|book)"
|
||||
out: "audiobook"
|
||||
- in: "(playlist|play list)"
|
||||
out: "playlist"
|
||||
- in: "(podcast|pod cast|show) episode"
|
||||
out: "episode"
|
||||
- in: "(podcast|pod cast|show)"
|
||||
out: "podcast"
|
||||
- in: "(track|song)"
|
||||
out: "track"
|
||||
|
||||
spotifyplus_player_deck_control:
|
||||
# out values must be English value.
|
||||
values:
|
||||
- in: "(pause|stop) [[<the>] (play[er]|track|song)]"
|
||||
out: "pause"
|
||||
- in: "(resume|start) [[<the>] (play[er]|track|song)]"
|
||||
out: "resume"
|
||||
- in: "(restart [[<the>] (track|song)]|skip (to|2) [<the>] start of [<the>] (track|song))"
|
||||
out: "seek_start"
|
||||
- in: "([play] [<the>] next|skip|skip (to|2) [<the>] next) (track|song)"
|
||||
out: "skip_next"
|
||||
- in: "([play] [<the>] previous|skip|skip (to|2) [<the>] previous) (track|song)"
|
||||
out: "skip_previous"
|
||||
|
||||
spotifyplus_player_volume_control:
|
||||
# out values must be English value.
|
||||
values:
|
||||
- in: "(mute|[player] volume [level] (mute|off))"
|
||||
out: "mute"
|
||||
- in: "(unmute|[player] volume [level] (unmute|un mute|restore|on))"
|
||||
out: "unmute"
|
||||
- in: "[player] volume [level] (decrease[d]|down|lower)"
|
||||
out: "step_down"
|
||||
- in: "[player] volume [level] (increase[d]|up|higher|raise)"
|
||||
out: "step_up"
|
||||
- in: "[player] volume step [level] [to|2] {player_volume_step_pct} [percent|%]"
|
||||
out: "set_step_level"
|
||||
- in: "[player] volume [level] [to|2] {player_volume_level_pct} [percent|%]"
|
||||
out: "set_level"
|
||||
|
||||
spotifyplus_search_play_control_multi:
|
||||
# out values must be English value.
|
||||
values:
|
||||
- in: "episode"
|
||||
out: "podcast_episode"
|
||||
- in: "artist (album|LP)"
|
||||
out: "artist_album"
|
||||
- in: "artist (track|song)"
|
||||
out: "artist_track"
|
||||
|
||||
spotifyplus_search_play_control_single:
|
||||
# out values must be English value.
|
||||
values:
|
||||
- in: "(album|LP) [{spotifyplus_album_names:criteria_arg_1}]"
|
||||
out: "album"
|
||||
- in: "(audiobook|audio book|book) [{spotifyplus_audiobook_names:criteria_arg_1}]"
|
||||
out: "audiobook"
|
||||
- in: "(playlist|play list) [{spotifyplus_playlist_names:criteria_arg_1}]"
|
||||
out: "playlist"
|
||||
- in: "(podcast|pod cast|show) [{spotifyplus_podcast_names:criteria_arg_1}] [{latest_episode}]"
|
||||
out: "podcast"
|
||||
- in: "(track favorites|favorite tracks)"
|
||||
out: "favorite_tracks"
|
||||
- in: "(track favorites|favorite tracks) (by|for) artist {spotifyplus_artist_names:criteria_arg_1}"
|
||||
out: "favorite_tracks_artist"
|
||||
- in: "(track|song) [{spotifyplus_track_names:criteria_arg_1}]"
|
||||
out: "track"
|
||||
|
||||
# --------------------------------------------------------------------------------------
|
||||
# SpotifyPlus voice-friendly album identifiers.
|
||||
#
|
||||
# This list is used primarily to identify Spotify Albums that either get misinterpreted
|
||||
# when a spoken phrase is used, or if you want a specific album of multiple album
|
||||
# renditions. For example, do you want Journey's original 1981 version of the
|
||||
# "Escape" album tour, or the 2022 remastered version?
|
||||
#
|
||||
# in: Voice friendly identifier.
|
||||
# out: Spotify album uri value.
|
||||
# --------------------------------------------------------------------------------------
|
||||
spotifyplus_album_names:
|
||||
values:
|
||||
- in: "Test List Entry"
|
||||
out: "spotify:album:4guAwaniEAEQSW0NCpo4gm" # Journey, 2022 Remaster
|
||||
- in: "Escape"
|
||||
out: "spotify:album:4guAwaniEAEQSW0NCpo4gm" # Journey, 2022 Remaster
|
||||
- in: "Escape 1981"
|
||||
out: "spotify:album:0gHmMKZ9s3ztqeMfAzwxRL" # Journey, 1981 Live, Escape Tour
|
||||
|
||||
# --------------------------------------------------------------------------------------
|
||||
# SpotifyPlus voice-friendly artist identifiers.
|
||||
#
|
||||
# This list is used primarily to identify Spotify Artists that either get misinterpreted
|
||||
# when a spoken phrase is used, or if you want a specific artist of multiple artist
|
||||
# renditions.
|
||||
#
|
||||
# in: Voice friendly identifier.
|
||||
# out: Spotify artist uri value.
|
||||
# --------------------------------------------------------------------------------------
|
||||
spotifyplus_artist_names:
|
||||
values:
|
||||
- in: "Test List Entry"
|
||||
out: "spotify:artist:6kFLnclYFc3gzpNt13wim5" # Seventh Day Slumber
|
||||
|
||||
# --------------------------------------------------------------------------------------
|
||||
# SpotifyPlus voice-friendly audiobook identifiers.
|
||||
#
|
||||
# This list is used primarily to identify Spotify Audiobooks that either get misinterpreted
|
||||
# when a spoken phrase is used, or if you want a specific audiobook of multiple audiobook
|
||||
# renditions.
|
||||
#
|
||||
# in: Voice friendly identifier.
|
||||
# out: Spotify audiobook uri value.
|
||||
# --------------------------------------------------------------------------------------
|
||||
spotifyplus_audiobook_names:
|
||||
values:
|
||||
- in: "Test List Entry"
|
||||
out: "spotify:show:74aydHJKgYz3AIq3jjBSv1" # The Elfstones of Shannara
|
||||
|
||||
# --------------------------------------------------------------------------------------
|
||||
# SpotifyPlus voice-friendly device name identifiers.
|
||||
#
|
||||
# This list is used to identify Spotify Connect device names.
|
||||
# These should align with what's in the `source_list` attribute of the media player.
|
||||
#
|
||||
# in: Voice friendly identifier.
|
||||
# out: SpotifyPlus media_player source_list entry.
|
||||
# --------------------------------------------------------------------------------------
|
||||
spotifyplus_device_names:
|
||||
values:
|
||||
- in: "Office"
|
||||
out: "Office Speaker"
|
||||
|
||||
# --------------------------------------------------------------------------------------
|
||||
# SpotifyPlus voice-friendly playlist identifiers.
|
||||
#
|
||||
# This list is used primarily to identify Spotify Algorithmic Playlists, which
|
||||
# cannot be returned by the Spotify Web API as of 2024/11/27.
|
||||
# More info: https://developer.spotify.com/blog/2024-11-27-changes-to-the-web-api
|
||||
#
|
||||
# in: Voice friendly identifier.
|
||||
# out: Spotify playlist uri value.
|
||||
# --------------------------------------------------------------------------------------
|
||||
spotifyplus_playlist_names:
|
||||
values:
|
||||
- in: "Test List Entry"
|
||||
out: "spotify:playlist:37i9dQZEVXcTh0pBxo9pZe" # Discover Weekly
|
||||
- in: "Daily Mix (1|One)"
|
||||
out: "spotify:playlist:37i9dQZF1E39vTG3GurFPW"
|
||||
- in: "Daily Mix (2|Two)"
|
||||
out: "spotify:playlist:37i9dQZF1E39DIjrju3A9t"
|
||||
- in: "Daily Mix (3|Three)"
|
||||
out: "spotify:playlist:37i9dQZF1E36yv9pXdC1Mb"
|
||||
- in: "Daily Mix (4|Four)"
|
||||
out: "spotify:playlist:37i9dQZF1E35Ejqg6yJW0p"
|
||||
- in: "Daily Mix (5|Five)"
|
||||
out: "spotify:playlist:37i9dQZF1E35nVVgp8iMex"
|
||||
- in: "Discover Weekly"
|
||||
out: "spotify:playlist:37i9dQZEVXcTh0pBxo9pZe"
|
||||
- in: "(DJ|deejay|dee jay)"
|
||||
out: "spotify:playlist:37i9dQZF1EYkqdzj48dyYq"
|
||||
|
||||
# --------------------------------------------------------------------------------------
|
||||
# SpotifyPlus voice-friendly podcast identifiers.
|
||||
#
|
||||
# This list is used primarily to identify Spotify Podcasts that either get misinterpreted
|
||||
# when a spoken phrase is used, or if you want a specific podcast of multiple podcast
|
||||
# renditions. For example, do you want "The Joe Rogan Experience", or "The Joe Rogan AI
|
||||
# Experience"?
|
||||
#
|
||||
# in: Voice friendly identifier.
|
||||
# out: Spotify podcast uri value.
|
||||
# --------------------------------------------------------------------------------------
|
||||
spotifyplus_podcast_names:
|
||||
values:
|
||||
- in: "Test List Entry"
|
||||
out: "spotify:show:6kAsbP8pxwaU2kPibKTuHE" # Armchair Expert with Dax Shepard
|
||||
|
||||
# --------------------------------------------------------------------------------------
|
||||
# SpotifyPlus voice-friendly track identifiers.
|
||||
#
|
||||
# This list is used primarily to identify Spotify Tracks that either get misinterpreted
|
||||
# when a spoken phrase is used, or if you want a specific track of multiple track
|
||||
# renditions. For example, do you want Journey's original 1981 version of the
|
||||
# "Don't Stop Believin" track, or the 2022 remastered version?
|
||||
#
|
||||
# in: Voice friendly identifier.
|
||||
# out: Spotify track uri value.
|
||||
# --------------------------------------------------------------------------------------
|
||||
spotifyplus_track_names:
|
||||
values:
|
||||
- in: "Test List Entry"
|
||||
out: "spotify:track:5ehcf6UL1TkwozB386cRAp" # Journey, 2024 Remaster, Don't Stop believin'
|
||||
- in: "Don't Stop Believing"
|
||||
out: "spotify:track:5ehcf6UL1TkwozB386cRAp" # Journey, 2024 Remaster
|
||||
- in: "Don't Stop Believing 1981"
|
||||
out: "spotify:track:3Ab9C0oz70wDyigunvnG5N" # Journey, 1981 Live, Escape Tour
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# SpotifyPlus common expansion rules
|
||||
# ============================================================================
|
||||
expansion_rules:
|
||||
|
||||
in_spotifyplus_player_area: "(in|inn) [<the>] ({area}|{area} area|area {area})" # e.g. "in the Office", "in the Office area", "in area Office"
|
||||
on_spotifyplus_player_name: "(on|for) [<the>] ({name} player|player {name})" # e.g. "on the Spotify Premium player", "on player Spotify Premium"
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# SpotifyPlus common skip words
|
||||
# ============================================================================
|
||||
skip_words:
|
||||
- "please"
|
||||
- "can you"
|
||||
- "could you"
|
||||
- "would you"
|
||||
- "for me"
|
||||
- "i'd like"
|
||||
- "i'd like to"
|
||||
- "i want"
|
||||
- "i want to"
|
||||
Reference in New Issue
Block a user