1
0
mirror of https://github.com/toast-ts/Daggerbot-TS.git synced 2024-11-17 12:21:00 -05:00

Fix bug with YTModule not sending notification

This commit is contained in:
AnxietyisReal 2023-12-29 17:23:04 +11:00
parent 32dda719e4
commit df5a6b25f9
2 changed files with 6 additions and 4 deletions

View File

@ -32,6 +32,7 @@ export default class CacheServer {
cachedResult = await RedisClient.get(key);
if (cachedResult) cachedResult = JSON.parse(cachedResult);
}
return cachedResult;
}
public static async set(key:any, value:any, jsonMode:boolean):Promise<any> {
if (jsonMode) return await RedisClient.json.set(key, '.', value);

View File

@ -23,7 +23,7 @@ export default async(client:TClient)=>{
try {
await Undici.request(`https://youtube.googleapis.com/youtube/v3/activities?part=snippet&channelId=${YTChannelID}&maxResults=2&key=${(await TSClient()).youtube}`, {
signal: AbortSignal.timeout(10000),
headers: {'User-Agent':`${client.user.username} - YTModule/undici`},
headers: {'User-Agent':`${client.user.username} - YTModule/undici`}
}).then(async resp=>Data = await resp.body.json());
YTChannelName = Data.items[0].snippet.channelTitle;
} catch {
@ -33,13 +33,14 @@ export default async(client:TClient)=>{
const getVideoId = (index:number)=>Data.items[index].snippet.thumbnails.default.url.split('/')[4];
const videoUrl = `https://www.youtube.com/watch?v=${getVideoId(0)}`;
const cacheKey = `YTCache:${YTChannelID}`;
const cacheKey = `YTModule:${YTChannelID}`;
const cachedVideoId = await CacheServer.get(cacheKey, false);
if (!cachedVideoId) {
await CacheServer.set(cacheKey, getVideoId(0), false).then(async()=>await CacheServer.expiry(cacheKey, cacheExpiry));
return;
continue;
}
if (getVideoId(1) === cachedVideoId) {
Logger.console('log', 'YTModule:DEBUG', `New video uploaded by ${YTChannelName} and notification sent to Discord`)
await CacheServer.delete(cacheKey).then(async()=>await CacheServer.set(cacheKey, getVideoId(0), false).then(async()=>await CacheServer.expiry(cacheKey, cacheExpiry)));
(client.channels.resolve(DiscordChannelID) as TextChannel).send({
@ -47,4 +48,4 @@ export default async(client:TClient)=>{
});
}
}
};
}