1- asyncapi : 2.6.0
2- id : ' urn:nrk:no: sofie:live-status-gateway:server'
1+ asyncapi : ' 2.6.0'
2+ id : ' sofie:live-status-gateway:server'
33info :
44 title : Sofie Live Status Service
5+ version : ' 2.0.1'
56 description : This service provides subscriptions for status updates from Sofie
6- version : 2.0.0
77 license :
88 name : MIT License
99 url : http://opensource.org/licenses/MIT
1010 contact :
11- name : Sofie TV Automation - NRK Team
11+ name : Sofie TV Automation
1212 url : https://github.com/Sofie-Automation/sofie-core/issues
1313
1414servers :
1515 development :
1616 url : localhost
17- description : Server available without authorisation
17+ description : Server available without authorization
1818 protocol : ws
1919 protocolVersion : ' 13'
2020
@@ -26,114 +26,66 @@ tags:
2626 - name : broadcast
2727
2828channels :
29+ # As the LSG is websocket only, channels are only used for logical grouping for the generated docs and folder structure.
30+ ping :
31+ $ref : ' ./topics/ping/pingTopic.yaml'
32+ heartbeat :
33+ $ref : ' ./topics/heartbeat/heartbeatTopic.yaml'
34+ subscriptions :
35+ $ref : ' ./topics/subscriptions/subscriptionsTopic.yaml'
36+ studio :
37+ $ref : ' ./topics/studio/studioTopic.yaml'
38+ activePlaylist :
39+ $ref : ' ./topics/activePlaylist/activePlaylistTopic.yaml'
40+ activePieces :
41+ $ref : ' ./topics/activePieces/activePiecesTopic.yaml'
42+ segments :
43+ $ref : ' ./topics/segments/segmentsTopic.yaml'
44+ adLibs :
45+ $ref : ' ./topics/adLibs/adLibsTopic.yaml'
46+ packages :
47+ $ref : ' ./topics/packages/packagesTopic.yaml'
48+ buckets :
49+ $ref : ' ./topics/buckets/bucketsTopic.yaml'
50+
51+ # Needed to retain the Slash type from the old schema structure. Eventually this should be removed.
2952 / :
30- publish :
31- description : Send messages to the root API
32- operationId : processRootMessage
33- message :
34- oneOf :
35- - $ref : ' #/components/messages/ping'
36- - $ref : ' #/components/messages/subscribe'
37- - $ref : ' #/components/messages/unsubscribe'
3853 subscribe :
39- description : Messages that are received from the API
54+ summary : Slash Messages
55+ description : Messages that are received from the API - This channel is needed to retain the generated Slash type from the old schema structure. Eventually this should be removed.
4056 operationId : sendRootMessage
4157 message :
4258 oneOf :
43- - $ref : ' #/components/messages/pong'
44- - $ref : ' #/components/messages/heartbeat'
45- - $ref : ' #/components/messages/subscriptionStatus'
46- - $ref : ' #/components/messages/studio'
47- - $ref : ' #/components/messages/activePlaylist'
48- - $ref : ' #/components/messages/activePieces'
49- - $ref : ' #/components/messages/segments'
50- - $ref : ' #/components/messages/adLibs'
51- - $ref : ' #/components/messages/packages'
52- - $ref : ' #/components/messages/buckets'
53- components :
54- messages :
55- ping :
56- name : ping
57- messageId : ping
58- summary : Ping server to determine whether connection is alive
59- description : Client can ping server to determine whether connection is alive, server responds with pong. This is an application level ping as opposed to default ping in websockets standard which is server initiated
60- payload :
61- $ref : ' ./schemas/root.yaml#/$defs/ping'
62- x-response :
63- $ref : ' #/components/messages/pong'
64- pong :
65- name : pong
66- messageId : pong
67- summary : Pong is a response to ping message
68- description : Server pong response to a ping to determine whether connection is alive. This is an application level pong as opposed to default pong in websockets standard which is sent by client in response to a ping
69- payload :
70- $ref : ' ./schemas/root.yaml#/$defs/pong'
71- heartbeat :
72- name : heartbeat
73- messageId : heartbeat
74- description : Server heartbeat sent if no subscription traffic within 1 second (approximately)
75- payload :
76- $ref : ' ./schemas/root.yaml#/$defs/heartbeat'
77- subscribe :
78- name : subscribe
79- messageId : subscribe
80- description : Subscribe to a topic
81- payload :
82- $ref : ' ./schemas/root.yaml#/$defs/subscribe'
83- x-response :
84- $ref : ' ./schemas/root.yaml#/$defs/subscriptionStatus'
85- unsubscribe :
86- name : unsubscribe
87- messageId : unsubscribe
88- description : Unsubscribe from a topic
89- payload :
90- $ref : ' ./schemas/root.yaml#/$defs/unsubscribe'
91- x-response :
92- $ref : ' ./schemas/root.yaml#/$defs/subscriptionStatus'
93- subscriptionStatus :
94- messageId : subscriptionStatus
95- description : Subscription status response to subscribe or unsubscribe
96- payload :
97- $ref : ' ./schemas/root.yaml#/$defs/subscriptionStatus'
98- studio :
99- name : studio
100- messageId : studioUpdate
101- description : Studio status
102- payload :
103- $ref : ' ./schemas/studio.yaml#/$defs/studio'
104- activePlaylist :
105- name : activePlaylist
106- messageId : activePlaylistUpdate
107- description : Active Playlist status
108- payload :
109- $ref : ' ./schemas/activePlaylist.yaml#/$defs/activePlaylist'
110- activePieces :
111- name : activePieces
112- messageId : activePiecesUpdate
113- summary : Active Pieces status
114- description : Pieces from the active Playlist that are currently active (on air)
115- payload :
116- $ref : ' ./schemas/activePieces.yaml#/$defs/activePieces'
117- segments :
118- name : segments
119- messageId : segmentsUpdate
120- description : Segments in active Playlist
121- payload :
122- $ref : ' ./schemas/segments.yaml#/$defs/segments'
123- adLibs :
124- name : adLibs
125- messageId : adLibsUpdate
126- description : AdLibs in active Playlist
127- payload :
128- $ref : ' ./schemas/adLibs.yaml#/$defs/adLibs'
129- packages :
130- name : packages
131- messageId : packages
132- description : Status of Packages expected by Pieces
133- payload :
134- $ref : ' ./schemas/packages.yaml#/$defs/packages'
135- buckets :
136- name : buckets
137- description : Buckets in Studio
138- payload :
139- $ref : ' ./schemas/buckets.yaml#/$defs/buckets'
59+ - messageId : pong-typeGen
60+ payload :
61+ $ref : ' ./components/connection/messages/pongMessage.yaml#/components/messages/pongMessage/payload'
62+ - messageId : heartbeat-typeGen
63+ payload :
64+ $ref : ' ./components/connection/messages/heartbeatMessage.yaml#/components/messages/heartbeatMessage/payload'
65+ - messageId : subscriptionStatusSuccess-typeGen
66+ payload :
67+ $ref : ' ./components/subscriptions/messages/subscriptionStatusSuccessMessage.yaml#/components/messages/subscriptionStatusSuccessMessage/payload'
68+ - messageId : subscriptionStatusError-typeGen
69+ payload :
70+ $ref : ' ./components/subscriptions/messages/subscriptionStatusErrorMessage.yaml#/components/messages/subscriptionStatusErrorMessage/payload'
71+ - messageId : studioUpdate-typeGen
72+ payload :
73+ $ref : ' ./components/studio/messages/studioUpdate.yaml#/components/messages/studioUpdate/payload'
74+ - messageId : activePlaylist-typeGen
75+ payload :
76+ $ref : ' ./components/playlist/messages/activePlaylistMessage.yaml#/components/messages/activePlaylistMessage/payload'
77+ - messageId : activePieces-typeGen
78+ payload :
79+ $ref : ' ./components/piece/messages/activePiecesMessage.yaml#/components/messages/activePiecesMessage/payload'
80+ - messageId : segments-typeGen
81+ payload :
82+ $ref : ' ./components/segment/messages/segmentsMessage.yaml#/components/messages/segmentsMessage/payload'
83+ - messageId : adLibs-typeGen
84+ payload :
85+ $ref : ' ./components/adLibs/messages/adLibsMessage.yaml#/components/messages/adLibsMessage/payload'
86+ - messageId : packages-typeGen
87+ payload :
88+ $ref : ' ./components/packages/messages/packagesMessage.yaml#/components/messages/packagesMessage/payload'
89+ - messageId : buckets-typeGen
90+ payload :
91+ $ref : ' ./components/buckets/messages/bucketsMessage.yaml#/components/messages/bucketsMessage/payload'
0 commit comments