Как указать роль в вебхуках Discord

Обновлено: 21.11.2024

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

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

Если вы хотите прочитать об использовании веб-перехватчиков через API без discord.js, вы можете прочитать об этом здесь

Боты, как обычно, получают сообщения веб-перехватчика в текстовом канале. Вы можете определить, отправил ли сообщение веб-перехватчик, проверив, не равен ли Message.webhookId null . В этом примере мы возвращаем значение, если веб-перехватчик отправил сообщение.

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

открыть в новом окне. Это вернет обещание, которое будет преобразовано в набор веб-перехватчиков.

открыть в новом окне коллекции, чтобы получить вебхук.

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

Вы также можете передать только URL:

Вы можете создавать веб-перехватчики напрямую через клиент Discord. Перейдите в «Настройки сервера», и вы увидите вкладку «Интеграции».

Если вы уже создали веб-перехватчик, вкладка веб-перехватчиков будет выглядеть так: вам нужно будет нажать кнопку View Webhooks.

Оказавшись там, нажмите кнопку «Создать веб-перехватчик/Новый веб-перехватчик»; это создаст вебхук. Отсюда вы можете редактировать канал, имя и аватар. Скопируйте ссылку, первая часть — идентификатор, а вторая — токен.

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

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

Пример использования WebhookClient:

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

открыть в новом окне, чтобы получить сообщения, ранее отправленные Webhook.

открыть в новом окне, чтобы редактировать сообщения, ранее отправленные Webhook.

открыть в новом окне, чтобы удалить сообщения, ранее отправленные Webhook.

Если вы хотите сравнить свой код с кодом, который мы уже создали, вы можете просмотреть его в репозитории GitHub здесь

Эта фиксация не принадлежит ни к одной из веток в этом репозитории и может принадлежать ответвлению за пределами репозитория.

3 участника

Пользователи, внесшие вклад в этот файл

  • Открыть с рабочего стола
  • Просмотреть в необработанном виде
  • Копировать исходное содержимое Копировать необработанное содержимое

Копировать необработанное содержимое

Копировать необработанное содержимое

Веб-перехватчики (часть 2)

В предыдущей главе мы рассмотрели, как создавать веб-перехватчики с помощью кода, который, если честно, не очень полезен, в этой главе мы продолжим с того места, на котором остановились, и фактически будем использовать созданные нами веб-перехватчики в коде бота. .

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

У нас есть два варианта: либо создать отдельного бота, либо добавить его в существующий бот. Для целей этого руководства я добавлю код в отдельный бот, но как добавить его к существующему боту должно быть довольно понятно.

Давайте возьмем пример кода.

Теперь у нас есть пример кода, мы хотим взять наш ранее созданный веб-перехватчик и получить идентификатор и токен из URL-адреса, давайте соберемся вместе!

Если вы хотите начать с определения веб-перехватчика в начале кода, не забудьте заменить идентификатор веб-перехватчика и токен веб-перехватчика соответствующими значениями.

Теперь эта часть будет немного длинной; но внутри сообщения, которое вы хотите проверить на наличие упоминаний, теперь чем больше упоминаний вы сможете зафиксировать, тем лучше, например, есть упоминания @everyone и @here, упоминания ролей и прямые упоминания.

В официальной документации есть замечательное логическое значение Message.mentions.has(data), эти данные могут быть GuildChannel , User или Role Object или строкой, представляющей идентификатор любой из ранее упомянутых вещей, поэтому внутри события сообщения создайте новый оператор if .

Хорошо, это относится к прямым упоминаниям, но как насчет упоминаний @everyone , @here и ролей?

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

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

Проверка message.guild гарантирует, что нас упомянули в канале гильдии, теперь следующий шаг немного сложнее, в основном код проверяет любые роли, которые были упомянуты, и фильтрует их по нашим собственным ролям, если таковые имеются. из них совпадают (сделав размер больше 0), он вернет true.

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

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

Хорошо, теперь мы закончили с условиями для веб-перехватчика, давайте на самом деле использовать веб-перехватчик! Доведите свой код до конца (или скопируйте код ниже).

<р>. и добавьте следующую строку ниже, где написано // Дополнительный код

Теперь давайте заполним все данные, необходимые для работы (идентификатор и токен веб-перехватчика, а также ваш идентификатор пользователя)

Этот веб-перехватчик давно удален.

Теперь попросите кого-нибудь упомянуть вас!

Если все в порядке, проверьте канал, для которого вы установили веб-перехватчик, и вы должны увидеть что-то вроде этого.

В основном это все, что касается этого руководства, но вы можете оживить уведомление вебхука, захватив, кто упомянул вас, на каком канале/гильдии вы были упомянуты и какой контент (в случае удаления).

В главе 3 я расскажу о сторонних веб-сайтах, таких как Zapier и IFTT, которые позволяют расширить доступ к веб-перехватчикам, включая Facebook, Twitter, GMail и т. д.!

КАК ИСПОЛЬЗОВАТЬ ВЕБХУКИ DISCORD ДЛЯ ПОЛУЧЕНИЯ УВЕДОМЛЕНИЙ ДЛЯ ВАШЕГО .
ИСХОДЯЩИЕ ВЕБХУКИ – DISCORD
ПОЛЬЗОВАТЕЛЬСКИЕ ВЕБ-ХУКИ | УЧЕБНЫЙ ЦЕНТР ПОЧТАЛЬНИК
ВЕБХУКИ, ИНТЕГРАЦИЯ DISCORD | ИНТЕГРОМАТ
Я ПЫТАЮСЬ СОЗДАТЬ ВЕБХУК, КОТОРЫЙ ОБНОВЛЯЕТ СООБЩЕНИЕ .
ПОДКЛЮЧИТЕ DISCORD К ИНТЕГРАЦИИ ВЕБХУКА ЗА 2 МИНУТЫ .

Полное руководство по использованию Discord Webhooks. Форматирование текста Discord Markdown. Дискорд теги. 2 способа: Использование режима разработчика Пользовательские настройки Внешний вид Режим разработчика включен, и теперь вы можете найти идентификатор любого пользователя, сообщения, канала или сервера, щелкнув правой кнопкой мыши идентификатор копирования
From birdie0.github.io

ПРОСТОЕ РУКОВОДСТВО ПО ВЕБХУКУ (TWITTER -> DISCORD С ИСПОЛЬЗОВАНИЕМ IFTTT .
КАК СОЗДАТЬ ВЕБХУК В DISCORD – YOUTUBE
WEBHOOK REDDIT ДЛЯ DISCORD : DISCORDAPP
DISCORD-WEBHOOK · PYPI
Сейчас вы сидите на диете или просто хотите контролировать состав пищи и ингредиенты? Мы поможем подобрать рецепты по способу приготовления, питательности, ингредиентам.

Вам тоже понравится

Обжаренный в сахаре лосось со сливочным соусом

Ирландская сливочная помадка Bailey's

Пряный рис и капуста

Чилийский морской окунь Мохо и не только

Тушеная курица на закате

1 Step Chipotle Hummus

Лучший рецепт салата из капусты

Часто задаваемые вопросы

Перейдите к каналу Discord, который вы хотите использовать, и щелкните значок шестеренки, чтобы изменить канал: 2. Нажмите «Веб-перехватчики» в меню слева, затем нажмите синюю кнопку «Создать веб-перехватчик» справа. 3. Дайте своему боту веб-перехватчика имя, например «бот Reddit post», и выберите канал, на который он будет публиковать сообщения.

Вы можете использовать веб-перехватчики Discord для отправки любого слияния кода или отправки обновлений из вашего репозитория GitHub в текстовый канал на вашем сервере Discord. Скопируйте целевой URL-адрес веб-перехватчика. Как упоминалось выше, вы можете скопировать URL-адрес веб-перехватчика в список веб-перехватчиков в настройках вашего сервера.

Шаг 1. Создайте веб-перехватчик. Для начала перейдите в настройки своего сервера Discord и перейдите на вкладку «Веб-перехватчик». Это должно быть пустым для вас, если вы еще не создали веб-перехватчик. Нажмите «Создать вебхук», чтобы начать. Здесь вы можете изменить имя и аватарку бота, а также канал, на который он будет отправлять объявления.

Найдите канал Discord, на который вы хотите отправлять твиты. В настройках этого канала найдите параметр Webhooks и создайте новый webhook. Примечание. НЕ сообщайте этот URL-адрес публике. С его помощью любой желающий может публиковать сообщения на этом канале, даже не находясь на сервере.

Это документация по новому приложению Discord. Вот документация по устаревшему приложению Discord (устаревшему).

Модули Discord позволяют создавать, обновлять, перечислять и/или удалять каналы, сообщения каналов, реакции, веб-перехватчики в вашей учетной записи Discord.

Аккаунт Discord

Поля диалогового окна модуля, выделенные жирным шрифтом (в сценарии Make , а не в этой статье документации), являются обязательными!

Подключение Discord к Make

Чтобы подключить учетную запись Discord к Make , вам необходимо создать сервер и каналы.

Войдите в свою учетную запись Discord и создайте сервер.

Введите сведения о сервере и нажмите Создать .

Перейдите в раздел «Создать» и откройте диалоговое окно «Создание подключения» модуля Discord.

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

Соединение установлено.

Сообщения

Отправить сообщение

Отправляет сообщение.

Подключение

Контент

Введите текст сообщения.

moduleWebhookUrl

Введите URL-адрес веб-перехватчика, чтобы опубликовать сообщение.

Опубликовать сообщение со встроенными объектами

Отправляет сообщение со встроенными объектами.

Подключение

Контент

Введите текст сообщения.

Массив встроенных объектов

Введите сведения о встроенных объектах.

Отправить сообщение с файлом

Отправляет сообщение с прикрепленным файлом.

Подключение

Контент

Введите текст сообщения.

Исходный файл

Выберите файл, который нужно прикрепить к сообщению, которое вы хотите опубликовать:

Dropbox — Получить файл

Получить сообщение

Возвращает определенное сообщение в канале.

Подключение

Идентификатор канала

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

Идентификатор сообщения

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

Удалить сообщение

Удаляет сообщение.

Подключение

Идентификатор канала

Введите идентификатор канала, сообщение которого вы хотите удалить.

Идентификатор сообщения

Введите идентификатор сообщения, которое вы хотите удалить.

Список сообщений канала

Возвращает сообщение для канала.

Подключение

Идентификатор канала

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

Ограничение

Максимальное количество сообщений, которые Make должен вернуть в течение одного цикла выполнения сценария.

Просмотр сообщений канала

Срабатывает, когда на канал публикуется новое сообщение.

Подключение

Идентификатор канала

Выберите идентификатор канала, сообщение которого вы хотите просмотреть.

Ограничение

Максимальное количество сообщений канала, которые Make должен вернуть в течение одного цикла выполнения сценария.

Каналы

Создать канал гильдии

Создает новый канал для гильдии.

Подключение

Имя

Введите название канала гильдии.

Введите

Выберите тип канала гильдии:

Тема

Введите название темы для канала гильдии.

Разрешение перезаписывается

Добавить перезапись разрешений для канала:

Идентификатор роли Выберите идентификатор роли пользователя.

Разрешить набор битов разрешений Введите количество разрешенных битов разрешений.

Установлен бит отказа в разрешении Введите номер бита разрешения, установленного для отказа.

Позиция

Введите позицию сортировки канала гильдии.

Ограничение скорости на пользователя

Введите количество секунд, которое пользователь должен ждать перед отправкой следующего сообщения в канал гильдии.

Идентификатор родителя

Выберите родительский идентификатор канала гильдии:

Канал NSFW

Выберите Да, если этот канал гильдии является NSFW (не подходит для Wumpus).

Дополнительную информацию о NSFW см. в разделе Каналы и контент NSFW.

Создать приглашение на канал

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

Подключение

Идентификатор канала

Выберите идентификатор канала, для которого вы хотите создать приглашение.

Максимальный возраст

Введите максимальную продолжительность, по истечении которой приглашение истечет.

Введите продолжительность приглашения в секундах до истечения срока действия или 0, чтобы никогда. Примечание. 86400 – это 24 часа

.

Максимальное количество использований

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

Введите ноль для неограниченного количества.

Это временно?

Выберите, если это приглашение на канал дает временное членство.

Уникален?

Укажите, можно ли использовать приглашения на этот канал только один раз. Если этот флажок установлен, вы не сможете создать похожее приглашение на канал.

Изменить канал

Обновляет настройки канала.

Подключение

Идентификатор канала

Введите идентификатор канала, который вы хотите изменить.

Имя

Введите новое название канала.

Введите

Выберите тип канала.

Тема

Введите тему канала.

Позиция

Введите позицию сортировки канала гильдии.

Ограничение скорости на пользователя

Введите время в секундах, которое пользователь должен ждать перед отправкой другого сообщения (0-21600).

Идентификатор родителя

Выберите родительский идентификатор канала гильдии:

Канал NSFW

Выберите Да, если этот канал гильдии является NSFW (не подходит для Wumpus).

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