From 32edf3404cba30a74494fa9599d72e7a1cc2bc8e Mon Sep 17 00:00:00 2001 From: Alex Christoffer Rasmussen Date: Sun, 3 Aug 2025 21:43:39 +1200 Subject: [PATCH] Fix tag ws api (#1709) * fix: ws api should also reten tag and not type * fix: when starting by cue try finding the next first then check before --- apps/server/src/adapters/WebsocketAdapter.ts | 2 +- .../services/runtime-service/rundownService.utils.ts | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/apps/server/src/adapters/WebsocketAdapter.ts b/apps/server/src/adapters/WebsocketAdapter.ts index 6954ac017..2c230926c 100644 --- a/apps/server/src/adapters/WebsocketAdapter.ts +++ b/apps/server/src/adapters/WebsocketAdapter.ts @@ -141,7 +141,7 @@ class SocketServer implements IAdapter { if (reply) { ws.send( JSON.stringify({ - type: tag, + tag, payload: reply.payload, }), ); diff --git a/apps/server/src/services/runtime-service/rundownService.utils.ts b/apps/server/src/services/runtime-service/rundownService.utils.ts index 2999294b8..56d28e942 100644 --- a/apps/server/src/services/runtime-service/rundownService.utils.ts +++ b/apps/server/src/services/runtime-service/rundownService.utils.ts @@ -78,7 +78,8 @@ export function findNextPlayableId(playableEventsOrder: EntryId[], currentEventI } /** - * returns first event that matches a given cue + * returns next event that matches a given cue + * then loops from the start */ export function findNextPlayableWithCue( rundown: Rundown, @@ -95,6 +96,14 @@ export function findNextPlayableWithCue( return event; } } + + for (let i = 0; i < currentEventIndex; i++) { + const eventId = playableEventsOrder[i]; + const event = rundown.entries[eventId]; + if (isOntimeEvent(event) && isPlayableEvent(event) && event.cue.toLowerCase() === lowerCaseCue) { + return event; + } + } } /**