Discord Webhooks: Руководство
  • Главная
  • Введение
  • JSON
  • Discord Webhook
  • Структура вебхуков Discord
    • username
    • avatar_url
    • content
    • embeds
      • color
      • author
      • title
      • url
      • description
      • fields
      • image
      • thumbnail
      • footer
      • timestamp
    • tts
    • file
  • Интеграция с
    • IFTTT
    • IFTTT Platform
  • Использовать с
    • Postman
    • HTTPie
    • cURL
  • Примеры
    • Twitch
    • Spotify
  • Дополнительная информация
    • Discord Markdown
    • Slack форматирование
    • Ограничения полей
  • Эпилог
  • Сотрудничество
Powered by GitBook
On this page
  1. Интеграция с

IFTTT Platform

Last updated 7 years ago

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

// Каждый элемент данных триггера является строкой и доступен только для чтения, без исключений.
// Вместо того, чтобы писать `Twitter.newTweetByYou` и т.д. каждый раз вы можете сократить
// его до `Trigger` потому что апплет может иметь только один триггер на данный момент.
var Text = Twitter.newTweetByYou.Text;
var UserName = Trigger.UserName;
var LinkToTweet = Trigger.LinkToTweet;
var CreatedAt = Trigger.CreatedAt;

// Если вы не хотите конвертировать HEX код цвета в integer вы можете использовать одну из
// встроенных в JS функций или просто присвоить ему HEX код.
var Color = parseInt('1da1f2', 16);
var Color2 = 0x1da1f2;

// Meta.currentUserTime
// Meta.triggerTime
// Они оба возвращают объект Moment.js. Гляньте https://momentjs.com для дополнительной информации ;)

// Создание тела JSON
var json = {
  "embeds": [{
    "author": {
      "name": UserName,
      "url": LinkToTweet
    },
    "description": Text,
    "color": Color,
    "timestamp": Meta.triggerTime
  }]
};

// также вы можете написать его намного чище

var json = {
  embeds: [{
    author: {
      name: UserName,
      url: LinkToTweet
    },
    description: Text,
    color: Color,
    timestamp: Meta.triggerTime
  }]
};

// довольно аккуратно, да?

// .skip('комментарий') позволяет вручную пропускать действия. Комментарий будет отображаться в логах как причина..
if (Text.indexOf('skip') > 0) {
  MakerWebhooks.makeWebRequest.skip('Skipped!');
}

// .set[field] метод позволяет заменять данные действий
MakerWebhooks.makeWebRequest.setBody(JSON.stringify(json));

// Объяснение:
// JSON.stringify() - конвертирует JS объект в JSON [String]
// MakerWebhooks.makeWebRequest.setBody() - заменяет тело по упомолчанию на пользовательское

// Готово!
IFTTT Platform
Учебник Javascript
Учебник Typescript