Подключаем webhooks для репозитория

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

Что такое вебхуки в Дискорде

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

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

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

Описание Discord

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

Главным достоинством описываемого приложения являются его требования к ПК. Они очень низки. Это неудивительно, так как софт разрабатывался в основном для аудитории геймеров, которым очень важна производительность.

Помимо этого, также стоит отметить следующие достоинства приложения:

  • Бесплатное распространение.
  • Постоянные обновления.
  • Поддержка всех основных операционных систем и мобильных устройств, кроссплатформенность.
  • Возможность создания собственной комнаты-сервера для общения.
  • Простой интерфейс с удобным расположением элементов.

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

Среди всего функционала Discord немало интересных и полезных опций, к одной из которых относится функция Вебхуки в дискорде.

Подключение вебхуков для репозитория

Что же такое Webhooks в Discord?

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

Webhooks состоят из таких составляющих:

  • субъекты – ресурсы, в которых создаются вебхуки – это и есть наш репозиторий;
  • события – события, отправляемые вебхуком в случае, когда он срабатывает на триггер – для большинства репозиториев в Discord триггером является присылаемое push сообщение;
  • URL – конечная точка, на которую вебхук должен доставить требуемую информацию.

После того, как вебхук в Discord будет создан для конкретного события, при возникновении триггера на наго, вебхук будет срабатывать и передавать данные на указанный URL. Говоря более понятным языком, вебхуки – это своеобразная система уведомлений.

Создаем сервер

Прежде чем заниматься созданием вебхуков в репозитории, для него потребуется выделить отдельный сервер, на который будут приходить уведомления. Отличительной особенностью системы Webhooks является возможность их интеграции в разные приложения либо сервисы – это не только Discord, но и многое другие Telegram, Битрикс24 и многие другие.

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

Для этого выполняем следующие действия:

  1. Запускаем приложение.
  2. Кликаем по большому серому плюсику, который находится под всеми созданными уже серверами в левой части главного экрана, и создаем новый север.
  3. После этого кликаем по вновь созданному серверу левой кнопкой мыши и в выпадающем окне выбираем пункт Настройки сервера.
  4. Далее откроются настройки самого сервера и среди всех пунктов нам нужна вкладка Вебхуки. Нажав на этот пункт, в правой части откроется новое окно, где мы нажимаем кнопку Создать вебхук.
  5. Нажав на кнопку Создать вебхук, система переведет вас в новое диалоговое окно, где необходимо ввести следующие данные: имя создаваемого вебхука, канал, куда будут приходить уведомления – по умолчанию в Discord создается специальный канал #general. Тут же можно поставить иконку для создаваемого сервера, а также указать триггер, на который вебхук будет срабатывать, и присылать уведомление на сервер.

В графе URL создаваемого вебхука автоматически появится URL – его необходимо скопировать. Данный URL далее будет выступать в качестве конечной точки при отправке вебхуков. После введения всех требуемых системой данных, сохраняемся.

Вместо заключения

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

А вообще, Discord – это многофункциональная программа, которая просто поражает своими уникальными опциями, в значительной степени упрощающие общение на данной платформе.

Вебхуки (Webhooks) позволяют настроить репозиторий для отправки различных запросов и сообщений на удалённый сервер при возникновении на репозитории определённых событий.

Вебхук состоит из следующих компонентов:

  • Субъект — ресурс, в котором создаётся вебхук, то есть собственно репозиторий.
  • Одно или несколько событий — события, посылаемые вебхуком при срабатывании триггера (у большинства репозиториев событием по умолчанию является push
    ).
  • URL — конечная точка, куда вебхук должен отправить данные.

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

Перед тем, как создать вебхук в репозитории, нам нужен сервер, который будет принимать данные. Особенность вебхуков заключается в том, что их можно интегрировать в различные приложения или сервисы (Telegram, Битрикс24 и так далее).

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

Затем на созданном сервере нажмём на его название и в открывшемся меню выберем Настройки сервера
.

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

В появившемся окне будет предложено задать следующие данные для вебхука:

  • Имя вебхука, которое будет отображаться в сообщениях.
  • Канал, в который будут приходить сообщения (по умолчанию, в Discord создаётся канал #general, при желании вы можете создать новый канал специально для вебхука и задать его в параметрах).
  • Иконка для вебхука.

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

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

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

В уже имеющемся проекте откроем вкладку Settings
. Зайдём в раздел Webhooks
и нажмём Add webhook
, чтобы создать новый вебхук.

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

  • Payload URL
    — собственно конечная точка, адрес сервера, куда нужно отправлять данные. Сюда нужно скопировать URL, который был сгенерирован в Discord при создании вебхука.Примечание:
    в официальной документации говорится, что для взаимодействия между Discord
    и GitHub
    крайне важно добавить в конец URL ‘/github
    ‘. Например:
    https://discordapp.com/api/webhooks/424423662137901059/45LkPViOlhf7HEtpG_Pm8C-_B7Q_9ykWp9luUxP35XrM3kl8BVxPzKG3-oq-gzGzJksF/github
  • Content type
    — вид данных, которые будут отправляться на сервер. Выберем application/json
    , чтобы получать данные в формате JSON.
  • Which events would you like to trigger this webhook? 
    — здесь следует выбрать, на каких событиях должен срабатывать триггер вебхука. Можно выбрать отправку данных только при push
    , при любых событиях или выбрать из списка те события, которые нужно отслеживать.

Введя все необходимые данные, сохраним вебхук, нажав Add webhook
. Если всё сделано правильно, в списке вебхуков рядом с созданным вебхуком появится галочка, означающая, что соединение с сервером работает.

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

В Telegram
существует большое количество ботов для автоматизации выполнения определённых операций. Одним из таких ботов является Integram, который позволяет интегрировать в Telegram различные сервисы в пару кликов.

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

Выберем GitHub, после чего откроется диалог с одноимённым ботом, который предложит ряд команд для работы с ним.

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

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

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

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

В результате в Telegram будут приходить уведомления, отправленные этим вебхуком.

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации