Discord Bot Размещение ссылки на канал - PullRequest
1 голос
/ 02 апреля 2020

Это то, что я имею до сих пор, и это работает. Я пытаюсь добавить # channel-name-link в конце сообщения.

bot.on('guildMemberAdd', member => {
    const welcome = member.guild.channels.cache.find(channel => channel.name === "on-the-leash");
    if (!welcome) return;
    welcome.send("Welcome " + member.toString() + "more message here!!" + message.guild.channels.cache.get('channelID').toString());
});

Теперь я получаю сообщение об ошибке, что сообщение не определено. Я новичок в node.js. Я использую PowerShell и Bash. Я программировал на Java и C ++, но прошел год или два с тех пор, как я действительно что-то с ними сделал. Я ценю всю помощь.

Любая помощь будет оценена

Ответы [ 2 ]

2 голосов
/ 02 апреля 2020

Используете ли вы дискорд. js v11 или v12? Вы хотите получить канал, используя его идентификатор или вы бы предпочли найти его, используя его имя?

Редактировать:

Добавить .cache после message.guild.channels, что должно решить вашу проблему

Ваше решение будет:

welcome.send("Welcome " + member.toString() + "more message here" + message.guild.channels.cache.find(channel => channel.name === "rules" ).toString());

ИЛИ

welcome.send("Welcome " + member.toString() + "more message here" + message.guild.channels.cache.get("channelID").toString());

0 голосов
/ 02 апреля 2020

Спасибо за помощь @ Синтл, ты привел меня туда, где мне нужно было

bot.on('guildMemberAdd', member => {
    const welcome = member.guild.channels.cache.find(channel => channel.name === "on-the-leash");
    const channel = member.guild.channels.cache.get('#ChannelID#').toString();
    if (!welcome) return;
    welcome.send("Welcome " + member.toString() + "More Message Here" + channel);
});
...