From 0ccc478c54f6e6ae8c8e6574e24ab6796738c83a Mon Sep 17 00:00:00 2001 From: Flam3rboy <34555296+Flam3rboy@users.noreply.github.com> Date: Fri, 15 Oct 2021 00:03:05 +0200 Subject: :bug: fix message sticker sending --- api/src/routes/channels/#channel_id/messages/index.ts | 1 + api/src/routes/guilds/#guild_id/premium.ts | 10 ++++++++++ api/src/util/Message.ts | 5 +++-- 3 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 api/src/routes/guilds/#guild_id/premium.ts (limited to 'api/src') diff --git a/api/src/routes/channels/#channel_id/messages/index.ts b/api/src/routes/channels/#channel_id/messages/index.ts index 26bb9e5d..20c102ef 100644 --- a/api/src/routes/channels/#channel_id/messages/index.ts +++ b/api/src/routes/channels/#channel_id/messages/index.ts @@ -63,6 +63,7 @@ export interface MessageCreateSchema { payload_json?: string; file?: any; attachments?: any[]; //TODO we should create an interface for attachments + sticker_ids?: string[]; } // https://discord.com/developers/docs/resources/channel#create-message diff --git a/api/src/routes/guilds/#guild_id/premium.ts b/api/src/routes/guilds/#guild_id/premium.ts new file mode 100644 index 00000000..75361ac6 --- /dev/null +++ b/api/src/routes/guilds/#guild_id/premium.ts @@ -0,0 +1,10 @@ +import { Router, Request, Response } from "express"; +import { route } from "@fosscord/api"; +const router = Router(); + +router.get("/subscriptions", route({}), async (req: Request, res: Response) => { + // TODO: + res.json([]); +}); + +export default router; diff --git a/api/src/util/Message.ts b/api/src/util/Message.ts index 40d96b42..d14d3aa2 100644 --- a/api/src/util/Message.ts +++ b/api/src/util/Message.ts @@ -24,7 +24,7 @@ import fetch from "node-fetch"; import cheerio from "cheerio"; import { MessageCreateSchema } from "../routes/channels/#channel_id/messages"; -// TODO: check webhook, application, system author +// TODO: check webhook, application, system author, stickers // TODO: embed gifs/videos/images const LINK_REGEX = /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/g; @@ -46,6 +46,7 @@ export async function handleMessage(opts: MessageOptions): Promise { const message = new Message({ ...opts, + sticker_items: opts.sticker_ids?.map((x) => ({ id: x })), guild_id: channel.guild_id, channel_id: opts.channel_id, attachments: opts.attachments || [], @@ -82,7 +83,7 @@ export async function handleMessage(opts: MessageOptions): Promise { } // TODO: stickers/activity - if (!opts.content && !opts.embeds?.length && !opts.attachments?.length) { + if (!opts.content && !opts.embeds?.length && !opts.attachments?.length && !opts.sticker_ids?.length) { throw new HTTPError("Empty messages are not allowed", 50006); } -- cgit 1.5.1