From adc75ca76b5561d6d4e8d01c5fdd574f8b98363a Mon Sep 17 00:00:00 2001 From: Flam3rboy <34555296+Flam3rboy@users.noreply.github.com> Date: Tue, 31 Aug 2021 17:58:28 +0200 Subject: :sparkles: channel recipients --- gateway/src/listener/listener.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'gateway/src/listener') diff --git a/gateway/src/listener/listener.ts b/gateway/src/listener/listener.ts index 8fa96555..75ca1680 100644 --- a/gateway/src/listener/listener.ts +++ b/gateway/src/listener/listener.ts @@ -14,7 +14,8 @@ import { Send } from "../util/Send"; import WebSocket from "../util/WebSocket"; import "missing-native-js-functions"; import { Channel as AMQChannel } from "amqplib"; -import { In } from "../../../util/node_modules/typeorm"; +import { In, Like } from "../../../util/node_modules/typeorm"; +import { Recipient } from "../../../util/dist/entities/Recipient"; // TODO: close connection on Invalidated Token // TODO: check intent @@ -28,10 +29,9 @@ export async function setupListener(this: WebSocket) { const members = await Member.find({ where: { id: this.user_id } }); const guild_ids = members.map((x) => x.guild_id); const user = await User.findOneOrFail({ id: this.user_id }); - const channels = await Channel.find({ - where: [{ recipient_ids: this.user_id }, { guild_id: In(guild_ids) }], - }); - const dm_channels = channels.filter((x) => !x.guild_id); + const recipients = await Recipient.find({ where: { id: this.user_id }, relations: ["channel"] }); + const channels = await Channel.find({ guild_id: In(guild_ids) }); + const dm_channels = recipients.map((x) => x.channel); const guild_channels = channels.filter((x) => x.guild_id); const opts: { acknowledge: boolean; channel?: AMQChannel } = { acknowledge: true }; -- cgit 1.5.1