Ответы пользователя по тегу Discord
  • Как получать количество пользователей в голосовом канале Discord?

    fgvnovoross
    @fgvnovoross
    Если бы ты был через Discord.js, то я бы сказал:
    voiceChannel.members.size
    https://discord.js.org/#/docs/main/stable/class/Vo...
    Как получить голосовой канал:
    https://discord.js.org/#/docs/main/stable/class/Gu...
    или
    message.guild.channels.get("айди канала");|
    message.guild.channels.find("тип поиска", "запрос");
    //типы - name, id и тд


    Если ты про Discord API простой, то ответ прост - НЕЗНАЮ. Вроде кто-то писал в комментах к задаче...
    Ответ написан
    Комментировать
  • [Discord.js] Как одним ботом отправлять и считывать сообщения другого бота?

    fgvnovoross
    @fgvnovoross
    Вообще-то работают... Ты наверно блокировал сообщения от ботов. Ты ставил это или что-то подобное?
    if(message.author.bot) return;
    Если да, а тебе нужно чтение сообщений и от ботов толи убери, толи сделай отдельную проверку типа
    if(message.author.bot){
    //код если бот
    }else{
    //код если не бот
    }
    Ответ написан
    Комментировать
  • Что делать, если консоль в Visual Studio Code (discord.js) не находит модуль ".message"?

    fgvnovoross
    @fgvnovoross
    Я так понимаю что ты пытался сделать index.js и доп. файл message.js который делает ответ на команду, верно?
    Если да то логично что не так:
    Попробуй написать не require(".message"), а require("./message")

    Если ты писал в консоль
    npm i message
    или
    npm install message
    или типа того, то убери точку:require("message")
    Ответ написан
    Комментировать
  • Как сделать чтобы Discord bot высылал изооброжения с гугла в чат?

    fgvnovoross
    @fgvnovoross
    https://www.npmjs.com/package/google-images
    https://www.npmjs.com/package/free-google-image-search
    Используйте один из этих модулей и ищите картинку. А потом делаем рандомное число (от нуля до array.length - 1 (array - массив)) и получаем из массива изображение по индексу числа.
    Ответ написан
    Комментировать
  • Как исправить ошибку?

    fgvnovoross
    @fgvnovoross
    А чего тут не понятного?
    Во первых не agrc и не agrs а args.
    Во вторых:
    const agrc = message.content.slice('15');
                  message.guild.createChannel ('${agrs}')


    Вначале объявили agrC а потом пытаетесь откуда-то взять agrS, которое не объявляли. Внимательней надо быть!
    Ответ написан
    Комментировать
  • Как сделать такую статистику на сервере в дискорде?

    fgvnovoross
    @fgvnovoross
    Тут есть два варианта. Толи найти бота, толи сделать своего!
    Если найти то вот:
    https://top.gg/bot/475393791902351360
    Но как я понял это на английском...
    Могу помочь с настройкой если надо. Пишите в комменты под ответом.
    Ответ написан
    7 комментариев
  • Как сделать так что бы дискорд бот упомянул роль?

    fgvnovoross
    @fgvnovoross
    Не
    <@roleid>
    , а
    <@&roleid>
    Ответ написан
    Комментировать
  • Как получить аватарку через id участника?

    fgvnovoross
    @fgvnovoross
    Изи вопрос!
    var user = message.mentions.users.first(); //Получаем первого упомянутого в сообщении юзера
    if(!user) return message.reply("юзер не упомянут");
    var url = user.avatarURL; //Получаем его аватарку! Всё просто!

    Если вам нужно получить ИМЕННО ПО ID, то вот:
    //Типа вы уже объявили переменную id
    var user = client.users.get(id); //Получаем юзера из users
    if(!user) return message.reply("юзер не найден");
    var url = user.avatarURL; //Готово!


    Если нужен код получения id из сообщения, то могу накодить ;)
    Ответ написан
    Комментировать
  • Как получить статус типа "Играет в Google Chrome" через API Дискорда?

    fgvnovoross
    @fgvnovoross
    Javascript бот дискорд:
    client.user.setGame("Google Chrome");
    client.user.setStatus("online"); //или другой тип статуса

    или
    client.user.setPresence({
    "status" : "online", //или другой тип статуса
    
     "game" : {
    
    "name" : 'Google Chrome',
    
    "type" : "PLAYING" //, (или другой тип деятельности)
    
    //:url : "URL видео на Twich" (только если стоит WATCHING или STREAMING)
    
    }
    });


    Типы статуса и типы деятельности:

    Playing
    - играет
    Streaming
    - стримит на твиче
    Listening
    - слушает
    Watching
    - смотрит на твиче

    Вот!

    Если ты хочешь для себя, типа ты играешь во что-то (именно играешь), то есть 2 способа (2 как первый только немного расширенный, но более сложный. В обоих ТРЕБУЕТСЯ ИМЕННО ПРОГРАММА ДИСКОРДА, чтобы через программу а не через браузер!):

    1 способ:

    Зайди в настройки Дискорда, выбери Game Activity, добавь этот гугл хром (скриншот)!!
    5cef8494d22d9735671799.png
    Потом можешь менять и название игры.
    5cef84abe2352520562725.png5cef84b7b16a4577859359.png2 спобоб или вот
    Ответ написан
    1 комментарий
  • Как сделать так чтобы бот в Discord упоминал тебя?

    fgvnovoross
    @fgvnovoross
    В примере выше ответ должен получиться:
    m!trade, @Мойник

    а что без запятой вот как можно:

    message.channel.send(`m!trade ${message.member}`)
    другая вариация
    message.channel.send(`m!trade ${message.author}`)
    или можно так
    message.channel.send("m!trade " + message.member)
    :)
    Ответ написан
    Комментировать
  • Какой бот и как отправлять сообщение ботом в определённый чат?

    fgvnovoross
    @fgvnovoross
    Есть 2 варианта как это сделать. Первый - найти этот канал через бота. Второй - использовать вебхуки.
    Найти канал можно разными способами.

    Через сообщение:
    let channel = message.channel;
    channel.send("тест");

    Или например через его id:
    let channel = client.channels.get("айди");
    channel.send("тест");


    Как узнать id канала?
    Зайдите в Настройки (Дискорда), в Общий Вид, включите параметр Режим Разработчика. После этого (как вы обычно нажимаете левой кнопкой мыши чтобы зайти на канал) нажмите на нужный вам текстовый канал правой кнопкой мыши и нажмите Копировать id.

    Как использовать вебхуки?
    Зайдите в настройки сервера, в вебхуки, нажмите Создать вебхук, настройте название канал и аватарку вебхука. Внизу этой менюшки будет URL вебхука и там кнопка Copy. Нажмите на эту кнопку. Сохраните изменения в вебхуке. Зайдите в браузер, вставьте URL-адрес и перейдите по нему. На этой странице найдите
    "id": "айди вебхука"}
    и
    "token": "токен вебхука",
    и вставьте их в код следующим образом:
    const webhook = new Discord.Webhook("айди вебхука", "токен вебхука");

    После этого вы можете использовать этот вебхук:
    webhook.send("тест");
    Всё! :)
    Ответ написан
    Комментировать
  • Как упоминать роли?

    fgvnovoross
    @fgvnovoross
    Не знаю! Единственный вариант, который смог найти при помощи бота Дискорд.
    Сделал (на javascript discord.js):
    client.on("message", msg => {
    console.log(msg.content);
    });

    и написал сообщение с упомянутой ролью.
    Оно в консоли и написало
    <@&айди>

    ВОТ!
    Ответ написан
    Комментировать
  • Что надо сделать, чтобы бот в дискорде мог выдавать наказания и тд?

    fgvnovoross
    @fgvnovoross
    Могу назвать лишь часть команд как сделать. Над остальными сам парюсь.
    Команды которые могу назвать:
    ^kickplayer;
    ^blockplayer;
    ^print.
    Так-же могу предложить помощь по команде ^authorise, но только в том случае, если ты делаешь бота для одного сервера а не для общего пользования. Ты делаешь для одного сервера или нет?

    По тем трём командам тут. Если что, то я привожу самые простые примеры, но можно сделать и получше! Если что - пиши мне в Дискорд, помогу!
    Мой тег Дискорд:
    fgvnovoross#3014

    ^kickplayer:
    var prefix = "^";
    
    client.on("message", msg => {
    if(!msg.guild) return;
    if(!msg.content.startsWith("^") return;
    const args = msg.content.slice(prefix.length).trim().split(/ +/g);
            const command = args.shift().toLowerCase();
    if(command === "kickplayer"){
    let member = msg.mentions.members.first();
    member.kick().catch(err => constole.log(err));
    }
    });


    ^blockplayer:

    var prefix = "^";
    
    client.on("message", msg => {
    if(!msg.guild) return;
    if(!msg.content.startsWith("^") return;
    const args = msg.content.slice(prefix.length).trim().split(/ +/g);
            const command = args.shift().toLowerCase();
    if(command === "blockplayer"){
    let member = msg.mentions.members.first();
    let player = args[0];
    if(!member === player) return (msg.reply("неправильно введены данные!"));
    let days = args[1];
    member.ban(days).catch(err => {
    console.log(err);
    msg.reply("ошибка!");
    });
    
    }
    });


    ^print:

    var prefix = "^";
    
    client.on("message", msg => {
    if(!msg.guild) return;
    if(!msg.content.startsWith("^") return;
    const args = msg.content.slice(prefix.length).trim().split(/ +/g);
            const command = args.shift().toLowerCase();
    if(command === "print"){
    let text = args.join(" ");
      msg.delete().catch(err => console.log(err));
      msg.channel.send(text);
    }
    });
    Ответ написан
    2 комментария