mirror of
https://github.com/ragestudio/comty.git
synced 2025-06-10 19:14:16 +00:00
32 lines
693 B
JavaScript
32 lines
693 B
JavaScript
export default class SessionsManager {
|
|
constructor() {
|
|
this.sessions = {}
|
|
this.publicStreams = []
|
|
}
|
|
|
|
newSession = (id, session) => {
|
|
this.sessions[id] = session
|
|
}
|
|
|
|
getSession = (id) => {
|
|
return this.sessions[id]
|
|
}
|
|
|
|
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)
|
|
}
|
|
} |