Skip to content

Add Template / Edit Template ​

Add template открывает wizard создания template внутри проекта. Этот wizard помогает собрать пользовательский сценарий подписки поверх уже существующих triggers: описать template, задать inputs, создать topics и связать каждый topic с triggers через rules.

Редактирование существующего template использует тот же процесс, но форма открывается с уже сохраненными значениями.

Перед созданием template обычно стоит подготовить triggers: создать их вручную через Add trigger / Edit trigger или сгенерировать через Import triggers. Template не создает trigger сам, а использует уже существующие triggers проекта.

Step 1. Metadata ​

На этом шаге задаются основные данные template. Они показываются пользователю на вкладке Templates проекта и помогают понять, для какого сценария предназначен template.

Template title ​

Видимое название template. Его лучше писать коротко и по смыслу: например Token transfers, Governance events, Validator activity.

Template name ​

Внутренний slug template внутри проекта. Он формируется из title, но его можно отредактировать вручную.

Name должен быть стабильным: он используется в URL и в связях topics/rules. После публикации template лучше не менять name без необходимости.

Description ​

Описание template. Здесь стоит объяснить, какие alerts пользователь сможет получить через этот template и когда его стоит выбирать.

Step 2. Inputs ​

На этом шаге описываются inputs, которые пользователь будет заполнять при создании subscription через template.

Inputs нужны не всегда. Если topic не требует пользовательских параметров и все rules используют фиксированные условия, template может быть без inputs.

Если input используется в rule через Use inputs, пользователь должен будет заполнить его в subscription wizard.

Input ​

Каждый input описывает одно значение, доступное topics/rules этого template.

Name ​

Техническое имя input. Оно используется в rules как inputs.<name>, поэтому должно быть коротким, стабильным и понятным.

Type ​

Тип значения, которое пользователь будет вводить.

Доступные типы:

  • string - обычная строка;
  • number - число;
  • boolean - true/false;
  • null - пустое значение;
  • object - объект с вложенными полями;
  • array - массив однотипных значений;
  • tuple - массив с фиксированным набором элементов;
  • address - blockchain address;
  • balance - token/native balance;
  • currency - денежное значение.

Для большинства template inputs стоит выбирать простые типы. Чем проще input, тем понятнее пользователю создавать subscription.

Остальные свойства input настраиваются через тот же schema editor, который используется в Add trigger / Edit trigger. Там описаны metadata полей, address/balance настройки и вложенные структуры для object, array и tuple.

Step 3. Topics ​

На этом шаге показывается список topics внутри template и действия для управления ими.

Topic - это вариант подписки внутри template. Пользователь может выбрать один или несколько topics при создании subscription.

Add topic ​

Открывает wizard создания topic.

Если template еще не сохранен, интерфейс сначала сохраняет изменения template, а затем открывает создание topic.

Topics table ​

Таблица показывает topics текущего template.

Колонки:

  • Topic - title и name topic;
  • Description - описание topic;
  • Rules - первый связанный trigger/rule и количество дополнительных rules;
  • Actions - edit/delete actions.

Edit topic ​

Открывает topic wizard для выбранного topic.

Delete topic ​

Удаляет topic и связанные с ним rules из template. Перед удалением показывается подтверждение.

Topic wizard ​

Topic wizard открывается из Step 3 template wizard. Он используется и для создания, и для редактирования topic.

Topic Step 1. Metadata ​

На этом шаге задается, как topic будет выглядеть для пользователя в subscription wizard.

Title ​

Видимое название topic.

Например: Transfers, Mints, Burns, Large deposits.

Name ​

Внутреннее имя topic. Оно формируется из title, но его можно отредактировать.

Topic name нормализуется интерфейсом: пробелы и разделители приводятся к точкам, например Balances transfer станет balances.transfer. Это не общий формат всех slugs в сервисе, а текущий формат именно для topic keys, потому что topics часто выглядят как namespace события. Главное требование - name должен быть коротким, понятным и стабильным.

Description ​

Опциональное описание topic. Оно объясняет, что изменится, если пользователь включит этот topic.

Selected by default ​

Определяет, будет ли topic выбран автоматически при открытии subscription wizard.

Это удобно для основного или самого популярного topic в template. Если включить слишком много topics по умолчанию, subscription может стать шумной, поэтому лучше выбирать только действительно базовые topics.

Topic Step 2. Rules ​

На этом шаге topic связывается с одним или несколькими triggers.

Rule говорит: какой trigger использовать и какие условия должны быть выполнены, чтобы событие попало в этот topic.

Rule ​

Один rule связывает topic с одним trigger.

Если topic должен срабатывать по нескольким triggers, можно добавить несколько rules через Add rule.

Trigger category ​

Фильтр списка triggers по категории. Он помогает быстрее найти нужный trigger в большом проекте.

Trigger ​

Конкретный trigger, который будет использовать rule.

После выбора trigger wizard подгружает доступные поля для filters из trigger schema.

Filters ​

Опциональные условия rule.

Если filters не заданы, rule использует все события выбранного trigger. Если filters заданы, событие попадет в topic только когда выполнены условия.

Add a filter ​

Добавляет условие фильтрации.

В filter выбирается поле из trigger output или filters schema, оператор и значение.

Select filter ​

Поле trigger, по которому нужно фильтровать событие.

Для object-полей можно проваливаться внутрь структуры и выбирать вложенное поле.

Operator ​

Оператор сравнения.

Доступные варианты:

  • equals;
  • not equal;
  • greater than;
  • greater or equal;
  • less than;
  • less or equal.

Для числовых условий UI показывает компактные переключатели операторов.

Value ​

Значение, с которым сравнивается выбранное поле.

Value можно задать двумя способами:

  • literal value - фиксированное значение прямо в rule;
  • template input - значение из inputs, которое пользователь заполнит при создании subscription.

Use inputs ​

Переключает filter с фиксированного значения на значение из template inputs.

Например, template может иметь input wallet. Тогда rule может фильтровать поле from или to по {{ inputs.wallet }}. Пользователь вводит адрес один раз в subscription wizard, а topic rule использует его как условие.

AND / OR logic ​

Несколько filters внутри одной группы работают как AND: событие должно пройти все условия группы.

Если разделить условия через OR, wizard создает несколько групп: событие должно пройти хотя бы одну из групп.

Remove all filters ​

Удаляет все filters rule. После этого rule снова будет принимать все события выбранного trigger.

Add rule ​

Добавляет еще один rule к topic.

Это нужно, если один topic должен объединять несколько triggers. Например, topic Token activity может включать отдельные rules для transfer, mint и burn events.

Save ​

Save template сохраняет metadata, inputs, topics и rules.

Save topic сохраняет topic и возвращает пользователя к template flow.

После сохранения template появляется на вкладке Templates проекта. Если template содержит хотя бы один topic и не имеет issues, пользователи смогут открыть Subscribe и создать subscription по этому template.