twitch_bot/commands/join.js

60 lines
1.3 KiB
JavaScript
Raw Normal View History

const prisma = require("../clients/prisma");
2023-02-01 16:39:00 +01:00
const command = {
name: "join",
desc: "make the bot listen to a channel",
2023-02-02 23:37:42 +01:00
restricted: false,
2023-02-02 23:58:58 +01:00
mod: false,
2023-02-01 16:39:00 +01:00
run: async (client, msg) => {
if (msg.channelName !== process.env.TWITCH_USERNAME) {
await client.say(
msg.channelName,
`${msg.displayName}, command only in available in bots chat`
);
return;
}
2023-02-04 20:14:10 +01:00
if (client.joinedChannels.has(msg.senderUsername)) {
await client.say(msg.channelName, `${msg.displayName}, already joined`);
return;
}
console.log("Joining channel: " + msg.senderUsername);
const storeChannel = await prisma.channel.create({
data: {
name: msg.senderUsername,
},
});
if (!storeChannel) {
await client.say(
msg.channelName,
`${msg.displayName}, something went wrong saving`
);
return;
}
2023-02-01 16:39:00 +01:00
await client
.join(msg.senderUsername)
2023-02-04 17:21:55 +01:00
.then(
async () =>
await client.say(
msg.channelName,
`${msg.displayName}, joined ${msg.senderUsername} BroBalt`
)
);
await client
.say(msg.senderUsername, "MrDestructoid")
.catch((err) =>
console.error(
`The bot can't speak in the newly joined channel! Error: ${err.message}`
)
2023-02-01 16:39:00 +01:00
);
},
};
2023-02-01 22:11:48 +01:00
module.exports = { command };