Как сделать вебхук Discord
Обновлено: 21.11.2024
В предыдущей статье мы использовали веб-интерфейс Discord для настройки веб-перехватчика на сервере Discord. Этот веб-перехватчик получал обновления коммитов от GitHub и публиковал информацию в виде сообщения на назначенном ему канале.
В этом руководстве мы реализуем ту же настройку; однако на этот раз мы будем использовать Discord API для настройки нашего веб-хука. Discord API предлагает большую гибкость для интеграции с Discord, позволяя разработчикам взаимодействовать с Discord в рамках автоматизированных сценариев и рабочих процессов.
Если вы еще не знакомы с веб-перехватчиками Discord и хотели бы узнать о них все и о том, как они работают, прочитайте эту статью, прежде чем продолжить.
В восторге от использования Discord API для настройки веб-перехватчиков? Приступим.
Учебное пособие. Как настроить веб-перехватчики Discord с помощью интерфейса администратора
Узнайте, как создавать, редактировать и удалять веб-перехватчики разногласий с помощью страницы настроек с помощью подробного пошагового примера
Как начать работу с веб-перехватчиками Discord
Узнайте, что делают веб-перехватчики Discord, где найти веб-перехватчики Discord, как добавить веб-перехватчики Discord и многое другое!
Настройка получения обновлений фиксации GitHub в каналах Discord
Прежде чем мы углубимся в реализацию нашей интеграции GitHub и Discord, давайте уделим несколько секунд рассмотрению требований и шагов, которые необходимо предпринять для достижения интеграции.
Для начала необходимы следующие аккаунты:
Теперь, когда они у вас есть, вот шаги, которые вы предпримете для создания потока связи между GitHub и Discord с помощью веб-перехватчиков, созданных с помощью API Discord:
- Создайте сервер Discord и настройте канал для получения обновлений фиксации с GitHub
- Создайте приложение Discord и добавьте в него бота с необходимыми разрешениями для создания веб-перехватчиков.
- Создайте веб-перехватчик Discord с помощью Discord API, выполнив аутентификацию с помощью токена Bot
- Создайте подключение к Hookdeck для приема веб-перехватчиков.
- Создайте веб-перехватчик GitHub, используя URL-адрес веб-перехватчика из Hookdeck.
- Проверьте подключение
Звучит просто? Давайте приступим!
Создание сервера и канала Discord
Первый шаг — создать сервер Discord и добавить на него канал. Чтобы создать сервер, нажмите кнопку плюс (+) в боковом меню интерфейса Discord. Затем следуйте указаниям мастера создания сервера (Создать свой → Для меня и моих друзей) и введите имя для своего сервера, как показано ниже:
Нажмите кнопку "Создать", чтобы завершить процесс.
Затем добавьте канал на свой сервер, нажав значок + рядом с меткой ТЕКСТОВЫЕ КАНАЛЫ в меню сервера. Когда появится диалоговое окно для ввода имени вашего канала, введите значение webhooks-channel, как показано ниже, и нажмите кнопку «Создать канал».
Теперь, когда вы создали канал, вам нужен идентификатор канала. Идентификатор канала можно получить только в режиме разработчика, поэтому вы должны щелкнуть значок шестеренки «Настройки пользователя» в левом нижнем углу экрана и нажать «Дополнительно» в боковом меню. Здесь вы можете включить режим разработчика, как показано ниже:
Включив режим разработчика, вы можете вернуться на свой сервер Discord и щелкнуть правой кнопкой мыши канал webhooks-channel, чтобы скопировать идентификатор канала (щелкните «Копировать идентификатор» в контекстном меню).
Создание бота Discord
Следующий шаг — создать приложение Discord и добавить в него бота Discord. Бот Discord (или учетная запись бота Discord) — это особый тип учетной записи пользователя Discord, предназначенный для автоматизации. Учетные записи ботов имеют полный доступ ко всем маршрутам API без использования токенов-носителей, вместо этого используется токен бота.
Чтобы создать приложение Discord, перейдите на страницу приложений и нажмите кнопку «Новое приложение». Введите имя для своего приложения, как показано ниже:
Нажмите «Создать», чтобы завершить процесс создания приложения.
После создания приложения перейдите в OAuth2 → Общие, чтобы скопировать идентификатор клиента. Этот идентификатор понадобится позже, поэтому храните его в легкодоступном месте.
Далее вам нужно добавить бота в приложение. Нажмите «Бот» в меню приложения, а затем нажмите кнопку «Добавить бота» (нажмите «Да, сделайте это!» в запросе подтверждения). На странице бота скопируйте токен бота, как показано ниже:
Затем прокрутите вниз до раздела «Разрешения для ботов» и выберите «Управление веб-перехватчиками», как показано ниже:
Это разрешение необходимо для создания веб-перехватчиков с помощью Discord API. Нажмите кнопку Копировать рядом с полем РАЗРЕШЕНИЯ INTEGER. Это целое число разрешений требуется для аутентификации бота.
Чтобы аутентифицировать бота для доступа к Discord API, введите в браузере следующий URL-адрес (не забудьте заменить client_id и разрешения_integer своими значениями):
Подробнее о процессе авторизации бота можно найти здесь.Этот URL-адрес проведет вас через процесс авторизации, где вы авторизуете бота с необходимыми разрешениями, как показано ниже:
Может также потребоваться проверка робота, но как только вы ее пройдете, вы получите сообщение о том, что ваш бот теперь авторизован.
Создание веб-перехватчика Discord с помощью Discord API
Теперь давайте создадим веб-перехватчик Discord с помощью Discord API. Введите адрес API веб-перехватчиков Discord, показанный ниже, в качестве адреса конечной точки:
Не забудьте заменить channel_id идентификатором вашего канала.
Выберите метод запроса POST и добавьте заголовок авторизации в следующем формате:
bot_token — это токен, который вы скопировали со своей страницы бота в Discord.
Последний элемент, который необходимо добавить, — это тело запроса. Используя тип содержимого application/json , отправьте следующее тело запроса:
Свойство name — это имя, которое вы хотите присвоить веб-перехватчику Discord, и это единственное обязательное свойство. Подробнее о создании веб-перехватчиков с помощью API см. здесь.
Теперь отправьте запрос, и вы получите успешный ответ, как показано ниже:
Когда я впервые создал веб-перехватчик с помощью API Discord, я заметил одну интересную вещь: не возвращался URL-адрес веб-перехватчика. Согласно определению объекта веб-перехватчика Discord, должен быть возвращен URL-адрес веб-перехватчика. Однако я заметил, что были возвращены идентификатор веб-перехватчика и токен веб-перехватчика (поля идентификатора и токена в ответе).
URL-адрес веб-перехватчика Discord имеет следующий формат:
Таким образом, вы можете легко создать URL-адрес веб-перехватчика, используя сведения из ответа API.
Настройка подключения в Hookdeck
Следующий шаг – создание подключения к веб-перехватчику в Hookdeck. Соединение Hookdeck помогает принимать запросы веб-перехватчиков, поступающие из GitHub, и асинхронно отправляет их в Discord, чтобы гарантировать, что ни один веб-перехватчик не будет удален в случае всплеска трафика веб-перехватчика. Это считается лучшей практикой для веб-перехватчиков в рабочей среде. Прочтите эту статью, чтобы узнать больше о рекомендациях по использованию веб-перехватчиков в рабочих средах.
Чтобы создать подключение к Hookdeck, перейдите в раздел «Подключения» на панели инструментов и нажмите кнопку «Создать». Заполните поля формы подключения, как указано ниже.
- Имя источника: my-github-repository
- Название места назначения: my-discord-channel
- Целевой URL:URL вашего веб-перехватчика Discord
- Набор правил: my-discord-ruleset
Заполненная форма показана ниже в качестве справки.
Нажмите кнопку "Сохранить", чтобы создать подключение.
Ваше подключение теперь отображается в списке подключений, как показано ниже:
Нажмите ссылку Копировать URL-адрес веб-перехватчика в источнике подключения, чтобы получить URL-адрес веб-перехватчика Hookdeck, как показано ниже:
Это URL-адрес веб-перехватчика, который вам понадобится для настройки веб-перехватчика GitHub.
Рекомендации по развертыванию веб-перехватчиков в рабочей среде
Из этой статьи вы узнаете, как настроить, масштабировать и устранить ошибки для развертывания веб-перехватчиков в рабочей среде.
Настройка репозитория GitHub для отправки коммитов в Discord
Следующий шаг — настроить веб-перехватчик в репозитории GitHub. Этот веб-хук будет запускаться каждый раз, когда запускается push-событие. Событие push запускается, когда в репозиторий GitHub делается новая фиксация.
Чтобы настроить веб-перехватчик GitHub, перейдите к репозиторию, который вы хотите использовать для этого руководства, затем выберите «Настройки» → «Веб-перехватчики» и нажмите кнопку «Добавить веб-перехватчик» на странице «Веб-перехватчики». Заполните форму веб-перехватчика GitHub следующим образом:
Оставьте остальные параметры в форме по умолчанию. Заполненная версия формы веб-перехватчика показана ниже.
Обратите внимание еще раз, чтобы добавить /github к вашему Hookdeck, так как это гарантирует, что Discord понимает, как анализировать полезную нагрузку, отправленную GitHub. Это может быть применимо не ко всем приложениям, которые вы хотите интегрировать с веб-перехватчиками Discord. Чтобы найти информацию о формате сообщений веб-перехватчиков Discord, ознакомьтесь с этим руководством. Вы также можете найти более подробную информацию об интеграции GitHub с Discord здесь.
Нажмите кнопку "Добавить веб-перехватчик", чтобы завершить процесс создания веб-перехватчика GitHub. GitHub автоматически инициирует запрос веб-перехватчика ping при создании нового веб-перехватчика. Вы можете проигнорировать этот запрос проверки связи и перейти к следующему шагу.
Тестирование уведомлений веб-перехватчиков Discord
Поскольку соединение между Discord и GitHub установлено через Hookdeck, пришло время протестировать поток связи. Отправьте новое обновление в свой репозиторий GitHub. После нажатия проверьте страницу «Подключения» на панели инструментов Hookdeck, где вы увидите событие, подобное приведенному ниже:
Нажав на событие, вы увидите подробные сведения о событии на экране справа. Однако для просмотра полной информации о событии необходимо щелкнуть значок стрелки в правом верхнем углу. На полной странице события вы можете просмотреть метаданные, заголовки и тело веб-перехватчика, как показано ниже:
Если вы ничего не знаете о JSON, потратьте немного времени на изучение структуры JSON.
Структура веб-перехватчиков
Прежде чем использовать веб-перехватчики, вы должны знать их структуру. Все перечисленные здесь элементы являются необязательными, но вам все равно необходимо использовать контент или встроенный объект хотя бы один раз. Это минимальное требование.
- имя пользователя: [строка] — если используется, оно переопределяет имя пользователя веб-перехватчика по умолчанию.
- avatar_url : [url-адрес изображения] — если используется, переопределяет аватар веб-перехватчика по умолчанию.
- content : [string] - простое сообщение, сообщение содержит (до 2000 символов)
- embeds : [массив] — массив встраиваемых объектов. Это означает, что вы можете использовать несколько тегов в одном теле
- .
- author : [object] — вставить объект автора
- name : [string] - имя автора
- url : [url сайта] - адрес автора. Если использовалось имя, оно становится гиперссылкой
- icon_url : [url изображения] — URL значка автора
- имя : [строка] - название поля
- value : [string] — значение поля
- inline : [bool] — если true, поля будут отображаться в одной строке, но их может быть не более 3 в одной строке или не более 2, если вы использовали эскиз.
- url : [url of image] - URL миниатюры
- url : [url of image] - URL изображения
- text : [string] — текст нижнего колонтитула, не поддерживает Markdown
- icon_url : [url изображения] — URL значка нижнего колонтитула
Пример вебхука
И как это выглядит
Аккаунт на IFTTT
Посетите IFTTT и создайте учетную запись (если у вас ее нет).
Вебхук в Discord
- Перейдите в настройки сервера -> Веб-перехватчики -> Создать веб-перехватчик.
- Установите имя, аватар и канал, на котором он будет размещен. Скопируйте URL веб-перехватчика. Не разделяют! Очень опасно!
- Нажмите "Сохранить", а затем кнопку "Готово".
Создание апплета
- Перейти в Мои апплеты -> Новый апплет
- Нажмите [+]это
- Выберите услугу . Теоретически вы можете использовать их все.
- Выберите триггер . Прочтите описание под каждым триггером и выберите нужный
- Заполните триггерные поля . Может быть больше одного шага. Ознакомьтесь с описаниями и примерами
- Нажмите [+], чтобы
- Выберите службу действий . Вам нужны вебхуки. Воспользуйтесь строкой поиска.
- Выберите действие . Выберите Сделать веб-запрос.
- Вставьте свой URL веб-перехватчика в поле URL
- Выберите метод POST
- Выберите тип содержимого приложения/json
- А теперь самое сложное™. Вам нужно создать тело JSON. Следуйте структуре, используйте ее как пример и не забывайте о здравом смысле. Нажмите кнопку + Ингредиент и введите Ингредиенты в соответствующие поля. Если что-то говорит URL, поместите его в "url":">" , если что-то говорит ImageURL , попробуйте поместить это в "image": >"> . Универсального решения не существует
- Нажмите «Создать действие», а затем «Готово».
- Готово!
- Не забудьте проверить тело JSON с помощью валидатора JSON. Если вы ничего не знаете, используйте один из них:
добавлен комментарий redacted-dev 30 сентября 2020 г.
действительно чертовски круто, спасибо!
blackdackota прокомментировал 15 февраля 2021 г.
Итак, как заставить сайт отправлять информацию на мой канал в разногласиях с помощью веб-перехватчика IFTTT?
Birdie0 прокомментировал 15 февраля 2021 г.
Итак, как заставить сайт отправлять информацию на мой канал разногласий с помощью веб-перехватчика IFTTT?
blackdackota прокомментировал 15 февраля 2021 г.
Birdie0 прокомментировал 15 февраля 2021 г.
@blackdakota поняла. Я проверил веб-сайт, и пока там нет API, единственный способ отправить его в Discord — это создать скрипт, который будет очищать страницу (при условии, что вам не нужно входить в систему, чтобы увидеть турнирную таблицу), создавать тело запроса и отправлять веб-хук, в противном случае я не могу придумать никаких других способов.
blackdackota прокомментировал 15 февраля 2021 г.
О, хорошо. Могу ли я сделать это, если для просмотра турнирной таблицы требуется вход в систему?
Birdie0 прокомментировал 15 февраля 2021 г.
@blackdakota, не совсем так. Остался только один способ, и он довольно сложный, без автоматизации (нужно запускать вручную) и в основном с запуском скрипта в консоли браузера, который будет извлекать значения со страницы и отправлять запрос.
blackdackota прокомментировал 15 февраля 2021 г.
Блин, ну ладно, спасибо за помощь.
rajada1 прокомментировал 4 марта 2021 г.
Я хочу удалить и обновить подобное сообщение, где находится message.id?
Birdie0 прокомментировал 4 марта 2021 г.
Идентификатор сообщения @rajada1 можно скопировать, щелкнув правой кнопкой мыши Discord (сначала включите режим разработчика). если вы можете обрабатывать ответы на запросы, вы можете добавить ?wait=true , что заставит ответ веб-перехватчика возвращать объект сообщения, который содержит идентификатор сообщения и другие данные.
rajada1 прокомментировал 5 марта 2021 г.
Спасибо за ответ, так получилось.
Но есть ли способ получить message.id через API?Birdie0 прокомментировал 5 марта 2021 г. •
Но есть ли способ получить message.id через API?
Для этого вам нужен бот, например используйте метод, который возвращает массив сообщений из канала и т. д.
rajada1 прокомментировал 5 марта 2021 г.
@rajada1
Что делать, если нужно проверить message.id через API?
Você precisa de bot para isso, como usar método que retorna matriz de mensagens do canal и т. д.
blackdackota прокомментировал 22 марта 2021 г. •
Итак, я немного изучил HTML и Python, когда в последний раз писал вам, и я работаю над созданием бота для того, о чем я говорил с вами в прошлый раз (оказалось, что вам не нужно входить в систему, чтобы увидеть турнирную таблицу). Я столкнулся с проблемой, хотя я не уверен, как решить. Когда я очищаю страницу, я не получаю полный код с веб-сайта.
Это мой код:
Это результат:
Процесс завершен с кодом выхода 0
Вы знаете, как это решить?
Birdie0 прокомментировал 22 марта 2021 г.
@blackdackota по выходным данным я могу сказать, что это страница, сгенерированная не на стороне сервера (в этом случае скрапинг будет работать), а на стороне клиента, так что это означает, что данные поступают из запросов API, после чего страница заполняется.
В инструментах разработчика -> вкладка запросов -> фильтровать по xhr, я вижу пару запросов, и один из них возвращает json с данными для таблицы лидеров.Вот пример ReqBin, там можно даже получить сгенерированный код для python и т.д. Структура запроса проста:
Ответ по данным пути -> фаза -> PhaseResults содержит все необходимые данные. Я рекомендую попробовать выполнить этот запрос с некоторыми из них, такими как Hoppscotch (онлайн-инструмент), Insomnia (устанавливается) или Postman (устанавливается), чтобы вы могли увидеть структуру и понять, как ее извлечь и форматировать для отправки в Discord.
В этой статье вы познакомитесь с веб-перехватчиками Discord, узнаете, что они делают, как работают и как их быстро настроить. Мы также рассмотрим пример использования и постараемся ответить на распространенные вопросы, которые разработчики задают, когда начинают работать с веб-перехватчиками в Discord.
Что делают вебхуки в Discord?
Возможно, вы работали с веб-перехватчиками других поставщиков, таких как GitHub, Shopify или CircleCI, или вы впервые работаете с веб-перехватчиками. В любом случае сначала необходимо понять роль веб-перехватчиков в Discord, поскольку роль веб-перехватчиков часто варьируется от платформы к платформе.
Веб-перехватчики Discord позволяют легко получать автоматические сообщения и обновления данных в канале Discord. Проще говоря, внешний источник информации может использовать веб-перехватчики Discord для передачи своей информации в канал Discord.
Это помогает повысить качество разговоров в Discord, поскольку можно получить больше информации благодаря интеграции с многочисленными внешними источниками с использованием технологии веб-перехватчиков Discord.
Предположим, например, что финансовый отдел использует Discord для общения и хочет, чтобы сводные отчеты о ежедневных продажах публиковались на их канале Discord в конце каждого рабочего дня. Эти записи могут находиться в специальном бухгалтерском приложении или в SaaS-приложении для управления платежами/подписками, таком как Chargebee, которое поддерживает отправку информации с помощью веб-перехватчиков. Затем команда может настроить автоматическую публикацию сообщений из этих внешних источников на свой канал Discord с помощью веб-перехватчиков Discord.
Единственным обязательным свойством полезной нагрузки веб-перехватчика является свойство content, значением которого является текстовое сообщение, публикуемое в канале. Обратите внимание, что только текстовые каналы Discord поддерживают веб-перехватчики. Голосовые каналы в Discord не могут использовать веб-перехватчики.
Вы также можете загружать файлы, вставлять объекты и добавлять вложения в сообщение, отправленное на канал Discord.
Подробнее о том, как отправить сообщение в канал Discord с помощью веб-перехватчика Discord, нажмите здесь.
Начало работы с веб-перехватчиками GitHub
Узнайте, в чем разница между веб-перехватчиками GitHub и действиями, а также как начать работу с веб-перехватчиками GitHub, чтобы начать интегрировать GitHub во внешние рабочие процессы и приложения.
Руководство по началу работы с Shopify Webhooks
Узнайте, что такое веб-перехватчики Shopify, как они работают и как настроить веб-перехватчик с помощью интерфейса администратора Shopify, а также с помощью Shopify API.
Начало работы с веб-перехватчиками CircleCI
Узнайте, в чем разница между веб-перехватчиками CircleCI и API и как интегрировать веб-перехватчики CircleCI во внешние рабочие процессы и приложения.
Где я могу найти вебхуки Discord?
Веб-перехватчики Discord являются компонентом серверов Discord. Таким образом, каждый веб-перехватчик привязан к определенному серверу и подключен к каналу, который находится на этом сервере. Это поможет вам упорядочить веб-перехватчики в соответствии с их назначением.
Чтобы найти веб-перехватчики, принадлежащие серверу, перейдите на страницу настроек сервера, нажав стрелку вниз рядом с именем сервера, чтобы открыть контекстное меню сервера, как показано ниже:
Нажмите «Настройки сервера» и выберите «Интеграции» в боковом меню. Там вы можете просмотреть свои веб-перехватчики и создать новые.
Как добавить вебхук в Discord?
Существует два способа создания веб-перехватчика Discord: либо через графический интерфейс пользователя (веб или приложение), либо через API Discord. Самый простой способ — через пользовательский интерфейс, и если вы хотите управлять своими веб-перехватчиками Discord в автоматизированных рабочих процессах, рекомендуется добавить веб-перехватчик в Discord.
Чтобы добавить веб-перехватчик на сервер Discord, выполните следующие действия:
- Перейдите на страницу интеграции на сервере Discord, как описано выше, и нажмите «Создать веб-перехватчик».
- Дайте веб-перехватчику описательное имя и выберите канал, на который вы хотите отправлять сообщения.
- Не забывайте нажимать «Сохранить изменения», когда вносите какие-либо изменения в конфигурацию веб-перехватчика.
Вот и все! Теперь на ваш сервер добавлен веб-перехватчик для отправки сообщений на выбранный вами канал. Нажмите Копировать URL-адрес веб-перехватчика, чтобы получить URL-адрес веб-перехватчика и использовать его для отправки сообщений из внешних приложений на ваш канал Discord.
Если вы хотите использовать API для создания веб-перехватчиков Discord и управления ими, вы можете ознакомиться с этим подробным руководством.
Учебное пособие. Как настроить веб-перехватчики Discord с помощью API
Узнайте, как использовать API Discord для создания интеграции с веб-перехватчиком. Следуйте пошаговому руководству из примера, в котором мы настроили бота Discord для получения уведомлений от GitHub.
Пример вебхука Discord
Ранее мы обсуждали пример использования веб-перехватчиков Discord, в котором финансовый отдел отслеживает ежедневную информацию о продажах, публикуя сводку продаж на своем канале Discord. Это лишь один из многих вариантов использования веб-перехватчиков Discord.
В этом разделе мы рассмотрим распространенный пример использования веб-перехватчиков Discord среди разработчиков приложений. Разработчики управляют своим кодом с помощью систем контроля версий (VCS), таких как Git, и сотрудничая с другими разработчиками через поставщиков удаленных облачных хранилищ, таких как GitHub.
В командной среде разработчики часто отправляют код в один и тот же удаленный репозиторий для обновления кодовой базы. Если команда использует Discord для общения, может быть очень полезно получать обновления в режиме реального времени на канале Discord команды, когда разработчик отправляет новое обновление в кодовую базу на GitHub. Вот где на помощь приходят вебхуки Discord.
С помощью следующих шагов команда может настроить канал связи между GitHub и Discord для получения обновлений на канале Discord команды при отправке нового обновления.
- Создайте веб-перехватчик Discord на сервере команды, чтобы отправлять сообщения на канал команды.
- Получить URL-адрес веб-перехватчика для созданного веб-перехватчика.
- Используйте URL-адрес веб-перехватчика, чтобы создать веб-перехватчик на GitHub и подписаться на событие push (событие push запускается, когда новая фиксация отправляется в репозиторий GitHub).
При такой настройке каждый раз, когда участник команды отправляет код в репозиторий GitHub, сообщение фиксации отправляется на канал Discord команды. Типичное сообщение фиксации GitHub в канале Discord показано ниже:
Подробное руководство по этому варианту использования см. в этой статье.
Учебное пособие. Как настроить веб-перехватчики Discord с помощью интерфейса администратора
Узнайте, как создавать, редактировать и удалять веб-перехватчики разногласий с помощью страницы настроек с помощью подробного пошагового примера
Часто задаваемые вопросы о вебхуках Discord
В этом разделе я собрал несколько часто задаваемых вопросов о веб-перехватчиках Discord. Если ваши вопросы здесь не освещены, я рекомендую вам посетить официальную страницу знакомства с веб-перехватчиками Discord и документацию для разработчиков.
Вопрос Ответ Как связать вебхук с Discord ? Если ваше внешнее приложение поддерживает отправку исходящих сообщений с помощью веб-перехватчиков (например, GitHub, Shopify и т. д.), вы можете использовать URL-адрес веб-перехватчика Discord для настройки веб-перехватчика на этих платформах. tr>Являются ли веб-перехватчики Discord бесплатными? На момент написания статьи веб-перехватчики Discord полностью бесплатны. Являются ли веб-перехватчики Discord бесплатными? POST или GET? POST Какой формат сообщения для веб-перехватчиков Discord? Подробнее о формате сообщения веб-перехватчиков Discord можно можно найти здесь. Как просмотреть веб-перехватчик Discord? Перейдите в «Настройки сервера» → «Интеграции», чтобы просмотреть и создать веб-перехватчик. tr>Как получить идентификатор канала? Сначала необходимо включить режим разработчика в разделе «Настройки пользователя» → «Дополнительно». Затем вы можете щелкнуть правой кнопкой мыши свой канал, чтобы скопировать идентификатор. Могу ли я создать несколько веб-перехватчиков на канале Discord? Да, вы можете создать несколько веб-перехватчиков Discord, нацеленных на один и тот же канал. Могу ли я использовать один URL-адрес веб-перехватчика для нескольких внешних приложений?< /td> Да, вы можете использовать один URL-адрес веб-перехватчика для отправки нескольких типов сообщений на канал Discord. Могу ли я прикреплять файлы к моему веб-перехватчику Discord? сообщения? Да, вы можете отправлять файлы в сообщениях веб-перехватчиков Discord; узнайте больше здесь. Как удалить веб-перехватчик? Вы можете удалить веб-перехватчик Discord, используя кнопку «Удалить веб-перехватчик» в пользовательском интерфейсе. или удалить его с помощью вызова API. Где находится API веб-перехватчиков Discord? Документацию по API веб-перехватчиков Discord можно найти здесь. таблица>Поддерживаются ли веб-перехватчики в голосовых каналах? На момент написания веб-перехватчики Discord поддерживаются только в текстовых каналах. Заключение
Попробуйте Hookdeck сегодня
Мгновенно и надежно управляйте
своими веб-перехватчикамиУчебное пособие. Как настроить веб-перехватчики Discord с помощью интерфейса администратора
Узнайте, как создавать, редактировать и удалять веб-перехватчики разногласий с помощью страницы настроек с помощью подробного пошагового примера
Учебное пособие. Как настроить веб-перехватчики Discord с помощью API
Узнайте, как использовать API Discord для создания интеграции с веб-перехватчиком. Следуйте пошаговому руководству из примера, в котором мы настроили бота Discord для получения уведомлений от GitHub.
Веб-перехватчики могут отправлять сообщения в текстовый канал без входа в систему в качестве бота. Они также могут получать, редактировать и удалять свои собственные сообщения. В 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 здесь
Читайте также:
- Как добавить вкладку vba excel в excel
- Как установить биос на ноутбуке
- Как удалить razer cortex с компьютера
- Браузер изменяет громкость микрофона
- Осу войдите в систему, что это за программа для Android
- author : [object] — вставить объект автора