Add Siri synonyms for player commands and sections

Siri also accepts "Play", "Skip", "Toggle Playback", "Feed" and
similar words in the existing App Shortcut phrases.
This commit is contained in:
Arkadiusz Fal
2026-10-07 23:59:26 +02:00
parent 95d3893f46
commit 7527370f7f
2 changed files with 61 additions and 9 deletions

View File

@@ -197,12 +197,13 @@ enum PlayerControlCommand: String, AppEnum {
static let typeDisplayRepresentation: TypeDisplayRepresentation = "Player Command"
static let caseDisplayRepresentations: [PlayerControlCommand: DisplayRepresentation] = [
.play: "Resume",
.pause: "Pause",
.toggle: "Play/Pause",
.next: "Next Video",
.previous: "Previous Video",
.close: "Close Player",
// Synonyms are what Siri also accepts in "{command} in Yattee"
.play: DisplayRepresentation(title: "Resume", synonyms: ["Play", "Continue", "Unpause"]),
.pause: DisplayRepresentation(title: "Pause", synonyms: ["Stop"]),
.toggle: DisplayRepresentation(title: "Play/Pause", synonyms: ["Play or Pause", "Toggle Playback"]),
.next: DisplayRepresentation(title: "Next Video", synonyms: ["Next", "Skip", "Skip Video"]),
.previous: DisplayRepresentation(title: "Previous Video", synonyms: ["Previous", "Go Back"]),
.close: DisplayRepresentation(title: "Close Player", synonyms: ["Close", "Close Video"]),
]
var command: LinkAction.PlayerCommand {
@@ -344,9 +345,9 @@ enum YatteeSection: String, AppEnum {
static let typeDisplayRepresentation: TypeDisplayRepresentation = "Section"
static let caseDisplayRepresentations: [YatteeSection: DisplayRepresentation] = [
.home: "Home",
.subscriptions: "Subscriptions",
.bookmarks: "Bookmarks",
.history: "History",
.subscriptions: DisplayRepresentation(title: "Subscriptions", synonyms: ["Feed", "Subscription Feed"]),
.bookmarks: DisplayRepresentation(title: "Bookmarks", synonyms: ["Saved Videos"]),
.history: DisplayRepresentation(title: "History", synonyms: ["Watch History"]),
.playlists: "Playlists",
.continueWatching: "Continue Watching",
.downloads: "Downloads",

View File

@@ -1389,9 +1389,15 @@
}
}
}
},
"Close" : {
},
"Close Player" : {
},
"Close Video" : {
},
"Command" : {
@@ -1914,6 +1920,9 @@
}
}
}
},
"Continue" : {
},
"Continue Watching" : {
@@ -3281,6 +3290,9 @@
}
}
}
},
"Feed" : {
},
"feed.error.notLoggedIn" : {
"comment" : "Error when trying to view feed without being logged in",
@@ -4181,6 +4193,9 @@
},
"Get Now Playing" : {
},
"Go Back" : {
},
"History" : {
@@ -7084,6 +7099,9 @@
}
}
}
},
"Next" : {
},
"Next Video" : {
@@ -8243,12 +8261,18 @@
}
}
}
},
"Play" : {
},
"Play ${link}" : {
},
"Play Next" : {
},
"Play or Pause" : {
},
"Play Video" : {
@@ -9530,6 +9554,9 @@
},
"Position" : {
},
"Previous" : {
},
"Previous Video" : {
@@ -10058,6 +10085,9 @@
},
"Returns the title of what's playing in Yattee, or nothing when the player is closed." : {
},
"Saved Videos" : {
},
"Search For" : {
@@ -17306,6 +17336,12 @@
}
}
}
},
"Skip" : {
},
"Skip Video" : {
},
"smb.protocol.auto" : {
"comment" : "SMB protocol auto-negotiate option",
@@ -18797,6 +18833,9 @@
},
"Start Time" : {
},
"Stop" : {
},
"stream.adaptive" : {
"localizations" : {
@@ -18966,6 +19005,9 @@
},
"Subscribes to a channel from its link, in the account you're using in Yattee." : {
},
"Subscription Feed" : {
},
"subscription.error.alreadySubscribed" : {
@@ -19729,6 +19771,9 @@
}
}
}
},
"Toggle Playback" : {
},
"trending.title" : {
"comment" : "Trending view title",
@@ -19740,6 +19785,9 @@
}
}
}
},
"Unpause" : {
},
"Unsubscribe from ${link}" : {
@@ -20649,6 +20697,9 @@
}
}
}
},
"Watch History" : {
},
"wideLayoutPanel.pinButton.pin" : {
"localizations" : {