Skip to content

Commit

Permalink
perf update
Browse files Browse the repository at this point in the history
  • Loading branch information
dispherical committed Sep 22, 2024
1 parent 30f4465 commit 9133a23
Showing 1 changed file with 5 additions and 14 deletions.
19 changes: 5 additions & 14 deletions utils/allTimeline.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,33 +38,25 @@ async function generateMessageString(messages, currentTime, prisma) {
})
.on("error", (err) => console.log("Redis Client Error", err))
.connect();
const interval = 10;
const interval = 5;
const secondsInDay = 86400;
const intervalsInDay = secondsInDay / interval;

let timeToEmojiMap = {};
for (let i = 0; i < intervalsInDay; i++) {
const data = await client.get(`timeline.${i}`);
if (data) {
timeToEmojiMap[i] = JSON.parse(data);
}
}
let messageString = "";
const timeToEmojiMap = {};

for (const message of messages) {
if (!message.sort_ts) continue;
const messageTime = parseInt(message.sort_ts.toString().split(".")[0], 10);
const timeDiff = currentTime - messageTime;
const intervalIndex = Math.floor(timeDiff / interval);

if (intervalIndex < intervalsInDay) {
if (intervalIndex < intervalsInDay && !timeToEmojiMap[intervalIndex]) {
const emoji = await getChannelEmoji(message.channel, prisma);
const permalink = `https://hackclub.slack.com/archives/${message.channel}/p${message.ts.toString().replace(".", "")}`;
timeToEmojiMap[intervalIndex] = { emoji, permalink };
await client.set(`timeline.${intervalIndex}`, JSON.stringify({ emoji, permalink }));
}
}

let messageString = "";
for (let i = 0; i < intervalsInDay; i++) {
if (timeToEmojiMap[i]) {
const { emoji, permalink } = timeToEmojiMap[i];
Expand All @@ -75,9 +67,8 @@ async function generateMessageString(messages, currentTime, prisma) {
messageString += "-,";
}
}

await client.disconnect();
return messageString.split(",").slice(0, 30).join(",").replaceAll(",", "");
return messageString.split(",").slice(0, 30).join(",").replace(/,/g, "");
}

module.exports = generateMessageString;

0 comments on commit 9133a23

Please sign in to comment.