✨ Use reaction-based interaction, refactor URL destruction
This commit is contained in:
parent
f578a7d31b
commit
8d5535c1c3
1 changed files with 17 additions and 19 deletions
26
main.js
26
main.js
|
@ -30,8 +30,7 @@ eris.on(
|
||||||
);
|
);
|
||||||
|
|
||||||
let
|
let
|
||||||
url,
|
getUrl,
|
||||||
nextRequestTimestamp,
|
|
||||||
nextRequestTimeout;
|
nextRequestTimeout;
|
||||||
|
|
||||||
fastify.get(
|
fastify.get(
|
||||||
|
@ -42,9 +41,7 @@ fastify.get(
|
||||||
) => {
|
) => {
|
||||||
if(request.query['apiKey'] !== webApiKey)
|
if(request.query['apiKey'] !== webApiKey)
|
||||||
return reply.code(401).send();
|
return reply.code(401).send();
|
||||||
reply.send(url);
|
reply.send(getUrl ? await getUrl() : undefined);
|
||||||
url = '';
|
|
||||||
nextRequestTimestamp = Date.now() + webRequestInterval;
|
|
||||||
clearTimeout(nextRequestTimeout);
|
clearTimeout(nextRequestTimeout);
|
||||||
nextRequestTimeout = setTimeout(
|
nextRequestTimeout = setTimeout(
|
||||||
async () => {
|
async () => {
|
||||||
|
@ -58,13 +55,14 @@ fastify.get(
|
||||||
|
|
||||||
eris.on(
|
eris.on(
|
||||||
'messageCreate',
|
'messageCreate',
|
||||||
async ({
|
async message => {
|
||||||
|
const {
|
||||||
guildID,
|
guildID,
|
||||||
author: { id: authorID },
|
author: { id: authorID },
|
||||||
channel: { id: channelID },
|
channel: { id: channelID },
|
||||||
id: messageID,
|
id: messageID,
|
||||||
content
|
content
|
||||||
}) => {
|
} = message;
|
||||||
if(
|
if(
|
||||||
guildID
|
guildID
|
||||||
||
|
||
|
||||||
|
@ -80,15 +78,15 @@ eris.on(
|
||||||
if(content){
|
if(content){
|
||||||
try {
|
try {
|
||||||
new URL(content);
|
new URL(content);
|
||||||
url = content;
|
getUrl = () => new Promise(async resolve => {
|
||||||
await reply(
|
resolve(content);
|
||||||
nextRequestTimestamp && nextRequestTimestamp > Date.now()
|
getUrl = undefined;
|
||||||
? `ETA: ${Math.ceil((nextRequestTimestamp - Date.now()) / 1000)} seconds.`
|
await message.addReaction('✅');
|
||||||
: 'ETA: as soon as online.'
|
});
|
||||||
);
|
await message.addReaction('⏳');
|
||||||
}
|
}
|
||||||
catch {
|
catch {
|
||||||
await reply('Invalid URL');
|
await message.addReaction('❌');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue