Вебхук Discord для уведомлений о статусе сайта
Как правило, при работе с веб-сайтами важно вовремя узнавать о возникающих проблемах, – тогда у вас есть шанс исправить их, прежде чем они окажут влияние на опыт пользователей. Один из способов получения уведомлений о состоянии сайта – настроить оповещения через текстовую систему чата.
Discord – это мессенджер, похожий на Slack. Discord позволяет бесплатно настроить систему обмена сообщениями, благодаря которой вы сможете отправлять сообщения, изображения, аудио и видео. Кроме того, Discord предлагает и платные премиум-функции. Но зарегистрироваться можно бесплатно. У Discord есть клиенты для Windows, macOS, Linux, Android и iOS.
В этом руководстве мы поможем вам настроить ваш собственный сервер Discord, создать вебхук Discord, а затем написать сценарий Bash, который будет проверять статус веб-сайтов по списку. Также мы протестируем отправку уведомлений с вашего сервера на канал Discord.
Требования
- Сервер Ubuntu 18.04, который будет взаимодействовать с Discord и на котором будет запущен скрипт мониторинга (назовем его monitor-server). Чтобы настроить этот сервер, следуйте этому мануалу.
- Если на данный момент у вас нет сайта, состояние которого вы хотели бы отслеживать, настройте второй сервер (назовем его apache-server) по этому руководству. Обязательно настройте виртуальный хост по разделу 5.
- Аккаунт Discord. Бесплатно зарегистрироваться можно на этой странице.
1: Создание вебхука Discord
Давайте попробуем создать свой приватный сервер Discord.
Прежде всего, вам нужно войти на свой аккаунт через браузер или запустить приложение Discord. После этого нажмите кнопку Create a server.
Далее нужно выбрать имя для своего сервера и нажать кнопку Create a server.
Итак, сервер готов, теперь мы создадим вебхук Discord. Вебхуки в контексте Discord – это уникальные URL-адреса, которые можно использовать для связывания сервисов. Вебхуки позволяют автоматизировать отправку сообщений и обновление данных в каналах Discord.
В этом руководстве мы настроим вебхук, который будет отправлять уведомление, если на вашем сервере вышел из строя определенный сервис, а Discord позаботится о том, чтобы вы получили эти уведомления в своем канале.
Чтобы создать вебхук, нужно сначала кликнуть на свой канал, а затем нажать кнопку Edit Channel – она находится рядом с названием канала.
Затем перейдите во вкладку Webhooks и нажмите кнопку Create Webhook.
Далее вам нужно выбрать имя для своего вебхука. В этом руководстве мы назовем его Alerts, поскольку именно это будет делать наш сценарий Bash – оповещать нас в случае сбоя одного из веб-сайтов.
Скопируйте URL-адрес вебхука и сохраните его для дальнейшей работы. Наконец, нажмите кнопку Save, чтобы сохранить вебхук.
Итак, на данный момент у вас есть учетная запись Discord, сервер и вебхук. Пора перейти к созданию тестового файла, который будет отслеживать ваш скрипт.
2: Создание тестового файла (опционально)
Предположим, у вас нет веб-сайта, работу которого вы хотели бы отслеживать. В таком случае вы можете создать тестовый файл, благодаря которому вы проверите работу вашего скрипта.
Примечание: Этот раздел нужно выполнить на apache-server.
Во-первых, вам нужно создать тестовый файл. Для этого запустите:
После этого в файл нужно добавить некоторый контент, чтобы позже вы смогли убедиться, что все работает. Добавьте в файл следующее:
Сохраните и закройте файл.
А потом перейдите по ссылке http://your_domain/test и убедитесь, что вы видите текст, который поместили в файл test.
На следующем этапе мы напишем сценарий мониторинга.
3: Создание сценария мониторинга
Теперь, когда вы настроили свой вебхук, можно приступить к написанию сценария Bash, который будет проверять код ответа ваших веб-сайтов. В случае если один из сайтов вернет не 200 OK, а что-либо другое, скрипт отправит запрос на вебхук, после чего вы получите уведомление в своем канале Discord.
Примечание: Конечно, для создания подобного сценария можно использовать любой другой язык программирования.
Сначала подключитесь к monitor-server по SSH (напоминаем, что это тот сервер, который вы используете для запуска сценария мониторинга).
Прежде всего нужно создать файл в домашней папке. В этом мануале мы назовем этот файл check_status.sh.
Откройте файл в текстовом редакторе:
Чтобы загрузчик программы распознал этот исполняемый файл как скрипт Bash, поместите в начало файла следующую строку:
#!/bin/bash
Все строки, которые начинаются с символа #, воспринимаются как комментарии. Комментарии в сценариях можно и не использовать, но именно комментарии помогают другим людям понять, что делает ваш скрипт.
#!/bin/bash
##
# Website status check script
# Author: Your Name
# Date: 01/01/2020
##
. . .
Затем укажите свой вебхук Discord в качестве переменной. Добавьте URL-адрес вебхука, который вы скопировали ранее:
. . .
##
# Discord webhook
# Change the ‘your_discord_webhook_name’ with your actual Discord Webhook
##
url=»your_discord_webhook_name»
. . .
Возможно, вы захотите использовать этот скрипт для отслеживания статуса нескольких сайтов. Поэтому создайте переменную sites_list и сохраните в ней доменные имена или IP-адреса веб-сайтов, за которыми вам нужно следить. Если вы используете тестовый файл, который мы создали в предыдущем разделе, обязательно добавьте секцию /test после домена или IP-адреса:
. . .
##
# List of websites to check
##
websites_list=»your_domain/test»
. . .
Если же вы отслеживаете сразу несколько сайтов, вы можете добавить в переменную sites_list список доменов или IP-адресов (в качестве разделителя нужно использовать пробел):
. . .
websites_list=»your_domain1/test your_domain2 your_domain3″
. . .
Теперь нужно сделать так, чтобы скрипт перебирал ваш список веб-сайтов и проверял их статус. Для этого добавьте в файл цикл for:
. . .
for website in $
status_code=$(curl —write-out %
echo $status_code
done
. . .
Этот цикл будет перебирать все элементы в переменной sites_list и проверять статус сайта с помощью команды curl.
Оператор echo $status_code выводит статус ответа команды curl. Если веб-сайт работает правильно, команда вернет код 200 OK – значит, этот сайт запущен и все работает хорошо. В противном случае команда получит другой код ответа.
В цикл for добавьте оператор if, чтобы проверить, равен ли код ответа 200. Если код ответа равен 200, значит, сайт работает и Discord не нужно отправлять вам уведомление. Добавьте в файл следующий условный блок:
. . .
if [[ «$status_code» -ne 200 ]] ; then
# POST request to Discord Webhook with the domain name and the HTTP status code
else
echo «$
fi
. . .
Если с веб-сайтом возникнут какие-либо проблемы, вы получите другой код ответа, и в этом случае вы должны получить уведомление через вебхук Discord.
Чтобы отправить такое уведомление, вы можете использовать команду curl, которая отправит POST-запрос на URL-адрес вашего вебхука.
Итак, поместите следующий запрос curl в свой оператор if:
. . .
if [[ «$status_code» -ne 200 ]] ; then
# POST request to Discord Webhook with the domain name and the HTTP status code
curl -H «Content-Type: application/json» -X POST -d ‘ <"content":"'"$
else
echo «$
fi
. . .
Теперь давайте рассмотрим аргументы, которые мы использовали в этом запросе:
- -H: позволяет добавить в запрос curl дополнительный заголовок.
- “Content-Type: application/json”: определяет тип данных, который должен ожидать вебхук (HTTP JSON).
- -X POST: указывает POST в качестве метода запроса.
- -d: отправляет данные JSON в вебхук Discord.
В результате скрипт будет иметь такой вид:
#!/bin/bash
##
# Website status check script
# Author: Your Name
# Date: 01/01/2020
##
##
# Discord webhook
# Change the ‘your_discord_webhook_name’ with your actual Discord Webhook
##
url=»your_discord_webhook_name»
##
# List of websites to check
# To add more websites just use space as a separator, for example:
# websites_list=»your_domain1 your_domain2 your_domain3″
##
websites_list=»your_domain/test your_domain2″
for website in $
status_code=$(curl —write-out %
if [[ «$status_code» -ne 200 ]] ; then
# POST request to Discord Webhook with the domain name and the HTTP status code
curl -H «Content-Type: application/json» -X POST -d ‘ <"content":"'"$
else
echo «$
fi
done
Итак, наш сценарий просматривает список веб-сайтов и проверяет статус каждого отдельного сайта. Если ответ сайта не равен 200, вы получите уведомление.
Запустите сценарий с помощью следующей команды, чтобы убедиться, что он работает правильно:
Если после этого вы получите в терминале следующий вывод, значит, ваш веб-сайт работает правильно:
your_domain1 is running!
your_domain2 is running!
Все готово, осталось только протестировать отправку уведомлений Discord.
4: Проверка уведомлений Discord
Наконец, пора проверить, работает ли наш вебхук. Это можно сделать с помощью тестового файла.
Перейдите на apache-server и выполните следующую команду, чтобы закрыть доступ к этому файлу:
sudo chmod 000 /var/www/your_domain/test
Затем вернитесь на monitor-server и запустите скрипт:
Перейдите в приложение Discord и проверьте уведомления. Вы получите ошибку 403. Значит, права доступа установлены неправильно, вам запрещено просматривать запрашиваемый файл.
Чтобы получить другую ошибку, вернитесь на сервер apache-server и удалите этот файл:
sudo rm /var/www/your_domain/test
Потом вернитесь на monitor-server и запустите скрипт:
Перейдите в приложение Discord и просмотрите свои уведомления. Вы увидите ошибку 404, которая указывает, что искомый файл недоступен.
Если Discord установлен на вашем смартфоне, вы также будете получать уведомления на это устройство.
Итак, у вас есть скрипт, который предупреждает вас о проблемах в работе перечисленных сайтов. Теперь давайте настроим автоматический запуск этого скрипта.
5: Автоматизация процесса мониторинга
Один из способов автоматизировать проверку состояния сайтов – создать задачу cron, которая будет запускаться с нужным вам интервалом (например, каждые 5 минут).
Во-первых, вернитесь на свой monitor-server. Прежде чем вы сможете настроить автоматический запуск скрипта, вам необходимо разобраться с правами доступа к файлам и убедиться, что скрипт является исполняемым, иначе он не запустится. Чтобы сделать файл скрипта исполняемым, введите команду:
Далее выполните следующую, чтобы отредактировать crontab:
Вставьте в этот файл такую строку:
Наконец, сохраните crontab. После этого ваш скрипт будет запускаться каждые 5 минут.
Заключение
Итак, вы настроили вебхук Discord и создали скрипт, который будет уведомлять вас о возникновении ошибок на вашем веб-сайте. Если хотите, вы можете использовать любой другой язык программирования и написать более сложный бот.
Если вы хотите узнать больше о сценариях оболочки, ознакомьтесь с нашим руководством Написание простого скрипта оболочки.
Больше о вебхуках Discord вы можете узнать в официальной документации Discord.
Вебхуки
Как связать две разные службы для автоматической отправки сообщений
После того, как вы создали веб-хук Discord, вам необходимо подключить его к сторонним сервисам. Как только действие будет запущено на стороннем сервисе, мы получим сообщение на канале Discord.
Но не все сервисы поддерживают функцию веб-перехватчика Discord. Например, мало . Но для многих других сервисов, таких как Twitter и YouTube, вам нужно полагаться на сторонние варианты, такие как Zapier или IFTTT.
Здесь я использую IFTTT, но вы можете сделать то же самое и с Zapier.
1. Сначала откройте веб-сайт IFTTT, войдите в систему и нажмите кнопку Create вверху тесно.

2. Теперь нажмите на Add рядом с If This, чтобы добавить триггер.

3. Здесь вы можете найти любую услугу. Я подключаюсь к Twitter в качестве примера.
4. Затем IFTTT покажет вам все триггеры для выбранного сервиса. Выберите один триггер, который имеет смысл для вас.

5. Теперь нажмите на Add рядом с Then That, чтобы интегрировать вебхук Discord.

6. На следующей странице найдите Webhooks и выберите его.

7. Затем выберите Make a web request.

8. На следующей странице вставьте скопированный URL-адрес веб-перехватчика Discord в раздел URL-адресов.
9. Выберите POST в разделе Метод выберите application/json в разделе Content-Type.

10. Теперь заполните раздел «Дополнительный заголовок и тело». Это будет отображаться как заголовок и тело сообщения Discord, которое вы получаете. Вы также можете использовать такие ингредиенты, как `UserName`и т. д., чтобы персонализировать сообщение. Поскольку нет четкого руководства для сообщения, вот пример, который я создал, установив сообщения Twitter в качестве триггера.
12. После этого нажмите на Create action.

Вот и все, вы успешно создали веб-хук Discord, а также создали триггер для получения сообщения. Вы можете попробовать протестировать его.
4: Проверка уведомлений Discord
Наконец, пора проверить, работает ли наш вебхук. Это можно сделать с помощью тестового файла.
Перейдите на apache-server и выполните следующую команду, чтобы закрыть доступ к этому файлу:
sudo chmod 000 /var/www/your_domain/test
Затем вернитесь на monitor-server и запустите скрипт:
Перейдите в приложение Discord и проверьте уведомления. Вы получите ошибку 403. Значит, права доступа установлены неправильно, вам запрещено просматривать запрашиваемый файл.
Чтобы получить другую ошибку, вернитесь на сервер apache-server и удалите этот файл:
sudo rm /var/www/your_domain/test
Потом вернитесь на monitor-server и запустите скрипт:
Перейдите в приложение Discord и просмотрите свои уведомления. Вы увидите ошибку 404, которая указывает, что искомый файл недоступен.
Если Discord установлен на вашем смартфоне, вы также будете получать уведомления на это устройство.
Итак, у вас есть скрипт, который предупреждает вас о проблемах в работе перечисленных сайтов. Теперь давайте настроим автоматический запуск этого скрипта.
What is Webhooks?
Webhooks are a form of HTTP-based callbacks that are triggered by specific events on a Web Platform. A callback refers to a small code snippet related to a Web Application. Whenever any triggering event occurs on the originating Web Platform, the Webhooks identifies it, collects the data, and sends it to the URL you specified as an HTTP request.
A Webhook acts as a reverse API and is used for calling another application to receive data. You can connect a Webhooks with another application to send data directly to your system as soon as there is a change in it. This makes the process very convenient and efficient for providers and users.
Using Webhooks allows Web Applications to automate their communication. Unlike traditional systems that involved one system polling other systems for some data, Webhooks enables you to automatically push data into the other system whenever some event occurs. This eliminates the need for constant monitoring by the subject.

Key Features of Webhooks
The following features have made Webhooks popular in the market:
- Low Cost: All you need to work with Webhooks is its URL and a Website to which the Webhooks will be connected. Moreover, unlike a regular bot, Webhooks are hosted on Discord. This often saves you the hassle of making a financial investment to use them.
- Automation: Webhooks enable many types of automation powered by other services and also allow you to manually send clear messages. These features provide various use cases like posting updates, logging, posting custom messages for aesthetic purposes, etc.
- Customization: You can associate a unique name and image with each of your Webhooks. Moreover, each message sent by these Webhooks can also be unique. You can have several different Webhooks on different channels and use them according to your need.
To learn more about Webhooks, visit here.
Создаем сервер
Перед созданием вебхуков в репозитории вам необходимо выделить для него отдельный сервер, на который будут приходить уведомления. Отличительной особенностью системы Webhooks является возможность интеграции их в разные приложения или сервисы — это не только Discord, но и многие другие Telegram, Битрикс24 и многие другие.
Чтобы воспользоваться опцией веб-перехватчика Discord, как упоминалось выше, вам необходимо создать отдельный сервер.
Для этого выполняем следующие действия:
- Запускаем приложение.
- Давайте нажмем на большой серый знак плюса, который находится под всеми уже созданными серверами в левой части главного экрана, и создадим новый север.
- Затем щелкните по вновь созданному серверу левой кнопкой мыши и выберите в раскрывающемся окне пункт «Настройки сервера.
- Далее откроются настройки самого сервера и среди всех необходимых нам элементов вкладка Webhook. Щелчок по этому элементу откроет новое окно с правой стороны, в котором мы нажмем кнопку «Создать веб-перехватчик.
- Нажав на кнопку «Создать веб-перехватчик», система перенесет вас в новое диалоговое окно, где вам нужно будет ввести следующие данные: имя создаваемого веб-перехватчика, канал, по которому будут отправляться уведомления — по умолчанию, специальный # в Discord создан общий канал. Вы также можете вставить значок для создаваемого сервера, а также указать триггер, при котором веб-перехватчик будет срабатывать и отправлять уведомление на сервер.
В столбце URL созданного веб-перехватчика URL появится автоматически — его нужно скопировать. Затем этот URL-адрес будет действовать как конечная точка при отправке веб-перехватчиков. После ввода всех необходимых для системы данных мы сохраняем.

Webhook в Discord
Что такое вебхуки в Дискорде и для чего они нужны? Этот вопрос частенько задают даже продвинутые пользователи, так как они никогда не пользовались таким функционалом. Поэтому нам нужно расставить все точки над «i» и всесторонне обсудить этот вопрос.
Детальная информация
Webhook – это инструмент, позволяющий оперативно получать обновления с заданных серверов. Он умеет транслировать все новости в определенный канал. Суть в том, что бот опрашивает сервер на наличие новостей раз в определенный промежуток времени.
К примеру, если на платформе Twitch появились новые трансляции, то правильно настроенный вебхук тут же их считает и отправит в соответствующий канал. Это помогает существенно оживить сообщество в Дискорде.
Однако заниматься настройкой Webhook должен человек, у которого есть соответствующий опыт и права администратора того или иного сообщества. Если ничего этого нет, то сделать практически ничего не получится.
Тем не менее, в данном материале мы опишем процесс создания Webhook пошагово. И тогда можно будет разнообразить общение в Дискорд. Но стоит заметить, что все нужно выполнять в строгом соответствии с инструкцией.
Инструкция
Итак, пора перейти от теории к практике. Сначала нужно усвоить, что далеко не все сайты поддерживают данную опцию. К примеру, тот же YouTube не умеет нормально работать с этой штукой. Facebook тоже не получится привязать.
Так что для начала нужно будет изучить список поддерживаемых сайтов и понять, есть ли там то, что заинтересует вас и ваших товарищей. Если есть, то можно приступать к настройке. Вот инструкция:
- В главном окне кликаем по иконке сервера правой кнопкой мыши.
- В появившемся меню выбираем «Настройки сервера» и далее «Вебхуки».


Вот и все. Теперь останется только посетить нужный сайт (который поддерживает Webhook) и ввести в соответствующее поле соответствующего раздела тот адрес, который вами был скопирован при настройке вебхука.
Заключение
А теперь подведем итоги, обобщим всю полученную информацию и сделаем соответствующие выводы. В рамках данного материала мы поговорили о том, что такое вебхуки в Дискорде и как их использовать.
Webhook – это опция, позволяющая транслировать новости с различных площадок в канал Дискорда. Настроить эту штуку не так-то сложно. Но придется потратить некоторое количество времени. Однако мы предоставили инструкцию, которая точно вам поможет.
1: Создание вебхука Discord
Давайте попробуем создать свой приватный сервер Discord.
Прежде всего, вам нужно войти на свой аккаунт через браузер или запустить приложение Discord. После этого нажмите кнопку Create a server.
Далее нужно выбрать имя для своего сервера и нажать кнопку Create a server.
Итак, сервер готов, теперь мы создадим вебхук Discord. Вебхуки в контексте Discord – это уникальные URL-адреса, которые можно использовать для связывания сервисов. Вебхуки позволяют автоматизировать отправку сообщений и обновление данных в каналах Discord.
В этом руководстве мы настроим вебхук, который будет отправлять уведомление, если на вашем сервере вышел из строя определенный сервис, а Discord позаботится о том, чтобы вы получили эти уведомления в своем канале.
Чтобы создать вебхук, нужно сначала кликнуть на свой канал, а затем нажать кнопку Edit Channel – она находится рядом с названием канала.
Затем перейдите во вкладку Webhooks и нажмите кнопку Create Webhook.
Далее вам нужно выбрать имя для своего вебхука. В этом руководстве мы назовем его Alerts, поскольку именно это будет делать наш сценарий Bash – оповещать нас в случае сбоя одного из веб-сайтов.
Скопируйте URL-адрес вебхука и сохраните его для дальнейшей работы. Наконец, нажмите кнопку Save, чтобы сохранить вебхук.
Итак, на данный момент у вас есть учетная запись Discord, сервер и вебхук. Пора перейти к созданию тестового файла, который будет отслеживать ваш скрипт.
Как создать webhook в Дискорде
После изучения особенностей и назначения опции можно переходить и рассмотрению следующего вопроса — как создать вебхук в Discord. Алгоритм действий имеет следующий вид:
- Войдите в программу Дискорд и авторизуйтесь под своим логином и паролем (если это не сделано ранее).
- Жмите правой кнопкой на название интересующего сервера.
- В выпадающем перечне выберите пункт Настройки сервера.
- Выберите пункт Вебхуки.

Кликните на пункт Создать вебхук.

- Укажите имя. Эта информация прописывается автоматически, но ее можно поменять.
- Выберите канал, для которого создается webhook.
- Загрузите изображение. Для этого жмите на соответствующую кнопку и укажите направление к файлу. Размер картинки должен быть от 256х256 (рекомендуется). В крайнем случае допускается минимальный размер 128х128.
- Опуститесь вниз и жмите на ссылку Копировать. Полученный URL будет использоваться для интеграции с другим ресурсом.
- Кликните кнопку Сохранить.

Выше мы отмечали, что сама по себе ссылка бесполезна. Необходимо знать, как пользоваться вебхуками в Дискорде, и где их применить. Для примера рассмотрим, как использовать полученный URL-адрес на сайте Github.
Алгоритм действий такой:
- Получите URL адрес, по которому вы планируете получать сообщения. Как сделать вебхуки в Дискорде, мы рассматривали выше.
- Войдите на сайт GitHub, перейдите в настройки и меню webhooks. Таким способом вы определяетесь с репозитарием, который будет использоваться для обмена.
- Жмите на кнопку Add webhooks и введите скопированный ранее адрес.

- Данные необходимо добавить в строку Payload URL.
- К полученной ссылке добавьте в конце через слеш (/) надпись gthub. К примеру, исходная ссылка может иметь следующий вид — discordapp.com/api/webhooks/71043261975575624/f_MvYH5-2h0foH47kxW50hMASijFRe29mSBkt6VfanIJPD_98nvGa-0cc0TqYp1an17K. При добавлении на сайт она должна быть следующей — discordapp.com/api/webhooks/710432631975575624/f_MvYH5-2h0foH47kxW50hMASijFRe29mSBkt6CfanIJPD_98nvGa-0cc0TqYp1an17K/github.

Дополнительно к URL-адресу необходимо определиться с опциями GitHub. В секции Content Type выберите application/json. Практика показала, что формату вебхуков Дискорд подходит JSON. На следующем шаге настройте ивент триггеры, используемые при передаче в сообщении. Здесь доступен один из трех вариантов:
- только пуш-события;
- отправление всего;
- информирование только о персональных событиях.
Как только настройки сделаны, а данные введены в URL-строку, можно сохранять внесенные сведения. Для этого жмите соответствующую кнопку.

Выше мы рассмотрели один из вариантов, как настроить вебхуки в Дискорде применительно к сервису GitHub. Если необходимо интегрироваться с другими сайтами, алгоритм действий будет очень похож.
Подключение вебхуков для репозитория
Что же такое Webhooks в Discord?
Вебхуки – уникальная опция в Discord, позволяющая осуществлять настройки репозитория с целью отправки всевозможных запросов и сообщений на удаленный сервер в случае возникновения на репозиторие определенных событий.
Webhooks состоят из таких составляющих:
- субъекты – ресурсы, в которых создаются вебхуки – это и есть наш репозиторий;
- события – события, отправляемые вебхуком в случае, когда он срабатывает на триггер – для большинства репозиториев в Discord триггером является присылаемое push сообщение;
- URL – конечная точка, на которую вебхук должен доставить требуемую информацию.
После того, как вебхук в Discord будет создан для конкретного события, при возникновении триггера на наго, вебхук будет срабатывать и передавать данные на указанный URL. Говоря более понятным языком, вебхуки – это своеобразная система уведомлений.
Официальный пример: интеграция Webhook GitHub
Обратите внимание, представленная выше последовательность действий позволяет в максимально сжатые сроки разработать Вебхук в программном обеспечении Дискорд и внести персональные настройки. Однако нужно помнить, что функция не работает в автономном режиме – обязательная настройка взаимодействия с другими виртуальными платформами
В случае правильной установки функциональных параметров, опция применима для моментальной отправки кода либо обновления текстового канала тематического сервера. Последовательность действий не вызывает сложностей и подразумевает следующую инструкцию:
- Изначально требуется выполнить переход по адресу discordapp.com.
- После авторизации в личном кабинете осуществляется переход в настройки с последующим выбором функции создания.
- Нажатие правой клавишей мыши на интересующий сервер для вызова функции настроек.
- Ввод персонального уникального имени тематическому каналу, загрузка привлекательного изображения – при условии, что ранее пользователь не выполнят рассматриваемых действий.
- На следующем этапе осуществляется копирование уникального URL-адреса.

После этого требуется скопировать полученную ссылку на репозитарный портал, с которого планируется в дальнейшем получать соответствующие обновления на специализированный сервер программного обеспечения Дискорд.
Далее пользователь осуществляет нажатие на клавишу добавления рассматриваемой функции с обязательным вводом полученной ранее уникальной ссылки в специально отведенное поле.
На завершающем этапе пользователю рекомендуется проверить корректность указанной ссылки
Обратите внимание, это ключевой фактор, от которого напрямую зависит бесперебойное функционирование инструмента. Не стоит забывать прикреплять соответствующую надпись в конце github
Дополнительно рекомендуется в специально разработанной категории Content Type активировать параметр application/json. После этого пользователь осуществляет выбор ивент-тригеров, которые в последующем используются во время обмена информацией в сообщениях.
Последний этап дополнительных настроек предусматривает нажатие клавишей мыши на Add Webhook, которая расположена под формой уведомления. Сохранение результатов для обеспечения бесперебойной работы функции.
Conclusion
This blog discussed Discord and Webhooks along with their key features. It also provided the steps that you can use to set up the Discord Webhooks Integration seamlessly. Furthermore, it explained the benefits that you will experience by using Webhooks for sending and receiving messages via Discord.
Visit our Website to Explore Hevo
You may want to go one step further and perform an analysis of the Webhooks data. This will require you to transfer data from the Webhooks account to a Data Warehouse using various complex ETL processes. Hevo Data will automate your data transfer process, hence allowing you to focus on other aspects of your business like Analytics, Customer Management, etc. This platform allows you to transfer data from 100+ multiple sources like Webhooks to Cloud-based Data Warehouses like Snowflake, Google BigQuery, Amazon Redshift, etc. It will provide you with a hassle-free experience and make your work life much easier.
Want to take Hevo for a spin? Sign Up for a 14-day free trial and experience the feature-rich Hevo suite first hand.
Вместо заключения
Как видно, чтобы создать вебхук в Discord, нужно проделать несложную работу.
А вообще, Discord – это многофункциональная программа, которая просто поражает своими уникальными опциями, в значительной степени упрощающие общение на данной платформе.
Встроенная Функция Webhooks это простой способ получать автоматические сообщения и обновления данных, которые были посланы на текстовый канал Вашего сервера. Подумайте о них, как о клевых пневматических трубах, которые Вы так любили использовать. Посылали деньги в банк и смотрели, как они исчезают. Но вместо того, чтобы терять деньги, Вы посылаете сообщения на Discord с других платформ.
Создавая конечный пункт webhook на Вашем сервере, Вы генерируете адрес Webhook, который Вы можете отправить на разные сервисы, чтобы связать их с Discord.
Пока всем нравятся пневмопочта (100% правда), это важно отметить, что webhooks требует использования другого интернет сайта (вообще-то пользователи предрасположенные к программированию могут соорудить свой собственный пневмопередатчик самостоятельно). Некоторые сервисы и интернет сайты разработаны таким образом, чтобы было легко встроить webhooks и посылать сообщения за их пределы, а некоторые нет
Вот небольшой удобный справочный список:
| Может использовать webhooks: | Не может использовать webhooks: |
| GitHub | Twitch / YouTube |
| CircleCI | Nelly The Hamster |
Помня это, если Вы желаете обновить Ваш Discord сервер с помощью поручений и pull запросов GitHub, или с помощью отслеживаемой аналитики с DataDog, или чего-нибудь подобного, вот как это можно сделать!
1. Откройте вкладку Webhook в Настройках Сервера:
2. Нажмите на зеленую кнопку, чтобы создать новый webhook!
У Вас будет несколько опций здесь. Вы можете:
- Редактировать аватар: Щелкнув на аватарку рядом с Именем в лева вверху.
- Выбрать в какой канал будет публиковаться Webhook: Выбрав желаемый текстовый канал в выпадающем меню.
- Назвать Ваш Webhook: Хорошо для различения множества webhooks для множества разных сервисов.
У Вас сейчас есть Ваш личный удобный адрес (URL) / пневматический трубный посылатель, который Вы можете привязать к сайтам откуда Вы будете получать сообщения.
Быстрый пример: Интеграция Webhook GitHub
Раз уж webhook не может функционировать сам по себе и нуждается в привязке к другому сайту, чтобы работать так, как должен, я понял это будет прекрасно включить шаблон интеграции для любого из Вас, энтузиастов GitHub и кодо-продвигателей. Вы можете использовать webhook от Discord для того, чтобы посылать любое слияние кода или его обновления в Вашем репозитарии на текстовый канал Вашего сервера.

1. Получите webhook адрес (URL) для сервера/канала, на который Вы хотите получать сообщения:
На моем сервере я создал текстовый канал обозначенный #gitupdates. Я хочу, чтобы мои обновления репозитария публиковались здесь, поэтому я возьму webhook адрес (URL) для этого канала:
2. Добавьте webhook адрес (URL) в Ваши настройки репозитария GitHub
Выберите репозитарий, с которого Вы хотите получать обновления на Ваш сервер Discord. Как только Вы выбрали репозитарий, зайдите в Настройки> меню webhooks:
Прекрасно. Нажмите на кнопку «Add webhook» (добавить webhook), и введите сгенерированный в Discord адрес (URL) в графу «Payload URL».
Чтобы webhook отображал сообщения правильно, это очень-очень-ОЧЕНЬ-очень важно, чтобы Вы append ‘/github’ в конце каждого сообщения. Да, именно пятикратное очень важно
В дополнении к адресу (URL), у Вас есть еще некоторые особые GitHubопции, из которых необходимо выбрать. Для контентного типа, держитесь формата application/json. Формату Discord webhook очень подходит JSON. В следующем разделе, Вы можете выбрать настроить какого рода ивент тригеры webhook будет передавать в сообщениях.
Нажмите последнюю кнопку «Add webhook» (добавить webhook) ниже опции настройки ивент извещения, и Вы уже полностью готовы! Любые обновления на репозитарии (включая редактирование файла readme) появится в Вашем текстовом канале:
И Вы уже полностью готовы! GitHub это лишьодин пример интеграции, для опубликования сообщений через webhook.
Подключение вебхуков и настройка
Использование специализированного программного обеспечения Дискорд Вебхук требует от пользователя качественного интернет-соединения с другой платформой
Однако необходимо обращать внимание на то, что далеко не все порталы способны обеспечить обмен информацией. Поэтому перед подключением функции, пользователям рекомендуется ознакомиться с сайтами, которые поддерживаются:
При этом следующие порталы не поддерживаются функцией Вебхука:
Представленные особенности позволяют исключить вероятность возникновения негативных последствий при использовании программного обеспечения с функцией Вебхука с целью обновления сервера. В ином случае последовательность подразумевает следующий алгоритм действий:
- Осуществляется запуск программного обеспечения Дискорд с последующей авторизацией в личном кабинете. При отсутствии учетной записи заполняется регистрационная анкета.
- В левой части панели управления пользователь выбирает из представленного списка определенный тематический сервер путем нажатия на правую кнопку мыши.
- На следующем этапе выполняется переход в раздел внесения настроек.
- Во вновь открывшейся форме требуется перейти в подкатегорию Вебхуки.
- Далее указывается уникальное имя серверу.
- После этого активируется клавиша создания вебхука.
- На следующем этапе осуществляется загрузка интересующего изображения.

Нажимается клавиша сохранения полученных результатов.
После внесения правок, программное обеспечение в автоматическом режиме отображает созданный вебхук с уникальным наименованием, а также исчерпывающей информацией об интересующем сервере и датой разработки. При необходимости можно внести изменения путем нажатия на соответствующую клавишу в категорию настроек.
How to create Discord Webhook and test using Postman
![]()
Webhook aka web callback or HTTP push API is a way to deliver data to other applications as it happens means real-time information sharing.
Discord is a proprietary freeware instant messaging and VoIP application and digital distribution platform designed for creating communities ranging from gamers to education and businesses with more than 250 million users. Discord specializes in text, image, video and audio communication between users in a chat channel
This is not an introduction to Discord or Postman but I use simple approach to describe everything
# Webhooks
Webhooks can send messages to a text channel without having to log in as a bot. They can also fetch, edit, and delete their own messages. There are a variety of methods in discord.js to interact with webhooks. In this section, you will learn how to create, fetch, edit, and use webhooks.
# What is a webhook
Webhooks are a utility used to send messages to text channels without needing a Discord application. Webhooks are useful for allowing something to send messages without requiring a Discord application. You can also directly edit or delete messages you sent through the webhook. There are two structures to make use of this functionality: Webhook and WebhookClient . WebhookClient is an extended version of a Webhook , which allows you to send messages through it without needing a bot client.
If you would like to read about using webhooks through the API without discord.js, you can read about them here
# Detecting webhook messages
Bots receive webhook messages in a text channel as usual. You can detect if a webhook sent the message by checking if the Message.webhookId is not null . In this example, we return if a webhook sent the message.
If you would like to get the webhook object that sent the message, you can use Message#fetchWebhook()
# Fetching webhooks
Webhook fetching will always make use of collections and Promises. If you do not understand either concept, revise them, and then come back to this section. You can read about collections here, and Promises here and here
# Fetching all webhooks of a guild
If you would like to get all webhooks of a guild you can use Guild#fetchWebhooks()
open in new window . This will return a Promise which will resolve into a Collection of Webhook s.
# Fetching webhooks of a channel
Webhooks belonging to a channel can be fetched using TextChannel#fetchWebhooks()
open in new window . This will return a Promise which will resolve into a Collection of Webhook s. A collection will be returned even if the channel contains a single webhook. If you are certain the channel contains a single webhook, you can use Collection#first()
open in new window on the Collection to get the webhook.
# Fetching a single webhook
# Using client
You can fetch a specific webhook using its id with Client#fetchWebhook()
open in new window . You can obtain the webhook id by looking at its link, the number after https://discord.com/api/webhooks/ is the id , and the part after that is the token .
# Using the WebhookClient constructor
If you are not using a bot client, you can get a webhook by creating a new instance of WebhookClient and passing the id and token into the constructor. These credentials do not require you to have a bot application, but it also offers limited information instead of fetching it using an authorized client.
You can also pass in just a url :
# Creating webhooks
# Creating webhooks through server settings
You can create webhooks directly through the Discord client. Go to Server Settings, and you will see an Integrations tab.

If you already have created a webhook, the webhooks tab will look like this; you will need to click the View Webhooks button.

Once you are there, click on the Create Webhook / New Webhook button; this will create a webhook. From here, you can edit the channel, the name, and the avatar. Copy the link, the first part is the id, and the second is the token.

# Creating webhooks with discord.js
Webhooks can be created with the TextChannel#createWebhook()
# Editing webhooks
You can edit Webhooks and WebhookClients to change their name, avatar, and channel using Webhook#edit()
# Using webhooks
Webhooks can send messages to text channels, as well as fetch, edit, and delete their own. These methods are the same for both Webhook and WebhookClient .
# Sending messages
Webhooks, like bots, can send up to 10 embeds per message. They can also send attachments and normal content. The Webhook#send()
open in new window method is very similar to the method used for sending a message to a text channel. Webhooks can also choose how the username and avatar will appear when they send the message.
Example using a WebhookClient:
Try to find a webhook your bot knows the token for. This makes sure your bot can execute the webhook later on.
# Fetching messages
open in new window to fetch messages previously sent by the Webhook.
# Editing messages
open in new window to edit messages previously sent by the Webhook.
# Deleting messages
open in new window to delete messages previously sent by the Webhook.
# Resulting code
If you want to compare your code to the code we've constructed so far, you can review it over on the GitHub repository here