Added deletion of subscription command responses after a delay
This commit is contained in:
parent
6bd695e8bb
commit
15b5611a9a
|
@ -3,6 +3,7 @@
|
||||||
"channelID": "264420391282409473",
|
"channelID": "264420391282409473",
|
||||||
"pollingInterval": 5000,
|
"pollingInterval": 5000,
|
||||||
"numLinksToCache": 10,
|
"numLinksToCache": 10,
|
||||||
|
"messageDeleteDelay": 10000,
|
||||||
"youtubeMode": true,
|
"youtubeMode": true,
|
||||||
"logFile": "./log",
|
"logFile": "./log",
|
||||||
"subscribersFile": "./subscribers.json",
|
"subscribersFile": "./subscribers.json",
|
||||||
|
|
15
feed-bot.js
15
feed-bot.js
|
@ -37,6 +37,7 @@ var DiscordClient = {
|
||||||
|
|
||||||
DiscordClient.checkPastMessagesForLinks(); //we need to check past messages for links on startup, but also on reconnect because we don't know what has happened during the downtime
|
DiscordClient.checkPastMessagesForLinks(); //we need to check past messages for links on startup, but also on reconnect because we don't know what has happened during the downtime
|
||||||
|
|
||||||
|
//set the interval function to check the feed
|
||||||
intervalFunc = () => {
|
intervalFunc = () => {
|
||||||
Feed.check((err, articles) => {
|
Feed.check((err, articles) => {
|
||||||
Links.validate(err, articles, DiscordClient.post);
|
Links.validate(err, articles, DiscordClient.post);
|
||||||
|
@ -112,12 +113,12 @@ var DiscordClient = {
|
||||||
messageTriggers: [
|
messageTriggers: [
|
||||||
{
|
{
|
||||||
message: Config.userCommands.subscribe,
|
message: Config.userCommands.subscribe,
|
||||||
action: (user, userID, channelID, message) => { Subscriptions.subscribe(channelID, userID, user); },
|
action: (user, userID, channelID, message) => { Subscriptions.subscribe(user, userID, channelID, message); },
|
||||||
channelID: Config.channelID
|
channelID: Config.channelID
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
message: Config.userCommands.unsubscribe,
|
message: Config.userCommands.unsubscribe,
|
||||||
action: (user, userID, channelID, message) => { Subscriptions.unsubscribe(channelID, userID, user); },
|
action: (user, userID, channelID, message) => { Subscriptions.unsubscribe(user, userID, channelID, message); },
|
||||||
channelID: Config.channelID
|
channelID: Config.channelID
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -126,7 +127,7 @@ var DiscordClient = {
|
||||||
DiscordClient.bot.sendMessage({
|
DiscordClient.bot.sendMessage({
|
||||||
to: Config.channelID,
|
to: Config.channelID,
|
||||||
message: DiscordClient.bot.fixMessage("<@" + Subscriptions.subscribers.join("> <@") + ">")
|
message: DiscordClient.bot.fixMessage("<@" + Subscriptions.subscribers.join("> <@") + ">")
|
||||||
});
|
}, (err, response) => { setTimeout(() => { DiscordClient.bot.deleteMessage({ channelID: channelID, messageID: response.id }); }, Config.messageDeleteDelay); });
|
||||||
},
|
},
|
||||||
channelID: Config.channelID
|
channelID: Config.channelID
|
||||||
},
|
},
|
||||||
|
@ -171,7 +172,7 @@ var Subscriptions = {
|
||||||
this.subscribers = obj || [];
|
this.subscribers = obj || [];
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
subscribe: function (channelID, userID, user) {
|
subscribe: function (user, userID, channelID, message) {
|
||||||
if (this.subscribers.indexOf(userID) === -1) {
|
if (this.subscribers.indexOf(userID) === -1) {
|
||||||
this.subscribers.push(userID); //subscribe the user if they aren't already subscribed
|
this.subscribers.push(userID); //subscribe the user if they aren't already subscribed
|
||||||
this.writeToFile();
|
this.writeToFile();
|
||||||
|
@ -180,10 +181,10 @@ var Subscriptions = {
|
||||||
DiscordClient.bot.sendMessage({
|
DiscordClient.bot.sendMessage({
|
||||||
to: channelID,
|
to: channelID,
|
||||||
message: "You have successfully subscribed"
|
message: "You have successfully subscribed"
|
||||||
});
|
}, (err, response) => { setTimeout(() => { DiscordClient.bot.deleteMessage({ channelID: channelID, messageID: response.id }); }, Config.messageDeleteDelay); });
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
unsubscribe: function (channelID, userID, user) {
|
unsubscribe: function (user, userID, channelID, message) {
|
||||||
if (this.subscribers.indexOf(userID) > -1) {
|
if (this.subscribers.indexOf(userID) > -1) {
|
||||||
this.subscribers.splice(this.subscribers.indexOf(userID), 1);
|
this.subscribers.splice(this.subscribers.indexOf(userID), 1);
|
||||||
this.writeToFile();
|
this.writeToFile();
|
||||||
|
@ -192,7 +193,7 @@ var Subscriptions = {
|
||||||
DiscordClient.bot.sendMessage({
|
DiscordClient.bot.sendMessage({
|
||||||
to: channelID,
|
to: channelID,
|
||||||
message: "You have successfully unsubscribed"
|
message: "You have successfully unsubscribed"
|
||||||
});
|
}, (err, response) => { setTimeout(() => { DiscordClient.bot.deleteMessage({ channelID: channelID, messageID: response.id }); }, Config.messageDeleteDelay); });
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
writeToFile: function () {
|
writeToFile: function () {
|
||||||
|
|
Loading…
Reference in a new issue