@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.
Files changed (141) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +13 -0
  3. package/api/asyncapi.yaml +51 -0
  4. package/api/components/adLibs/actionType/actionType-example.yaml +2 -0
  5. package/api/components/adLibs/actionType/actionType.yaml +15 -0
  6. package/api/components/adLibs/adLibBase/adLibBase-example.yaml +9 -0
  7. package/api/components/adLibs/adLibBase/adLibBase.yaml +35 -0
  8. package/api/components/adLibs/adLibStatus/adLibStatus-example.yaml +3 -0
  9. package/api/components/adLibs/adLibStatus/adLibStatus.yaml +17 -0
  10. package/api/components/adLibs/adLibsEvent/adLibsEvent-example.yaml +6 -0
  11. package/api/components/adLibs/adLibsEvent/adLibsEvent.yaml +29 -0
  12. package/api/components/adLibs/bucketAdLibStatus/bucketAdLibStatus-example.yaml +2 -0
  13. package/api/components/adLibs/bucketAdLibStatus/bucketAdLibStatus.yaml +14 -0
  14. package/api/components/adLibs/globalAdLibStatus/globalAdLibStatus-example.yaml +1 -0
  15. package/api/components/adLibs/globalAdLibStatus/globalAdLibStatus.yaml +7 -0
  16. package/api/components/adLibs/messages/adLibsMessage.yaml +10 -0
  17. package/api/components/buckets/bucketStatus/bucketStatus-example.yaml +4 -0
  18. package/api/components/buckets/bucketStatus/bucketStatus.yaml +20 -0
  19. package/api/components/buckets/bucketsEvent/bucketsEvent-example.yaml +3 -0
  20. package/api/components/buckets/bucketsEvent/bucketsEvent.yaml +17 -0
  21. package/api/components/buckets/messages/bucketsMessage.yaml +10 -0
  22. package/api/components/connection/heartbeatEvent/heartbeatEvent-example.yaml +1 -0
  23. package/api/components/connection/heartbeatEvent/heartbeatEvent.yaml +12 -0
  24. package/api/components/connection/messages/heartbeatMessage.yaml +11 -0
  25. package/api/components/connection/messages/pingMessage.yaml +12 -0
  26. package/api/components/connection/messages/pongMessage.yaml +12 -0
  27. package/api/components/connection/pingEvent/pingEvent-example.yaml +2 -0
  28. package/api/components/connection/pingEvent/pingEvent.yaml +14 -0
  29. package/api/components/connection/pongEvent/pongEvent-example.yaml +2 -0
  30. package/api/components/connection/pongEvent/pongEvent.yaml +14 -0
  31. package/api/components/connection/reqid/reqid.yaml +4 -0
  32. package/api/components/notifications/events/notificationsEvent/notificationsEvent-example.yaml +3 -0
  33. package/api/components/notifications/events/notificationsEvent/notificationsEvent.yaml +18 -0
  34. package/api/components/notifications/messages/notificationsMessage.yaml +10 -0
  35. package/api/components/notifications/notificationObj/notificationObj-example.yaml +7 -0
  36. package/api/components/notifications/notificationObj/notificationObj.yaml +33 -0
  37. package/api/components/notifications/notificationSeverity.yaml +9 -0
  38. package/api/components/notifications/target/notificationTarget.yaml +16 -0
  39. package/api/components/notifications/target/notificationTargetType.yaml +11 -0
  40. package/api/components/notifications/target/partInstance/notificationTargetPartInstance-example.yaml +4 -0
  41. package/api/components/notifications/target/partInstance/notificationTargetPartInstance.yaml +18 -0
  42. package/api/components/notifications/target/pieceInstance/notificationTargetPieceInstance-example.yaml +5 -0
  43. package/api/components/notifications/target/pieceInstance/notificationTargetPieceInstance.yaml +20 -0
  44. package/api/components/notifications/target/rundown/notificationTargetRundown-example.yaml +3 -0
  45. package/api/components/notifications/target/rundown/notificationTargetRundown.yaml +16 -0
  46. package/api/components/notifications/target/rundownPlaylist/notificationTargetRundownPlaylist-example.yaml +3 -0
  47. package/api/components/notifications/target/rundownPlaylist/notificationTargetRundownPlaylist.yaml +16 -0
  48. package/api/components/notifications/target/unknown/notificationTargetUnknown-example.yaml +1 -0
  49. package/api/components/notifications/target/unknown/notificationTargetUnknown.yaml +12 -0
  50. package/api/components/packages/messages/packagesMessage.yaml +8 -0
  51. package/api/components/packages/packageInfoStatus/packageInfoStatus-example.yaml +8 -0
  52. package/api/components/packages/packageInfoStatus/packageInfoStatus.yaml +32 -0
  53. package/api/components/packages/packageStatus/packageStatus.yaml +23 -0
  54. package/api/components/packages/packagesEvent/packagesEvent-example.yaml +4 -0
  55. package/api/components/packages/packagesEvent/packagesEvent.yaml +20 -0
  56. package/api/components/part/currentPart/currentPartStatus-example.yaml +3 -0
  57. package/api/components/part/currentPart/currentPartStatus.yaml +13 -0
  58. package/api/components/part/currentSegmentPart/currentSegmentPart-example.yaml +3 -0
  59. package/api/components/part/currentSegmentPart/currentSegmentPart.yaml +14 -0
  60. package/api/components/part/partBase/partBase-example.yaml +3 -0
  61. package/api/components/part/partBase/partBase.yaml +18 -0
  62. package/api/components/part/partStatus/partStatus-example.yaml +6 -0
  63. package/api/components/part/partStatus/partStatus.yaml +22 -0
  64. package/api/components/piece/activePiecesEvent/activePiecesEvent-example.yaml +4 -0
  65. package/api/components/piece/activePiecesEvent/activePiecesEvent.yaml +22 -0
  66. package/api/components/piece/messages/activePiecesMessage.yaml +10 -0
  67. package/api/components/piece/pieceStatus/pieceStatus-example.yaml +7 -0
  68. package/api/components/piece/pieceStatus/pieceStatus.yaml +28 -0
  69. package/api/components/playlist/activePlaylistEvent/activePlaylistEvent-example.yaml +17 -0
  70. package/api/components/playlist/activePlaylistEvent/activePlaylistEvent.yaml +50 -0
  71. package/api/components/playlist/messages/activePlaylistMessage.yaml +11 -0
  72. package/api/components/playlist/playlistStatus/playlistStatus-example.yaml +4 -0
  73. package/api/components/playlist/playlistStatus/playlistStatus.yaml +26 -0
  74. package/api/components/quickLoop/activePlaylistQuickLoop/activePlaylistQuickLoop-example.yaml +6 -0
  75. package/api/components/quickLoop/activePlaylistQuickLoop/activePlaylistQuickLoop.yaml +19 -0
  76. package/api/components/quickLoop/quickLoopMarker/quickLoopMarker-example.yaml +2 -0
  77. package/api/components/quickLoop/quickLoopMarker/quickLoopMarker.yaml +20 -0
  78. package/api/components/quickLoop/quickLoopMarkerType.yaml +10 -0
  79. package/api/components/segment/currentSegment/currentSegment-example.yaml +5 -0
  80. package/api/components/segment/currentSegment/currentSegment.yaml +19 -0
  81. package/api/components/segment/messages/segmentsMessage.yaml +10 -0
  82. package/api/components/segment/segment/segment-example.yaml +8 -0
  83. package/api/components/segment/segment/segment.yaml +26 -0
  84. package/api/components/segment/segmentBase/segmentBase-example.yaml +1 -0
  85. package/api/components/segment/segmentBase/segmentBase.yaml +11 -0
  86. package/api/components/segment/segmentsEvent/segmentsEvent-example.yaml +4 -0
  87. package/api/components/segment/segmentsEvent/segmentsEvent.yaml +23 -0
  88. package/api/components/studio/messages/studioUpdate.yaml +11 -0
  89. package/api/components/studio/studioEvent/studioEvent-example.yaml +2 -0
  90. package/api/components/studio/studioEvent/studioEvent.yaml +16 -0
  91. package/api/components/studio/studioStatus/studioStatus-example.yaml +4 -0
  92. package/api/components/studio/studioStatus/studioStatus.yaml +21 -0
  93. package/api/components/subscriptions/events/subscribeEvent/subscribeEvent-example.yaml +4 -0
  94. package/api/components/subscriptions/events/subscribeEvent/subscribeEvent.yaml +15 -0
  95. package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusError/subscriptionStatusError-example.yaml +2 -0
  96. package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusError/subscriptionStatusError.yaml +14 -0
  97. package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusEvent-example.yaml +4 -0
  98. package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusEvent.yaml +10 -0
  99. package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusSuccess/subscriptionStatusSuccess-example.yaml +4 -0
  100. package/api/components/subscriptions/events/subscriptionStatusEvent/subscriptionStatusSuccess/subscriptionStatusSuccess.yaml +16 -0
  101. package/api/components/subscriptions/messages/subscribeMessage.yaml +12 -0
  102. package/api/components/subscriptions/messages/subscriptionStatusErrorMessage.yaml +10 -0
  103. package/api/components/subscriptions/messages/subscriptionStatusSuccessMessage.yaml +10 -0
  104. package/api/components/subscriptions/subscriptionDetails/subscriptionDetails-example.yaml +2 -0
  105. package/api/components/subscriptions/subscriptionDetails/subscriptionDetails.yaml +13 -0
  106. package/api/components/subscriptions/subscriptionEventName.yaml +8 -0
  107. package/api/components/subscriptions/subscriptionName.yaml +14 -0
  108. package/api/components/subscriptions/subscriptionRequestDetails/subscriptionRequestDetails.yaml +11 -0
  109. package/api/components/subscriptions/subscriptionStatusName.yaml +8 -0
  110. package/api/components/timing/activePlaylistTiming/activePlaylistTiming-example.yaml +3 -0
  111. package/api/components/timing/activePlaylistTiming/activePlaylistTiming.yaml +24 -0
  112. package/api/components/timing/activePlaylistTiming/activePlaylistTimingMode.yaml +7 -0
  113. package/api/components/timing/currentPartTiming/currentPartTiming-example.yaml +3 -0
  114. package/api/components/timing/currentPartTiming/currentPartTiming.yaml +20 -0
  115. package/api/components/timing/currentSegmentPartTiming/currentSegmentPartTiming-example.yaml +1 -0
  116. package/api/components/timing/currentSegmentPartTiming/currentSegmentPartTiming.yaml +8 -0
  117. package/api/components/timing/currentSegmentTiming/currentSegmentTiming-example.yaml +2 -0
  118. package/api/components/timing/currentSegmentTiming/currentSegmentTiming.yaml +16 -0
  119. package/api/components/timing/segmentCountdownType.yaml +6 -0
  120. package/api/components/timing/segmentTiming/segmentTiming-example.yaml +3 -0
  121. package/api/components/timing/segmentTiming/segmentTiming.yaml +19 -0
  122. package/api/topics/activePieces/activePiecesTopic.yaml +8 -0
  123. package/api/topics/activePlaylist/activePlaylistTopic.yaml +8 -0
  124. package/api/topics/adLibs/adLibsTopic.yaml +8 -0
  125. package/api/topics/buckets/bucketsTopic.yaml +8 -0
  126. package/api/topics/heartbeat/heartbeatTopic.yaml +7 -0
  127. package/api/topics/notifications/notificationsTopic.yaml +7 -0
  128. package/api/topics/packages/packagesTopic.yaml +7 -0
  129. package/api/topics/ping/pingTopic.yaml +11 -0
  130. package/api/topics/segments/segmentsTopic.yaml +7 -0
  131. package/api/topics/studio/studioTopic.yaml +7 -0
  132. package/api/topics/subscriptions/subscriptionsTopic.yaml +16 -0
  133. package/dist/generated/schema.d.ts +824 -0
  134. package/dist/generated/schema.d.ts.map +1 -0
  135. package/dist/generated/schema.js +118 -0
  136. package/dist/generated/schema.js.map +1 -0
  137. package/dist/index.d.ts +3 -0
  138. package/dist/index.d.ts.map +1 -0
  139. package/dist/index.js +6 -0
  140. package/dist/index.js.map +1 -0
  141. package/package.json +68 -0
@@ -0,0 +1,824 @@
1
+ /**
2
+ * This file was automatically generated using and @asyncapi/parser @asyncapi/modelina.
3
+ * DO NOT MODIFY IT BY HAND. Instead, modify the source AsyncAPI schema files,
4
+ * and run "yarn generate-schema-types" to regenerate this file.
5
+ */
6
+ type Subscriptions = SubscriptionStatusError | SubscriptionStatusSuccess;
7
+ interface PingEvent {
8
+ event: 'ping';
9
+ /**
10
+ * Client originated ID reflected in response message.
11
+ */
12
+ reqid: number;
13
+ }
14
+ interface PongEvent {
15
+ event: 'pong';
16
+ /**
17
+ * Client originated ID reflected in response message.
18
+ */
19
+ reqid: number;
20
+ }
21
+ interface HeartbeatEvent {
22
+ event: 'heartbeat';
23
+ }
24
+ interface SubscribeEvent {
25
+ /**
26
+ * Name of the event when subscribing or unsubscribing to topics.
27
+ */
28
+ event: SubscriptionEventName;
29
+ /**
30
+ * Client originated ID reflected in response message.
31
+ */
32
+ reqid: number;
33
+ subscription: SubscriptionRequestDetails;
34
+ }
35
+ /**
36
+ * Name of the event when subscribing or unsubscribing to topics.
37
+ */
38
+ declare enum SubscriptionEventName {
39
+ SUBSCRIBE = "subscribe",
40
+ UNSUBSCRIBE = "unsubscribe"
41
+ }
42
+ interface SubscriptionRequestDetails {
43
+ /**
44
+ * The name of the topic related to this status.
45
+ */
46
+ name: SubscriptionName;
47
+ }
48
+ /**
49
+ * The name of the topic related to this status.
50
+ */
51
+ declare enum SubscriptionName {
52
+ STUDIO = "studio",
53
+ ACTIVE_PLAYLIST = "activePlaylist",
54
+ ACTIVE_PIECES = "activePieces",
55
+ SEGMENTS = "segments",
56
+ AD_LIBS = "adLibs",
57
+ NOTIFICATIONS = "notifications",
58
+ BUCKETS = "buckets",
59
+ RESERVED_PACKAGES = "packages"
60
+ }
61
+ interface SubscriptionStatusError {
62
+ errorMessage: string;
63
+ event: 'subscriptionStatus';
64
+ /**
65
+ * Client originated ID reflected in response message.
66
+ */
67
+ reqid: number;
68
+ subscription: SubscriptionDetails;
69
+ additionalProperties?: Record<string, any>;
70
+ }
71
+ interface SubscriptionDetails {
72
+ /**
73
+ * The name of the topic related to this status.
74
+ */
75
+ name: SubscriptionName;
76
+ /**
77
+ * The current status of the subscription
78
+ */
79
+ status: SubscriptionStatus;
80
+ }
81
+ /**
82
+ * The current status of the subscription
83
+ */
84
+ declare enum SubscriptionStatus {
85
+ SUBSCRIBED = "subscribed",
86
+ UNSUBSCRIBED = "unsubscribed"
87
+ }
88
+ interface SubscriptionStatusSuccess {
89
+ event: 'subscriptionStatus';
90
+ /**
91
+ * Client originated ID reflected in response message.
92
+ */
93
+ reqid: number;
94
+ subscription: SubscriptionDetails;
95
+ additionalProperties?: Record<string, any>;
96
+ }
97
+ interface StudioEvent {
98
+ event: 'studio';
99
+ /**
100
+ * Unique id of the studio
101
+ */
102
+ id: string | null;
103
+ /**
104
+ * User-presentable name for the studio installation
105
+ */
106
+ name: string;
107
+ /**
108
+ * The playlists that are currently loaded in the studio
109
+ */
110
+ playlists: PlaylistStatus[];
111
+ additionalProperties?: Record<string, any>;
112
+ }
113
+ interface PlaylistStatus {
114
+ /**
115
+ * Unique id of the playlist
116
+ */
117
+ id: string;
118
+ /**
119
+ * Id normally sourced from the ingest system
120
+ */
121
+ externalId: string;
122
+ /**
123
+ * The user defined playlist name
124
+ */
125
+ name: string;
126
+ /**
127
+ * Whether this playlist is currently active or in rehearsal
128
+ */
129
+ activationStatus: PlaylistActivationStatus;
130
+ }
131
+ /**
132
+ * Whether this playlist is currently active or in rehearsal
133
+ */
134
+ declare enum PlaylistActivationStatus {
135
+ DEACTIVATED = "deactivated",
136
+ REHEARSAL = "rehearsal",
137
+ ACTIVATED = "activated"
138
+ }
139
+ interface ActivePlaylistEvent {
140
+ event: 'activePlaylist';
141
+ /**
142
+ * Unique id of the active playlist
143
+ */
144
+ id: string | null;
145
+ /**
146
+ * Id normally sourced from the ingest system
147
+ */
148
+ externalId: string | null;
149
+ /**
150
+ * User-presentable name for the active playlist
151
+ */
152
+ name: string;
153
+ /**
154
+ * The set of rundownIds in the active playlist, in order
155
+ */
156
+ rundownIds: string[];
157
+ currentPart: CurrentPartStatus | null;
158
+ currentSegment: CurrentSegment | null;
159
+ nextPart: PartStatus | null;
160
+ /**
161
+ * Optional arbitrary data
162
+ */
163
+ publicData?: any;
164
+ /**
165
+ * Timing information about the active playlist
166
+ */
167
+ timing: ActivePlaylistTiming;
168
+ /**
169
+ * Information about the current quickLoop, if any
170
+ */
171
+ quickLoop?: ActivePlaylistQuickLoop;
172
+ }
173
+ interface CurrentPartStatus {
174
+ /**
175
+ * Unique id of the part
176
+ */
177
+ id: string;
178
+ /**
179
+ * User-presentable name of the part
180
+ */
181
+ name: string;
182
+ /**
183
+ * If this part will progress to the next automatically
184
+ */
185
+ autoNext?: boolean;
186
+ /**
187
+ * Unique id of the segment this part belongs to
188
+ */
189
+ segmentId: string;
190
+ /**
191
+ * All pieces in this part
192
+ */
193
+ pieces: PieceStatus[];
194
+ /**
195
+ * Optional arbitrary data
196
+ */
197
+ publicData?: any;
198
+ /**
199
+ * Timing information about the current part
200
+ */
201
+ timing: CurrentPartTiming;
202
+ additionalProperties?: Record<string, any>;
203
+ }
204
+ interface PieceStatus {
205
+ /**
206
+ * Unique id of the Piece
207
+ */
208
+ id: string;
209
+ /**
210
+ * User-facing name of the Piece
211
+ */
212
+ name: string;
213
+ /**
214
+ * The source layer name for this Piece
215
+ */
216
+ sourceLayer: string;
217
+ /**
218
+ * The output layer name for this Piece
219
+ */
220
+ outputLayer: string;
221
+ /**
222
+ * Tags attached to this Piece
223
+ */
224
+ tags?: string[];
225
+ /**
226
+ * Optional arbitrary data
227
+ */
228
+ publicData?: any;
229
+ }
230
+ /**
231
+ * Timing information about the current part
232
+ */
233
+ interface CurrentPartTiming {
234
+ /**
235
+ * Expected duration of the part (milliseconds)
236
+ */
237
+ expectedDurationMs: number;
238
+ /**
239
+ * Unix timestamp of when the part started (milliseconds)
240
+ */
241
+ startTime: number;
242
+ /**
243
+ * Unix timestamp of when the part is projected to end (milliseconds). A sum of `startTime` and `expectedDurationMs`.
244
+ */
245
+ projectedEndTime: number;
246
+ additionalProperties?: Record<string, any>;
247
+ }
248
+ interface CurrentSegment {
249
+ /**
250
+ * Unique id of the segment
251
+ */
252
+ id: string;
253
+ /**
254
+ * Timing information about the current segment
255
+ */
256
+ timing: CurrentSegmentTiming;
257
+ parts: CurrentSegmentPart[];
258
+ additionalProperties?: Record<string, any>;
259
+ }
260
+ /**
261
+ * Timing information about the current segment
262
+ */
263
+ interface CurrentSegmentTiming {
264
+ /**
265
+ * Expected duration of the segment (milliseconds)
266
+ */
267
+ expectedDurationMs: number;
268
+ /**
269
+ * Budget duration of the segment (milliseconds)
270
+ */
271
+ budgetDurationMs?: number;
272
+ /**
273
+ * Countdown type within the segment. Default: `part_expected_duration`
274
+ */
275
+ countdownType?: SegmentCountdownType;
276
+ /**
277
+ * Unix timestamp of when the segment is projected to end (milliseconds). The time this segment started, offset by its budget duration, if the segment has a defined budget duration. Otherwise, the time the current part started, offset by the difference between expected durations of all parts in this segment and the as-played durations of the parts that already stopped.
278
+ */
279
+ projectedEndTime: number;
280
+ additionalProperties?: Record<string, any>;
281
+ }
282
+ /**
283
+ * Countdown type within the segment. Default: `part_expected_duration`
284
+ */
285
+ declare enum SegmentCountdownType {
286
+ PART_EXPECTED_DURATION = "part_expected_duration",
287
+ SEGMENT_BUDGET_DURATION = "segment_budget_duration"
288
+ }
289
+ interface CurrentSegmentPart {
290
+ /**
291
+ * Unique id of the part
292
+ */
293
+ id: string;
294
+ /**
295
+ * User-presentable name of the part
296
+ */
297
+ name: string;
298
+ /**
299
+ * If this part will progress to the next automatically
300
+ */
301
+ autoNext?: boolean;
302
+ timing: CurrentSegmentPartTiming;
303
+ additionalProperties?: Record<string, any>;
304
+ }
305
+ interface CurrentSegmentPartTiming {
306
+ /**
307
+ * Expected duration of the part (milliseconds)
308
+ */
309
+ expectedDurationMs?: number;
310
+ additionalProperties?: Record<string, any>;
311
+ }
312
+ interface PartStatus {
313
+ /**
314
+ * Unique id of the part
315
+ */
316
+ id: string;
317
+ /**
318
+ * User-presentable name of the part
319
+ */
320
+ name: string;
321
+ /**
322
+ * If this part will progress to the next automatically
323
+ */
324
+ autoNext?: boolean;
325
+ /**
326
+ * Unique id of the segment this part belongs to
327
+ */
328
+ segmentId: string;
329
+ /**
330
+ * All pieces in this part
331
+ */
332
+ pieces: PieceStatus[];
333
+ /**
334
+ * Optional arbitrary data
335
+ */
336
+ publicData?: any;
337
+ additionalProperties?: Record<string, any>;
338
+ }
339
+ /**
340
+ * Timing information about the active playlist
341
+ */
342
+ interface ActivePlaylistTiming {
343
+ /**
344
+ * Timing mode for the playlist.
345
+ */
346
+ timingMode: ActivePlaylistTimingMode;
347
+ /**
348
+ * Unix timestamp of when the playlist started (milliseconds)
349
+ */
350
+ startedPlayback?: number;
351
+ /**
352
+ * Unix timestamp of when the playlist is expected to start (milliseconds). Required when the timingMode is set to forward-time.
353
+ */
354
+ expectedStart?: number;
355
+ /**
356
+ * Duration of the playlist in ms
357
+ */
358
+ expectedDurationMs?: number;
359
+ /**
360
+ * Unix timestamp of when the playlist is expected to end (milliseconds) Required when the timingMode is set to back-time.
361
+ */
362
+ expectedEnd?: number;
363
+ }
364
+ /**
365
+ * Timing mode for the playlist.
366
+ */
367
+ declare enum ActivePlaylistTimingMode {
368
+ NONE = "none",
369
+ FORWARD_MINUS_TIME = "forward-time",
370
+ BACK_MINUS_TIME = "back-time"
371
+ }
372
+ /**
373
+ * Information about the current quickLoop, if any
374
+ */
375
+ interface ActivePlaylistQuickLoop {
376
+ /**
377
+ * Whether the user is allowed to make alterations to the Start/End markers
378
+ */
379
+ locked: boolean;
380
+ /**
381
+ * Whether the loop has two valid markers and is currently running
382
+ */
383
+ running: boolean;
384
+ /**
385
+ * Represents a positional marker used to define the start or end of a Quick Loop by referencing a rundown, segment, or part.
386
+ */
387
+ start?: QuickLoopMarker;
388
+ /**
389
+ * Represents a positional marker used to define the start or end of a Quick Loop by referencing a rundown, segment, or part.
390
+ */
391
+ end?: QuickLoopMarker;
392
+ additionalProperties?: Record<string, any>;
393
+ }
394
+ /**
395
+ * Represents a positional marker used to define the start or end of a Quick Loop by referencing a rundown, segment, or part.
396
+ */
397
+ interface QuickLoopMarker {
398
+ /**
399
+ * The type of entity the marker is locked to
400
+ */
401
+ markerType: QuickLoopMarkerType;
402
+ /**
403
+ * The rundown that this marker references. This will be set for rundown, segment and part markers
404
+ */
405
+ rundownId?: string;
406
+ /**
407
+ * The segment that this marker references. This will be set for segment and part markers
408
+ */
409
+ segmentId?: string;
410
+ /**
411
+ * The part that this marker references. This will be set for only part markers
412
+ */
413
+ partId?: string;
414
+ additionalProperties?: Record<string, any>;
415
+ }
416
+ /**
417
+ * The type of entity the marker is locked to
418
+ */
419
+ declare enum QuickLoopMarkerType {
420
+ PLAYLIST = "playlist",
421
+ RUNDOWN = "rundown",
422
+ SEGMENT = "segment",
423
+ PART = "part"
424
+ }
425
+ interface ActivePiecesEvent {
426
+ event: 'activePieces';
427
+ /**
428
+ * Unique id of the rundown playlist, or null if no playlist is active
429
+ */
430
+ rundownPlaylistId: string | null;
431
+ /**
432
+ * Pieces that are currently active (on air)
433
+ */
434
+ activePieces: PieceStatus[];
435
+ }
436
+ interface SegmentsEvent {
437
+ event: 'segments';
438
+ /**
439
+ * Unique id of the rundown playlist, or null if no playlist is active
440
+ */
441
+ rundownPlaylistId: string | null;
442
+ /**
443
+ * The segments that are in the currently active rundown playlist, in order
444
+ */
445
+ segments: Segment[];
446
+ additionalProperties?: Record<string, any>;
447
+ }
448
+ interface Segment {
449
+ /**
450
+ * Unique id of the segment
451
+ */
452
+ id: string;
453
+ /**
454
+ * User-facing identifier that can be used to identify the contents of a segment in the Rundown source system
455
+ */
456
+ identifier?: string;
457
+ /**
458
+ * Unique id of the rundown this segment belongs to
459
+ */
460
+ rundownId: string;
461
+ /**
462
+ * Name of the segment
463
+ */
464
+ name: string;
465
+ timing: SegmentTiming;
466
+ /**
467
+ * Optional arbitrary data
468
+ */
469
+ publicData?: any;
470
+ additionalProperties?: Record<string, any>;
471
+ }
472
+ interface SegmentTiming {
473
+ /**
474
+ * Expected duration of the segment (milliseconds)
475
+ */
476
+ expectedDurationMs: number;
477
+ /**
478
+ * Budget duration of the segment (milliseconds)
479
+ */
480
+ budgetDurationMs?: number;
481
+ /**
482
+ * Countdown type within the segment. Default: `part_expected_duration`
483
+ */
484
+ countdownType?: SegmentCountdownType;
485
+ additionalProperties?: Record<string, any>;
486
+ }
487
+ interface AdLibsEvent {
488
+ event: 'adLibs';
489
+ /**
490
+ * Unique id of the rundown playlist, or null if no playlist is active
491
+ */
492
+ rundownPlaylistId: string | null;
493
+ /**
494
+ * The available AdLibs for this playlist
495
+ */
496
+ adLibs: AdLibStatus[];
497
+ /**
498
+ * The available Global AdLibs for this playlist
499
+ */
500
+ globalAdLibs: GlobalAdLibStatus[];
501
+ }
502
+ interface AdLibStatus {
503
+ /**
504
+ * Unique id of the AdLib
505
+ */
506
+ id: string;
507
+ /**
508
+ * The user defined AdLib name
509
+ */
510
+ name: string;
511
+ /**
512
+ * The source layer name for this AdLib
513
+ */
514
+ sourceLayer: string;
515
+ /**
516
+ * The output layer name for this AdLib
517
+ */
518
+ outputLayer?: string;
519
+ /**
520
+ * The available action type names that can be used to modify the execution of the AdLib
521
+ */
522
+ actionType: AdLibActionType[];
523
+ /**
524
+ * Tags attached to this AdLib
525
+ */
526
+ tags?: string[];
527
+ /**
528
+ * Optional arbitrary data
529
+ */
530
+ publicData?: any;
531
+ /**
532
+ * JSON schema definition of the adLib properties that can be modified using the adLibOptions property in executeAdLib
533
+ */
534
+ optionsSchema?: string;
535
+ /**
536
+ * Unique id of the segment this adLib belongs to
537
+ */
538
+ segmentId: string;
539
+ /**
540
+ * Unique id of the part this adLib belongs to
541
+ */
542
+ partId: string;
543
+ additionalProperties?: Record<string, any>;
544
+ }
545
+ interface AdLibActionType {
546
+ /**
547
+ * The string to be passed to the ExecuteAdlib function
548
+ */
549
+ name: string;
550
+ /**
551
+ * The label for the AdLib type
552
+ */
553
+ label: string;
554
+ }
555
+ interface GlobalAdLibStatus {
556
+ /**
557
+ * Unique id of the AdLib
558
+ */
559
+ id: string;
560
+ /**
561
+ * The user defined AdLib name
562
+ */
563
+ name: string;
564
+ /**
565
+ * The source layer name for this AdLib
566
+ */
567
+ sourceLayer: string;
568
+ /**
569
+ * The output layer name for this AdLib
570
+ */
571
+ outputLayer?: string;
572
+ /**
573
+ * The available action type names that can be used to modify the execution of the AdLib
574
+ */
575
+ actionType: AdLibActionType[];
576
+ /**
577
+ * Tags attached to this AdLib
578
+ */
579
+ tags?: string[];
580
+ /**
581
+ * Optional arbitrary data
582
+ */
583
+ publicData?: any;
584
+ /**
585
+ * JSON schema definition of the adLib properties that can be modified using the adLibOptions property in executeAdLib
586
+ */
587
+ optionsSchema?: string;
588
+ additionalProperties?: Record<string, any>;
589
+ }
590
+ interface PackagesEvent {
591
+ event: 'packages';
592
+ /**
593
+ * Unique id of the rundown playlist, or null if no playlist is active
594
+ */
595
+ rundownPlaylistId: string | null;
596
+ /**
597
+ * The Package statuses for this playlist
598
+ */
599
+ packages: PackageInfoStatus[];
600
+ }
601
+ interface PackageInfoStatus {
602
+ /**
603
+ * Name of the package
604
+ */
605
+ packageName?: string;
606
+ /**
607
+ * Status:
608
+ * * `unknown` - status not determined (yet)
609
+ * * `ok` - no faults, can be played
610
+ * * `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.)
611
+ * * `source_has_issues` - technically it can be played, but some issues with it were detected
612
+ * * `source_missing` - the source (file, live input) is missing and cannot be played
613
+ * * `source_not_ready` - can't be played for a non-technical reason (e.g. a placeholder clip with no content)
614
+ * * `source_not_set` - missing a file path
615
+ * * `source_unknown_state` - reported, but unrecognized state
616
+ */
617
+ status: PackageStatus;
618
+ /**
619
+ * Id of the Rundown that a Piece (or AdLib) expecting this package belongs to
620
+ */
621
+ rundownId: string;
622
+ /**
623
+ * 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.
624
+ */
625
+ partId?: string;
626
+ /**
627
+ * Id of the Segment that a Piece (or AdLib) expecting this package belongs to
628
+ */
629
+ segmentId?: string;
630
+ /**
631
+ * 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.
632
+ */
633
+ pieceOrAdLibId: string;
634
+ /**
635
+ * URL where the thumbnail can be accessed
636
+ */
637
+ thumbnailUrl?: string;
638
+ /**
639
+ * URL where the preview can be accessed
640
+ */
641
+ previewUrl?: string;
642
+ }
643
+ /**
644
+ * Status:
645
+ * * `unknown` - status not determined (yet)
646
+ * * `ok` - no faults, can be played
647
+ * * `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.)
648
+ * * `source_has_issues` - technically it can be played, but some issues with it were detected
649
+ * * `source_missing` - the source (file, live input) is missing and cannot be played
650
+ * * `source_not_ready` - can't be played for a non-technical reason (e.g. a placeholder clip with no content)
651
+ * * `source_not_set` - missing a file path
652
+ * * `source_unknown_state` - reported, but unrecognized state
653
+ */
654
+ declare enum PackageStatus {
655
+ UNKNOWN = "unknown",
656
+ OK = "ok",
657
+ SOURCE_BROKEN = "source_broken",
658
+ SOURCE_HAS_ISSUES = "source_has_issues",
659
+ SOURCE_MISSING = "source_missing",
660
+ SOURCE_NOT_READY = "source_not_ready",
661
+ SOURCE_NOT_SET = "source_not_set",
662
+ SOURCE_UNKNOWN_STATE = "source_unknown_state"
663
+ }
664
+ interface BucketsEvent {
665
+ event: 'buckets';
666
+ /**
667
+ * Buckets available in the Studio
668
+ */
669
+ buckets: BucketStatus[];
670
+ }
671
+ interface BucketStatus {
672
+ /**
673
+ * Unique id of the bucket
674
+ */
675
+ id: string;
676
+ /**
677
+ * The user defined bucket name
678
+ */
679
+ name: string;
680
+ /**
681
+ * The AdLibs in this bucket
682
+ */
683
+ adLibs: BucketAdLibStatus[];
684
+ }
685
+ interface BucketAdLibStatus {
686
+ /**
687
+ * Unique id of the AdLib
688
+ */
689
+ id: string;
690
+ /**
691
+ * The user defined AdLib name
692
+ */
693
+ name: string;
694
+ /**
695
+ * The source layer name for this AdLib
696
+ */
697
+ sourceLayer: string;
698
+ /**
699
+ * The output layer name for this AdLib
700
+ */
701
+ outputLayer?: string;
702
+ /**
703
+ * The available action type names that can be used to modify the execution of the AdLib
704
+ */
705
+ actionType: AdLibActionType[];
706
+ /**
707
+ * Tags attached to this AdLib
708
+ */
709
+ tags?: string[];
710
+ /**
711
+ * Optional arbitrary data
712
+ */
713
+ publicData?: any;
714
+ /**
715
+ * JSON schema definition of the adLib properties that can be modified using the adLibOptions property in executeAdLib
716
+ */
717
+ optionsSchema?: string;
718
+ /**
719
+ * Id of the adLib recognizable by the external source. Unique within a bucket.
720
+ */
721
+ externalId: string;
722
+ additionalProperties?: Record<string, any>;
723
+ }
724
+ /**
725
+ * Active notifications in Sofie
726
+ */
727
+ interface NotificationsEvent {
728
+ event: 'notifications';
729
+ /**
730
+ * Active notifications in Sofie
731
+ */
732
+ activeNotifications: NotificationObj[];
733
+ }
734
+ /**
735
+ * This describes a notification that should be shown to a user. These can come from various sources, and are added and removed dynamically during system usage
736
+ */
737
+ interface NotificationObj {
738
+ /**
739
+ * Unique identifier for the notification
740
+ */
741
+ _id: string;
742
+ /**
743
+ * Severity level of the notification.
744
+ */
745
+ severity: NotificationSeverity;
746
+ /**
747
+ * The message of the notification
748
+ */
749
+ message: string;
750
+ /**
751
+ * Describes what the notification is related to
752
+ */
753
+ relatedTo: NotificationTargetRundown | NotificationTargetRundownPlaylist | NotificationTargetPartInstance | NotificationTargetPieceInstance | NotificationTargetUnknown;
754
+ /**
755
+ * Unix timestamp of creation
756
+ */
757
+ created: number;
758
+ /**
759
+ * Unix timestamp of last modification
760
+ */
761
+ modified?: number;
762
+ }
763
+ /**
764
+ * Severity level of the notification.
765
+ */
766
+ declare enum NotificationSeverity {
767
+ WARNING = "warning",
768
+ ERROR = "error",
769
+ INFO = "info"
770
+ }
771
+ interface NotificationTargetRundown {
772
+ /**
773
+ * Possible NotificationTarget types
774
+ */
775
+ type: NotificationTargetType.RUNDOWN;
776
+ studioId: string;
777
+ rundownId: string;
778
+ }
779
+ /**
780
+ * Possible NotificationTarget types
781
+ */
782
+ declare enum NotificationTargetType {
783
+ RUNDOWN = "rundown",
784
+ PLAYLIST = "playlist",
785
+ PART_INSTANCE = "partInstance",
786
+ PIECE_INSTANCE = "pieceInstance",
787
+ UNKNOWN = "unknown"
788
+ }
789
+ interface NotificationTargetRundownPlaylist {
790
+ /**
791
+ * Possible NotificationTarget types
792
+ */
793
+ type: NotificationTargetType.PLAYLIST;
794
+ studioId: string;
795
+ playlistId: string;
796
+ }
797
+ interface NotificationTargetPartInstance {
798
+ /**
799
+ * Possible NotificationTarget types
800
+ */
801
+ type: NotificationTargetType.PART_INSTANCE;
802
+ studioId: string;
803
+ rundownId: string;
804
+ partInstanceId: string;
805
+ }
806
+ interface NotificationTargetPieceInstance {
807
+ /**
808
+ * Possible NotificationTarget types
809
+ */
810
+ type: NotificationTargetType.PIECE_INSTANCE;
811
+ studioId: string;
812
+ rundownId: string;
813
+ partInstanceId: string;
814
+ pieceInstanceId: string;
815
+ }
816
+ interface NotificationTargetUnknown {
817
+ /**
818
+ * Possible NotificationTarget types
819
+ */
820
+ type: NotificationTargetType.UNKNOWN;
821
+ }
822
+ export type Slash = ActivePiecesEvent | ActivePlaylistEvent | AdLibsEvent | BucketsEvent | HeartbeatEvent | NotificationsEvent | PackagesEvent | PongEvent | SegmentsEvent | StudioEvent | SubscriptionStatusError | SubscriptionStatusSuccess;
823
+ export { Subscriptions, PingEvent, PongEvent, HeartbeatEvent, SubscribeEvent, SubscriptionEventName, SubscriptionRequestDetails, SubscriptionName, SubscriptionStatusError, SubscriptionDetails, SubscriptionStatus, SubscriptionStatusSuccess, StudioEvent, PlaylistStatus, PlaylistActivationStatus, ActivePlaylistEvent, CurrentPartStatus, PieceStatus, CurrentPartTiming, CurrentSegment, CurrentSegmentTiming, SegmentCountdownType, CurrentSegmentPart, CurrentSegmentPartTiming, PartStatus, ActivePlaylistTiming, ActivePlaylistTimingMode, ActivePlaylistQuickLoop, QuickLoopMarker, QuickLoopMarkerType, ActivePiecesEvent, SegmentsEvent, Segment, SegmentTiming, AdLibsEvent, AdLibStatus, AdLibActionType, GlobalAdLibStatus, PackagesEvent, PackageInfoStatus, PackageStatus, BucketsEvent, BucketStatus, BucketAdLibStatus, NotificationsEvent, NotificationObj, NotificationSeverity, NotificationTargetRundown, NotificationTargetType, NotificationTargetRundownPlaylist, NotificationTargetPartInstance, NotificationTargetPieceInstance, NotificationTargetUnknown, };
824
+ //# sourceMappingURL=schema.d.ts.map