14 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Что такое веб хуки

Webhook в Discord

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

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

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

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

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

Описание Discord

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

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

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

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

Вебхуки

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

Что такое вебхук?

Вебхук – это механизм отправки уведомлений при наступлении в системе события, на которое подписано клиентское приложение. Под событием понимается изменение состояния системы. Например, событиями являются: создание нового товара, изменение полей у контрагента, удаление заказа покупателя. Уведомлением будет запрос метода POST, который будет содержать следующую информацию о наступившем событии: его тип и ссылку на изменившийся объект. Например, при изменении наименования товара, будет отправлено уведомление, которое будет содержать ссылку на созданный товар.

Непосредственно сам вебхук содержит описание изменения (тип объекта и ссылку на изменившийся объект), которое отправляется на указанный url. Пример тела запроса вебхука:

Читать еще:  Как подстричь волосы самой

В чем разница между АПИ и вебхуками

Есть 2 подхода для получения сведений об изменениях в системе: опрос через АПИ (polling) и подписка на вебхуки. Опрос через АПИ предполагает циклические запросы, чтобы получить изменения. Подписка на вебхуки предполагает получение уведомления об изменении в системе. Можно провести следующую аналогию. Предположим вы заказали товар, но его не оказалось в наличии, поэтому вы каждый день звоните в магазин, чтобы узнать о появлении товара, это похоже на опрос через АПИ. Но вы можете просто попросить менеджера в магазине позвонить вам по указанному номеру телефона, когда товар появится, это подписка на вебхуки. Очевидно, что подписка на вебхуки эффективнее и проще, так как гарантируется оперативное получение изменений в системе и меньшая нагрузка на клиентское приложение.

Когда нужно использовать АПИ, а когда вебхук

Несмотря на преимущество использования вебхуков, важно понимать, что подписка на вебхуки это всего лишь форма уведомления об изменениях в системе. Действия с сущностями (CRUD) необходимо выполнять с помощью АПИ.

Возможные сценарии, когда подписка на вебхуки выглядит предпочтительнее опросов через АПИ:

  • создание заказов покупателей и изменение их статусов
  • изменение цены товара
  • обновление номера телефона контрагента

Как использовать вебхуки через JSON API

Вебхуки в JSON API

Работа с вебхуками в МоемСкладе возможна только через JSON API. Методы работы с вебхуками позволяют создать, удалить, обновить, получить и отключить вебхуки.

Ключевыми признаками вебхука являются адрес отправки (url), тип сущности (entityType) и тип события (action). Пара признаков (entityType и action) должна быть уникальной, т.е. не может повторяться в других вебхуках. Существуют следующие типы событий (action):

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

Рассмотрим методы работы с вебхуками. Для создания вебхука достаточно указать url, entityType и action, как в примере ниже

Читать еще:  Что помогает от тошноты при беременности

В ответ должен придти json, содержащий описание вебхука

Как и в других запросах сущностей JSON API другие действия над вебхуками возможны только при указании идентификатора. В полученном json поле id. Пример получения вебхука по идентификатору.

У вебхука можно изменить поля, указанные при создании, а также включить/отключить его. Для этого выполняется PUT запрос с указанием идентификатора. Пример запроса с изменением события

Пример запроса с отключением вебхука.

Удаление вебхука выполняется по аналогии, но только используется метод DELETE.

Получить все вебхуки можно с помощью типичного GET запроса.

В ответ придет коллекция вебхуков.

Ограничения при работе с вебхуками

При работе с вебхуками есть ряд важных замечаний:

  • вебхуки доступны только на платном тарифе
  • работа с вебхуками доступна только администратору аккаунта
  • работа с вебхуками возможна только через JSON API

Отправка вебхука в клиентское приложение

МойСклад отправляет вебхук в клиентское приложение с помощью метода POST, указывая заголовок User-Agent со значением MoySklad webhook touch agent 1.0 (/https://www.moysklad.ru).

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

Как проверить, что вебхук работает?

Для проверки работоспособности вебхука удобен сервис https://webhook.site/ . Он создает уникальный тестовый url, который необходимо указать в вебхуке, и интерактивно показывает входящие запросы, т.е. уведомления вебхуков.

  1. Переходим на сайт
  2. Получаем уникальный url. Необходимо скопировать его, чтобы использовать при создании вебхука.
  3. Создаем вебхук, в примере ниже вебхук на создание услуги

WebHooks — что это такое

WebHooks – это уведомление сторонних приложений о событиях, произошедших в телефонии или виртуальной АТС МСН Телеком, путем отправки уведомлений. Например, уведомление о поступившем звонке для поднятия карточки звонящего клиента в CRM-системе. При помощи WebHooks клиент может получить информацию о входящем, исходящем или пропущенном вызове.
Во время звонка сервер посылает POST-запрос по адресу, который указан в URL. Нужно обратить внимание, что при входящем вызове WebHook посылается именно в тот момент, когда вызов идёт непосредственно на учетную запись SIP.

Данные передаются клиенту в JSON-формате по средствам HTTP в POST-запросе, непосредственно в теле запроса (raw body) в виде JSON-объекта.

Информация, отправляющаяся клиенту:

WebHooks ВАТС:

Начало входящего звонка на абонента:
<
“event_type”:”onInCallingStart” , // тип события, сигнализирующий о начале входящего звонка на абонента ВАТС
“abon”:”108″ , // номер абонента ВАТС, который принимает звонок
“did”:”74951059995″ , // номер вызывающего абонента
“secret”:”SecretToken” , // секретный token
“account_id”:10123 // лицевой счет клиента MCN Telecom
>

Конец входящего звонка на абонента
<
“event_type”:”onInCallingEnd” , // тип события, сигнализирующий об окончании входящего звонка на абонента ВАТС
“abon”:”108″ , // номер абонента ВАТС, который принимает звонок
“did”:”74951059995″ , // номер вызывающего абонента
“secret”:”SecretToken” , // секретный token
“account_id”:10123 // лицевой счет клиента MCN Telecom
>

Начало исходящего звонка на произвольный номер
<
“event_type”:”onOutCallingStart” , // тип события, сигнализирующий о начале исходящего звонка от абонента ВАТС
“abon”:”108″ , // номер абонента ВАТС, который совершает исходящий звонок
“did”:”74951059995″ , // номер вызываемого абонента
“secret”:”SecretToken” , // секретный token
“account_id”:10123 // лицевой счет клиента MCN Telecom
>

Конец исходящего звонка на произвольный номер
<
“event_type”:”onOutCallingEnd” , // тип события, сигнализирующий о конце исходящего звонка от абонента ВАТС
“abon”:”108″ , // номер абонента ВАТС, который совершает исходящий звонок
“did”:”74951059995″ , // номер вызываемого абонента
“secret”:”SecretToken” , // секретный token
“account_id”:10123 // лицевой счет клиента MCN Telecom
>

Звонок упущен
<
“event_type”:”onInCallingMissed” , // тип события, сигнализирующий о том, что входящий звонок на абонента ВАТС упущен.
“abon”:”104″ , // номер абонента ВАТС, который упустил звонок
“did”:”74951059995″ , // номер вызывающего абонента
“secret”:”SecretToken” , // секретный token
“account_id”:10123 // лицевой счет клиента MCN Telecom
>

WebHooks Телефония:

Начало входящего звонка
<
“event_type”:”InboundCallStart” , // тип события, сигнализирующий о начале входящего звонка
“did”:”74951059995″ , // номер вызывающего абонента
“secret”:”SecretToken” , // секретный token
“account_id”:10123 // лицевой счет клиента MCN Telecom
>

Конец входящего звонка
<
“event_type”:”InboundCallEnd” , // тип события, сигнализирующий о конце входящего звонка
“did”:”74951059995″ , // номер вызывающего абонента
“secret”:”SecretToken” , // секретный token
“account_id”:10123 // лицевой счет клиента MCN Telecom
>

Источники:

http://xn--d1aaliume.xn--d1ababe6aj1ada0j.xn--p1acf/faq/webhook-v-discord
http://dev.moysklad.ru/workbook/api/remap/1.1/ru/webhooks.html
http://help.mcn.ru/knowledge-base/webhooks-chto-takoe/

голоса
Рейтинг статьи
Ссылка на основную публикацию
Статьи c упоминанием слов: