# Триггеры
Триггеры — это мощный инструмент для автоматизации любых действия в группе. Можно задать условия, на которые будет реагировать бот, и действия, которые он будет выполнять.
Триггеры работают полностью автоматически и значительно облегчают работу админов чата.
# Тарифы на триггеры
Количество триггеров — для 1 чата вы можете создать от 12 до 300 триггеров. Количество условий в одном триггере — в один триггер можно поместить от 6 до 200 условий. Количество действий в одном триггере — в один триггер можно поместить от 3 до 90 действий.
Если лимит по количеству триггеров, действий или условий превышен — в личном кабинете появится предупреждение. Если истек срок тарифа – триггеры будут работать с ограничениями. Например, если на оплаченном тарифе вы создали триггер с 4 действиями, без тарифа сработают первые 3, если в триггере 7 условий, сработают первые 6. Также и с количеством триггеров – если будет больше, чем возможно, остальные просто не будут работать.
Лимита на группы условий/группы действий нет – вы можете создать 6 групп действий, в каждой из которой будет по одному действию, или 1 группу действий с шестью действиями для тарифа «Starter».
# Для чего нужны триггеры?
1. Быстрые автоматические ответы в чате С помощью триггеров вы можете создавать готовые ответы, которые бот будет высылать в чат. Это облегчить работу админов, когда требуется отвечать на повторяющиеся вопросы. Например, вы можете создать триггер, который будет реагировать на слово "тарифы" в сообщениях участников и высылать информацию по ним в чат в виде сообщения.
2. Дополнение к фильтрам Вы можете включить фильтр мата (opens new window), где будет задано строгое наказание за нарушение и дополнить его триггером, который будет реагировать на слова близкие по смыслу, но с более мягким наказанием.
3. Дополнение к системе репутации С помощью триггеров, вы можете создать дополнительную возможность для участников получать очки за разные действия в чате. Например, можно выдавать триггеров очки, если участник соберет на свое сообщение 10 реакций "🔥" 👉 Смотреть видеоурок (opens new window)
4. Игры и повышение активности в чате Триггеры подходят для проведения викторин и создания игр в чате. Например, можно сделать триггер, который будет срабатывать только в 50% случаев или реагировать на правильные ответы викторины с задержкой.
5. Нестандартные кейсы Кастомные триггеры в тематике вашего чата& — легко!
# Из чего состоит триггер
Идея работы триггеров очень простая — вы указываете, на что должен среагировать бот и что он должен выполнить. Поэтому триггер состоит всего из двух простых вещей: условие + действие
Подсказка
Условия и действия в триггере можно комбинировать в любых сочетаниях, словно это конструктор. Это позволит делать уникальные триггеры в стилистике вашего чата.
# Сигнал
Все условия, на которые может реагировать бот, разбиты по специальным категориям под названием "Сигналы".
Сигнал — это зона или область, где может реагировать бота.
Поэтому вы вначале выбираете сигнал, а потом условия, которые в нем есть.
Сигналом для реакции бота может быть отправка сообщения в чат, участник, который поставил определенную реакцию на чье-то сообщение, и даже участник, который нажал в сообщении на кнопку с триггером.
Пример: выбираем сигнал "Сообщение" — тогда сигналом для реакции бота будет отправка участником сообщения в чат и разные условия, которые относятся к сообщению.
# Условие
Один сигнал (категория) может содержать разное количество условий, которые к нему относятся.
Условие — то, на что может среагировать бот.
Условием для реакции бота может быть определенное слово в сообщении, конкретная реакция эмодзи, которую поставил участник на сообщение, ранг участника, который нажал на кнопку с триггером.
Пример: выбираем сигнал "Кто поставил реакцию" и условие "Реакция" — тогда сигналом для реакции бота будет участник, который поставил реакцию эмодзи на сообщение, а за счет условия "Реакция", бот будет реагировать только на определенные реакции эмодзи от участника, например, только на "👍"
# Действие
Действие — то, что должен сделать бот, если все условия из триггера выполнены.
Пример: выбираем действие "Пользователь не сможет писать" — если все условия выполнены, бот отправит участника в беззвучный режим и запретит ему писать сообщения в чат. Работает аналогично команде /mute
# Создаем простой триггер
Самый простой формат триггера, это создание автоответа. Бот будет высылать готовый ответ в чат, если в сообщении участника будут слова и фразы из условия, на которые бот должен реагировать.
Пример триггера: бот будет реагировать на "помогите" и "нужна помощь" в сообщении участника и отправлять ему в ответ готовое сообщение.
1. Название
Придумайте название для триггера. Оно будет видно только вам и поможет быстрее искать готовые триггеры в личном кабинете.
2. Выбор условия
Нажмите "Добавить условие" в блок "Группа условий #1" Нам нужен сигнал "Сообщение" и условие в нем "Сообщение".
Для нашего кейса понадобиться добавить всего 1 условие в группу.
Для триггеров, которые вы будете создавать в дальнейшем, можно добавлять неограниченное количество условий в группу и создавать несколько "Групп условий".
Подсказка
Условия в триггер добавляются по одному в блок "Группа условий". Одна "Группа условий" может содержать неограниченное количество разных типов условий в рамках тарифа. Например, в "Группа условий #1" может входить: "Сообщение содержит" + "Длина сообщения" + "Инициатор".
Условия внутри одной группы связаны между собой союзом "И". Для срабатывания триггера должны выполниться все условия внутри этой группы: "Условие 1" и "Условие 2" и "Условие 3"... и так далее.
Каждая "Группа условий" внутри одного триггера независимы друг от друга и работают через союз "ИЛИ". Если у вас задано несколько групп условий, для срабатывания триггера должна выполниться или "Группа условий #1" или "Группа условий #2" и так далее.
3. Внесение настроек в условие
В поле "Выберите тип условия" необходимо выбрать "Сообщение содержит"
Тогда триггер будет реагировать, если сообщение содержит заданные ниже условия. Например, если задано условие "помогите", бот отреагирует на " Помогите, пожалуйста", " Есть тут кто? Помогите!"
В поле "Значения условия" необходимо внести список слов и выражений, на которые будет реагировать бот. Слова можно вводить поштучно через Enter в поле Chips или списком через запятую в поле Text.
Инструмент «Модификаторы»
Модификаторы помогают триггеру реагировать на условие в сообщении, если оно содержит дополнительные элементы. Например, задаем условие "помогите" и включаем модификаторы "Не учитывать регистр", "Не учитывать символы" и "Не учитывать emoji" Бот будет реагировать, если найденное условие в сообщении участника содержит символы "Помогите!?!", эмодзи "Помогите🥲", заглавные буквы "ПоМоГИтЕ" и другие включения. Модификаторы добавляются по желанию.
Инструмент «Инвертировать условие»
Инвертирование делает так, что триггер начинает работать наоборот. Если триггер должен был сработать на сообщения со словом "помогите", при инвертировании триггер будет срабатывать на все сообщения, где нет слова "помогите". Если стоит «Реплаи к @ChatKeeperBot» – условие будет срабатывать на все сообщения, которые не являются реплаями (ответами) к @ChatKeeperBot. Не меняются при инвертировании только фильтры условий, инициатор «Кто угодно» и тип сообщения «Любое».
4. Действие
Нажмите "Добавить действие" в блок "Группа действий #1" Нам необходимо действие "Отправить сообщение в чат"
Для нашего кейса понадобиться добавить так же всего 1 действие в группу.
Для триггеров, которые вы будете создавать в дальнейшем, можно добавлять неограниченное количество действий в группу и создавать несколько “Групп действий”.
Подсказка
Действия в триггер добавляются по одному в блок "Группа действий". Одна "Группа действий" может содержать неограниченное количество разных типов действий в рамках тарифа. Например, в "Группа действий #1" может входить: "Отправить сообщение в чат" + "Увеличить количество очков репутации" + "Выдать достижение".
Действия, внутри одной группы связаны между собой союзом "И". Если триггер сработает, в группе действий выполнится: "Действие 1" и "Действие 2" и "Действие 3"... и так далее. Для любого "Действия" в группе можно задать ""Шанс выполнения". Он находится в значке ⚙️ и указывается в процентах. По умолчанию для всех "Действий" установлены 100%
Каждая "Группа действий" внутри одного триггера независима друг от друга и работают через союз "ИЛИ". Для каждой "Группы действий" так же можно задать "Шанс выполнения". Например, для "Группа действий #1" шанс выполнения 20%, для "Группа действий #2" шанс выполнения 80%. По умолчанию для всех "Группы действий" установлены 100% — бот сам сделаем выбор, какую из них выполнить. Этот выбор будет непредсказуем.
4. Внесение настроек в действие
Напишите текст сообщения, которое бот отправит в чат участнику. Чтобы сделать сообщение персональным, используйте плэйсхолдеры. Например, плэйсхолдер %target_username% покажет имя или юзермэйм участника.
Можно задать до 12 вариантов сообщения. Для этого нажмите кнопку "+ Добавить вариант сообщения". Бот будет выбирать случайным образом какой из заданных вариантов отправить в чат.
Для всех сообщений можно настроить дополнительные действия и настройки. Например, включить "Удалять предыдущее сообщение" — тогда, если триггер сработает дважды, бот удалит предыдущее сообщение и оставит только последнее. Это поможет избежать спам сообщениями от бота.
Бот может отправить сообщение в чат: Отправить сообщение реплаем — бот отправит текст в ответ на сообщение, на которое сработал триггер.
Отправить сообщение без реплая — бот пришлет текст в чат как обычное сообщение.
Отправить сообщение ответом на реплай — используется для триггеров, которые вызывают админы. Чтобы готовый ответ пришел участнику чата, а не админу, который вызвал этот триггер. В качестве условия можно использовать ключевые слова.
5. Сохраните триггер Обязательно нажмите зеленую кнопку "Сохранить" в триггере. Готовый триггер появится в разделе "Триггеры" и сразу будет активен для вашего чата (переключатель горит синим в положении "Вкл").
Подсказка
В каждого созданного триггера есть переключать "Вкл/Выкл". Все готовые триггеры можно редактировать, копировать и удалять.
6. Проверьте работу триггера
Для этого достаточно отправить слово из условия в чат.
# Импорт и экспорт триггеров
Все триггеры, созданные в Chatkeeper, можно экспортировать и импортировать для работы в других чатах. Это можно сделать прямо в разделе "Триггеры чата (opens new window)" или разделе "Дополнительно" в "Импорт настроек чата (opens new window)" и "Экспорт настроек чата (opens new window)"
Для экспорта готового триггера откройте его для редактирования и нажмите на три точки "⋮" рядом с кнопкой "Сохранить".
Для импорта триггера прямо в разделе "Триггеры" нажмите на три точки "⋮" рядом с кнопкой "Создать триггер"
В разделе "Дополнительно", вы можете массово экспортировать и импортировать сразу большое количество триггеров.
# Расширенные настройки
Список настроек, которые дают боту уточнения о том, как работает желаемый алгоритм триггера в группе.
Инструмент «Тип выполнения действий» Если у вас триггер с несколькими группами действий, настройка поможет указать тип выполнения для них. Можно использовать для игр, лотерей и развлекательных триггеров, где важен эффект непредсказуемости.
Выполнить все группы действий — бот последовательно выполнит каждую группу действий, учитывая заложенный "шанс выполнения" в самой группе действий и в каждом действии внутри нее.
Пример: "Группа действий №1" шанс выполнения 50% — в ней действие отправить сообщение "два" ИЛИ "Группа действий №2" шанс выполнения 50% — в ней действие отправить сообщение "три"
Есть включить "Выполнить все группы действий" — бот последовательно выполнит "Группу действий №1" и в 50% отправит сообщение "два", затем выполнит"Группу действий №2" и в 50% отправит сообщение "три"
Выполнить случайную группу действий — бот выполнит одну случайную группу действий, учитывая заложенный "шанс выполнения" в самой группе действий и в каждом действии внутри нее.
Пример: "Группа действий №1" шанс выполнения 100% — в ней действие отправить сообщение "Классный 👍" ИЛИ "Группа действий №2" шанс выполнения 100% — в ней действие отправить сообщение "Унылый 🥱" ИЛИ "Группа действий №3" шанс выполнения 100% — в ней действие отправить сообщение "На приколе 🤡" ИЛИ "Группа действий №4" шанс выполнения 100% — в ней действие отправить сообщение "Жди сюрпризов 😈"
Есть включить "Выполнить случайную группу действий" — бот случайно выполнит только 1 из 4х группу действий и в 100% отправит сообщение с какой-то фразой.
Инструмент «Задержка выполнения» Бот может выполнять действие из триггера сразу или через заданное время, например, чтобы создать интригу. Задержку можно использовать для розыгрышей и викторин.
Инструмент «Шанс срабатывания» По умолчанию, триггер срабатывает каждый раз (шанс 100%), если выполнено условие. Для создания игрового мотива, можно сделать шанс срабатывания 50%, тогда триггер будет работать непредсказуемо, лишь в половине случаев.
Инструмент «Обрабатывать альбомы как медиа-файл с подписью» Настройка поможет триггеру реагировать на сообщение с альбомом, как на 1 сообщение. По умолчанию, Telegram считает сообщение с несколькими фото/видео как несколько сообщений. Если участник отправит в чат сообщение с 5ю фото - триггер сработает на него 5 раз. Настройка поможет это избежать.
Инструмент «Обрабатывать отредактированные сообщения» Уникальный инструмент, который позволит создавать триггеры для контроля и исправления нежелательного контента в вашем в чате. У автора сообщения будет определенное время, чтобы его отредактировать и исправить на новый вариант, которые не будет нарушать правила чата.
Для создания такого триггера, включите «Обрабатывать отредактированные сообщения» и задайте необходимые параметры в "Условия исправлений"
Инструмент «Не логировать выполнение триггера» Настройка, которая отключает запись в журнал (opens new window) по срабатывании триггера.
# Установка ограничений
Для всех триггеров можно установить ограничения для их вызова. Это поможет защитить чат от спама триггерами. Ограничение можно установить на пользователя или на чат.
Ограничение на пользователя — устанавливает ограничение по количеству вызовов триггера на пользователя. Например, только 1 раз в час или только 1 раз в неделю для одного пользователя.
Ограничение на чат — устанавливает ограничение по количеству вызовов триггера на чат. Установленные администратором лимиты действуют для всего чата, а не для конкретного пользователя. Например, только 5 раз в час для всего чата, независимо от того, кто вызывает триггер.
# Создаем триггер с формой опроса
В Chatkeeper вы можете создавать профессиональные формы опроса (opens new window), которые можно добавлять в "Тип проверки новых пользователей" (opens new window) и в триггеры (opens new window) чата.
Форма — это профессиональный опросник для сбора информации и обратной связи от пользователей чата. В форму можно добавить до 8 типов вопросов. Например, выпадающий список вариантов ответов, ввод ответа в свободной форме, чекбокс, выбор даты из календаря и пр. 👉 Подробнее о формах опроса (opens new window)
❗️ Форма опроса создается отдельно в разделе "Формы" (opens new window)
Пример триггера: админ или участник смогут отправить слово "опрос" и бот пришлет в чат сообщение с формой для прохождения опроса.
1. Выбираем условие
Для создания триггера с опросом нам подходит сигнал "Сообщение", условие "Сообщение" и тип условия "Полное совпадение".
Вносим в поле "Значения условия" слово "опрос" и добавляем модификаторы "Не учитывать регистр" и "Не учитывать символы", тогда триггер сможет реагировать на "Опрос", "ОПРОС" и "опрос!!!!".
2. Активируем раздел "Действие с формами"
В поле "Прикрепленная форма" необходимо выбрать готовую форму, которая будет использоваться в триггере.
Далее нажмите кнопку добавить "Действие" для обработки результатов пройденных форм.
Действие "Отправить результат формы в чат" После заполнения формы участником ее результат отправится в чат и будет доступен для просмотра всем пользователям. После выбора действия, в поле ввода текста можно будет написать содержимое формы. (доступно на тарифах Advance и Ultimate)
Действие "Отправить результат формы личным сообщением" После заполнения формы участником ее результат отправится в личные сообщения указанным пользователям. Список получателей результата указывается после выбора действия в форму «Список пользователей, которым придет результат формы». Указывается юзернейм без знака @ в малом регистре, например «username» или ID пользователя. Чтобы сообщение отправилось, пользователю необходимо "Запустить" бота ChatKeeperBot или отправить боту команду /start в личные сообщения. (доступно на тарифах Advance и Ultimate)
3. Выбираем действие
❗️Кнопку с формой можно прикрепить только к текстовому сообщению. Поэтому нам подходит действие "Отправить сообщение". Напишите текст сообщения, которе бот пришлет в чат после того, как админ или участник отправят в чат слово "опрос"
В поле "Текст кнопки для вызова формы" укажите привлекательное название для кнопки, где будет располагаться форма опроса.
3. Сохраните триггер и проверьте его работу в чате
Пришлите в чат слово "опрос"
# Отработка триггеров
Отработка триггеров происходит поочередно. На картинке ниже выделен красным номер, по которым идет очередь срабатывания триггеров
Чтобы триггеры работали подряд по порядку необходимо включить тумблер «Продолжить выполнение цепи триггера по окончании текущего триггера» в расширенных настройках, доступных с тарифа «Advanced»
Если тумблер выключен, то сработает только один триггер, тот, который с меньшим номерком.
# Регулярное выражение
Самое мощное и самое сложное условие. Оно дает нескончаемый функционал для вашего бота. С помощью этого инструмента можно составлять любые условия на сообщение, имя и логин пользователя! Оно может заменить целую цепочку условий в триггерах и даже большинство текстовых фильтров.
Выполняет поиск на основе регулярного выражения языка Java. Тестер и краткий справочник по регулярным выражениям доступен по нажатию в верхней панели кнопки «Помощь» - «Тестирование регулярных выражений». Также есть небольшая статья, посвященная регулярным выражениям в инструкции (opens new window)
# Триггер с регулярным выражением
Триггер с регулярным выражением является самым простым по настройке и не требует ручного добавления длинной цепочки условий.
В качестве условия выбирается всего одна категория «Прочее — Регулярные выражения».
Первым этапом нужно обозначит область поиска для бота с помощью поля «Выберите тип условия». Бот будет проверять выбранную область на предмет совпадения с условием в регулярном выражении.
Бот может обрабатывать:
- сообщение пользователя
- сообщение, на которое ответили
- имя пользователя
- имя ответившего пользователя
- логин пользователя
- логин ответившего пользователя
В качестве примера, укажем область поиска «Сообщение пользователя».
В поле «Значения условия» вы вставляете готовый шаблон регулярного выражения. Все готовые шаблоны представлены здесь ниже.
Например, возьмем шаблон, с помощью которого бот будет реагировать на сообщения полностью написанные на английском языке:
^[A-Za-z\d\s.,!?]+$ – поиск текста, полностью состоящего из латинских букв, с учетом пробелов, любых цифр и определенных символов «.,!?»
Для триггера с регулярным выражением так же допустимо использование модификаторов. С помощью модификаторов бот не будет учитывать засоряющие поиск дополнительные условия. Например, можно включить «Не учитывать emoji». Тогда бот будет игнорировать любые emoji в любом месте сообщении пользователя и обрабатывать текст, словно их в нем нет.
Настройка «Инвертировать условие» всегда по умолчанию выключена. Это означает, что бот будет реагировать, если найдено совпадение с условием в области его поиска. Если включить «Инвертировать условие», триггер будет работать наоборот и бот будет реагировать на все, что не соответствует заданному условию.
Для нашего примера, где бот должен реагировал на сообщения на английском языке, настройка остается выключенной.
В качестве реакции бота, вы можете указать любой подходящий по смыслу тип действия. Возьмем для нашего кейса действие «Отправить сообщение в чат», где в поле для текста попросим пользователя, на чье сообщение среагировал бот, обращаться в чат поддержки для иностранных пользователей.
Take me to pookie
Пример работы триггера с регулярным выражением по поиску и реакции на сообщения пользователей, полностью написанным на английском языке, с учетом пробелов, любых цифр и определенных символов «.,!?». Без учета emoji (встроенный модификатор)
Готовые шаблоны регулярных выражений ищите в главе "Регулярные выражения" (opens new window)
← Статистика Автоответы →