perlbot-discord-bridge/bot.js
2020-08-28 21:12:47 -07:00

60 lines
1.3 KiB
JavaScript

var Discord = require('discord.js');
var auth = require('./auth.json');
var bot = new Discord.Client();
var axios = require('axios');
bot.on('ready', () => {
console.log(`Logged in as ${bot.user.tag}!`);
});
bot.on('message', msg => {
if (msg.author.username == bot.user.username) {
return
}
let foundme = msg.mentions.users.find(user => user.username == bot.user.username);
let url = "http://192.168.196.2:1092/request";
let author = msg.author.username;
let perlbot_request = {
"body": msg.content,
"orig_body": msg.content,
"who": author,
"channel": "#"+msg.channel.id,
"server": "discord.gg",
"addressed": false
};
if (foundme) {
perlbot_request.addressed = true;
// console.log(foundme);
// remove the addressed part
perlbot_request.body = perlbot_request.body.replace(`<@!${bot.user.id}>`, "");
// console.log(perlbot_request, bot.user, foundme);
}
msg.channel.startTyping();
if (msg.channel.type == 'dm') {
perlbot_request.addressed = true;
}
return axios({
method: 'POST',
url: url,
data: perlbot_request
}).then(response => {
msg.channel.stopTyping();
console.log(response.data);
if (response.data.body) {
msg.reply(`${response.data.body}`);
}
})
});
bot.login(auth.token)