Свои команды и первые правила
Создайте команду с памяткой для участников Telegram-чата. Разберитесь с событиями, условиями «Все» и «Любое» и командами модераторов.
В этой статье
Привет! В чате курса каждый день спрашивают, где записи занятий. В поддержке — как оплатить подписку. Модераторы снова объясняют правила публикации вакансий, а команда рабочего чата следит за задачами перед вебинаром.
Часть этих повторяющихся дел можно поручить Combot. В разделе «Автоматизация», или Automation, вы задаёте правило: что должно произойти и что бот сделает в ответ.
- СобытиеВ чате появилось сообщение
- УсловияВопрос об оплате в «Поддержке»
- ДействиеCombot отправляет инструкцию
Например: «Если в “Поддержке” спросили “как оплатить”, отправить инструкцию». Или: «Если модератор ответил командой на полезное сообщение, добавить его автору 25 XP».
В этом гайде будем разбирать настройки через такие повседневные ситуации. Примеры учебные: заменяйте названия тем, ссылки и тексты на свои. Условия и ограничения объясняются рядом, чтобы правило помогало именно так, как вы задумали.
Если вы открыли редактор впервые, начните с простой команды. Если уже знаете, что хотите сделать, загляните в 11 готовых сценариев или найдите нужную настройку в оглавлении.
Редактор показывает только подходящие выбранному событию поля. Поэтому у вопроса в чате, заявки на вступление и команды модератора настройки могут отличаться.
Подготовим чат
Представьте чат онлайн-курса. Каждый новый ученик спрашивает, где записи занятий, а куратор снова ищет ту же ссылку. Начнём с того, чтобы Combot мог присылать готовую памятку.
Добавьте @combot в чат. Откройте панель управления Combot, выберите этот чат и перейдите в «Автоматизация».
Проверьте две вещи: можете ли вы менять настройки и может ли бот выполнить нужное действие. Например, доступ к статистике ещё не даёт вам права создавать правила. А возможность бота писать в чат ещё не позволяет ему удалять чужие сообщения.
Права выбирайте под свою задачу:
- Присылать памятки: бот должен иметь возможность писать в выбранный чат или топик — отдельную тему внутри чата.
- Убирать рекламу: нужно право удаления сообщений.
- Выдавать мьюты и баны: нужны права администратора на ограничение участников.
- Одобрять заявки: нужно право приглашать пользователей.
- Начислять XP или репутацию: соответствующая функция должна быть включена в настройках Combot.
Если над списком правил есть предупреждение, сначала разберитесь с ним. Например, правило «За полезный ответ — 25 XP» не заработает от одного сохранения, если опыт в чате выключен.
Правила создаются для выбранного чата. Если вы уже связали несколько чатов синхронизацией триггеров, меняйте общий набор в исходном чате. Например, памятку для нескольких учебных групп можно править в чате-источнике, а в зависимых чатах её редактирование может быть недоступно.
Первое правило: бот показывает памятку
В чате курса часто спрашивают: «Где записи и домашнее задание?» Сделаем команду /course_info, которая отвечает на этот вопрос. Она ничего не удаляет и никого не ограничивает, поэтому с неё удобно начать.
- Нажмите «Добавить триггер». Назовите правило «Курс — записи и домашние задания».
- В поле «Тип» выберите «Команда». Добавьте
/course_info. - Выберите «Обычная команда». В поле «Кто вызвал» оставьте всех пользователей, чтобы памяткой мог воспользоваться любой ученик.
- В части «ТО» добавьте «Отправить сообщение». Можно взять текст ниже и заменить названия топиков на свои.
- Оставьте «Исходный чат» и текущий топик. Нажмите «Сохранить действие».
- Нажмите «Проверить», затем «Сохранить триггер». Убедитесь, что правило включено.
- Отправьте
/course_infoв Telegram. Вы должны увидеть памятку. После обычного «Всем привет!» она появляться не должна.
Теперь куратору достаточно написать одну команду вместо того, чтобы каждый раз набирать объяснение. Позже к ответу можно добавить кнопку с материалами — это разобрано в разделе «Оформление ответа».
Кнопка «Проверить» ищет ошибки в настройках. Она не отправляет команду за вас и не проверяет ответ в Telegram: последний шаг нужно сделать самостоятельно.
Как объяснить боту, что нужно сделать
Почти любое правило можно описать одной фразой:
Если в «Поддержке» спрашивают «как оплатить», отправить инструкцию по оплате.
В редакторе эта фраза разделена на две части. В «ЕСЛИ» вы объясняете, на что реагировать. В «ТО» — что сделать в ответ.
Боту не нужно угадывать вашу задачу по названию правила. Название «Помогать новичкам» ничего само по себе не включает: нужно выбрать новичков, нужное событие и действие.
«Все»: должны совпасть все условия
Допустим, инструкция по оплате нужна только в «Поддержке». Вы задаёте два условия: нужный топик и фраза «как оплатить».
Вопрос «Как оплатить подписку?» в «Поддержке» подходит. Та же фраза в «Болталке» — нет. Вопрос «Как сменить пароль?» в «Поддержке» тоже не подходит.
Так работает «Все», или И: должны совпасть все выбранные требования.
«Любое»: достаточно одного подходящего варианта
Одни участники пишут «как оплатить», другие — «не проходит платёж». Для обеих фраз нужна одна инструкция.
Там, где редактор предлагает «Любое», или ИЛИ, достаточно совпадения с одним из выбранных вариантов. Не нужно, чтобы человек написал обе фразы в одном сообщении.
Исключения: кого или что не нужно затрагивать
В чате вакансий вы напоминаете о правилах публикации, но не хотите отвечать на объявления команды. Добавьте администраторов в «Исключить».
Исключение не удаляет человека из чата и не снимает с него права. Оно только говорит: «Этот набор условий для него не подходит».
В пользовательских условиях исключение действует и при выборе «Любое». Например, совпадение по активности не отменит исключение администратора в том же наборе.
Несколько вариантов ИЛИ у одного правила
Кнопка «Добавить вариант ИЛИ» нужна, когда к одному ответу должны вести разные наборы условий. Например:
- В «Поддержке» написали «как оплатить».
- В «Вопросах новичков» написали «где купить подписку».
Вы описываете оба случая, а текст инструкции составляете один раз. Тип события у них общий. Если подходят оба варианта, список действий этого правила всё равно выполняется один раз.
У двух самостоятельных правил всё иначе: каждое может прислать свой ответ. Поэтому два почти одинаковых правила иногда дают две одинаковые памятки.
Варианты ИЛИ независимы. Если сообщения администраторов не должны подходить ни одному из них, добавьте исключение в каждый вариант.
Отдельную альтернативу можно выключить. Например, временно убрать ответ в «Вопросах новичков», сохранив его в «Поддержке». Чтобы остановить весь сценарий, выключите основное правило.
Полезная привычка: перед сохранением прочитайте условие вслух. «Ответить на слово “оплата” где угодно» и «ответить на вопрос об оплате только в “Поддержке”» — разные правила.
Свои команды для участников и модераторов
В чате полезны два вида команд. Одни показывают готовый ответ: где расписание, как связаться с куратором, куда отправить работу. Другие помогают модератору действовать в отношении конкретного участника: выдать предупреждение или отметить полезный ответ.
Названия команд в этом гайде — примеры. Сначала создайте их в редакторе; они не появляются в Combot просто от того, что вы написали их в чат.
Название, описание и тип правила
Название видно в списке автоматизаций. Выбирайте его так, чтобы коллега сразу понял задачу: «Курс — памятка для учеников», «Вакансии — напоминание о зарплате». Можно использовать до 80 символов.
Описание — заметка для администраторов, до 280 символов. Например: «Показываем памятку участникам нового потока. После окончания курса можно выключить». Бот не публикует это описание в чат.
В поле «Тип» выберите:
- «Триггер», если бот должен сам заметить подходящую ситуацию. Например, вопрос «как оплатить».
- «Команда», если человек должен явно вызвать правило. Например, отправить
/course_info.
Несколько команд для одного ответа
Можно добавить /course_info и /course_help в одно правило. Каким бы именем участник ни воспользовался, он получит одну и ту же памятку.
Каждое имя добавляется отдельно. Используйте латинские буквы, цифры и подчёркивания. Выбирайте названия, которые ещё не заняты встроенными командами Combot или командами других ботов в вашем чате.
Обычная команда: получить информацию
Выберите «Обычная команда», если участнику нужен ответ, а не действие над выбранным человеком.
Например, ученик пишет /course_info, и бот объясняет, где записи. Никого выбирать через «Ответить» не нужно.
В этом режиме действия над пользователем недоступны. Обычная команда не подходит для идеи «каждый пишет команду и начисляет себе XP».
Если включить «Удалить сообщение команды», из разговора исчезнет вызов /course_info, а памятка бота останется. Так чат не заполняется служебными командами.
Команда ответом: выбрать участника
Представим, что участник Илья нарушил правила, а модератор Анна хочет выдать предупреждение.
- Анна выбирает «Ответить» на сообщении Ильи.
- Пишет в ответе
/team_warn. - Combot выдаёт предупреждение Илье.
Чтобы получить такой результат, у команды выбирают «Ответ на сообщение». В поле «Кто вызвал» разрешают администраторов Telegram, а в действии «Применить к» выбирают пользователя из ответа.
Анна — автор команды. Илья — автор сообщения, на которое она ответила. Если перепутать их в настройках, получится совсем другая задача.
Поле К кому применить в разделе ЕСЛИ задаёт, на кого разрешено вызывать команду. Поле Применить к внутри каждого действия выбирает, кто получит именно это действие.
Там, где это доступно, действие можно направить автору команды, человеку из ответа или обоим. Для предупреждения из нашего примера нужен только Илья.
Доступ к вашей команде не выдаёт человеку права администратора Telegram. Сам Combot тоже должен иметь права для выбранного действия.
А что будет удалено? Если добавить удаление сообщения команды, исчезнет /team_warn, а не исходная реплика Ильи. Выбор пользователя для предупреждения не меняет того, какое сообщение удаляется.
На что может реагировать бот
Поле «Когда» — ответ на вопрос «Что должно произойти?». Для триггера вы выбираете событие из списка. У команды всё проще: её запускает сообщение с самой командой.
Сообщения, комментарии и посты
Любое сообщение чата / Сообщение чата. Подойдёт для обычной жизни группы: вопроса о занятии, опубликованной вакансии, присланного документа. Например, бот замечает «где запись» и отправляет памятку.
Комментарии. Выбирайте, если правило нужно для обсуждений публикаций связанного канала. Например, отвечать инструкцией на вопрос «как записаться» в комментариях к постам школы.
Пост канала. Это сами публикации связанного канала. Например, при появлении поста с #эфир отправить в чат подготовленную памятку о правилах обсуждения. Условие для обычных сообщений чата не заменяет условие для постов.
Учитывать редактирования. Представьте, что участник сначала опубликовал короткую вакансию, а затем дописал контакты. С этой настройкой Combot проверит и изменённое сообщение. Действия могут выполниться повторно, поэтому особенно внимательно используйте редактирования вместе с наградами.
Заявки, вступления и уход
Заявка на вступление. Человек ещё ждёт решения. Например, организаторы встречи хотят автоматически одобрять заявки по определённому приглашению.
Новый участник. Человек уже вступил. Теперь можно встретить его сообщением: «Добро пожаловать! Начните с закреплённой памятки».
Уход участника. Человек вышел сам или его удалили. Например, можно отправить уведомление в настроенный канал логов, где команда следит за событиями чата. У такого события могут быть два разных участника: кто ушёл и кто его удалил.
Заявка и вступление — два разных шага. Если на оба поставить приветствие, новичок может получить две памятки. Выберите, на каком шаге она действительно нужна.
Бусты
Новый буст. Например, после буста клубного чата бот публикует короткое «Спасибо за поддержку сообщества!».
Удалённый буст. Например, команда получает уведомление об изменении в логах. Это не обязательно означает, что человек сам решил забрать буст, поэтому обвинительный текст здесь неуместен.
Реакции
Реакция пользователя. Человек добавил, убрал или заменил реакцию. Например, команда получает уведомление о подходящем изменении реакций в рабочем обсуждении.
Количество реакций. Telegram прислал обновлённое число реакций у публикации связанного канала. Например, бот сообщает модераторам о публикации, у которой сейчас от 20 до 30 выбранных реакций.
Число реакций не рассказывает, кто именно поставил каждую из них. И одно правило может срабатывать на новые обновления снова. Как настроить эти фильтры без неожиданных повторов, объясняем в разделе «Реакции и чек-листы».
Чек-листы
В рабочей группе команда готовит вебинар. Кто-то создаёт список задач, добавляет новый пункт или отмечает готовую презентацию. Для этого есть три события:
- «Новый чек-лист» — появился список. Можно сообщить команде, что заведён новый план.
- «Задачи чек-листа добавлены» — список пополнили. Например, отправить уведомление в логи.
- «Задачи чек-листа выполнены» — отметили выполненные задачи. Можно предложить коллегам открыть список и посмотреть изменения.
Последнее событие не означает «весь вебинар подготовлен»: выполненной могла оказаться только одна задача.