Merge pull request #120 from nikooo777/crash-fixes

Crash fixes and cleanup
This commit is contained in:
Niko 2017-12-20 01:35:10 +01:00 committed by GitHub
commit ebf304c0fb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 120 additions and 95 deletions

View file

@ -1,19 +1,19 @@
let config = require("config"); let config = require('config');
let permRanks = config.get("moderation"); let permRanks = config.get('moderation');
let speechBotChannels = config.get("speechbot"); let speechBotChannels = config.get('speechbot');
let priceBotChannels = config.get("pricebot"); let priceBotChannels = config.get('pricebot');
let ExcludedSpam = config.get("spamdetection"); let ExcludedSpam = config.get('spamdetection');
let hashBotChannels = config.get("hashbot"); let hashBotChannels = config.get('hashbot');
let statsBotChannels = config.get("statsbot"); let statsBotChannels = config.get('statsbot');
// Checks if user is allowed to use a command only for mods/team members // Checks if user is allowed to use a command only for mods/team members
exports.hasPerms = function(msg) { exports.hasPerms = function(msg) {
return msg.member.roles.some(r => permRanks.perms.includes(r.name)); return msg.member.roles !== null && msg.member.roles.some(r => permRanks.perms.includes(r.name));
}; };
// Check if command was sent in dm // Check if command was sent in dm
exports.inPrivate = function(msg) { exports.inPrivate = function(msg) {
return msg.channel.type == "dm"; return msg.channel.type == 'dm';
}; };
// Checks if Message was sent from a channel in speechBot Channels list // Checks if Message was sent from a channel in speechBot Channels list

View file

@ -105,7 +105,7 @@ function announceClaimsLoop(block, lastBlock, currentHeight) {
claimsFound = claims.length; claimsFound = claims.length;
return Promise.all( return Promise.all(
claims.map(function(claim) { claims.map(function(claim) {
//slack has a rate limit. to avoid hitting it we must have a small delay between each message //the API has a rate limit. to avoid hitting it we must have a small delay between each message
//if claims were found in this block, then we wait, otherwise we don't //if claims were found in this block, then we wait, otherwise we don't
if (claimsFound > 0 && claim.hasOwnProperty("claimId")) if (claimsFound > 0 && claim.hasOwnProperty("claimId"))
sleep.msleep(300); sleep.msleep(300);
@ -127,6 +127,12 @@ function announceClaimsLoop(block, lastBlock, currentHeight) {
function announceClaim(claim, claimBlockHeight, currentHeight) { function announceClaim(claim, claimBlockHeight, currentHeight) {
console.log("" + claimBlockHeight + ": New claim for " + claim["name"]); console.log("" + claimBlockHeight + ": New claim for " + claim["name"]);
console.log(claim); console.log(claim);
//ignore supports for now
//the issue with supports is that they should be treated completely differently
//they are not new claims...
if (claim.hasOwnProperty("supported claimId")) return;
let options = { let options = {
method: "GET", method: "GET",
url: "http://127.0.0.1:5000/claim_decode/" + claim["name"] url: "http://127.0.0.1:5000/claim_decode/" + claim["name"]
@ -170,10 +176,12 @@ function announceClaim(claim, claimBlockHeight, currentHeight) {
const text = []; const text = [];
if (value) { if (value) {
/*if (channelName) { /*
if (channelName) {
text.push("Channel: lbry://" + channelName); text.push("Channel: lbry://" + channelName);
} }
else*/ else
*/
console.log(value); console.log(value);
if (value["author"]) { if (value["author"]) {
text.push("author: " + value["author"]); text.push("author: " + value["author"]);

View file

@ -39,7 +39,8 @@ exports.releasenotes = {
timestamp: releasedate, timestamp: releasedate,
author: { author: {
name: "Lbry-app Release Notes for " + releasename, name: "Lbry-app Release Notes for " + releasename,
icon_url: "http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png" icon_url:
"http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png"
}, },
footer: { footer: {
icon_url: "https://i.imgur.com/yWf5USu.png", icon_url: "https://i.imgur.com/yWf5USu.png",
@ -58,7 +59,10 @@ exports.releasenotes = {
msg.author.send(message); msg.author.send(message);
} }
} else { } else {
message = releasemessage.trim().split("###").filter(function(n) { message = releasemessage
.trim()
.split("###")
.filter(function(n) {
return n !== ""; return n !== "";
}); });
releasemessage1 = message[0]; releasemessage1 = message[0];
@ -75,7 +79,8 @@ exports.releasenotes = {
timestamp: releasedate, timestamp: releasedate,
author: { author: {
name: "Lbry-app Release Notes for " + releasename, name: "Lbry-app Release Notes for " + releasename,
icon_url: "http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png" icon_url:
"http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png"
}, },
footer: { footer: {
icon_url: "https://i.imgur.com/yWf5USu.png", icon_url: "https://i.imgur.com/yWf5USu.png",
@ -89,7 +94,8 @@ exports.releasenotes = {
color: 7976557, color: 7976557,
timestamp: releasedate, timestamp: releasedate,
author: { author: {
icon_url: "http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png" icon_url:
"http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png"
}, },
footer: { footer: {
icon_url: "https://i.imgur.com/yWf5USu.png", icon_url: "https://i.imgur.com/yWf5USu.png",
@ -103,7 +109,8 @@ exports.releasenotes = {
color: 7976557, color: 7976557,
timestamp: releasedate, timestamp: releasedate,
author: { author: {
icon_url: "http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png" icon_url:
"http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png"
}, },
footer: { footer: {
icon_url: "https://i.imgur.com/yWf5USu.png", icon_url: "https://i.imgur.com/yWf5USu.png",
@ -117,7 +124,8 @@ exports.releasenotes = {
color: 7976557, color: 7976557,
timestamp: releasedate, timestamp: releasedate,
author: { author: {
icon_url: "http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png" icon_url:
"http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png"
}, },
footer: { footer: {
icon_url: "https://i.imgur.com/yWf5USu.png", icon_url: "https://i.imgur.com/yWf5USu.png",
@ -131,7 +139,8 @@ exports.releasenotes = {
color: 7976557, color: 7976557,
timestamp: releasedate, timestamp: releasedate,
author: { author: {
icon_url: "http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png" icon_url:
"http://www.pngall.com/wp-content/uploads/2016/04/Github-PNG-Image.png"
}, },
footer: { footer: {
icon_url: "https://i.imgur.com/yWf5USu.png", icon_url: "https://i.imgur.com/yWf5USu.png",

View file

@ -38,18 +38,24 @@ exports.addrole = {
//msg.channel.send(msg.member + ' has been added to the ' + suffix + ' role!'); //msg.channel.send(msg.member + ' has been added to the ' + suffix + ' role!');
} else { } else {
msg.channel.send( msg.channel.send(
"It seems that you already have that role! Try removing it first with the " + botconfig.prefix + "delrole command!" "It seems that you already have that role! Try removing it first with the " +
botconfig.prefix +
"delrole command!"
); );
} }
} else { } else {
msg.channel.send( msg.channel.send(
"That role isn't one you can add yourself too! Please run the " + botconfig.prefix + "roles command to find out which ones are allowed." "That role isn't one you can add yourself too! Please run the " +
botconfig.prefix +
"roles command to find out which ones are allowed."
); );
} }
} else { } else {
msg.channel.send( msg.channel.send(
"Please specify a role. Type " + botconfig.prefix + "roles to see which you may add!" "Please specify a role. Type " +
) botconfig.prefix +
"roles to see which you may add!"
);
} }
} }
}; };
@ -75,18 +81,24 @@ exports.delrole = {
); );
} else { } else {
msg.channel.send( msg.channel.send(
"You don't seem to have that role! Try adding it first with the " + botconfig.prefix + "addrole command!" "You don't seem to have that role! Try adding it first with the " +
botconfig.prefix +
"addrole command!"
); );
} }
} else { } else {
msg.channel.send( msg.channel.send(
"That role isn't one you can add yourself too! Please run the " + botconfig.prefix + "roles command to find out which ones are allowed." "That role isn't one you can add yourself too! Please run the " +
botconfig.prefix +
"roles command to find out which ones are allowed."
); );
} }
} else { } else {
msg.channel.send( msg.channel.send(
"Please specify a role. Type " + botconfig.prefix + "roles to see which you may add!" "Please specify a role. Type " +
) botconfig.prefix +
"roles to see which you may add!"
);
} }
} }
}; };

View file

@ -39,7 +39,7 @@ exports.antiSpam = function(bot) {
return; return;
} }
if (msg.author.id != bot.user.id) { if (msg.author.id != bot.user.id) {
var now = Math.floor(Date.now()); let now = Math.floor(Date.now());
authors.push({ authors.push({
time: now, time: now,
author: msg.author.id author: msg.author.id
@ -50,8 +50,8 @@ exports.antiSpam = function(bot) {
}); });
// Check how many times the same message has been sent. // Check how many times the same message has been sent.
var msgMatch = 0; let msgMatch = 0;
for (var i = 0; i < messagelog.length; i++) { for (let i = 0; i < messagelog.length; i++) {
if ( if (
messagelog[i].message == msg.content && messagelog[i].message == msg.content &&
messagelog[i].author == msg.author.id && messagelog[i].author == msg.author.id &&
@ -70,7 +70,7 @@ exports.antiSpam = function(bot) {
matched = 0; matched = 0;
for (var i = 0; i < authors.length; i++) { for (let i = 0; i < authors.length; i++) {
if (authors[i].time > now - interval) { if (authors[i].time > now - interval) {
matched++; matched++;
if (matched == warnBuffer && !warned.includes(msg.author.id)) { if (matched == warnBuffer && !warned.includes(msg.author.id)) {
@ -109,7 +109,7 @@ exports.antiSpam = function(bot) {
* @return {boolean} True or False * @return {boolean} True or False
*/ */
function ban(msg, userid) { function ban(msg, userid) {
for (var i = 0; i < messagelog.length; i++) { for (let i = 0; i < messagelog.length; i++) {
if (messagelog[i].author == msg.author.id) { if (messagelog[i].author == msg.author.id) {
messagelog.splice(i); messagelog.splice(i);
} }
@ -117,7 +117,7 @@ exports.antiSpam = function(bot) {
banned.push(msg.author.id); banned.push(msg.author.id);
var user = msg.channel.guild.members.find( let user = msg.channel.guild.members.find(
member => member.user.id === msg.author.id member => member.user.id === msg.author.id
); );
if (user) { if (user) {

View file

@ -1,12 +1,12 @@
"use strict"; 'use strict';
const fs = require("fs"), const fs = require('fs'),
path = require("path"); path = require('path');
function getPlugins(srcpath) { function getPlugins(srcpath) {
return fs.readdirSync(srcpath); return fs.readdirSync(srcpath);
} }
let plugin_directory = path.join(__dirname, "modules"); let plugin_directory = path.join(__dirname, 'modules');
let plugins = getPlugins(plugin_directory); let plugins = getPlugins(plugin_directory);
exports.init = function init() { exports.init = function init() {
@ -14,7 +14,7 @@ exports.init = function init() {
}; };
function load_plugins() { function load_plugins() {
const dbot = require("./bot.js"); const dbot = require('./bot.js');
let commandCount = 0; let commandCount = 0;
let otherFunc = 0; let otherFunc = 0;
for (let i = 0; i < plugins.length; i++) { for (let i = 0; i < plugins.length; i++) {
@ -25,7 +25,7 @@ function load_plugins() {
console.log(`Improper setup of the '${plugins[i]}' plugin. : ${err}`); console.log(`Improper setup of the '${plugins[i]}' plugin. : ${err}`);
} }
if (plugin) { if (plugin) {
if ("commands" in plugin) { if ('commands' in plugin) {
for (let j = 0; j < plugin.commands.length; j++) { for (let j = 0; j < plugin.commands.length; j++) {
if (plugin.commands[j] in plugin) { if (plugin.commands[j] in plugin) {
dbot.addCommand(plugin.commands[j], plugin[plugin.commands[j]]); dbot.addCommand(plugin.commands[j], plugin[plugin.commands[j]]);
@ -33,7 +33,7 @@ function load_plugins() {
} }
} }
} }
if ("custom" in plugin) { if ('custom' in plugin) {
for (let j = 0; j < plugin.custom.length; j++) { for (let j = 0; j < plugin.custom.length; j++) {
if (plugin.custom[j] in plugin) { if (plugin.custom[j] in plugin) {
dbot.addCustomFunc(plugin[plugin.custom[j]]); dbot.addCustomFunc(plugin[plugin.custom[j]]);
@ -43,9 +43,5 @@ function load_plugins() {
} }
} }
} }
console.log( console.log(`Loaded ${dbot.commandCount()} chat commands and ${otherFunc} custom functions.`);
`Loaded ${dbot.commandCount()} chat commands and ${
otherFunc
} custom functions.`
);
} }