summary refs log tree commit diff
path: root/gateway/src/events
diff options
context:
space:
mode:
authorFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-09-02 20:20:15 +0200
committerGitHub <noreply@github.com>2021-09-02 20:20:15 +0200
commitfe3cb4eca05042daf909888c832134b5a97f2917 (patch)
tree68c69bf3d6e72939d9cef487989d0bbbca7eec43 /gateway/src/events
parent:art: update openapi title (diff)
parent:sparkles: add editor config (diff)
downloadserver-ts-fe3cb4eca05042daf909888c832134b5a97f2917.tar.xz
Merge pull request #306 from AlTech98/master
Gateway VOICE_STATE_UPDATE and sessions implementation, fix #210
Diffstat (limited to 'gateway/src/events')
-rw-r--r--gateway/src/events/Close.ts6
-rw-r--r--gateway/src/events/Connection.ts3
2 files changed, 7 insertions, 2 deletions
diff --git a/gateway/src/events/Close.ts b/gateway/src/events/Close.ts

index f1a8fa9b..d68fc751 100644 --- a/gateway/src/events/Close.ts +++ b/gateway/src/events/Close.ts
@@ -1,7 +1,9 @@ -import WebSocket from "ws"; +import WebSocket from "../util/WebSocket"; import { Message } from "./Message"; +import { Session } from "@fosscord/util"; -export function Close(this: WebSocket, code: number, reason: string) { +export async function Close(this: WebSocket, code: number, reason: string) { + await Session.delete({ session_id: this.session_id }); // @ts-ignore this.off("message", Message); } diff --git a/gateway/src/events/Connection.ts b/gateway/src/events/Connection.ts
index fed3c611..b3c94eaf 100644 --- a/gateway/src/events/Connection.ts +++ b/gateway/src/events/Connection.ts
@@ -7,6 +7,7 @@ import { Send } from "../util/Send"; import { CLOSECODES, OPCODES } from "../util/Constants"; import { createDeflate } from "zlib"; import { URL } from "url"; +import { Session } from "@fosscord/util"; var erlpack: any; try { erlpack = require("erlpack"); @@ -56,10 +57,12 @@ export async function Connection(this: Server, socket: WebSocket, request: Incom }); socket.readyTimeout = setTimeout(() => { + Session.delete({ session_id: socket.session_id }); //should we await? return socket.close(CLOSECODES.Session_timed_out); }, 1000 * 30); } catch (error) { console.error(error); + Session.delete({ session_id: socket.session_id }); //should we await? return socket.close(CLOSECODES.Unknown_error); } }