Команда say discord js
Обновлено: 21.11.2024
В этой главе предполагается, что вы ознакомились с главой "Начало работы" и код вашего бота скомпилирован. Кроме того, я должен повторить: если вы не понимаете код, который собираетесь увидеть, кодирование бота может быть не для вас. Перейдите в CodeAcademy и изучите Javascript.
В этой главе я проведу вас через разработку простого бота с некоторыми полезными командами. Мы начнем с примера, созданного в первой главе:
Прежде чем мы углубимся в дальнейшее кодирование, нам нужно сначала понять, что такое Event.
Это событие:
В частности, это событие в discord.js, но оно похоже на то, как другие API обрабатывают события. Это событие срабатывает каждый раз, когда бот видит сообщение. Сюда входят все каналы, к которым у бота есть доступ, а также любые прямые или личные сообщения, которые он получает. Если кто-то отправляет 5 сообщений на канал, это событие срабатывает 5 раз.
Почему это важно? Ну, если вы собираетесь использовать своего бота на большом сервере или если вы хотите, чтобы он был на нескольких серверах, это становится большим количеством событий, запускаемых в каждый момент. Я не хочу слишком много говорить об оптимизации, но хочу сказать одно: используйте одну функцию обработки событий для каждого события.
Discord.js содержит большое количество событий, которые могут запускаться в определенных ситуациях. Например, событие готовности срабатывает, когда бот подключается к сети. Событие guildMemberAdd запускается, когда новый пользователь присоединяется к серверу, совместно используемому ботом. Полный список событий см. в разделе События в документации. Мы вернемся к некоторым из них позже в этой главе.
Одна из первых полезных вещей, которую вы, возможно, захотите узнать, — это как добавить вторую команду вашему боту. Хотя есть способы лучше, чем те, которые я собираюсь вам показать, пока этого будет достаточно.
С этого момента я буду опускать код, который требует и инициирует discord.js, и сосредоточусь на конкретных частях кода.
Сохраните код и перезапустите бота. Для этого используйте CTRL+C в командной строке и повторно запустите node index.js. Да, есть лучшие способы перезагрузить код, как вы увидите далее в этой книге.
Вы можете протестировать свою новую команду, сказав foo в канале, которым вы делитесь с ботом. Вы также можете подтвердить, что ping по-прежнему возвращает pong !
Вы могли заметить, что многие боты реагируют на команды с префиксом. Это может быть восклицательный знак (!), точка (.), вопросительный знак (?) или другой символ, но с введением косой черты настоятельно не рекомендуется использовать / . Но это полезно по двум причинам.
Во-первых, если вы не используете уникальный префикс и имеете более одного бота на сервере, оба будут отвечать на одни и те же команды. На серверах разработчиков ввод !help приводит к потоку ответов и личных сообщений, чего следует избегать.
Во-вторых, в приведенном выше примере мы отвечаем, когда сообщение начинается с трех символов foo . В его текущем состоянии это означает, что следующее предложение вызовет ответ бота: дурак, ты еще не слышал обо мне в последний раз!. Да, это странный пример, но он все еще актуален — скажите это на канале вашего бота, и он ответит.
Чтобы обойти это, мы будем использовать префикс, который будем хранить в переменной. Таким образом мы получаем префикс, а также возможность менять его для всех команд в одном месте. Вот пример кода, который это делает:
Изменения в коде по-прежнему просты. Давайте пройдемся по ним:
- константный префикс = "!"; определяет префикс как восклицательный знак. Конечно, вы можете изменить его на что-то другое.
- Строка if (!message.content.startsWith(prefix)) return; это небольшая оптимизация, которая гласит: «Если сообщение не начинается с моего префикса, прекратите то, что вы делаете». Это предотвратит работу остальных функций, благодаря чему ваш бот станет быстрее и быстрее откликнется.
- Команды изменились, поэтому используйте этот префикс, при котором startWith(\ $ping`) будет запускаться только тогда, когда сообщение начинается с !ping`.
Второй момент так же важен, как наличие одного обработчика событий messageCreate. Допустим, бот получает сотню сообщений каждую минуту (не большое преувеличение для популярных ботов). Если функция не обрывается в начале, вы обрабатываете эти сотни сообщений в каждом из ваших условий команды. Если, с другой стороны, вы обрываете, когда префикса нет, вы экономите все эти циклы процессора для лучших вещей. Если команды составляют 1 % ваших сообщений, вы экономите 99 % вычислительной мощности.
Хорошо, извините, я немного вру. Это не 99%, это преувеличение. Однако правда, что вы значительно экономите на мощности процессора и оперативной памяти.
Мы почти закончили с базовым ботом. И последнее, о чем я хочу поговорить: боты отвечают друг другу. Давайте на мгновение представим, что у вас есть два бота на вашем сервере, и каждый из них может ответить на одну и ту же команду с префиксом !помощь . Но когда эта команда вызывается, она отвечает: !help команды: введите !help, а затем один из следующих, чтобы увидеть подробности: ping , foo .
Теперь один человек набирает !help в канале, и оба бота отвечают. Но они также увидят, как другой бот произносит команды !help: [. ] , увидят это как просьбу о помощи, ответят друг другу. в бесконечном цикле. Чтобы этого не произошло, мы можем добавить второе условие в наш обработчик события сообщения, прямо под тем, которое проверяет префикс:
Это условие содержит оператор ИЛИ ( || ), который выглядит следующим образом:
Если префикс отсутствует или автор этого сообщения — бот, остановить обработку. Это включает и самого бота.
И теперь у нас есть бот, который реагирует только на 2 команды и не тратит силы на то, чтобы понять что-то еще. Это полноценный базовый бот? Конечно! Итак, давайте закончим эту страницу здесь, а затем мы рассмотрим некоторые новые концепции.
Полный код бота теперь будет таким:
Каждый раз, когда я вижу этот SuperSecretBotTokenHere , я немного съеживаюсь. Видите ли, не рекомендуется иметь токены и элементы аутентификации в вашем коде, это действительно должно быть в отдельном файле! Перейдите к разделу Добавление файла конфигурации, и давайте сделаем это.
независимо от Undefined on 14 января 2021 г. Пожертвовать комментарий
javascript от Lime, 21 июня 2020 г. Комментарий
Любые ответы, связанные с «discord.js say command»
- Кик-команды discord.js
- Как создать команду, которая получает атрибуты в Discord в js
- discord.js кикнуть пользователя
- discord.js сказать команду встроить
- Бот произносит команду discord.js
- команда discordjs сказать
- причина discord.js
- команда отключения звука discord.js v12
- discord.js как выгнать пользователя
- команда discord js kick
- упоминание discord js
Любые запросы, связанные с «discord.js say command»
- команда discord.js сказать
- полный бот discord.js
- задержка ботов discord js
- команда ping discord.js
- задержка бота discord.js
- пример бота discord.js v12
- простой бот discord.js с командами
- команды ping discord js github
- примеры дискорд-ботов
- index.js сообщение
- Бот discord go -golang
- бесплатно закодировать бота Discord на js
- пример бота discord js
- задержка discord.js
- команда discord js ping для бота
- стартовый код discord.js
- информация о ботах для разногласий по javascript
- пример команды Discord бота
- зачем помещать ./../folder/ в discord.js
- простой код бота discord.js
- discord js получить имя бота
- discord.js bot github 10 команд
- создать /commands discord.js
- как проверить, находится ли ваш бот в сети discord js
- задержка бота discord.js
- discord.js message.createdtimestamp
- пример кода бота для разногласий
- команды математического бота discord.js v 11.6.4
- кодирует дискорд-бота
- настройки бота discord.js
- как создать обработчик команд с префиксом discord.js
- сообщение бота управления ботом discord js
- команды бота index.js
- информация о ботах javascript discord
- discord.js отправляет та же команда
- как узнать задержку бота в discord.js
- каталог discord nodejs
- как читать команды в другом файле в discord js
- как получить задержку бота в discord.js
- получить данные о задержке ботов
- задержка бота discord.js
- расширенный обработчик команд discord.js
- Бот discord.js github 10commands
- выполнять команды из другого файла discord.js
- многошаговые команды discordjs
- основные файлы Discord-бота
- создать файл bot.js через командную строку
- client.ws.ping discord.js
- код для бота для поиска указанной работы discord.js 12
- фрагмент discord js для входа с токеном
- полный код Discord-бота
- команда discordjs ping
- discordjs v1.12.0, на скольких серверах находится бот]
- команда ping discord js
- discord.js пинг мс
- команда удаления discord.js
- задержка API discord.js
- discord читать текст вслух
- команда discordjs сказать
- преобразование текста в речь для голосового чата Discord
- как получить голосовой ИИ в раздоре
- включить tts в раздоре
- скажи дискорд
- командный бот Discord Say
- как получить реальный пинг в боте discord.js
- получить пинг js для бота
- идеальный бот discord.js
- бесплатный шаблон бота discord.js
- как я могу заставить бота делать что-то на каждом сервере в discord.js
- получить клиент Discord из обычного скрипта js
- bot.on('сообщение', (msg) =><>)
- discord.js сервер бота
- Бот discord.js произносит команду
- как заставить discord.js пинговать кого-то
- простой бот discord.js
- discord js запускает код, когда бот присоединяется
- пример бота discord js node версии 12
- discord js вызывает бота$
- произнести сообщение без Discord JS
- discord.js пингует моих ботов
- node discordjs требует файл
- бот для разногласий index.js
- бесплатная игра discord.js
- пример бота для дискорда
- базовый бот discord.js
- пример кода бота для разногласий
- информация о боте discord.js
- как заставить Discord-бота говорить, что вы печатаете
- как сделать команду сказать discord.js
- базовый бот discord js
- консольные команды Discord-бота
- пример бота discord js
- скрипт бота в дискорде
- Формат файла index.js для Discord-бота
- discord bot js как выполнять команды с помощью терминала
- как получить голос искусственного интеллекта в голосовом чате Discord
- сообщение index.js
- discord tts сообщения
- токен бота discord js
- код бота discord.js
- пример бота discord.hjs
- пингование API Discord
- кава-команды discord.js
- пинг discord.js
- сервер github приветствует discord.js
- discord.js bot.on
- файлы бота разногласий
- discord.js получает доступ к клиенту из другого файла
- Бот Discord JavaScript запускает discord.js
- сообщение с discord.js на github
- токен бота discordjs 12
- запустить Discord js
- пример бота для разногласий index.js
- скрипт для бота в дискорде
- выполнить дискорд .js
- скрипты ботов JavaScript
- псевдонимы discord.js не сохраняются на карте
- папка доступа к discord.js
- как получить задержку ботов разногласий discord.js
- discord.js меняет имя файла index.js
- Руководство по команде ping
- как получить задержку бота discord.js
- discord.js bot.ms
- dicord.js содержит число вроде 1 000 000
- как создавать команды discord.js
- команда, обслуживающая пользователя discord js
- средняя загрузка discord.js
- как закодировать команды загрузки для Discord-бота
- получить данные о задержке ботов в discord.js
- базовый дискорд-бот
- discord.js пингует ботов
- пингование API Discord
- Бот для проверки связи discord.js
- задержка разногласия js
- пинговать Discord API
- discord.js v12 получает пинг
- discordjs 11 простая команда
- команда ping discord.js
- разногласия по ттс
- как заставить Discord-бота читать вслух то, что вы печатаете
- аудио в дискорде
- как создать команду /say discord
- команда tts в разногласиях
- произнести код команды discord
- команды Discord произносят сообщение
- как заставить бота сказать, что это неправильная команда
- message.createdtimestamp
- discordbot отправил ping
- как сделать команду dm без ping discord.js
- команда бота discord discord.js
- bot.on("сообщение")
- bot.on('сообщение'
- могу ли я сделать так, чтобы при использовании команды ping на другом сервере говорилось что-то вроде команды ping, выполненной discord.js
- простой код бота Discord js
- базовый код Discord-бота
- сообщение о присоединении к конфигурации discord.js
- как заставить бота discord.js пинговать сеть через 3 минуты github
- получение сообщения discord.js туда и обратно
- вызов бота discord js
- токен discord.js
- стартовый бот discord.js
- код бота в дискорде
- скажите команду discord.js
- бесплатные коды для ботов Discord
- сказать команду discord
- простой бот discord.js
- пропинговать discord.js v12
- бот. вс. пинг
- отличная консоль запуска discord.js
- бот по команде готовности
- задержка команды ping discord.js туда и обратно
- discord.js, как вернуться к файлу
- Пинг discord.js не работает
- команда игры для бота discord js
- как преобразовать текст в речь в голосовом чате Discord
- пример бота discord.js
- задержка discord.js
- загрузить другой файл js discord.js
- полный бот Discord js
- отметка времени создания discord.js
- простой бот discord js
- как заставить чат говорить в раздоре
- бот Discord произносит команду
- команды бота index.js
- как узнать задержку бота в discord.js
- полный файл discord.js
- обслуживание пользователей discord js
- discord.js получает доступ к константе клиента из другого файла
- базовый бот Discord js
- command.execute discord.js
- команды discord.js
- как получить задержку в discord.js
- пример бота с командой index.js
- discord.js как писать от бота
- простой командный бот Discord
- простой обработчик команд discord.js
- discord.js получает задержку бота
- Подкоманда discord.js
- задержка ботов discord js
- Бот с задержкой discord.js
- получить задержку бота в discord.js
- как получить задержку Discord js
- команда задержки в discord.js
- скажите discord.js
- пример бота discord.js
- как проверить задержку бота в discord.js
- каталог discord.js
- discord.js получает количество пингов
- преобразовать речь в текст
- пропинговать дискорд js
- сообщения ping discord.js
- discord js, как получить задержку бота
- discord.js обнаруживает пинг
- команда ping discord.js v12
- шаблон бота discord js 12
- команда удаления discord.js
- команда discord js bab
- как сделать звук тт в дискорде
- включить дискорд tts
- как сделать голосовое сообщение разногласия
- как делать tts-сообщения в разногласиях
- как заставить бота в дискорде говорить
- команда discord для произнесения сообщений
- сказать команду Discord бот
- пример бота discord.js
- простой однофайловый бот discord js
- проверка кода discord.js
- базовый бот discord.js
- имя бот-сервера discord js
- как проверить код ботов
- команда index.js discord.js
- discord.js получает сервер бота
- проверьте, работает ли токен бота discord.js
- получить пинг discordjs
- индекс discord.js
- discord.js bot.once
- файлы бота discord js
- пример бота discord js node версии 14
- бот находится на серверах discord js
- API-бот пингует discord.js
- discord js, как получить исходный код бота
Зарегистрируйтесь, чтобы голосовать и добавлять примеры кода. Присоединяйтесь к нашему сообществу разработчиков, чтобы улучшить свои навыки разработки и программировать как босс!
Помогите нам улучшить наши примеры кода, зарегистрировавшись, чтобы проголосовать и добавить ответы. Присоединяйтесь к нашему сообществу разработчиков, чтобы улучшить свои навыки разработки и программировать как босс!
Продолжая, я подтверждаю, что прочитал и согласен с Условиями использования и Политикой конфиденциальности Greppers.
независимо от Undefined on 14 января 2021 г. Пожертвовать комментарий
Любые ответы, связанные с «discordjs say command»
- стартовый код discord.js
- Кик-команды discord.js
- Как создать команду, которая получает атрибуты в Discord в js
- discord.js кикнуть пользователя
- discord.js сказать команду встроить
- Бот произносит команду discord.js
- Этот командный сервер discord.js
- discord.js как выгнать пользователя
- как сделать команду discord.js 8 ball
- команда discord js kick
- команда discord.js сказать
Любые запросы, связанные с «discordjs say command»
- команда discord.js сказать
- скажите команду discord.js
- бот Discord произносит команду
- включить tts в раздоре
- команда discord для произнесения сообщений
- сказать команду Discord бот
- как заставить бота в дискорде говорить
- как сделать звук тт в дискорде
- как сделать голосовое сообщение разногласия
- включить дискорд tts
- как создать команду /say discord
- сказать команду discord
- как преобразовать текст в речь в голосовом чате Discord
- discord tts сообщения
- команда tts в разногласиях
- скажи дискорд
- командный бот Discord Say
- аудио в дискорде
- как делать tts-сообщения в разногласиях
- как заставить Discord-бота читать вслух то, что вы печатаете
- разногласия по ттс
- как заставить Discord-бота говорить, что вы печатаете
- как заставить чат говорить в раздоре
- как получить голос искусственного интеллекта в голосовом чате Discord
- преобразовать речь в текст
- произнести код команды discord
- команды Discord произносят сообщение
- как получить голосовой ИИ в раздоре
- преобразование текста в речь для голосового чата Discord
- команда discordjs сказать
- discord читать текст вслух
Зарегистрируйтесь, чтобы голосовать и добавлять примеры кода. Присоединяйтесь к нашему сообществу разработчиков, чтобы улучшить свои навыки разработки и программировать как босс!
Помогите нам улучшить наши примеры кода, зарегистрировавшись, чтобы проголосовать и добавить ответы.Присоединяйтесь к нашему сообществу разработчиков, чтобы улучшить свои навыки разработки и программировать как босс!
Продолжая, я подтверждаю, что прочитал и согласен с Условиями использования и Политикой конфиденциальности Greppers.
Далее приступим
Шаг 1. Настройка проекта
Создайте новую папку (убедитесь, что в имени папки нет пробелов) в вашей системе и откройте командную строку или Power Shell в папке.
Выполните команду npm init и заполните форму. Если вы не знаете, что делаете, оставьте все по умолчанию и введите свое имя, когда оно запросит автор .
После этого вы увидите новый файл с именем package.json в вашей папке.
Теперь используйте следующую команду для установки необходимых библиотек
Теперь вы увидите новую папку с именем node-modules в папке вашего бота, и вы готовы приступить к программированию бота.
Шаг 2. Запись файла index.js
Создайте новый файл в папке вашего бота с именем index.js и откройте его в своем любимом текстовом редакторе.
Теперь напишите следующий код в начале файла index.js.
Эти строки импортируют необходимые библиотеки для использования.
Далее напишите следующий код
Это создаст объект CommandoClient , который является расширением класса discord.js.Client , и установит владельцем бота себя, чтобы вы могли используйте только команды владельца, встроенные в Commando.
Теперь мы импортируем команды по умолчанию для нашего бота.
Теперь давайте создадим обработчик, который отображает сообщение в консоли, когда бот вошел в систему и готов к использованию.
Затем настройте поставщика настроек. Commando поставляется со встроенным поставщиком настроек sqlite, чтобы команды по умолчанию, такие как префикс , работали правильно.
В последнюю очередь войдите в бота
Проверка значений по умолчанию
Запустите бота с помощью команды node index в консоли.
Через некоторое время вы увидите сообщение, похожее на это: -
Вы также увидите, что ваш бот подключается к сети, поэтому его можно проверить.
Используйте команду справки, в моем случае это ==help
В ваших личных сообщениях отображается что-то вроде этого: -
Подробнее
группы: команды в боте-коммандос сгруппированы по категориям. команда group может быть использована для перечисления этих категорий.
включить/отключить: платформа Commando имеет встроенную функцию включения/отключения команд в разных гильдиях, эти команды выполняют свою работу.
загрузить/выгрузить: эти команды можно использовать для регистрации команд вне кода.
reload: эту команду можно использовать для перезагрузки команды после того, как вы внесли изменения в код, чтобы обновить ее.
help: встроенная функция справки (очень подробная).
префикс: Commando также имеет функцию изменения префикса по умолчанию на разных серверах, команда префикса помогает пользователям сделать это.
ping: делает именно то, что говорит справка.
eval: запускает код, переданный как расширение файла index.js, и возвращает результат (рекомендуется не использовать).
Эти команды встроены в коммандо.
Создание собственных команд
Сначала создайте папку с именем commands в корневом каталоге вашего бота.
Далее внесите в код следующие изменения
Это создаст новую группу Starter Commands для вашего бота, на которую можно ссылаться в коде по имени test, а также читать файлы в папке команд и рассматривать их как команды для бота.
В папке с командами создайте другую папку с именем test и внутри папки с тестами создайте файл с именем foo.js, поскольку первая команда будет простая команда foo-bar.
Откройте файл foo.js и измените его содержимое на
Подробнее
Первая строка импортирует предопределенный класс Command из Commando Framework.
Затем мы создали команду как расширение класса Command .
Конструктор запускается, как только наш index.js считывает этот файл. Внутри нашего конструктора мы устанавливаем основные сведения о нашей команде.
name, memberName: задайте имя команды.
псевдонимы: устанавливает, какие другие команды можно использовать для выполнения того же действия.
описание, подробности: опишите, что делает команда.
примеры: показывает пользователю пример использования команды.
группа: устанавливает, что наша команда будет частью какой группы команд.
Следующая часть — это метод запуска, он вызывается всякий раз, когда пользователь использует команду, параметр msg — это сообщение, отправляемое пользователем, типа CommandoMessage .
Мы заставляем нашего бота отвечать bar всякий раз, когда пользователь использует команду foo .
Наконец, module.exports = fooCommand экспортирует команду, делая ее доступной для чтения в нашем файле index.js.
Теперь давайте проверим нашу команду foo.
Запустите бота, используя индекс узла и используйте команду справки.
В конце меню справки вы увидите что-то новое
Давайте воспользуемся справкой о нашей команде, воспользуемся командой help foo. Вы должны увидеть что-то вроде: -
Давайте воспользуемся нашей командой, сейчас есть 4 способа сделать это.
- Используйте ==foo или ==f на сервере
- Используйте foo или f в личных сообщениях.
Вы увидите, что бот отвечает полосой, где бы вы ни использовали команду.
Теперь, когда мы закончили с одной командой, давайте создадим другую, которая будет принимать входные данные (аргументы) от пользователя.
Создайте новый файл с именем say.js в тестовой папке.
Напишите следующий код в файле say.js.
Давайте посмотрим, что нового!
- client_permissions: определяет список разрешений, которые вам не потребуются для правильной работы команды.
- args: определяет, какие аргументы должен ввести пользователь.
- ключ: определяет имя аргумента.
- подсказка: определяет, что скажет бот, если пользователь не предоставил аргумент
- type: определяет тип аргумента.
Давайте протестируем нашу команду say
Если вы воспользуетесь командой help сейчас, внизу вы увидите новую запись для команды say.< /p>Используйте справку перед использованием команды.
Вы должны увидеть что-то похожее на: -
Обратите внимание, как Commando подготовил формат для использования команды, поверьте мне, это удобная функция.
Используйте команду say сейчас без передачи каких-либо аргументов.
Вы увидите, что бот запрашивает текст, а также сообщение типа
Еще одна функция платформы Commando — отмена команд.
Вы можете либо сказать что-то, чтобы бот повторил это, либо подождать 30 секунд, чтобы отменить команду, либо сказать "Отмена" самостоятельно.
Вы также можете передать аргумент при использовании команды, как в примерах.
Проверка и регулирование
А теперь давайте подумаем, а что, если бы пользователь пытался отправить ссылки или спам на сервер с помощью нашей команды say?
Этого легко избежать, проверив команду say и убедившись, что в переданном аргументе нет ссылки.
Читайте также: