Как добавить логи в дискорд

Обновлено: 07.07.2024

Discord.js logger to Consolog

channelCreate(): Emitted whenever a channel is created.

PARAMETER TYPE DESCRIPTION
channel Channel The channel that was created

channelDelete(): Emitted whenever a channel is deleted.

PARAMETER TYPE DESCRIPTION
channel Channel The channel that was deleted

channelPinsUpdate(): Emitted whenever the pins of a channel are updated. Due to the nature of the WebSocket event, not much information can be provided easily here - you need to manually check the pins yourself.

PARAMETER TYPE DESCRIPTION
channel Channel The channel that the pins update occurred in
time Date The time of the pins update

channelUpdate(): Emitted whenever a channel is updated - e.g. name change, topic change.

PARAMETER TYPE DESCRIPTION
oldChannel Channel The channel before the update
newChannel Channel The channel after the update

clientUserGuildSettingsUpdate(): Emitted whenever the client user's settings update.

PARAMETER TYPE DESCRIPTION
clientUserGuildSettings ClientUserGuildSettings The new client user guild settings

clientUserSettingsUpdate(): Emitted when the client user's settings update.

PARAMETER TYPE DESCRIPTION
clientUserSettings ClientUserSettings The new client user settings

debug(): Emitted for general debugging information.

PARAMETER TYPE DESCRIPTION
info string The debug information

disconnect(): Emitted when the client's WebSocket disconnects and will no longer attempt to reconnect.

PARAMETER TYPE DESCRIPTION
Event CloseEvent The WebSocket close event

emojiCreate(): Emitted whenever a custom emoji is created in a guild.

PARAMETER TYPE DESCRIPTION
emoji Emoji The emoji that was created

emojiDelete(): Emitted whenever a custom guild emoji is deleted.

PARAMETER TYPE DESCRIPTION
emoji Emoji The emoji that was deleted

emojiUpdate(): Emitted whenever a custom guild emoji is updated.

PARAMETER TYPE DESCRIPTION
oldEmoji Emoji The old emoji
newEmoji Emoji The new emoji

error(): Emitted whenever the client's WebSocket encounters a connection error.

PARAMETER TYPE DESCRIPTION
error Error The encountered error

guildBanAdd(): Emitted whenever a member is banned from a guild.

PARAMETER TYPE DESCRIPTION
guild Guild The guild that the ban occurred in
user User The user that was banned

guildBanRemove(): Emitted whenever a member is unbanned from a guild.

PARAMETER TYPE DESCRIPTION
guild Guild The guild that the unban occurred in
user User The user that was unbanned

guildCreate(): Emitted whenever the client joins a guild.

PARAMETER TYPE DESCRIPTION
guild Guild The created guild

guildDelete(): Emitted whenever a guild is deleted/left.

PARAMETER TYPE DESCRIPTION
guild Guild The guild that was deleted

guildMemberAdd(): Emitted whenever a user joins a guild.

PARAMETER TYPE DESCRIPTION
member GuildMember The member that has joined a guild

guildMemberAvailable(): Emitted whenever a member becomes available in a large guild.

PARAMETER TYPE DESCRIPTION
member GuildMember The member that became available

guildMemberRemove(): Emitted whenever a member leaves a guild, or is kicked.

PARAMETER TYPE DESCRIPTION
member GuildMember The member that has left/been kicked from the guild

guildMembersChunk(): Emitted whenever a chunk of guild members is received (all members come from the same guild).

PARAMETER TYPE DESCRIPTION
members Array The members in the chunk
guild Guild The guild related to the member chunk

guildMemberSpeaking(): Emitted once a guild member starts/stops speaking.

PARAMETER TYPE DESCRIPTION
member GuildMember The member that started/stopped speaking
speaking boolean Whether or not the member is speaking

guildMemberUpdate(): Emitted whenever a guild member changes - i.e. new role, removed role, nickname.

PARAMETER TYPE DESCRIPTION
oldMember GuildMember The member before the update
newMember GuildMember The member after the update

guildUnavailable(): Emitted whenever a guild becomes unavailable, likely due to a server outage.

PARAMETER TYPE DESCRIPTION
guild Guild The guild that has become unavailable

guildUpdate(): Emitted whenever a guild is updated - e.g. name change.

PARAMETER TYPE DESCRIPTION
oldGuild Guild The guild before the update
newGuild Guild The guild after the update

message(): Emitted whenever a message is created.

PARAMETER TYPE DESCRIPTION
message Message The created message

messageDelete(): Emitted whenever a message is deleted.

PARAMETER TYPE DESCRIPTION
message Message The deleted message

messageDeleteBulk(): Emitted whenever messages are deleted in bulk.

PARAMETER TYPE DESCRIPTION
messages Collection<Snowflake, Message> The deleted messages, mapped by their ID

messageReactionAdd(): Emitted whenever a reaction is added to a message.

PARAMETER TYPE DESCRIPTION
messageReaction MessageReaction The reaction object
user User The user that applied the emoji or reaction emoji

messageReactionRemove(): Emitted whenever a reaction is removed from a message.

PARAMETER TYPE DESCRIPTION
messageReaction MessageReaction The reaction object
user User The user that removed the emoji or reaction emoji

messageReactionRemoveAll(): Emitted whenever all reactions are removed from a message.

PARAMETER TYPE DESCRIPTION
message Message The message the reactions were removed from

messageUpdate(): Emitted whenever a message is updated - e.g. embed or content change.

PARAMETER TYPE DESCRIPTION
oldMessage Message The message before the update
newMessage Message The message after the update

presenceUpdate(): Emitted whenever a guild member's presence changes, or they change one of their details.

PARAMETER TYPE DESCRIPTION
oldMember GuildMember The member before the presence update
newMember GuildMember The member after the presence update

ready(): Emitted when the client becomes ready to start working.

reconnecting(): Emitted whenever the client tries to reconnect to the WebSocket.

В этой статье я подробно расскажу о том, как работать с библиотекой discord.js, создать своего Discord-бота, а также покажу несколько интересных и полезных команд.

Сразу хочу отметить, что я планирую сделать ряд подобных статей, начиная с простых команд, заканчивая музыкой, системой экономики и распознаванием голоса ботом.

Начало работы

Если вы уже знакомы с приведёнными ниже материалами, — смело можете пролистать этот раздел.

Для начала работы с кодом нам нужно установить среду разработки, это может быть:

Среда разработки выбирается по удобству использования и практичности, она у вас может быть любая, но мы рассмотрим её на примере Visual Studio Code, так как она является одной из самых приемлемых для новичков, а также для опытных программистов.

Для установки переходим по этой ссылке.



Выбираем свою операционную систему и запускаем скачивание.

Для создания бота мы используем среду выполнения node.js. Для её установки нам необходимо перейти на этот сайт.


На данный момент нас интересует версия долгосрочной поддержки (LTS), скачиваем её.

В Visual Studio Code присутствует возможность устанавливать расширения.
Для этого, кликните по отмеченной ниже иконке.


В открывшемся окне вписываем название название/идентификатор нужного нам расширения, после чего устанавливаем его.


Из полезных расширений могу отметить:

    Discord Presence — расширение, позволяющее отображать рабочую область и файл, в котором вы работаете в вашей игровой активности (функция работает только при использовании приложения Discord).

Создание бота

Теперь, когда вы установили все нужные компоненты, мы можем приступить к созданию самого бота.

Здесь всё просто. Переходим на портал разработчиков и нажимаем на кнопку с надписью «New Application» — она находится в правом верхнем углу.

В открывшемся окне вписываем имя бота, после чего, нажимаем на кнопку с надписью «Create».


На этой странице мы можем изменить имя бота, загрузить для него иконку, заполнить описание.

Теперь наша задача — воплотить бота в жизнь. Для этого переходим во вкладку «Bot».


Нажимаем на кнопку с надписью «Add Bot» и воплощаем бота в жизнь.

Поздравляю! Вы создали аккаунт для вашего бота. Теперь у него есть тег, токен, ник и иконка.

Подготовка к написанию кода

После создания аккаунта для бота, мы должны установить нужные пакеты и модули, чтобы в дальнейшем он корректно работал.

Первым делом создаём папку, после чего открываем её в VS Code (Файл > Открыть папку) / (Ctrl + K Ctrl + O)

Далее нам нужно открыть терминал (Терминал > Создать терминал) / (Ctrl + Shift + `)


Теперь мы должны создать файл с неким «описанием» нашего бота, сделаем это через терминал.

Вписываем данную строку в терминал и нажимаем Enter:


После каждой появившейся строки нажимаем Enter или вписываем свои значения.
Значения в этом файле можно будет изменить в любой момент.

Далее, мы должны поочерёдно вводить в терминал эти строки:

«Install» также можно сокращать в «I», но необязательно.

Итого, если вы следовали инструкциям и всё сделали правильно, в вашей папке должны были появиться 3 объекта:


Написание кода

Для того, чтобы наш бот появился в сети и мог реагировать на команды, нам нужно написать для него код.

Существует множество вариантов для его написания: используя один файл, два, несколько, и т.д

Мы рассмотрим вариант с двумя файлами, так как его использовать очень легко и удобно, но у каждого варианта есть свои недостатки — например, у этого недостатком является сложность в написании начального кода.

Но не волнуйтесь, весь код вам писать не придётся.

Для начала, нам нужно где-то хранить основные параметры и информацию о боте.

Мы можем сделать это двумя способами:

  1. Создать отдельный файл
  2. Записать всё в константы

Разберём хранение параметров в отдельном файле.

Итак, создаем файл config.json

Вставляем в него следующий код:


* Для получения токена зайдите на портал разработчиков, перейдите во вкладку «Bot» и скопируйте его.


* Самым распространённым среди разработчиков префиксом является !

Далее нам нужно создать файл bot.js и вставить в него данный код:


Теперь создаём файл comms.js, в нём будут сами команды.

В нём должен быть следующий код:


Чтобы добавить больше команд — просто объявляйте больше функций и добавляйте их в список, например:


И вот, мы вышли на финишную прямую!

Осталось всего ничего — запустить бота.

Для этого открываем терминал и вставляем в него следующую строку:



Готово! Бот запущен и вы можете им пользоваться, ура!

Чтобы пригласить бота на свой сервер, воспользуемся нам уже известным порталом разработчиков.

Перейдём во вкладку OAuth2, пролистаем чуть ниже, выберем «Bot» и отметим нужные боту привилегии.


Как вывести ссылку-приглашение в терминал, при запуске бота?

Существует два способа:

    Заранее отметить нужные привилегии.


Итоговый код должен быть таким:


Чтобы указать несколько привилегий, мы должны перечислить их в квадратных скобках, через запятую:


* Все привилегии указываются заглавными буквами

Список доступных привилегий:

ADMINISTRATOR
CREATE_INSTANT_INVITE
KICK_MEMBERS
BAN_MEMBERS
MANAGE_CHANNELS
MANAGE_GUILD
ADD_REACTIONS
VIEW_AUDIT_LOG
PRIORITY_SPEAKER
STREAM
VIEW_CHANNEL
SEND_MESSAGES
SEND_TTS_MESSAGES
MANAGE_MESSAGES
EMBED_LINKS
ATTACH_FILES
READ_MESSAGE_HISTORY
MENTION_EVERYONE
USE_EXTERNAL_EMOJIS
VIEW_GUILD_INSIGHTS
CONNECT
SPEAK
MUTE_MEMBERS
DEAFEN_MEMBERS
MOVE_MEMBERS
USE_VAD
CHANGE_NICKNAME
MANAGE_NICKNAMES
MANAGE_ROLES
MANAGE_WEBHOOKS
MANAGE_EMOJIS

Полезные и интересные команды

В предыдущем разделе я показал вам, как запустить бота и как писать для него команды.
Теперь я хочу поделиться с вами несколькими своими командами.

Есть много того, что вам может понравиться в Discord. Он бесплатен в использовании и управлении, имеет поддержку VOIP, и благодаря поддержке ботов, очень хорошо настраивается. Вот лучшие боты Discord, о которых вы должны знать.

7 лучших ботов Discord для улучшения вашего сервера 1

1. Carl Bot

Одна из наиболее полезных функций в Discord — это роли реакции, которые позволяют вводить команды и смайлики в Discord, позволяя вносить различные изменения на сервере.

Роли за реакции:

Логирование:

Модерация:

  • Лог модерации.
  • Множество команд для модерации.
  • Канал, чтобы модераторы могли видеть всех нарушителей.

7 лучших ботов Discord для улучшения вашего сервера 2

2. Groovy

Новичок на сцене музыкальных ботов Discord — Groovy — позволяет пользователям на канале в Discord ставить в очередь плейлисты песен из самых популярных музыкальных источников в интернете.

7 лучших ботов Discord для улучшения вашего сервера 3

3. MEE6

Есть причина, по которой MEE6 в настоящее время — один из лучших ботов Discord. Он обладает обширными возможностями и поддержкой. Вы также можете обновиться до премиум пакета подписки для еще большего количества функций.

Множество ботов Disord предназначены для модерации сервера, и MEE6 не вызовет разочарования. Вы можете настроить автоматические правила для защиты от таких проблем, как спам на сервере. Администраторы MEE6 также могут настроить систему «страйков» для автоматизации наказаний, если пользователи регулярно нарушают правила.

Существует также система регулировки уровней для пользователей. Обычные пользователи могут «подняться» на более высокий уровень в зависимости от активности их работы. Вы можете установить награды, такие как дополнительный доступ в комнату или новые роли.

Если вы уже знаете, как добавлять боты Discord на ваш сервер, вам не составит труда столкнуться с проблемой, используя MEE6. Просто пригласите бота на свой сервер, чтобы начать работу.

7 лучших ботов Discord для улучшения вашего сервера 4

4. RED

Если вы хотите, чтобы бот действительно настраивался, то RED должен быть на вашем радаре. Учтите, что для его размещения вам понадобится собственный сервер.

Если вы не нашли нужной функции, вы можете расширить RED с помощью плагинов, которые кодируются на питоне. Вы можете искать созданные сообществом плагины на сайте RED.

7 лучших ботов Discord для улучшения вашего сервера 5

5. Dyno

Еще одним достойным внимания ботом является Dyno, который используется на более чем 1,6 миллионах серверов. Одним из его главных преимуществ является большая информационная веб-панель, позволяющая полностью контролировать процесс настройки.

Вам не нужно быть владельцем хостинга, так как все размещается на сервере Dyno, который управляется через веб-инструментарий. Инструменты модерации обширны, с настраиваемыми автоматическими триггерами.

Но дело не только в модерации. Вы можете настроить DJ-бота с индивидуальными плейлистами, играть в слот-игры, искать случайные факты и даже фотографии.

7 лучших ботов Discord для улучшения вашего сервера 6

6. Tatsumaki

Fun — это модное слово, которое лучше всего ассоциируется с ботом Tatsumaki. Он яркий, с множеством интересных функций, которыми могут воспользоваться пользователи вашего сервера, чтобы повысить активность пользователей.

Это бот, который охватывает все основные функции для улучшения модерации и более эффективного использования сервера, а также для того, чтобы дать пользователям веселые и удобные командные игры.

Вы также можете осуществлять поиск на YouTube, искать факты о кошках, играть в различные игры, а также проводить опросы по всему серверу. Существует обширная система уровней с XP, доступная для пользователей в зависимости от их активности.

7 лучших ботов Discord для улучшения вашего сервера 7

7. Pancake

Более 300 000 серверов используют Pancake на дискордах, и по уважительной причине. Простота в использовании, хороший баланс между командами развлечений для пользователей и расширенной модерацией для администраторов. Отдельный хостинг не нужен.

Настраиваемая система модерации позволяет управлять всем, начиная с голосового чата и заканчивая блокировкой пользователей с системой разрешений для настройки команд модераторов с разными полномочиями.

Кстати, если вам нужно изменить голос в Disord, то вот тут есть подробная инструкция, как это сделать и несколько программ на выбор.

Существует простая в использовании система воспроизведения музыки с поддержкой нескольких источников, включая SoundCloud и YouTube. Социальные функции, такие как игры, поиск изображений и команды шуток, также помогут сделать ваш сервер немного более ярким.

Имея сотни доступных команд, на сервере Pancake Disord найдется что-то для каждого.

7 лучших ботов Discord для улучшения вашего сервера 8

Заранее спасибо! Все собранные средства будут пущены на развитие сайта. Поддержка проекта является подарком владельцу сайта.

Читайте также: