From 6a5793d2339b7c68289699096f0535540942cfb5 Mon Sep 17 00:00:00 2001 From: Myphz Date: Tue, 2 Jan 2024 16:35:55 +0100 Subject: [PATCH] fix: delay for every iteration; send link instead of json --- src/constants.ts | 2 -- src/routes/files.ts | 2 +- src/telegram/telegram.ts | 12 +++--------- 3 files changed, 4 insertions(+), 12 deletions(-) diff --git a/src/constants.ts b/src/constants.ts index aa6f539..f6bfa31 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -10,5 +10,3 @@ export const PEXELS_API_KEY = process.env.PEXELS_API_KEY ?? process.env.PEXELS_API_KEY_DEBUG ?? throwError("PEXELS_API_KEY not set!"); // Maximum number of photos per message export const TELEGRAM_MAX_PHOTOS_PER_MESSAGE = 10; -// Maximum number of photos per second, must be a multiple of the above -export const TELEGRAM_MAX_PHOTOS_PER_SECOND = 30; diff --git a/src/routes/files.ts b/src/routes/files.ts index 10b4cab..1becfc3 100644 --- a/src/routes/files.ts +++ b/src/routes/files.ts @@ -37,7 +37,7 @@ FilesAPI.get("/file", async (req: Request, res: Response) => { return res.status(404).send(); } - res.json(file); + res.send(file); }); FilesAPI.get("/download", async (req: Request, res: Response) => { diff --git a/src/telegram/telegram.ts b/src/telegram/telegram.ts index e736cfb..5d52aa5 100644 --- a/src/telegram/telegram.ts +++ b/src/telegram/telegram.ts @@ -1,10 +1,5 @@ import TelegramBot, { InputMediaPhoto } from "node-telegram-bot-api"; -import { - CHAT_ID, - TELEGRAM_MAX_PHOTOS_PER_MESSAGE, - TELEGRAM_MAX_PHOTOS_PER_SECOND, - TRIPS_BOT_API_TOKEN, -} from "../constants"; +import { CHAT_ID, TELEGRAM_MAX_PHOTOS_PER_MESSAGE, TRIPS_BOT_API_TOKEN } from "../constants"; import { throwError } from "../utils/throw"; import { splitArrayIntoChunks } from "../utils/array"; @@ -39,9 +34,8 @@ export async function uploadFiles(files: Express.Multer.File[]) { const uploadedChunk = await uploadFileGroup(fileChunks[i], mediaChunks[i]); // Merge results ret = { ...ret, ...uploadedChunk }; - // Wait 1s after uploading TELEGRAM_MAX_PHOTOS_PER_SECOND photos - if (i && ((i + 1) * TELEGRAM_MAX_PHOTOS_PER_MESSAGE) % TELEGRAM_MAX_PHOTOS_PER_SECOND === 0) - await new Promise((res) => setTimeout(res, 1000)); + // Wait 1s after every chunk + await new Promise((res) => setTimeout(res, 1000)); } console.log("Files uploaded successfully");