Javascript 为什么我突然收到ELIFECYCLE errno 1?
我刚刚将我的开发环境转移到Fedora。我已经正确安装了Node和NPM,但我的运行脚本不起作用。它立即退出,错误为1,没有额外的输出。它可以在我的Mac和Windows桌面上完美运行 我的npm-error.log:Javascript 为什么我突然收到ELIFECYCLE errno 1?,javascript,node.js,babeljs,yarnpkg,discord.js,Javascript,Node.js,Babeljs,Yarnpkg,Discord.js,我刚刚将我的开发环境转移到Fedora。我已经正确安装了Node和NPM,但我的运行脚本不起作用。它立即退出,错误为1,没有额外的输出。它可以在我的Mac和Windows桌面上完美运行 我的npm-error.log: 0 info it worked if it ends with ok 1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'run', 'dev' ] 2 info using npm@5.6.0 3 info using node
0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'run', 'dev' ]
2 info using npm@5.6.0
3 info using node@v8.9.4
4 verbose run-script [ 'predev', 'dev', 'postdev' ]
5 info lifecycle biblebot@5.0.0~predev: biblebot@5.0.0
6 info lifecycle biblebot@5.0.0~dev: biblebot@5.0.0
7 verbose lifecycle biblebot@5.0.0~dev: unsafe-perm in lifecycle true
8 verbose lifecycle biblebot@5.0.0~dev: PATH: /usr/lib/node_modules/npm/node_modules.bundled/npm-lifecycle/node-gyp-bin:/home/vypr/Code/BibleBot/node_modules/.bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/vypr/bin:/home/vypr/bin:/home/vypr/bin:/home/vypr/bin
9 verbose lifecycle biblebot@5.0.0~dev: CWD: /home/vypr/Code/BibleBot
10 silly lifecycle biblebot@5.0.0~dev: Args: [ '-c', 'babel src -d build && node build/start.js' ]
11 silly lifecycle biblebot@5.0.0~dev: Returned: code: 1 signal: null
12 info lifecycle biblebot@5.0.0~dev: Failed to exec dev script
13 verbose stack Error: biblebot@5.0.0 dev: `babel src -d build && node build/start.js`
13 verbose stack Exit status 1
13 verbose stack at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules.bundled/npm-lifecycle/index.js:285:16)
13 verbose stack at emitTwo (events.js:126:13)
13 verbose stack at EventEmitter.emit (events.js:214:7)
13 verbose stack at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules.bundled/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack at emitTwo (events.js:126:13)
13 verbose stack at ChildProcess.emit (events.js:214:7)
13 verbose stack at maybeClose (internal/child_process.js:925:16)
13 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
14 verbose pkgid biblebot@5.0.0
15 verbose cwd /home/vypr/Code/BibleBot
16 verbose Linux 4.13.9-300.fc27.x86_64
17 verbose argv "/usr/bin/node" "/usr/bin/npm" "run" "dev"
18 verbose node v8.9.4
19 verbose npm v5.6.0
20 error code ELIFECYCLE
21 error errno 1
22 error biblebot@5.0.0 dev: `babel src -d build && node build/start.js`
22 error Exit status 1
23 error Failed at the biblebot@5.0.0 dev script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
我的运行脚本(我使用dev):
我还看到其他回答说,这可能与已经使用的端口有关。因此,我研究了discord.js使用的端口(80和443),并尝试查看Python的SimpleHTTPServer是否无法使用这些端口。它运行得非常完美(尽管我必须以sudo的身份运行,但即使是sudonpm-run-dev
也会给我带来同样的问题)
我在Babel Transfile之前的代码:
import central from "./central";
import * as config from "./data/config";
import * as Discord from "discord.js";
const bot = new Discord.Client();
import CommandHandler from "./handlers/commands";
import VerseHandler from "./handlers/verses";
const commandHandler = new CommandHandler();
const verseHandler = new VerseHandler();
import settings from "./handlers/commands/settings";
bot.on("ready", () => {
central.logMessage("info", "global", "global", "connected");
bot.user.setPresence({
status: "online",
afk: false,
game: {
"name": "BibleBot v" + process.env.npm_package_version,
"url": "https://biblebot.vypr.space"
}
});
});
bot.on("debug", (debug) => {
if (config.debug) {
central.logMessage("debug", "global", "global", debug);
}
});
bot.on("reconnecting", () => {
central.logMessage("info", "global", "global", "attempting to reconnect");
});
bot.on("disconnect", () => {
central.logMessage("info", "global", "global", "disconnected");
});
bot.on("warning", (warn) => {
central.logMessage("warn", "global", "global", warn);
});
bot.on("error", (e) => {
central.logMessage("err", "global", "global", e);
});
bot.on("message", (raw) => {
// taking the raw message object and making it more usable
let rawSender = raw.author;
let sender = rawSender.username + "#" + rawSender.discriminator;
let channel = raw.channel;
let message = raw.content;
let source;
if (config.debug) {
// TODO: Replace this with user IDs.
switch (sender) {
case "vipr#4035":
break;
default:
if (config.versionAdders.indexOf(sender) != -1) {
break;
} else {
return;
}
}
}
settings.languages.getLanguage(rawSender, (language) => {
// channel.guild is used here because
// of the possibility that DMs are being used
// otherwise, i'd use guild.name
if ((typeof channel.guild != "undefined") &&
(typeof channel.name != "undefined")) {
source = channel.guild.name + "#" + channel.name;
} else {
source = "unknown (direct messages?)";
}
if (sender == config.botname) return;
if (channel.guild.name.includes("Discord Bot")) {
if (raw.author.id != config.owner) {
return;
}
}
if (message.charAt(0) == "+") {
const command = message.substr(1).split(" ")[0];
let args = message.split(" ");
const returnValue = args.shift(); // remove the first item
if (returnValue == undefined) {
args = null;
}
try {
commandHandler.processCommand(command, args, language, rawSender, (res) => {
let originalCommand;
if (!res.announcement) {
channel.send(res.message);
Object.keys(language.commands).forEach((originalCommandName) => {
if (language.commands[originalCommandName] == command) {
originalCommand = originalCommandName;
} else if (command == "eval") {
originalCommand = "eval";
}
});
} else {
Object.keys(language.commands).forEach((originalCommandName) => {
if (language.commands[originalCommandName] == command) {
originalCommand = originalCommandName;
}
});
bot.guilds.forEach((value) => {
if (value.name == "Discord Bots" ||
value.name == "Discord Bot List") return;
let sent = false;
const ch = value.channels.findAll("type", "text");
const preferred = ["misc", "bots", "meta", "hangout", "fellowship", "lounge", "congregation", "general",
"taffer", "family_text", "staff"
];
for (let i = 0; i < preferred.length; i++) {
if (!sent) {
let receiver = ch.find(val => val.name === preferred[i]);
if (receiver) {
receiver.send(res.message.replace(
"+" + language.commands.announce + " ", ""
)).catch(() => {
// do nothing
});
sent = true;
}
}
}
});
channel.send("Done.");
}
let cleanArgs = args.toString().replaceAll(",", " ");
if (originalCommand == "puppet" || originalCommand == "eval" || originalCommand == "announce") cleanArgs = "";
central.logMessage(res.level, sender, source, "+" + originalCommand + " " + cleanArgs);
});
} catch (e) {
central.logMessage("err", sender, source, e.message);
channel.send(e.message);
console.error(e.stack);
return;
}
} else {
try {
verseHandler.processRawMessage(raw, rawSender, language, (result) => {
if (!result.invalid) {
if (result.twoMessages) {
channel.send(result.firstMessage);
channel.send(result.secondMessage);
} else {
channel.send(result.message);
}
central.logMessage(result.level, sender, source, result.reference);
}
});
} catch (e) {
central.logMessage("err", sender, source, e.message);
return;
}
}
});
});
central.logMessage(
"info", "global", "global", "BibleBot v" + process.env.npm_package_version +
" by Elliott Pardee (vypr)");
bot.login(config.token);
"use strict";
var _central = require("./central");
var _central2 = _interopRequireDefault(_central);
var _config = require("./data/config");
var config = _interopRequireWildcard(_config);
var _discord = require("discord.js");
var Discord = _interopRequireWildcard(_discord);
var _commands = require("./handlers/commands");
var _commands2 = _interopRequireDefault(_commands);
var _verses = require("./handlers/verses");
var _verses2 = _interopRequireDefault(_verses);
var _settings = require("./handlers/commands/settings");
var _settings2 = _interopRequireDefault(_settings);
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var bot = new Discord.Client();
var commandHandler = new _commands2.default();
var verseHandler = new _verses2.default();
bot.on("ready", function () {
_central2.default.logMessage("info", "global", "global", "connected");
bot.user.setPresence({
status: "online",
afk: false,
game: {
"name": "BibleBot v" + process.env.npm_package_version,
"url": "https://biblebot.vypr.space"
}
});
});
bot.on("debug", function (debug) {
if (config.debug) {
_central2.default.logMessage("debug", "global", "global", debug);
}
});
bot.on("reconnecting", function () {
_central2.default.logMessage("info", "global", "global", "attempting to reconnect");
});
bot.on("disconnect", function () {
_central2.default.logMessage("info", "global", "global", "disconnected");
});
bot.on("warning", function (warn) {
_central2.default.logMessage("warn", "global", "global", warn);
});
bot.on("error", function (e) {
_central2.default.logMessage("err", "global", "global", e);
});
bot.on("message", function (raw) {
// taking the raw message object and making it more usable
var rawSender = raw.author;
var sender = rawSender.username + "#" + rawSender.discriminator;
var channel = raw.channel;
var message = raw.content;
var source = void 0;
if (config.debug) {
// TODO: Replace this with user IDs.
switch (sender) {
case "vipr#4035":
break;
default:
if (config.versionAdders.indexOf(sender) != -1) {
break;
} else {
return;
}
}
}
_settings2.default.languages.getLanguage(rawSender, function (language) {
// channel.guild is used here because
// of the possibility that DMs are being used
// otherwise, i'd use guild.name
if (typeof channel.guild != "undefined" && typeof channel.name != "undefined") {
source = channel.guild.name + "#" + channel.name;
} else {
source = "unknown (direct messages?)";
}
if (sender == config.botname) return;
if (channel.guild.name.includes("Discord Bot")) {
if (raw.author.id != config.owner) {
return;
}
}
if (message.charAt(0) == "+") {
var command = message.substr(1).split(" ")[0];
var args = message.split(" ");
var returnValue = args.shift(); // remove the first item
if (returnValue == undefined) {
args = null;
}
try {
commandHandler.processCommand(command, args, language, rawSender, function (res) {
var originalCommand = void 0;
if (!res.announcement) {
channel.send(res.message);
Object.keys(language.commands).forEach(function (originalCommandName) {
if (language.commands[originalCommandName] == command) {
originalCommand = originalCommandName;
} else if (command == "eval") {
originalCommand = "eval";
}
});
} else {
Object.keys(language.commands).forEach(function (originalCommandName) {
if (language.commands[originalCommandName] == command) {
originalCommand = originalCommandName;
}
});
bot.guilds.forEach(function (value) {
if (value.name == "Discord Bots" || value.name == "Discord Bot List") return;
var sent = false;
var ch = value.channels.findAll("type", "text");
var preferred = ["misc", "bots", "meta", "hangout", "fellowship", "lounge", "congregation", "general", "taffer", "family_text", "staff"];
var _loop = function _loop(i) {
if (!sent) {
var receiver = ch.find(function (val) {
return val.name === preferred[i];
});
if (receiver) {
receiver.send(res.message.replace("+" + language.commands.announce + " ", "")).catch(function () {
// do nothing
});
sent = true;
}
}
};
for (var i = 0; i < preferred.length; i++) {
_loop(i);
}
});
channel.send("Done.");
}
var cleanArgs = args.toString().replaceAll(",", " ");
if (originalCommand == "puppet" || originalCommand == "eval" || originalCommand == "announce") cleanArgs = "";
_central2.default.logMessage(res.level, sender, source, "+" + originalCommand + " " + cleanArgs);
});
} catch (e) {
_central2.default.logMessage("err", sender, source, e.message);
channel.send(e.message);
console.error(e.stack);
return;
}
} else {
try {
verseHandler.processRawMessage(raw, rawSender, language, function (result) {
if (!result.invalid) {
if (result.twoMessages) {
channel.send(result.firstMessage);
channel.send(result.secondMessage);
} else {
channel.send(result.message);
}
_central2.default.logMessage(result.level, sender, source, result.reference);
}
});
} catch (e) {
_central2.default.logMessage("err", sender, source, e.message);
return;
}
}
});
});
_central2.default.logMessage("info", "global", "global", "BibleBot v" + process.env.npm_package_version + " by Elliott Pardee (vypr)");
bot.login(config.token);
从“/central”导入中心文件;
从“/data/config”导入*作为配置;
从“Discord.js”导入*作为Discord;
const bot=new Discord.Client();
从“/handlers/commands”导入CommandHandler;
从“/handlers/verses”导入VerseHandler;
const commandHandler=new commandHandler();
const verseHandler=新的verseHandler();
从“/handlers/commands/settings”导入设置;
bot.on(“就绪”,()=>{
logMessage(“信息”、“全球”、“全球”、“连接”);
bot.user.setPresence({
状态:“在线”,
afk:错,
游戏:{
“名称”:“BibleBot v”+process.env.npm_包版本,
“url”:”https://biblebot.vypr.space"
}
});
});
bot.on(“调试”,(调试)=>{
if(config.debug){
logMessage(“调试”、“全局”、“全局”、调试);
}
});
bot.on(“重新连接”,()=>{
logMessage(“信息”、“全局”、“全局”、“尝试重新连接”);
});
bot.on(“断开连接”,()=>{
logMessage(“信息”、“全局”、“全局”、“断开连接”);
});
bot.on(“警告”,“警告)=>{
日志消息(“警告”、“全局”、“全局”、“警告”);
});
bot.on(“错误”,(e)=>{
日志信息(“err”、“全球”、“全球”、e);
});
bot.on(“消息”,(原始)=>{
//获取原始消息对象并使其更可用
让rawssender=raw.author;
让sender=rawssender.username+“#”+rawssender.discriminator;
设channel=raw.channel;
让message=raw.content;
让源;
if(config.debug){
//TODO:将其替换为用户ID。
开关(发送器){
案例“vipr#4035”:
打破
违约:
if(config.versionAdders.indexOf(发送方)!=-1){
打破
}否则{
返回;
}
}
}
settings.languages.getLanguage(rawSender,(language)=>{
//此处使用channel.guild是因为
//使用DMs的可能性
//否则,我会使用guild.name
if((typeof channel.guild!=“未定义”)&&
(typeof channel.name!=“未定义”)){
source=channel.guild.name+“#”+channel.name;
}否则{
source=“未知(直接消息?);
}
if(sender==config.botname)返回;
if(channel.guild.name.includes(“Discord Bot”)){
if(raw.author.id!=config.owner){
返回;
}
}
如果(message.charAt(0)=“+”){
const command=message.substr(1.split)(“”[0];
设args=message.split(“”);
const returnValue=args.shift();//删除第一项
if(returnValue==未定义){
args=null;
}
试一试{
processCommand(命令,参数,语言,rawSender,(res)=>{
让原始命令;
如果(!res.announcement){
信道发送(res.message);
Object.keys(language.commands).forEach((originalCommandName)=>{
if(language.commands[originalCommandName]==command){
originalCommand=originalCommand名称;
}else if(命令==“eval”){
原始命令=“eval”;
}
});
}否则{
Object.keys(language.commands).forEach((originalCommandName)=>{
if(language.commands[originalCommandName]==command){
originalCommand=originalCommand名称;
}
});
bot.guilds.forEach((值)=>{
如果(value.name==“不协调机器人程序”||
value.name==“Discord Bot List”)返回;
让发送=假;
const ch=value.channels.findAll(“类型”、“文本”);
const preferred=[“杂项”、“机器人”、“元”、“闲逛”、“团契”、“休息室”、“会众”、“将军”,
“塔夫绸”、“家庭文本”、“员工”
];
for(设i=0;ival.name==preferred[i]);
中频(接收机){
接收器。发送(res.message.replace(
“+”+language.commands.announce+”,“
)).catch(()=>{
//无所事事
});
发送=真;
}
}
}
});
频道。发送(“完成”);
}
让cleanArgs=args.toString().replaceAll(“,”,”);
import central from "./central";
import * as config from "./data/config";
import * as Discord from "discord.js";
const bot = new Discord.Client();
import CommandHandler from "./handlers/commands";
import VerseHandler from "./handlers/verses";
const commandHandler = new CommandHandler();
const verseHandler = new VerseHandler();
import settings from "./handlers/commands/settings";
bot.on("ready", () => {
central.logMessage("info", "global", "global", "connected");
bot.user.setPresence({
status: "online",
afk: false,
game: {
"name": "BibleBot v" + process.env.npm_package_version,
"url": "https://biblebot.vypr.space"
}
});
});
bot.on("debug", (debug) => {
if (config.debug) {
central.logMessage("debug", "global", "global", debug);
}
});
bot.on("reconnecting", () => {
central.logMessage("info", "global", "global", "attempting to reconnect");
});
bot.on("disconnect", () => {
central.logMessage("info", "global", "global", "disconnected");
});
bot.on("warning", (warn) => {
central.logMessage("warn", "global", "global", warn);
});
bot.on("error", (e) => {
central.logMessage("err", "global", "global", e);
});
bot.on("message", (raw) => {
// taking the raw message object and making it more usable
let rawSender = raw.author;
let sender = rawSender.username + "#" + rawSender.discriminator;
let channel = raw.channel;
let message = raw.content;
let source;
if (config.debug) {
// TODO: Replace this with user IDs.
switch (sender) {
case "vipr#4035":
break;
default:
if (config.versionAdders.indexOf(sender) != -1) {
break;
} else {
return;
}
}
}
settings.languages.getLanguage(rawSender, (language) => {
// channel.guild is used here because
// of the possibility that DMs are being used
// otherwise, i'd use guild.name
if ((typeof channel.guild != "undefined") &&
(typeof channel.name != "undefined")) {
source = channel.guild.name + "#" + channel.name;
} else {
source = "unknown (direct messages?)";
}
if (sender == config.botname) return;
if (channel.guild.name.includes("Discord Bot")) {
if (raw.author.id != config.owner) {
return;
}
}
if (message.charAt(0) == "+") {
const command = message.substr(1).split(" ")[0];
let args = message.split(" ");
const returnValue = args.shift(); // remove the first item
if (returnValue == undefined) {
args = null;
}
try {
commandHandler.processCommand(command, args, language, rawSender, (res) => {
let originalCommand;
if (!res.announcement) {
channel.send(res.message);
Object.keys(language.commands).forEach((originalCommandName) => {
if (language.commands[originalCommandName] == command) {
originalCommand = originalCommandName;
} else if (command == "eval") {
originalCommand = "eval";
}
});
} else {
Object.keys(language.commands).forEach((originalCommandName) => {
if (language.commands[originalCommandName] == command) {
originalCommand = originalCommandName;
}
});
bot.guilds.forEach((value) => {
if (value.name == "Discord Bots" ||
value.name == "Discord Bot List") return;
let sent = false;
const ch = value.channels.findAll("type", "text");
const preferred = ["misc", "bots", "meta", "hangout", "fellowship", "lounge", "congregation", "general",
"taffer", "family_text", "staff"
];
for (let i = 0; i < preferred.length; i++) {
if (!sent) {
let receiver = ch.find(val => val.name === preferred[i]);
if (receiver) {
receiver.send(res.message.replace(
"+" + language.commands.announce + " ", ""
)).catch(() => {
// do nothing
});
sent = true;
}
}
}
});
channel.send("Done.");
}
let cleanArgs = args.toString().replaceAll(",", " ");
if (originalCommand == "puppet" || originalCommand == "eval" || originalCommand == "announce") cleanArgs = "";
central.logMessage(res.level, sender, source, "+" + originalCommand + " " + cleanArgs);
});
} catch (e) {
central.logMessage("err", sender, source, e.message);
channel.send(e.message);
console.error(e.stack);
return;
}
} else {
try {
verseHandler.processRawMessage(raw, rawSender, language, (result) => {
if (!result.invalid) {
if (result.twoMessages) {
channel.send(result.firstMessage);
channel.send(result.secondMessage);
} else {
channel.send(result.message);
}
central.logMessage(result.level, sender, source, result.reference);
}
});
} catch (e) {
central.logMessage("err", sender, source, e.message);
return;
}
}
});
});
central.logMessage(
"info", "global", "global", "BibleBot v" + process.env.npm_package_version +
" by Elliott Pardee (vypr)");
bot.login(config.token);
"use strict";
var _central = require("./central");
var _central2 = _interopRequireDefault(_central);
var _config = require("./data/config");
var config = _interopRequireWildcard(_config);
var _discord = require("discord.js");
var Discord = _interopRequireWildcard(_discord);
var _commands = require("./handlers/commands");
var _commands2 = _interopRequireDefault(_commands);
var _verses = require("./handlers/verses");
var _verses2 = _interopRequireDefault(_verses);
var _settings = require("./handlers/commands/settings");
var _settings2 = _interopRequireDefault(_settings);
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var bot = new Discord.Client();
var commandHandler = new _commands2.default();
var verseHandler = new _verses2.default();
bot.on("ready", function () {
_central2.default.logMessage("info", "global", "global", "connected");
bot.user.setPresence({
status: "online",
afk: false,
game: {
"name": "BibleBot v" + process.env.npm_package_version,
"url": "https://biblebot.vypr.space"
}
});
});
bot.on("debug", function (debug) {
if (config.debug) {
_central2.default.logMessage("debug", "global", "global", debug);
}
});
bot.on("reconnecting", function () {
_central2.default.logMessage("info", "global", "global", "attempting to reconnect");
});
bot.on("disconnect", function () {
_central2.default.logMessage("info", "global", "global", "disconnected");
});
bot.on("warning", function (warn) {
_central2.default.logMessage("warn", "global", "global", warn);
});
bot.on("error", function (e) {
_central2.default.logMessage("err", "global", "global", e);
});
bot.on("message", function (raw) {
// taking the raw message object and making it more usable
var rawSender = raw.author;
var sender = rawSender.username + "#" + rawSender.discriminator;
var channel = raw.channel;
var message = raw.content;
var source = void 0;
if (config.debug) {
// TODO: Replace this with user IDs.
switch (sender) {
case "vipr#4035":
break;
default:
if (config.versionAdders.indexOf(sender) != -1) {
break;
} else {
return;
}
}
}
_settings2.default.languages.getLanguage(rawSender, function (language) {
// channel.guild is used here because
// of the possibility that DMs are being used
// otherwise, i'd use guild.name
if (typeof channel.guild != "undefined" && typeof channel.name != "undefined") {
source = channel.guild.name + "#" + channel.name;
} else {
source = "unknown (direct messages?)";
}
if (sender == config.botname) return;
if (channel.guild.name.includes("Discord Bot")) {
if (raw.author.id != config.owner) {
return;
}
}
if (message.charAt(0) == "+") {
var command = message.substr(1).split(" ")[0];
var args = message.split(" ");
var returnValue = args.shift(); // remove the first item
if (returnValue == undefined) {
args = null;
}
try {
commandHandler.processCommand(command, args, language, rawSender, function (res) {
var originalCommand = void 0;
if (!res.announcement) {
channel.send(res.message);
Object.keys(language.commands).forEach(function (originalCommandName) {
if (language.commands[originalCommandName] == command) {
originalCommand = originalCommandName;
} else if (command == "eval") {
originalCommand = "eval";
}
});
} else {
Object.keys(language.commands).forEach(function (originalCommandName) {
if (language.commands[originalCommandName] == command) {
originalCommand = originalCommandName;
}
});
bot.guilds.forEach(function (value) {
if (value.name == "Discord Bots" || value.name == "Discord Bot List") return;
var sent = false;
var ch = value.channels.findAll("type", "text");
var preferred = ["misc", "bots", "meta", "hangout", "fellowship", "lounge", "congregation", "general", "taffer", "family_text", "staff"];
var _loop = function _loop(i) {
if (!sent) {
var receiver = ch.find(function (val) {
return val.name === preferred[i];
});
if (receiver) {
receiver.send(res.message.replace("+" + language.commands.announce + " ", "")).catch(function () {
// do nothing
});
sent = true;
}
}
};
for (var i = 0; i < preferred.length; i++) {
_loop(i);
}
});
channel.send("Done.");
}
var cleanArgs = args.toString().replaceAll(",", " ");
if (originalCommand == "puppet" || originalCommand == "eval" || originalCommand == "announce") cleanArgs = "";
_central2.default.logMessage(res.level, sender, source, "+" + originalCommand + " " + cleanArgs);
});
} catch (e) {
_central2.default.logMessage("err", sender, source, e.message);
channel.send(e.message);
console.error(e.stack);
return;
}
} else {
try {
verseHandler.processRawMessage(raw, rawSender, language, function (result) {
if (!result.invalid) {
if (result.twoMessages) {
channel.send(result.firstMessage);
channel.send(result.secondMessage);
} else {
channel.send(result.message);
}
_central2.default.logMessage(result.level, sender, source, result.reference);
}
});
} catch (e) {
_central2.default.logMessage("err", sender, source, e.message);
return;
}
}
});
});
_central2.default.logMessage("info", "global", "global", "BibleBot v" + process.env.npm_package_version + " by Elliott Pardee (vypr)");
bot.login(config.token);