@portpowered/reference-data 0.4.6 → 0.4.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/generated/capabilities.json +713 -7
  2. package/generated/openapi.json +503 -41
  3. package/generated/public/docs/for-ai/capability-interfaces/brightness/1.0.md +1 -0
  4. package/generated/public/docs/for-ai/capability-interfaces/media-player/1.0.md +3 -1
  5. package/generated/public/docs/for-ai/capability-interfaces/media-playlist/1.0.md +3 -0
  6. package/generated/public/docs/for-ai/capability-interfaces/media-search/1.0.md +2 -0
  7. package/generated/public/docs/for-ai/schemas/b-1.md +1 -0
  8. package/generated/public/docs/for-ai/schemas/m-1.md +8 -8
  9. package/generated/public/docs/for-ai/schemas/m-2.md +8 -0
  10. package/generated/public/docs/for-ai/schemas/p-2.md +2 -0
  11. package/generated/public/docs/for-ai/schemas/s-3.md +1 -0
  12. package/generated/public/docs/for-ai/schemas.md +5 -5
  13. package/generated/public/docs/references/capability-interfaces/brightness/1.0/messages/adjust-brightness.yaml +12 -0
  14. package/generated/public/docs/references/capability-interfaces/brightness/1.0.yaml +18 -0
  15. package/generated/public/docs/references/capability-interfaces/brightness.yaml +18 -0
  16. package/generated/public/docs/references/capability-interfaces/keypad-input/1.0/configuration.yaml +1 -0
  17. package/generated/public/docs/references/capability-interfaces/keypad-input/1.0/messages/send-key.yaml +1 -0
  18. package/generated/public/docs/references/capability-interfaces/keypad-input/1.0.yaml +2 -0
  19. package/generated/public/docs/references/capability-interfaces/keypad-input.yaml +2 -0
  20. package/generated/public/docs/references/capability-interfaces/media-player/1.0/attributes/now-playing.yaml +30 -0
  21. package/generated/public/docs/references/capability-interfaces/media-player/1.0/configuration.yaml +70 -0
  22. package/generated/public/docs/references/capability-interfaces/media-player/1.0/messages/fast-forward.yaml +5 -0
  23. package/generated/public/docs/references/capability-interfaces/media-player/1.0/messages/play-media.yaml +11 -5
  24. package/generated/public/docs/references/capability-interfaces/media-player/1.0/messages/search-and-play.yaml +39 -1
  25. package/generated/public/docs/references/capability-interfaces/media-player/1.0.yaml +162 -6
  26. package/generated/public/docs/references/capability-interfaces/media-player.yaml +162 -6
  27. package/generated/public/docs/references/capability-interfaces/media-playlist/1.0/messages/get-playlist.yaml +9 -0
  28. package/generated/public/docs/references/capability-interfaces/media-playlist/1.0/messages/list-playlists.yaml +15 -0
  29. package/generated/public/docs/references/capability-interfaces/media-playlist/1.0/messages/playlist-contents.yaml +114 -0
  30. package/generated/public/docs/references/capability-interfaces/media-playlist/1.0/messages/playlists.yaml +35 -0
  31. package/generated/public/docs/references/capability-interfaces/media-playlist/1.0.yaml +184 -0
  32. package/generated/public/docs/references/capability-interfaces/media-playlist.yaml +184 -0
  33. package/generated/public/docs/references/capability-interfaces/media-search/1.0/messages/audio-media-results.yaml +67 -0
  34. package/generated/public/docs/references/capability-interfaces/media-search/1.0/messages/get-media.yaml +32 -0
  35. package/generated/public/docs/references/capability-interfaces/media-search/1.0/messages/media-details.yaml +118 -0
  36. package/generated/public/docs/references/capability-interfaces/media-search/1.0/messages/search-media.yaml +15 -1
  37. package/generated/public/docs/references/capability-interfaces/media-search/1.0.yaml +235 -1
  38. package/generated/public/docs/references/capability-interfaces/media-search.yaml +235 -1
  39. package/generated/public/docs/references/capability-interfaces/recordings/1.0/messages/list-recordings-response.yaml +11 -5
  40. package/generated/public/docs/references/capability-interfaces/recordings/1.0.yaml +10 -5
  41. package/generated/public/docs/references/capability-interfaces/recordings.yaml +10 -5
  42. package/generated/public/docs/references/capability-interfaces/speech-synthesizer/1.0/configuration.yaml +14 -0
  43. package/generated/public/docs/references/capability-interfaces/speech-synthesizer/1.0/messages/speak.yaml +7 -0
  44. package/generated/public/docs/references/capability-interfaces/speech-synthesizer/1.0.yaml +22 -1
  45. package/generated/public/docs/references/capability-interfaces/speech-synthesizer.yaml +22 -1
  46. package/generated/public/docs/references/manifest.json +278 -111
  47. package/generated/public/docs/references/openapi.yaml +427 -38
  48. package/generated/public/docs/references/schemas/BrightnessInterfaceAdjustBrightnessMessage.json +21 -0
  49. package/generated/public/docs/references/schemas/CreateMessageTarget.json +4 -0
  50. package/generated/public/docs/references/schemas/KeypadInputInterfaceConfiguration.json +1 -0
  51. package/generated/public/docs/references/schemas/KeypadInputInterfaceSendKeyMessage.json +1 -0
  52. package/generated/public/docs/references/schemas/MediaId.json +3 -1
  53. package/generated/public/docs/references/schemas/MediaPlayerInterfaceConfiguration.json +31 -0
  54. package/generated/public/docs/references/schemas/MediaPlayerInterfaceFastForwardMessage.json +11 -0
  55. package/generated/public/docs/references/schemas/MediaPlayerInterfaceNowPlayingAttribute.json +27 -0
  56. package/generated/public/docs/references/schemas/MediaPlayerInterfaceSearchAndPlayMessage.json +23 -1
  57. package/generated/public/docs/references/schemas/MediaPlaylistInterfaceGetPlaylistMessage.json +11 -0
  58. package/generated/public/docs/references/schemas/MediaPlaylistInterfaceListPlaylistsMessage.json +24 -0
  59. package/generated/public/docs/references/schemas/MediaPlaylistInterfacePlaylistContentsMessage.json +37 -0
  60. package/generated/public/docs/references/schemas/MediaPlaylistInterfacePlaylistsMessage.json +26 -0
  61. package/generated/public/docs/references/schemas/MediaProvider.json +37 -0
  62. package/generated/public/docs/references/schemas/MediaSearchInterfaceAudioMediaResultsMessage.json +17 -0
  63. package/generated/public/docs/references/schemas/MediaSearchInterfaceGetMediaMessage.json +30 -0
  64. package/generated/public/docs/references/schemas/MediaSearchInterfaceMediaDetailsMessage.json +43 -0
  65. package/generated/public/docs/references/schemas/MediaSearchInterfaceSearchMediaMessage.json +13 -1
  66. package/generated/public/docs/references/schemas/Playlist.json +8 -0
  67. package/generated/public/docs/references/schemas/PodcastEpisode.json +30 -0
  68. package/generated/public/docs/references/schemas/PodcastShow.json +22 -0
  69. package/generated/public/docs/references/schemas/SpeechInput.json +7 -1
  70. package/generated/public/docs/references/schemas/SpeechSynthesizerInterfaceConfiguration.json +13 -0
  71. package/generated/public/docs/references/schemas/SupportedMediaResource.json +34 -0
  72. package/generated/public/docs/references/schemas/configuration-6.json +6 -2
  73. package/generated/public/docs/references/schemas/index.json +72 -0
  74. package/generated/resources/brightness/message-adjust-brightness.json +15 -0
  75. package/generated/resources/keypad-input/configuration.json +1 -0
  76. package/generated/resources/keypad-input/message-send-key.json +1 -0
  77. package/generated/resources/media-player/configuration.json +78 -0
  78. package/generated/resources/media-player/message-fast-forward.json +5 -0
  79. package/generated/resources/media-player/message-play-media.json +3 -1
  80. package/generated/resources/media-player/message-search-and-play.json +36 -1
  81. package/generated/resources/media-player/state-now-playing.json +27 -0
  82. package/generated/resources/media-playlist/message-get-playlist.json +11 -0
  83. package/generated/resources/media-playlist/message-list-playlists.json +18 -0
  84. package/generated/resources/media-playlist/message-playlist-contents.json +140 -0
  85. package/generated/resources/media-playlist/message-playlists.json +46 -0
  86. package/generated/resources/media-search/message-audio-media-results.json +76 -0
  87. package/generated/resources/media-search/message-get-media.json +29 -0
  88. package/generated/resources/media-search/message-media-details.json +146 -0
  89. package/generated/resources/media-search/message-search-media.json +13 -1
  90. package/generated/resources/recordings/message-list-recordings-response.json +3 -1
  91. package/generated/resources/speech-synthesizer/configuration.json +18 -1
  92. package/generated/resources/speech-synthesizer/message-speak.json +7 -1
  93. package/package.json +1 -1
@@ -7,6 +7,37 @@
7
7
  "description": "Configure media playback, media selection and audio playback. Advertise only the messages implemented by this endpoint.",
8
8
  "type": "object",
9
9
  "properties": {
10
+ "supportedMediaResources": {
11
+ "type": "array",
12
+ "description": "Exact play-media URI combinations accepted by this route. Member or endpoint unions do not imply support by every route.",
13
+ "items": {
14
+ "$ref": "/docs/references/schemas/SupportedMediaResource.json"
15
+ }
16
+ },
17
+ "supportedAudioProviders": {
18
+ "type": "array",
19
+ "uniqueItems": true,
20
+ "description": "Audio services accepted by search-and-play on this endpoint. These describe command support, not active subscriptions.",
21
+ "items": {
22
+ "$ref": "/docs/references/schemas/MediaProvider.json"
23
+ }
24
+ },
25
+ "supportedVideoProviders": {
26
+ "type": "array",
27
+ "uniqueItems": true,
28
+ "description": "Video services accepted by search-and-play on this endpoint. These describe command support, not installed applications or active subscriptions.",
29
+ "items": {
30
+ "$ref": "/docs/references/schemas/MediaProvider.json"
31
+ }
32
+ },
33
+ "defaultAudioProvider": {
34
+ "$ref": "/docs/references/schemas/MediaProvider.json",
35
+ "description": "Default service for an audio search. Must be in supportedAudioProviders."
36
+ },
37
+ "defaultVideoProvider": {
38
+ "$ref": "/docs/references/schemas/MediaProvider.json",
39
+ "description": "Default service for a video search. Must be in supportedVideoProviders."
40
+ },
10
41
  "supportedPlaybackStates": {
11
42
  "type": "array",
12
43
  "items": {
@@ -0,0 +1,11 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "x-namespace": "port1/systems/zero/capability-interfaces/media-player",
4
+ "x-name": "fast-forward",
5
+ "x-version": "1.0",
6
+ "x-type": "message",
7
+ "x-directionality": "in",
8
+ "description": "Begin provider-defined fast-forward playback. This does not seek by a specific duration; use skip-forward or seek for a known position change.",
9
+ "type": "object",
10
+ "additionalProperties": false
11
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "x-namespace": "port1/systems/zero/capability-interfaces/media-player",
4
+ "x-name": "now-playing",
5
+ "x-version": "1.0",
6
+ "x-type": "attribute-definition",
7
+ "description": "Media identity observed on this route. Active false means the provider session is on another target; it does not prove the speaker is silent through other providers.",
8
+ "type": "object",
9
+ "properties": {
10
+ "active": {
11
+ "type": "boolean"
12
+ },
13
+ "mediaId": {
14
+ "$ref": "/docs/references/schemas/MediaId.json"
15
+ },
16
+ "contextMediaId": {
17
+ "$ref": "/docs/references/schemas/MediaId.json"
18
+ },
19
+ "name": {
20
+ "type": "string"
21
+ }
22
+ },
23
+ "required": [
24
+ "active"
25
+ ],
26
+ "additionalProperties": false
27
+ }
@@ -5,12 +5,34 @@
5
5
  "x-version": "1.0",
6
6
  "x-type": "message",
7
7
  "x-directionality": "in",
8
+ "description": "Search for and play media by title or query using a service advertised by the endpoint. Omitting mediaType retains audio search behavior; video-only endpoints may default to video.",
8
9
  "type": "object",
9
10
  "properties": {
10
11
  "query": {
11
12
  "type": "string",
12
- "description": "Query to search for audio content",
13
+ "description": "Query to search for media content",
13
14
  "minLength": 1
15
+ },
16
+ "provider": {
17
+ "$ref": "/docs/references/schemas/MediaProvider.json"
18
+ },
19
+ "mediaType": {
20
+ "type": "string",
21
+ "enum": [
22
+ "AUDIO",
23
+ "VIDEO"
24
+ ],
25
+ "description": "Media search domain. The endpoint must advertise support for the selected type.",
26
+ "x-enum-varnames": [
27
+ "MediaSearchTypeAudio",
28
+ "MediaSearchTypeVideo"
29
+ ]
30
+ },
31
+ "timerSeconds": {
32
+ "type": "integer",
33
+ "minimum": 1,
34
+ "maximum": 86400,
35
+ "description": "Optional provider playback timer in seconds."
14
36
  }
15
37
  },
16
38
  "required": [
@@ -11,6 +11,17 @@
11
11
  "type": "string",
12
12
  "description": "ID of the playlist to retrieve",
13
13
  "minLength": 1
14
+ },
15
+ "maxResults": {
16
+ "type": "integer",
17
+ "minimum": 1,
18
+ "maximum": 50,
19
+ "default": 20
20
+ },
21
+ "nextToken": {
22
+ "type": "string",
23
+ "minLength": 1,
24
+ "description": "Opaque continuation for the same playlist."
14
25
  }
15
26
  },
16
27
  "required": [
@@ -0,0 +1,24 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "x-namespace": "port1/systems/zero/capability-interfaces/media-playlist",
4
+ "x-name": "list-playlists",
5
+ "x-version": "1.0",
6
+ "x-type": "message",
7
+ "x-directionality": "in",
8
+ "description": "List the connected customer's owned or followed playlists; use search-media for catalog search.",
9
+ "type": "object",
10
+ "properties": {
11
+ "maxResults": {
12
+ "type": "integer",
13
+ "minimum": 1,
14
+ "maximum": 50,
15
+ "default": 20
16
+ },
17
+ "nextToken": {
18
+ "type": "string",
19
+ "minLength": 1
20
+ }
21
+ },
22
+ "required": [],
23
+ "additionalProperties": false
24
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "x-namespace": "port1/systems/zero/capability-interfaces/media-playlist",
4
+ "x-name": "playlist-contents",
5
+ "x-version": "1.0",
6
+ "x-type": "message",
7
+ "x-directionality": "out",
8
+ "description": "A bounded playlist page containing playable tracks or episodes.",
9
+ "type": "object",
10
+ "properties": {
11
+ "playlistId": {
12
+ "$ref": "/docs/references/schemas/MediaId.json"
13
+ },
14
+ "tracks": {
15
+ "type": "array",
16
+ "items": {
17
+ "$ref": "/docs/references/schemas/Track.json"
18
+ }
19
+ },
20
+ "episodes": {
21
+ "type": "array",
22
+ "items": {
23
+ "$ref": "/docs/references/schemas/PodcastEpisode.json"
24
+ }
25
+ },
26
+ "nextToken": {
27
+ "type": "string",
28
+ "minLength": 1
29
+ }
30
+ },
31
+ "required": [
32
+ "playlistId",
33
+ "tracks",
34
+ "episodes"
35
+ ],
36
+ "additionalProperties": false
37
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "x-namespace": "port1/systems/zero/capability-interfaces/media-playlist",
4
+ "x-name": "playlists",
5
+ "x-version": "1.0",
6
+ "x-type": "message",
7
+ "x-directionality": "out",
8
+ "description": "A page of the connected customer's playlists with exact resource IDs.",
9
+ "type": "object",
10
+ "properties": {
11
+ "playlists": {
12
+ "type": "array",
13
+ "items": {
14
+ "$ref": "/docs/references/schemas/Playlist.json"
15
+ }
16
+ },
17
+ "nextToken": {
18
+ "type": "string",
19
+ "minLength": 1
20
+ }
21
+ },
22
+ "required": [
23
+ "playlists"
24
+ ],
25
+ "additionalProperties": false
26
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "string",
4
+ "description": "Media service identifier. A provider enum value does not imply that every endpoint supports that service; use the endpoint's advertised provider lists.",
5
+ "enum": [
6
+ "SPOTIFY",
7
+ "AMAZON_MUSIC",
8
+ "APPLE_MUSIC",
9
+ "AUDIBLE",
10
+ "TUNE_IN",
11
+ "PANDORA",
12
+ "IHEART_RADIO",
13
+ "SIRIUSXM",
14
+ "DEEZER",
15
+ "TIDAL",
16
+ "YOUTUBE",
17
+ "NETFLIX",
18
+ "PRIME_VIDEO",
19
+ "DAILYMOTION"
20
+ ],
21
+ "x-enum-varnames": [
22
+ "MediaProviderSpotify",
23
+ "MediaProviderAmazonMusic",
24
+ "MediaProviderAppleMusic",
25
+ "MediaProviderAudible",
26
+ "MediaProviderTuneIn",
27
+ "MediaProviderPandora",
28
+ "MediaProviderIHeartRadio",
29
+ "MediaProviderSiriusXM",
30
+ "MediaProviderDeezer",
31
+ "MediaProviderTidal",
32
+ "MediaProviderYouTube",
33
+ "MediaProviderNetflix",
34
+ "MediaProviderPrimeVideo",
35
+ "MediaProviderDailymotion"
36
+ ]
37
+ }
@@ -34,6 +34,23 @@
34
34
  "$ref": "/docs/references/schemas/Playlist.json"
35
35
  },
36
36
  "description": "Playlist results"
37
+ },
38
+ "shows": {
39
+ "type": "array",
40
+ "items": {
41
+ "$ref": "/docs/references/schemas/PodcastShow.json"
42
+ }
43
+ },
44
+ "episodes": {
45
+ "type": "array",
46
+ "items": {
47
+ "$ref": "/docs/references/schemas/PodcastEpisode.json"
48
+ }
49
+ },
50
+ "nextToken": {
51
+ "type": "string",
52
+ "minLength": 1,
53
+ "description": "Opaque continuation for the same search; omit when exhausted."
37
54
  }
38
55
  },
39
56
  "required": [
@@ -0,0 +1,30 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "x-namespace": "port1/systems/zero/capability-interfaces/media-search",
4
+ "x-name": "get-media",
5
+ "x-version": "1.0",
6
+ "x-type": "message",
7
+ "x-directionality": "in",
8
+ "description": "Inspect an exact media resource or traverse an album/show. Use get-playlist for playlist contents.",
9
+ "type": "object",
10
+ "properties": {
11
+ "mediaId": {
12
+ "$ref": "/docs/references/schemas/MediaId.json"
13
+ },
14
+ "maxResults": {
15
+ "type": "integer",
16
+ "minimum": 1,
17
+ "maximum": 50,
18
+ "default": 20
19
+ },
20
+ "nextToken": {
21
+ "type": "string",
22
+ "minLength": 1,
23
+ "description": "Opaque continuation for the same resource."
24
+ }
25
+ },
26
+ "required": [
27
+ "mediaId"
28
+ ],
29
+ "additionalProperties": false
30
+ }
@@ -0,0 +1,43 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "x-namespace": "port1/systems/zero/capability-interfaces/media-search",
4
+ "x-name": "media-details",
5
+ "x-version": "1.0",
6
+ "x-type": "message",
7
+ "x-directionality": "out",
8
+ "description": "Exact media resource details and a bounded page of its children.",
9
+ "type": "object",
10
+ "properties": {
11
+ "mediaId": {
12
+ "$ref": "/docs/references/schemas/MediaId.json"
13
+ },
14
+ "name": {
15
+ "type": "string"
16
+ },
17
+ "resourceKind": {
18
+ "type": "string",
19
+ "description": "Provider resource kind from the media URI."
20
+ },
21
+ "tracks": {
22
+ "type": "array",
23
+ "items": {
24
+ "$ref": "/docs/references/schemas/Track.json"
25
+ }
26
+ },
27
+ "episodes": {
28
+ "type": "array",
29
+ "items": {
30
+ "$ref": "/docs/references/schemas/PodcastEpisode.json"
31
+ }
32
+ },
33
+ "nextToken": {
34
+ "type": "string",
35
+ "minLength": 1
36
+ }
37
+ },
38
+ "required": [
39
+ "mediaId",
40
+ "resourceKind"
41
+ ],
42
+ "additionalProperties": false
43
+ }
@@ -13,7 +13,7 @@
13
13
  },
14
14
  "type": {
15
15
  "type": "string",
16
- "description": "Supported types, track, album, artist, playlist. Defaults to track",
16
+ "description": "Resource kind: track, album, artist, playlist, show or episode when advertised. Defaults to track",
17
17
  "default": "track"
18
18
  },
19
19
  "album": {
@@ -27,6 +27,18 @@
27
27
  "year": {
28
28
  "type": "string",
29
29
  "description": "Search by year, can only be used when searching albums, years, and tracks. You can pass a range like 1990-2000"
30
+ },
31
+ "maxResults": {
32
+ "type": "integer",
33
+ "minimum": 1,
34
+ "maximum": 50,
35
+ "default": 20,
36
+ "description": "Maximum results on one page."
37
+ },
38
+ "nextToken": {
39
+ "type": "string",
40
+ "minLength": 1,
41
+ "description": "Copy the opaque continuation from the previous result with the same query and filters."
30
42
  }
31
43
  },
32
44
  "required": [
@@ -11,6 +11,14 @@
11
11
  "type": "string",
12
12
  "description": "Playlist name",
13
13
  "minLength": 1
14
+ },
15
+ "ownerId": {
16
+ "type": "string",
17
+ "description": "Provider-scoped owner identity, when supplied by the provider."
18
+ },
19
+ "ownerName": {
20
+ "type": "string",
21
+ "description": "Owner display name, useful for distinguishing owned and followed playlists."
14
22
  }
15
23
  },
16
24
  "required": [
@@ -0,0 +1,30 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "description": "Provider-qualified podcast episode with selection metadata.",
5
+ "properties": {
6
+ "id": {
7
+ "$ref": "/docs/references/schemas/MediaId.json"
8
+ },
9
+ "name": {
10
+ "type": "string",
11
+ "minLength": 1
12
+ },
13
+ "showId": {
14
+ "$ref": "/docs/references/schemas/MediaId.json"
15
+ },
16
+ "releaseDate": {
17
+ "type": "string",
18
+ "description": "Provider release date; precision can be year, month or day."
19
+ },
20
+ "releaseDatePrecision": {
21
+ "type": "string",
22
+ "description": "Provider date precision."
23
+ }
24
+ },
25
+ "required": [
26
+ "id",
27
+ "name"
28
+ ],
29
+ "additionalProperties": false
30
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "description": "Provider-qualified podcast series; read episodes before playback.",
5
+ "properties": {
6
+ "id": {
7
+ "$ref": "/docs/references/schemas/MediaId.json"
8
+ },
9
+ "name": {
10
+ "type": "string",
11
+ "minLength": 1
12
+ },
13
+ "publisher": {
14
+ "type": "string"
15
+ }
16
+ },
17
+ "required": [
18
+ "id",
19
+ "name"
20
+ ],
21
+ "additionalProperties": false
22
+ }
@@ -9,11 +9,17 @@
9
9
  "type": {
10
10
  "type": "string",
11
11
  "enum": [
12
- "SSML"
12
+ "SSML",
13
+ "CANNED_TTS"
13
14
  ]
14
15
  },
15
16
  "ssml": {
16
17
  "type": "string"
18
+ },
19
+ "cannedTtsStringId": {
20
+ "type": "string",
21
+ "minLength": 1,
22
+ "description": "Provider-defined canned speech identifier; supported only by integrations advertising canned speech."
17
23
  }
18
24
  }
19
25
  }
@@ -5,5 +5,18 @@
5
5
  "x-version": "1.0",
6
6
  "x-type": "configuration",
7
7
  "type": "object",
8
+ "properties": {
9
+ "supportedInputTypes": {
10
+ "type": "array",
11
+ "uniqueItems": true,
12
+ "items": {
13
+ "type": "string",
14
+ "enum": [
15
+ "SSML",
16
+ "CANNED_TTS"
17
+ ]
18
+ }
19
+ }
20
+ },
8
21
  "additionalProperties": false
9
22
  }
@@ -0,0 +1,34 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "SupportedMediaResource",
4
+ "description": "A provider, media type and resource-kind combination accepted by a control route.",
5
+ "type": "object",
6
+ "properties": {
7
+ "provider": {
8
+ "$ref": "/docs/references/schemas/MediaProvider.json"
9
+ },
10
+ "mediaType": {
11
+ "type": "string",
12
+ "enum": [
13
+ "AUDIO",
14
+ "VIDEO",
15
+ "IMAGE"
16
+ ]
17
+ },
18
+ "resourceKinds": {
19
+ "type": "array",
20
+ "minItems": 1,
21
+ "uniqueItems": true,
22
+ "items": {
23
+ "type": "string",
24
+ "description": "Lowercase resource-kind segment from the provider URI."
25
+ }
26
+ }
27
+ },
28
+ "required": [
29
+ "provider",
30
+ "mediaType",
31
+ "resourceKinds"
32
+ ],
33
+ "additionalProperties": false
34
+ }
@@ -18,7 +18,9 @@
18
18
  "ARTIST",
19
19
  "PLAYLIST",
20
20
  "GENRE",
21
- "YEAR"
21
+ "YEAR",
22
+ "SHOW",
23
+ "EPISODE"
22
24
  ],
23
25
  "x-enum-varnames": [
24
26
  "Configuration6SupportedSearchTypesTrack",
@@ -26,7 +28,9 @@
26
28
  "Configuration6SupportedSearchTypesArtist",
27
29
  "Configuration6SupportedSearchTypesPlaylist",
28
30
  "Configuration6SupportedSearchTypesGenre",
29
- "Configuration6SupportedSearchTypesYear"
31
+ "Configuration6SupportedSearchTypesYear",
32
+ "Configuration6SupportedSearchTypesShow",
33
+ "Configuration6SupportedSearchTypesEpisode"
30
34
  ]
31
35
  },
32
36
  "description": "List of supported search types"