diff options
author | metamuffin <metamuffin@disroot.org> | 2022-09-09 11:42:06 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2022-09-09 11:42:06 +0200 |
commit | b6d93e0f322901dfc1fee23f3d396a68e61e1b29 (patch) | |
tree | 01ba855cf41fb53f84cd6eb504c4f4ba0134fdfa /client-web/source/room.ts | |
parent | afed94bb4609bd796102c9184f13fa29c5f92a48 (diff) | |
download | keks-meet-b6d93e0f322901dfc1fee23f3d396a68e61e1b29.tar keks-meet-b6d93e0f322901dfc1fee23f3d396a68e61e1b29.tar.bz2 keks-meet-b6d93e0f322901dfc1fee23f3d396a68e61e1b29.tar.zst |
crypto stuff
Diffstat (limited to 'client-web/source/room.ts')
-rw-r--r-- | client-web/source/room.ts | 36 |
1 files changed, 8 insertions, 28 deletions
diff --git a/client-web/source/room.ts b/client-web/source/room.ts index 78454bb..6c9a7ba 100644 --- a/client-web/source/room.ts +++ b/client-web/source/room.ts @@ -5,43 +5,23 @@ import { RemoteUser } from "./remote_user.ts"; import { User } from "./user.ts"; import { LocalUser } from "./local_user.ts"; import { ServerboundPacket, ClientboundPacket } from "../../common/packets.d.ts"; -import { PREFS } from "./preferences.ts"; -import { ep } from "./helper.ts"; +import { SignalingConnection } from "./protocol/mod.ts"; export class Room { el: HTMLElement - name: string users: Map<number, User> = new Map() remote_users: Map<number, RemoteUser> = new Map() local_user!: LocalUser my_id!: number - websocket: WebSocket - constructor(name: string) { - this.name = name + constructor(public signaling: SignalingConnection) { this.el = document.createElement("div") this.el.classList.add("room") - - const ws_url = new URL(`${window.location.protocol.endsWith("s:") ? "wss" : "ws"}://${window.location.host}/${encodeURIComponent(name)}/signaling`) - ws_url.searchParams.set("username", PREFS.username) - this.websocket = new WebSocket(ws_url) - this.websocket.onclose = () => this.websocket_close() - - // const connecting_text = ep("Upgrading to a websocket connection…") - // this.el.append(connecting_text) - - this.websocket.onopen = () => { - // connecting_text.remove() - this.websocket_open() - } - this.websocket.onmessage = (ev) => { - this.websocket_message(JSON.parse(ev.data)) - } } websocket_send(data: ServerboundPacket) { log("ws", `-> ${data.relay?.recipient ?? "*"}`, data) - this.websocket.send(JSON.stringify(data)) + // this.websocket.send(JSON.stringify(data)) } websocket_message(packet: ClientboundPacket) { log("ws", `<- ${packet.message?.sender ?? "control packet"}: `, packet); @@ -51,7 +31,7 @@ export class Room { log("*", `server: ${packet.init.version}`) } else if (packet.client_join) { const p = packet.client_join - log("*", `${this.name} ${p.id} joined`); + log("*", `${p.id} joined`); if (p.id == this.my_id) { this.local_user = new LocalUser(this, p.id, p.name); } else { @@ -63,7 +43,7 @@ export class Room { } } else if (packet.client_leave) { const p = packet.client_leave; - log("*", `${this.name} ${p.id} left`); + log("*", `${p.id} left`); this.remote_users.get(p.id)!.leave() this.users.delete(p.id) this.remote_users.delete(p.id) @@ -72,9 +52,9 @@ export class Room { const p = packet.message; const sender = this.users.get(p.sender) if (sender instanceof RemoteUser) { - if (p.message.ice_candidate) sender.add_ice_candidate(p.message.ice_candidate) - if (p.message.offer) sender.on_offer(p.message.offer) - if (p.message.answer) sender.on_answer(p.message.answer) + // if (p.message.ice_candidate) sender.add_ice_candidate(p.message.ice_candidate) + // if (p.message.offer) sender.on_offer(p.message.offer) + // if (p.message.answer) sender.on_answer(p.message.answer) } else { console.log("!", p, sender); } |