From ff34d2900b4e8a59e7f80cd784161b55d4810a0c Mon Sep 17 00:00:00 2001 From: srgooglo Date: Thu, 12 May 2022 10:53:30 +0200 Subject: [PATCH] added `publishStream` & `unpublishStream` methods --- .../src/managers/SessionsManager/index.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/packages/streaming-server/src/managers/SessionsManager/index.js b/packages/streaming-server/src/managers/SessionsManager/index.js index abe430f2..60e4360a 100644 --- a/packages/streaming-server/src/managers/SessionsManager/index.js +++ b/packages/streaming-server/src/managers/SessionsManager/index.js @@ -1,6 +1,7 @@ export default class SessionsManager { constructor() { this.sessions = {} + this.publicStreams = [] } newSession = (id, session) => { @@ -13,7 +14,19 @@ export default class SessionsManager { removeSession = (id) => { this.sessions[id].reject() - + delete this.sessions[id] } + + publishStream = (payload) => { + if (typeof payload !== "object") { + throw new Error("Payload must be an object") + } + + this.publicStreams.push(payload) + } + + unpublishStream = (id) => { + this.publicStreams = this.publicStreams.filter(stream => stream.id !== id) + } } \ No newline at end of file