From e731a369e56fc02a667b9b28043ff23ea6c433be Mon Sep 17 00:00:00 2001 From: Madeline <46743919+MaddyUnderStars@users.noreply.github.com> Date: Mon, 7 Mar 2022 22:57:37 +1100 Subject: VOICE CONNECTS!!! Dtls stuck on "connecting" state + currently no way to edit/inspect packets received or use own packet format in mediasoup ( fork? ) --- webrtc/src/opcodes/Resume.ts | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'webrtc/src/opcodes/Resume.ts') diff --git a/webrtc/src/opcodes/Resume.ts b/webrtc/src/opcodes/Resume.ts index dcd4f4cd..856b550c 100644 --- a/webrtc/src/opcodes/Resume.ts +++ b/webrtc/src/opcodes/Resume.ts @@ -1,6 +1,24 @@ -import { WebSocket } from "@fosscord/gateway"; +import { CLOSECODES, WebSocket } from "@fosscord/gateway"; import { Payload } from "./index"; import { Server } from "../Server" +import { Guild, Session, VoiceOPCodes } from "@fosscord/util"; export async function onResume(this: Server, socket: WebSocket, data: Payload) { + const session = await Session.findOneOrFail( + { session_id: data.d.session_id, }, + { + where: { user_id: data.d.user_id }, + relations: ["user"] + } + ); + const user = session.user; + const guild = await Guild.findOneOrFail({ id: data.d.server_id }, { relations: ["members"] }); + + if (!guild.members.find(x => x.id === user.id)) + return socket.close(CLOSECODES.Invalid_intent); + + socket.send(JSON.stringify({ + op: VoiceOPCodes.RESUMED, + d: null, + })) } \ No newline at end of file -- cgit 1.5.1