@bbc/sofie-live-status-gateway-api 1.53.0-in-development
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.
- package/LICENSE +21 -0
- package/README.md +13 -0
- package/api/asyncapi.yaml +51 -0
- package/api/components/adLibs/actionType/actionType-example.yaml +2 -0
- package/api/components/adLibs/actionType/actionType.yaml +15 -0
- package/api/components/adLibs/adLibBase/adLibBase-example.yaml +9 -0
- package/api/components/adLibs/adLibBase/adLibBase.yaml +35 -0
- package/api/components/adLibs/adLibStatus/adLibStatus-example.yaml +3 -0
- package/api/components/adLibs/adLibStatus/adLibStatus.yaml +17 -0
- package/api/components/adLibs/adLibsEvent/adLibsEvent-example.yaml +6 -0
- package/api/components/adLibs/adLibsEvent/adLibsEvent.yaml +29 -0
- package/api/components/adLibs/bucketAdLibStatus/bucketAdLibStatus-example.yaml +2 -0
- package/api/components/adLibs/bucketAdLibStatus/bucketAdLibStatus.yaml +14 -0
- package/api/components/adLibs/globalAdLibStatus/globalAdLibStatus-example.yaml +1 -0
- package/api/components/adLibs/globalAdLibStatus/globalAdLibStatus.yaml +7 -0
- package/api/components/adLibs/messages/adLibsMessage.yaml +10 -0
- package/api/components/buckets/bucketStatus/bucketStatus-example.yaml +4 -0
- package/api/components/buckets/bucketStatus/bucketStatus.yaml +20 -0
- package/api/components/buckets/bucketsEvent/bucketsEvent-example.yaml +3 -0
- package/api/components/buckets/bucketsEvent/bucketsEvent.yaml +17 -0
- package/api/components/buckets/messages/bucketsMessage.yaml +10 -0
- package/api/components/connection/heartbeatEvent/heartbeatEvent-example.yaml +1 -0
- package/api/components/connection/heartbeatEvent/heartbeatEvent.yaml +12 -0
- package/api/components/connection/messages/heartbeatMessage.yaml +11 -0
- package/api/components/connection/messages/pingMessage.yaml +12 -0
- package/api/components/connection/messages/pongMessage.yaml +12 -0
- package/api/components/connection/pingEvent/pingEvent-example.yaml +2 -0
- package/api/components/connection/pingEvent/pingEvent.yaml +14 -0
- package/api/components/connection/pongEvent/pongEvent-example.yaml +2 -0
- package/api/components/connection/pongEvent/pongEvent.yaml +14 -0
- package/api/components/connection/reqid/reqid.yaml +4 -0
- package/api/components/notifications/events/notificationsEvent/notificationsEvent-example.yaml +3 -0
- package/api/components/notifications/events/notificationsEvent/notificationsEvent.yaml +18 -0
- package/api/components/notifications/messages/notificationsMessage.yaml +10 -0
- package/api/components/notifications/notificationObj/notificationObj-example.yaml +7 -0
- package/api/components/notifications/notificationObj/notificationObj.yaml +33 -0
- package/api/components/notifications/notificationSeverity.yaml +9 -0
- package/api/components/notifications/target/notificationTarget.yaml +16 -0
- package/api/components/notifications/target/notificationTargetType.yaml +11 -0
- package/api/components/notifications/target/partInstance/notificationTargetPartInstance-example.yaml +4 -0
- package/api/components/notifications/target/partInstance/notificationTargetPartInstance.yaml +18 -0
- package/api/components/notifications/target/pieceInstance/notificationTargetPieceInstance-example.yaml +5 -0
- package/api/components/notifications/target/pieceInstance/notificationTargetPieceInstance.yaml +20 -0
- package/api/components/notifications/target/rundown/notificationTargetRundown-example.yaml +3 -0
- package/api/components/notifications/target/rundown/notificationTargetRundown.yaml +16 -0
- package/api/components/notifications/target/rundownPlaylist/notificationTargetRundownPlaylist-example.yaml +3 -0
- package/api/components/notifications/target/rundownPlaylist/notificationTargetRundownPlaylist.yaml +16 -0
- package/api/components/notifications/target/unknown/notificationTargetUnknown-example.yaml +1 -0
- package/api/components/notifications/target/unknown/notificationTargetUnknown.yaml +12 -0
- package/api/components/packages/messages/packagesMessage.yaml +8 -0
- package/api/components/packages/packageInfoStatus/packageInfoStatus-example.yaml +8 -0
- package/api/components/packages/packageInfoStatus/packageInfoStatus.yaml +32 -0
- package/api/components/packages/packageStatus/packageStatus.yaml +23 -0
- package/api/components/packages/packagesEvent/packagesEvent-example.yaml +4 -0
- package/api/components/packages/packagesEvent/packagesEvent.yaml +20 -0
- package/api/components/part/currentPart/currentPartStatus-example.yaml +3 -0
- package/api/components/part/currentPart/currentPartStatus.yaml +13 -0
- package/api/components/part/currentSegmentPart/currentSegmentPart-example.yaml +3 -0
- package/api/components/part/currentSegmentPart/currentSegmentPart.yaml +14 -0
- package/api/components/part/partBase/partBase-example.yaml +3 -0
- package/api/components/part/partBase/partBase.yaml +18 -0
- package/api/components/part/partStatus/partStatus-example.yaml +6 -0
- package/api/components/part/partStatus/partStatus.yaml +22 -0
- package/api/components/piece/activePiecesEvent/activePiecesEvent-example.yaml +4 -0
- package/api/components/piece/activePiecesEvent/activePiecesEvent.yaml +22 -0
- package/api/components/piece/messages/activePiecesMessage.yaml +10 -0
- package/api/components/piece/pieceStatus/pieceStatus-example.yaml +7 -0
- package/api/components/piece/pieceStatus/pieceStatus.yaml +28 -0
- package/api/components/playlist/activePlaylistEvent/activePlaylistEvent-example.yaml +17 -0
- package/api/components/playlist/activePlaylistEvent/activePlaylistEvent.yaml +50 -0
- package/api/components/playlist/messages/activePlaylistMessage.yaml +11 -0
- package/api/components/playlist/playlistStatus/playlistStatus-example.yaml +4 -0
- package/api/components/playlist/playlistStatus/playlistStatus.yaml +26 -0
- package/api/components/quickLoop/activePlaylistQuickLoop/activePlaylistQuickLoop-example.yaml +6 -0
- package/api/components/quickLoop/activePlaylistQuickLoop/activePlaylistQuickLoop.yaml +19 -0
- package/api/components/quickLoop/quickLoopMarker/quickLoopMarker-example.yaml +2 -0
- package/api/components/quickLoop/quickLoopMarker/quickLoopMarker.yaml +20 -0
- package/api/components/quickLoop/quickLoopMarkerType.yaml +10 -0
- package/api/components/segment/currentSegment/currentSegment-example.yaml +5 -0
- package/api/components/segment/currentSegment/currentSegment.yaml +19 -0
- package/api/components/segment/messages/segmentsMessage.yaml +10 -0
- package/api/components/segment/segment/segment-example.yaml +8 -0
- package/api/components/segment/segment/segment.yaml +26 -0
- package/api/components/segment/segmentBase/segmentBase-example.yaml +1 -0
- package/api/components/segment/segmentBase/segmentBase.yaml +11 -0
- package/api/components/segment/segmentsEvent/segmentsEvent-example.yaml +4 -0
- package/api/components/segment/segmentsEvent/segmentsEvent.yaml +23 -0
- package/api/components/studio/messages/studioUpdate.yaml +11 -0
- package/api/components/studio/studioEvent/studioEvent-example.yaml +2 -0
- package/api/components/studio/studioEvent/studioEvent.yaml +16 -0
- package/api/components/studio/studioStatus/studioStatus-example.yaml +4 -0
- package/api/components/studio/studioStatus/studioStatus.yaml +21 -0
- package/api/components/subscriptions/events/subscribeEvent/subscribeEvent-example.yaml +4 -0
- package/api/components/subscriptions/events/subscribeEvent/subscribeEvent.yaml +15 -0
- package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusError/subscriptionStatusError-example.yaml +2 -0
- package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusError/subscriptionStatusError.yaml +14 -0
- package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusEvent-example.yaml +4 -0
- package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusEvent.yaml +10 -0
- package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusSuccess/subscriptionStatusSuccess-example.yaml +4 -0
- package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusSuccess/subscriptionStatusSuccess.yaml +16 -0
- package/api/components/subscriptions/messages/subscribeMessage.yaml +12 -0
- package/api/components/subscriptions/messages/subscriptionStatusErrorMessage.yaml +10 -0
- package/api/components/subscriptions/messages/subscriptionStatusSuccessMessage.yaml +10 -0
- package/api/components/subscriptions/subscriptionDetails/subscriptionDetails-example.yaml +2 -0
- package/api/components/subscriptions/subscriptionDetails/subscriptionDetails.yaml +13 -0
- package/api/components/subscriptions/subscriptionEventName.yaml +8 -0
- package/api/components/subscriptions/subscriptionName.yaml +14 -0
- package/api/components/subscriptions/subscriptionRequestDetails/subscriptionRequestDetails.yaml +11 -0
- package/api/components/subscriptions/subscriptionStatusName.yaml +8 -0
- package/api/components/timing/activePlaylistTiming/activePlaylistTiming-example.yaml +3 -0
- package/api/components/timing/activePlaylistTiming/activePlaylistTiming.yaml +24 -0
- package/api/components/timing/activePlaylistTiming/activePlaylistTimingMode.yaml +7 -0
- package/api/components/timing/currentPartTiming/currentPartTiming-example.yaml +3 -0
- package/api/components/timing/currentPartTiming/currentPartTiming.yaml +20 -0
- package/api/components/timing/currentSegmentPartTiming/currentSegmentPartTiming-example.yaml +1 -0
- package/api/components/timing/currentSegmentPartTiming/currentSegmentPartTiming.yaml +8 -0
- package/api/components/timing/currentSegmentTiming/currentSegmentTiming-example.yaml +2 -0
- package/api/components/timing/currentSegmentTiming/currentSegmentTiming.yaml +16 -0
- package/api/components/timing/segmentCountdownType.yaml +6 -0
- package/api/components/timing/segmentTiming/segmentTiming-example.yaml +3 -0
- package/api/components/timing/segmentTiming/segmentTiming.yaml +19 -0
- package/api/topics/activePieces/activePiecesTopic.yaml +8 -0
- package/api/topics/activePlaylist/activePlaylistTopic.yaml +8 -0
- package/api/topics/adLibs/adLibsTopic.yaml +8 -0
- package/api/topics/buckets/bucketsTopic.yaml +8 -0
- package/api/topics/heartbeat/heartbeatTopic.yaml +7 -0
- package/api/topics/notifications/notificationsTopic.yaml +7 -0
- package/api/topics/packages/packagesTopic.yaml +7 -0
- package/api/topics/ping/pingTopic.yaml +11 -0
- package/api/topics/segments/segmentsTopic.yaml +7 -0
- package/api/topics/studio/studioTopic.yaml +7 -0
- package/api/topics/subscriptions/subscriptionsTopic.yaml +16 -0
- package/dist/generated/schema.d.ts +824 -0
- package/dist/generated/schema.d.ts.map +1 -0
- package/dist/generated/schema.js +118 -0
- package/dist/generated/schema.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/package.json +68 -0
package/api/components/notifications/target/rundownPlaylist/notificationTargetRundownPlaylist.yaml
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
NotificationTargetRundownPlaylist:
|
|
3
|
+
type: object
|
|
4
|
+
title: NotificationTargetRundownPlaylist
|
|
5
|
+
required: [type, studioId, playlistId]
|
|
6
|
+
properties:
|
|
7
|
+
type:
|
|
8
|
+
$ref: '../notificationTargetType.yaml#/$defs/NotificationTargetType'
|
|
9
|
+
const: playlist
|
|
10
|
+
studioId:
|
|
11
|
+
type: string
|
|
12
|
+
playlistId:
|
|
13
|
+
type: string
|
|
14
|
+
additionalProperties: false
|
|
15
|
+
examples:
|
|
16
|
+
- $ref: './notificationTargetRundownPlaylist-example.yaml'
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
type: unknown
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
NotificationTargetUnknown:
|
|
3
|
+
type: object
|
|
4
|
+
title: NotificationTargetUnknown
|
|
5
|
+
required: [type]
|
|
6
|
+
properties:
|
|
7
|
+
type:
|
|
8
|
+
$ref: '../notificationTargetType.yaml#/$defs/NotificationTargetType'
|
|
9
|
+
const: unknown
|
|
10
|
+
additionalProperties: false
|
|
11
|
+
examples:
|
|
12
|
+
- $ref: './notificationTargetUnknown-example.yaml'
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
packageName: 'MV000123.mxf'
|
|
2
|
+
status: ok
|
|
3
|
+
rundownId: 'y9HauyWkcxQS3XaAOsW40BRLLsI_'
|
|
4
|
+
partId: 'H5CBGYjThrMSmaYvRaa5FVKJIzk_'
|
|
5
|
+
segmentId: 'H5CBGYjThrMSmaYvRaa5FVKJIzk_'
|
|
6
|
+
pieceOrAdLibId: 'C6K_yIMuGFUk8X_L9A9_jRT6aq4_'
|
|
7
|
+
thumbnailUrl: 'https://package-manager.local/package/MV000123.mov_thumbnail.jpg'
|
|
8
|
+
previewUrl: 'https://package-manager.local/package/MV000123.mov_preview'
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
packageInfoStatus:
|
|
3
|
+
title: PackageInfoStatus
|
|
4
|
+
type: object
|
|
5
|
+
properties:
|
|
6
|
+
packageName:
|
|
7
|
+
description: Name of the package
|
|
8
|
+
type: string
|
|
9
|
+
status:
|
|
10
|
+
$ref: '../packageStatus/packageStatus.yaml#/$defs/packageStatus'
|
|
11
|
+
rundownId:
|
|
12
|
+
description: Id of the Rundown that a Piece (or AdLib) expecting this package belongs to
|
|
13
|
+
type: string
|
|
14
|
+
partId:
|
|
15
|
+
description: Id of the Part that a Piece (or AdLib) expecting this package belongs to. It could be an Id of a Part from the Active Playlist topic, or a Part not exposed otherwise by the LSG.
|
|
16
|
+
type: string
|
|
17
|
+
segmentId:
|
|
18
|
+
description: Id of the Segment that a Piece (or AdLib) expecting this package belongs to
|
|
19
|
+
type: string
|
|
20
|
+
pieceOrAdLibId:
|
|
21
|
+
description: Id of the Piece or AdLib that expects this package. It could be an Id of a Piece from the Active Pieces and Active Playlist topics, or an Id of an AdLib from the AdLibs topic. It could also be an Id of a Piece not exposed otherwise by the LSG, but still relevant, e.g. to summarize the status of packages within a specific Part/Segment.
|
|
22
|
+
type: string
|
|
23
|
+
thumbnailUrl:
|
|
24
|
+
description: URL where the thumbnail can be accessed
|
|
25
|
+
type: string
|
|
26
|
+
previewUrl:
|
|
27
|
+
description: URL where the preview can be accessed
|
|
28
|
+
type: string
|
|
29
|
+
required: [status, rundownId, pieceOrAdLibId]
|
|
30
|
+
additionalProperties: false
|
|
31
|
+
examples:
|
|
32
|
+
- $ref: './packageInfoStatus-example.yaml'
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
packageStatus:
|
|
3
|
+
title: PackageStatus
|
|
4
|
+
type: string
|
|
5
|
+
description: |
|
|
6
|
+
Status:
|
|
7
|
+
* `unknown` - status not determined (yet)
|
|
8
|
+
* `ok` - no faults, can be played
|
|
9
|
+
* `source_broken` - the source is present, but should not be played due to a technical malfunction (file is broken, camera robotics failed, REMOTE input is just bars, etc.)
|
|
10
|
+
* `source_has_issues` - technically it can be played, but some issues with it were detected
|
|
11
|
+
* `source_missing` - the source (file, live input) is missing and cannot be played
|
|
12
|
+
* `source_not_ready` - can't be played for a non-technical reason (e.g. a placeholder clip with no content)
|
|
13
|
+
* `source_not_set` - missing a file path
|
|
14
|
+
* `source_unknown_state` - reported, but unrecognized state
|
|
15
|
+
enum:
|
|
16
|
+
- unknown
|
|
17
|
+
- ok
|
|
18
|
+
- source_broken
|
|
19
|
+
- source_has_issues
|
|
20
|
+
- source_missing
|
|
21
|
+
- source_not_ready
|
|
22
|
+
- source_not_set
|
|
23
|
+
- source_unknown_state
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
title: PackagesEvent
|
|
2
|
+
type: object
|
|
3
|
+
properties:
|
|
4
|
+
event:
|
|
5
|
+
type: string
|
|
6
|
+
const: packages
|
|
7
|
+
rundownPlaylistId:
|
|
8
|
+
description: Unique id of the rundown playlist, or null if no playlist is active
|
|
9
|
+
oneOf:
|
|
10
|
+
- type: string
|
|
11
|
+
- type: 'null'
|
|
12
|
+
packages:
|
|
13
|
+
description: The Package statuses for this playlist
|
|
14
|
+
type: array
|
|
15
|
+
items:
|
|
16
|
+
$ref: '../packageInfoStatus/packageInfoStatus.yaml#/$defs/packageInfoStatus'
|
|
17
|
+
required: [event, rundownPlaylistId, packages]
|
|
18
|
+
additionalProperties: false
|
|
19
|
+
examples:
|
|
20
|
+
- $ref: './packagesEvent-example.yaml'
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
currentPartStatus:
|
|
3
|
+
title: CurrentPartStatus
|
|
4
|
+
allOf:
|
|
5
|
+
- $ref: '../partStatus/partStatus.yaml#/$defs/partStatus'
|
|
6
|
+
- type: object
|
|
7
|
+
title: CurrentPartStatus
|
|
8
|
+
properties:
|
|
9
|
+
timing:
|
|
10
|
+
$ref: '../../timing/currentPartTiming/currentPartTiming.yaml#/$defs/currentPartTiming'
|
|
11
|
+
required: [timing]
|
|
12
|
+
examples:
|
|
13
|
+
- $ref: './currentPartStatus-example.yaml'
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
currentSegmentPart:
|
|
3
|
+
title: CurrentSegmentPart
|
|
4
|
+
type: object
|
|
5
|
+
allOf:
|
|
6
|
+
- $ref: '../partBase/partBase.yaml#/$defs/partBase'
|
|
7
|
+
- type: object
|
|
8
|
+
title: CurrentSegmentPart
|
|
9
|
+
properties:
|
|
10
|
+
timing:
|
|
11
|
+
$ref: '../../timing/currentSegmentPartTiming/currentSegmentPartTiming.yaml#/$defs/currentSegmentPartTiming'
|
|
12
|
+
required: [id, name, timing]
|
|
13
|
+
examples:
|
|
14
|
+
- $ref: './currentSegmentPart-example.yaml'
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
partBase:
|
|
3
|
+
type: object
|
|
4
|
+
title: PartBase
|
|
5
|
+
properties:
|
|
6
|
+
id:
|
|
7
|
+
description: Unique id of the part
|
|
8
|
+
type: string
|
|
9
|
+
name:
|
|
10
|
+
description: User-presentable name of the part
|
|
11
|
+
type: string
|
|
12
|
+
autoNext:
|
|
13
|
+
description: If this part will progress to the next automatically
|
|
14
|
+
type: boolean
|
|
15
|
+
default: false
|
|
16
|
+
required: [id, name]
|
|
17
|
+
examples:
|
|
18
|
+
- $ref: './partBase-example.yaml'
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
partStatus:
|
|
3
|
+
type: object
|
|
4
|
+
title: PartStatus
|
|
5
|
+
allOf:
|
|
6
|
+
- $ref: '../partBase/partBase.yaml#/$defs/partBase'
|
|
7
|
+
- type: object
|
|
8
|
+
title: PartStatus
|
|
9
|
+
properties:
|
|
10
|
+
segmentId:
|
|
11
|
+
description: Unique id of the segment this part belongs to
|
|
12
|
+
type: string
|
|
13
|
+
pieces:
|
|
14
|
+
description: All pieces in this part
|
|
15
|
+
type: array
|
|
16
|
+
items:
|
|
17
|
+
$ref: '../../piece/pieceStatus/pieceStatus.yaml#/$defs/pieceStatus'
|
|
18
|
+
publicData:
|
|
19
|
+
description: Optional arbitrary data
|
|
20
|
+
required: [id, name, segmentId, pieces]
|
|
21
|
+
examples:
|
|
22
|
+
- $ref: './partStatus-example.yaml'
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
activePiecesEvent:
|
|
3
|
+
type: object
|
|
4
|
+
title: ActivePiecesEvent
|
|
5
|
+
properties:
|
|
6
|
+
event:
|
|
7
|
+
type: string
|
|
8
|
+
const: activePieces
|
|
9
|
+
rundownPlaylistId:
|
|
10
|
+
description: Unique id of the rundown playlist, or null if no playlist is active
|
|
11
|
+
oneOf:
|
|
12
|
+
- type: string
|
|
13
|
+
- type: 'null'
|
|
14
|
+
activePieces:
|
|
15
|
+
description: Pieces that are currently active (on air)
|
|
16
|
+
type: array
|
|
17
|
+
items:
|
|
18
|
+
$ref: '../pieceStatus/pieceStatus.yaml#/$defs/pieceStatus'
|
|
19
|
+
required: [event, rundownPlaylistId, activePieces]
|
|
20
|
+
additionalProperties: false
|
|
21
|
+
examples:
|
|
22
|
+
- $ref: './activePiecesEvent-example.yaml'
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
components:
|
|
2
|
+
messages:
|
|
3
|
+
activePiecesMessage:
|
|
4
|
+
messageId: activePieces
|
|
5
|
+
title: Active Pieces Event Message
|
|
6
|
+
payload:
|
|
7
|
+
$ref: '../activePiecesEvent/activePiecesEvent.yaml#/$defs/activePiecesEvent'
|
|
8
|
+
examples:
|
|
9
|
+
- payload:
|
|
10
|
+
$ref: '../activePiecesEvent/activePiecesEvent-example.yaml'
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
pieceStatus:
|
|
3
|
+
type: object
|
|
4
|
+
title: PieceStatus
|
|
5
|
+
properties:
|
|
6
|
+
id:
|
|
7
|
+
description: Unique id of the Piece
|
|
8
|
+
type: string
|
|
9
|
+
name:
|
|
10
|
+
description: User-facing name of the Piece
|
|
11
|
+
type: string
|
|
12
|
+
sourceLayer:
|
|
13
|
+
description: The source layer name for this Piece
|
|
14
|
+
type: string
|
|
15
|
+
outputLayer:
|
|
16
|
+
description: The output layer name for this Piece
|
|
17
|
+
type: string
|
|
18
|
+
tags:
|
|
19
|
+
description: Tags attached to this Piece
|
|
20
|
+
type: array
|
|
21
|
+
items:
|
|
22
|
+
type: string
|
|
23
|
+
publicData:
|
|
24
|
+
description: Optional arbitrary data
|
|
25
|
+
required: [id, name, sourceLayer, outputLayer]
|
|
26
|
+
additionalProperties: false
|
|
27
|
+
examples:
|
|
28
|
+
- $ref: './pieceStatus-example.yaml'
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
event: activePlaylist
|
|
2
|
+
id: 'OKAgZmZ0Buc99lE_2uPPSKVbMrQ_'
|
|
3
|
+
externalId: '1ZIYVYL1aEkNEJbeGsmRXr5s8wtkyxfPRjNSTxZfcoEI'
|
|
4
|
+
name: 'Playlist 0'
|
|
5
|
+
rundownIds: ['y9HauyWkcxQS3XaAOsW40BRLLsI_']
|
|
6
|
+
currentPart:
|
|
7
|
+
$ref: '../../part/currentPart/currentPartStatus-example.yaml'
|
|
8
|
+
currentSegment:
|
|
9
|
+
$ref: '../../segment/currentSegment/currentSegment-example.yaml'
|
|
10
|
+
nextPart:
|
|
11
|
+
$ref: '../../part/partStatus/partStatus-example.yaml'
|
|
12
|
+
publicData:
|
|
13
|
+
category: 'Evening News'
|
|
14
|
+
timing:
|
|
15
|
+
$ref: '../../timing/activePlaylistTiming/activePlaylistTiming-example.yaml'
|
|
16
|
+
quickLoop:
|
|
17
|
+
$ref: '../../quickLoop/activePlaylistQuickLoop/activePlaylistQuickLoop-example.yaml'
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
title: Active Playlist
|
|
2
|
+
description: Active Playlist schema for websocket subscriptions
|
|
3
|
+
$defs:
|
|
4
|
+
activePlaylistEvent:
|
|
5
|
+
type: object
|
|
6
|
+
title: ActivePlaylistEvent
|
|
7
|
+
properties:
|
|
8
|
+
event:
|
|
9
|
+
type: string
|
|
10
|
+
const: activePlaylist
|
|
11
|
+
id:
|
|
12
|
+
description: Unique id of the active playlist
|
|
13
|
+
oneOf:
|
|
14
|
+
- type: string
|
|
15
|
+
- type: 'null'
|
|
16
|
+
externalId:
|
|
17
|
+
description: Id normally sourced from the ingest system
|
|
18
|
+
oneOf:
|
|
19
|
+
- type: string
|
|
20
|
+
- type: 'null'
|
|
21
|
+
name:
|
|
22
|
+
description: User-presentable name for the active playlist
|
|
23
|
+
type: string
|
|
24
|
+
rundownIds:
|
|
25
|
+
description: The set of rundownIds in the active playlist, in order
|
|
26
|
+
type: array
|
|
27
|
+
items:
|
|
28
|
+
type: string
|
|
29
|
+
currentPart:
|
|
30
|
+
oneOf:
|
|
31
|
+
- $ref: '../../part/currentPart/currentPartStatus.yaml#/$defs/currentPartStatus'
|
|
32
|
+
- type: 'null'
|
|
33
|
+
currentSegment:
|
|
34
|
+
oneOf:
|
|
35
|
+
- $ref: '../../segment/currentSegment/currentSegment.yaml#/$defs/currentSegment'
|
|
36
|
+
- type: 'null'
|
|
37
|
+
nextPart:
|
|
38
|
+
oneOf:
|
|
39
|
+
- $ref: '../../part/partStatus/partStatus.yaml#/$defs/partStatus'
|
|
40
|
+
- type: 'null'
|
|
41
|
+
publicData:
|
|
42
|
+
description: Optional arbitrary data
|
|
43
|
+
timing:
|
|
44
|
+
$ref: '../../timing/activePlaylistTiming/activePlaylistTiming.yaml#/$defs/activePlaylistTiming'
|
|
45
|
+
quickLoop:
|
|
46
|
+
$ref: '../../quickLoop/activePlaylistQuickLoop/activePlaylistQuickLoop.yaml#/$defs/activePlaylistQuickLoop'
|
|
47
|
+
required: [event, id, externalId, name, rundownIds, currentPart, currentSegment, nextPart, timing]
|
|
48
|
+
additionalProperties: false
|
|
49
|
+
examples:
|
|
50
|
+
- $ref: './activePlaylistEvent-example.yaml'
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
components:
|
|
2
|
+
messages:
|
|
3
|
+
activePlaylistMessage:
|
|
4
|
+
name: activePlaylist
|
|
5
|
+
messageId: activePlaylistUpdate
|
|
6
|
+
description: Active Playlist status
|
|
7
|
+
payload:
|
|
8
|
+
$ref: '../activePlaylistEvent/activePlaylistEvent.yaml#/$defs/activePlaylistEvent'
|
|
9
|
+
examples:
|
|
10
|
+
- payload:
|
|
11
|
+
$ref: '../activePlaylistEvent/activePlaylistEvent-example.yaml'
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
playlistStatus:
|
|
3
|
+
title: PlaylistStatus
|
|
4
|
+
type: object
|
|
5
|
+
properties:
|
|
6
|
+
id:
|
|
7
|
+
description: Unique id of the playlist
|
|
8
|
+
type: string
|
|
9
|
+
externalId:
|
|
10
|
+
description: Id normally sourced from the ingest system
|
|
11
|
+
type: string
|
|
12
|
+
name:
|
|
13
|
+
description: The user defined playlist name
|
|
14
|
+
type: string
|
|
15
|
+
activationStatus:
|
|
16
|
+
description: Whether this playlist is currently active or in rehearsal
|
|
17
|
+
type: string
|
|
18
|
+
title: PlaylistActivationStatus
|
|
19
|
+
enum:
|
|
20
|
+
- deactivated
|
|
21
|
+
- rehearsal
|
|
22
|
+
- activated
|
|
23
|
+
required: [id, externalId, name, activationStatus]
|
|
24
|
+
additionalProperties: false
|
|
25
|
+
examples:
|
|
26
|
+
- $ref: './playlistStatus-example.yaml'
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
activePlaylistQuickLoop:
|
|
3
|
+
description: Information about the current quickLoop, if any
|
|
4
|
+
type: object
|
|
5
|
+
title: ActivePlaylistQuickLoop
|
|
6
|
+
properties:
|
|
7
|
+
locked:
|
|
8
|
+
description: Whether the user is allowed to make alterations to the Start/End markers
|
|
9
|
+
type: boolean
|
|
10
|
+
running:
|
|
11
|
+
description: Whether the loop has two valid markers and is currently running
|
|
12
|
+
type: boolean
|
|
13
|
+
start:
|
|
14
|
+
$ref: '../quickLoopMarker/quickLoopMarker.yaml#/$defs/quickLoopMarker'
|
|
15
|
+
end:
|
|
16
|
+
$ref: '../quickLoopMarker/quickLoopMarker.yaml#/$defs/quickLoopMarker'
|
|
17
|
+
required: [locked, running]
|
|
18
|
+
examples:
|
|
19
|
+
- $ref: './activePlaylistQuickLoop-example.yaml'
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
quickLoopMarker:
|
|
3
|
+
type: object
|
|
4
|
+
title: QuickLoopMarker
|
|
5
|
+
description: Represents a positional marker used to define the start or end of a Quick Loop by referencing a rundown, segment, or part.
|
|
6
|
+
properties:
|
|
7
|
+
markerType:
|
|
8
|
+
$ref: '../quickLoopMarkerType.yaml#/$defs/quickLoopMarkerType'
|
|
9
|
+
rundownId:
|
|
10
|
+
description: The rundown that this marker references. This will be set for rundown, segment and part markers
|
|
11
|
+
type: string
|
|
12
|
+
segmentId:
|
|
13
|
+
description: The segment that this marker references. This will be set for segment and part markers
|
|
14
|
+
type: string
|
|
15
|
+
partId:
|
|
16
|
+
description: The part that this marker references. This will be set for only part markers
|
|
17
|
+
type: string
|
|
18
|
+
required: [markerType]
|
|
19
|
+
examples:
|
|
20
|
+
- $ref: './quickLoopMarker-example.yaml'
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
currentSegment:
|
|
3
|
+
type: object
|
|
4
|
+
title: CurrentSegment
|
|
5
|
+
allOf:
|
|
6
|
+
- $ref: '../segmentBase/segmentBase.yaml#/$defs/segmentBase'
|
|
7
|
+
- title: CurrentSegment
|
|
8
|
+
type: object
|
|
9
|
+
properties:
|
|
10
|
+
timing:
|
|
11
|
+
$ref: '../../timing/currentSegmentTiming/currentSegmentTiming.yaml#/$defs/currentSegmentTiming'
|
|
12
|
+
parts:
|
|
13
|
+
type: array
|
|
14
|
+
items:
|
|
15
|
+
$ref: '../../part/currentSegmentPart/currentSegmentPart.yaml#/$defs/currentSegmentPart'
|
|
16
|
+
required: [timing, parts]
|
|
17
|
+
required: [id, timing, parts]
|
|
18
|
+
examples:
|
|
19
|
+
- $ref: './currentSegment-example.yaml'
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
segment:
|
|
3
|
+
type: object
|
|
4
|
+
title: Segment
|
|
5
|
+
allOf:
|
|
6
|
+
- $ref: '../segmentBase/segmentBase.yaml#/$defs/segmentBase'
|
|
7
|
+
- type: object
|
|
8
|
+
title: Segment
|
|
9
|
+
properties:
|
|
10
|
+
identifier:
|
|
11
|
+
description: User-facing identifier that can be used to identify the contents of a segment in the Rundown source system
|
|
12
|
+
type: string
|
|
13
|
+
rundownId:
|
|
14
|
+
description: Unique id of the rundown this segment belongs to
|
|
15
|
+
type: string
|
|
16
|
+
name:
|
|
17
|
+
description: Name of the segment
|
|
18
|
+
type: string
|
|
19
|
+
timing:
|
|
20
|
+
$ref: '../../timing/segmentTiming/segmentTiming.yaml#/$defs/segmentTiming'
|
|
21
|
+
publicData:
|
|
22
|
+
description: Optional arbitrary data
|
|
23
|
+
required: [rundownId, name, timing]
|
|
24
|
+
required: [id, rundownId, name, timing]
|
|
25
|
+
examples:
|
|
26
|
+
- $ref: './segment-example.yaml'
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
id: 'OKAgZmZ0Buc99lE_2uPPSKVbMrQ_'
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
title: Segments
|
|
2
|
+
description: Segments schema for websocket subscriptions
|
|
3
|
+
$defs:
|
|
4
|
+
segmentsEvent:
|
|
5
|
+
type: object
|
|
6
|
+
title: SegmentsEvent
|
|
7
|
+
properties:
|
|
8
|
+
event:
|
|
9
|
+
type: string
|
|
10
|
+
const: segments
|
|
11
|
+
rundownPlaylistId:
|
|
12
|
+
description: Unique id of the rundown playlist, or null if no playlist is active
|
|
13
|
+
oneOf:
|
|
14
|
+
- type: string
|
|
15
|
+
- type: 'null'
|
|
16
|
+
segments:
|
|
17
|
+
description: The segments that are in the currently active rundown playlist, in order
|
|
18
|
+
type: array
|
|
19
|
+
items:
|
|
20
|
+
$ref: '../segment/segment.yaml#/$defs/segment'
|
|
21
|
+
required: [event, rundownPlaylistId, segments]
|
|
22
|
+
examples:
|
|
23
|
+
- $ref: './segmentsEvent-example.yaml'
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
$defs:
|
|
2
|
+
studioEvent:
|
|
3
|
+
title: StudioEvent
|
|
4
|
+
type: object
|
|
5
|
+
allOf:
|
|
6
|
+
- title: StudioEvent
|
|
7
|
+
type: object
|
|
8
|
+
properties:
|
|
9
|
+
event:
|
|
10
|
+
type: string
|
|
11
|
+
const: studio
|
|
12
|
+
required: [event]
|
|
13
|
+
- $ref: '../studioStatus/studioStatus.yaml#/$defs/studioStatus'
|
|
14
|
+
required: [event, id, name, playlists]
|
|
15
|
+
examples:
|
|
16
|
+
- $ref: './studioEvent-example.yaml'
|