diff --git a/backend/src/api/slack/controllers/slack.js b/backend/src/api/slack/controllers/slack.js index 393ffa9..4ad82d8 100644 --- a/backend/src/api/slack/controllers/slack.js +++ b/backend/src/api/slack/controllers/slack.js @@ -10,21 +10,23 @@ const fetch = require("node-fetch"); let cachedImage = null; let cacheTimestamp = null; +let cacheSat = null; module.exports = { fetchImages: async (ctx) => { const CACHE_DURATION = 60 * 1000; // 1 minute const now = Date.now(); + const { satName } = ctx.request.body; if ( cachedImage && cacheTimestamp && - now - cacheTimestamp < CACHE_DURATION + now - cacheTimestamp < CACHE_DURATION && + cacheSat === satName ) { ctx.body = cachedImage; return; } try { - const { satName } = ctx.request.body; const message = await fetchImagesFromSlack.fetchImagesFromSlack(satName); const image = message ? message.files[0] : null; if (!image.public_url_shared) { diff --git a/backend/src/api/slack/services/slack.js b/backend/src/api/slack/services/slack.js index d7151df..5bb32f6 100644 --- a/backend/src/api/slack/services/slack.js +++ b/backend/src/api/slack/services/slack.js @@ -25,8 +25,9 @@ module.exports = { console.log("No messages found in the channel."); return null; } + console.log(satellite); for (const message of result.messages) { - if (message.text && message.text.includes(satellite)) { + if (message.text.includes(satellite)) { if (!image) { image = message; break;