Форум программистов, компьютерный форум, киберфорум
Node.js
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 29.06.2020
Сообщений: 1

Бот Discord

29.06.2020, 17:56. Показов 867. Ответов 0

Студворк — интернет-сервис помощи студентам
Здравствуйте, создавал бота, решил сделать так, что бы бот показывал информацию о пользователе, через команду "!userinfo". Пытался сделать через функции, очень долго писал и в итоге ошибка, пожалуйста, можете помочь?
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
function userinfo(robot, mess, args) {
        let member = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0]))
        let argsUser
        if (member) argsUser = member.user
        else argsUser = message.author
    
        let statuses = {
            online: 'В сети',
            idle: 'Нет на месте',
            dnd: 'Не беспокоить',
            offline: 'Не в сети'
        }
        let game
        if (!argsUser.presence.game) game = `Имеет статус **${statuses[argsUser.presence.status]}**`
        else if (argsUser.presence.game.type == 0) game = `Играет в **${argsUser.presence.game.name}**`
        else if (argsUser.presence.game.type == 1) game = `Стримит [**${argsUser.presence.game.name}**](${argsUser.presence.game.url})`
        else if (argsUser.presence.game.type == 2) game = `Слушает **${argsUser.presence.game.name}**`
        else if (argsUser.presence.game.type == 3) game = `Смотрит **${argsUser.presence.game.name}**`
    
        let day = 1000 * 60 * 60 * 24
        let date1 = new Date(message.createdTimestamp)
        let date2 = new Date(argsUser.createdTimestamp)
        let date3 = new Date(message.guild.member(argsUser).joinedTimestamp)
        let diff1 = Math.round(Math.abs((date1.getTime() - date2.getTime()) / day))
        let diff2 = Math.round(Math.abs((date1.getTime() - date3.getTime()) / day))
    
        let embed = new RichEmbed()
            .setTitle(argsUser.username)
            .setDescription(game)
            .addField('Дата регистарции', `${strftime('%d.%m.%Y в %H:%M', new Date(argsUser.createdTimestamp))}\n(${diff1} дн. назад)`, true)
            .addField('Дата вступления', `${strftime('%d.%m.%Y в %H:%M', new Date(message.guild.member(argsUser).joinedTimestamp))}\n(${diff2} дн. назад)`, true)
            .addField('Роли', message.guild.member(argsUser).roles.filter(r => r.id != message.guild.id).map(role => role.name).join(', ') || 'Не имеет')
            .setColor(message.guild.member(argsUser).displayHexColor)
            .setTimestamp()
            .setThumbnail(argsUser.avatarURL)
            .setFooter(`ID: ${argsUser.id}`)
    }}
Ошибка:
Code
1
2
3
4
5
6
7
8
9
10
11
TypeError: mess.guild.members.get is not a function
    at Object.userinfo [as out] (C:\Users\Эрик\Desktop\bot\comms.js:163:90)
    at Client.<anonymous> (C:\Users\Эрик\Desktop\bot\bot.js:27:32)[90m    at Client.emit (events.js:315:20)[39m
    at MessageCreateAction.handle (C:\Users\Эрик\Desktop\bot\node_modules\←[4mdiscord.js←[24m\src\client\actions\MessageCreate.js:31:14)
    at Object.module.exports [as MESSAGE_CREATE] (C:\Users\Эрик\Desktop\bot\node_modules\←[4mdiscord.js←[24m\src\client\websocket\handlers\MESSAGE_CREATE.js:4:32)
    at WebSocketManager.handlePacket (C:\Users\Эрик\Desktop\bot\node_modules\←[4mdiscord.js←[24m\src\client\websocket\WebSocketManager.js:386:31)
    at WebSocketShard.onPacket (C:\Users\Эрик\Desktop\bot\node_modules\←[4mdiscord.js←[24m\src\client\websocket\WebSocketShard.js:436:22)
    at WebSocketShard.onMessage (C:\Users\Эрик\Desktop\bot\node_modules\←[4mdiscord.js←[24m\src\client\websocket\WebSocketShard.js:293:10)
    at WebSocket.onMessage (C:\Users\Эрик\Desktop\bot\node_modules\←[4mws←[24m\lib\event-target.js:125:16)[90m    at WebSocket.emit (events.js:315:20)[39m
Я думаю таких ошибок в коде будет много, так что попрошу сделать сразу всё или же облегчить.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.06.2020, 17:56
Ответы с готовыми решениями:

Бот Discord
Здравствуйте, захотел сделать так, чтобы мой бот имел команды администратора(банить, кикать, давать роли и тд.), даже нашел коды, но все...

Бот на discord.js
Столкнулся с проблемой. Не могу отправить сообщение в чат при запуске бота.

discord.js записывающий бот
Добрый вечерочек 8-). Пытаюсь создать дискорд-бота для своей гильдии. От бота требуеться слушать что говорят другие и воспроизводить...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.06.2020, 17:56
Помогаю со студенческими работами здесь

Бот Discord. Почему у меня не отправляет в чат что человек зашел?
MrOnlineCoder, Привет не могу понять почему у меня не отправляет в чат что человек зашел client.on('message', message =&gt; { //новый...

Discord.js Чтобы бот не реагировал на условную команду "ban" отправленную от человека с ролью "участник"
Нужен код. Что бы бот не реагировал на условную команду &quot;ban&quot; отправленную от человека с ролью &quot;учасник&quot; и отсылал сообщения...

Discord.js
Не знаю как реализовать идею. Сделал код, который берет информацию из сайта reddit, но именно ту, которую я указал в программе. Можно...

Discord Bot
1. Node.js version 12.13.0 LTS 4. https://github.com/Razish/node-jkutils (не знаю поможет ли это или это даже не нужно использовать)...

Discord bot.js
Как сделать чтобы использовался выбранный тобой префекс использовался командах бота (commands), а то столкнулся с тобой бедой, что он...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru