Перейти к содержимому
Документация
Автоматизация (Режимы)

Автоответчик

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

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

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

За чем следить

Источник срабатывания — переключатель из двух положений.

ВариантЧто сканируется
Непрочитанные сообщения (по умолчанию)Диалоги аккаунта с непрочитанными: берётся до 100 диалогов основной папки, из каждого — последние 20 сообщений
Конкретные целиТолько чаты из вашего списка, тоже по 20 последних сообщений на цель за цикл

Цели для мониторинга — по одной на строку: @username, ссылка t.me/…, номер телефона или числовой ID. Поле появляется только при выборе «Конкретные цели».

Разница между вариантами проявляется в первом цикле. В режиме «Непрочитанные» аккаунт отвечает на то, что уже висит непрочитанным на момент старта — ровно на столько последних сообщений в каждом диалоге, сколько там непрочитанных. В режиме «Конкретные цели» первый цикл только запоминает текущее состояние чатов и на историю переписки не отвечает: ответы пойдут лишь на сообщения, пришедшие после запуска.

Как решается, отвечать ли

Метод ответаКлассический (цепочки) по умолчанию или ИИ.

Классический: связки правил

Правила задаются отдельным элементом интерфейса — связками сообщений на вкладке Автоответчик. Это список правил; каждое правило состоит из набора условий и одного ответа. Связки читаются только при классическом методе.

Каждое правило содержит:

  • Переключатель активности — выключенное правило пропускается целиком, удалять его не нужно.
  • Условия — одно или несколько, у каждого свой оператор и значение. Правило без условий игнорируется.
  • Режим совпадения — «все условия» (правило срабатывает, только если совпали все) или «любое» (достаточно одного).
  • Ответ — что отправить, если правило сработало.
ОператорКогда условие выполнено
contains (по умолчанию)Текст сообщения содержит подстроку
equalsТекст полностью совпадает со значением
starts_withСообщение начинается со значения
ends_withСообщение заканчивается значением
regexРегулярное выражение находит совпадение в тексте

Все операторы работают без учёта регистра, включая регулярное выражение. Ошибка в синтаксисе регулярного выражения не роняет режим — такое условие просто считается несовпавшим.

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

Ответ у правила бывает трёх видов:

Тип ответаЧто отправится
СтатичныйТекст, заданный в самом правиле
ШаблоныСлучайный шаблон из прикреплённого к правилу списка
ИИМодель пишет ответ по промпту этого конкретного правила; текст входящего сообщения передаётся ей как контекст

Тип «ИИ» внутри правила — полезный гибрид: отбор остаётся жёстким и предсказуемым (условия), а формулировка каждый раз получается своя.

ИИ: модель решает сама

Промпт для ИИ появляется при выборе метода «ИИ». В промпте описываются две вещи: какие сообщения считать релевантными и как на них отвечать. Текст входящего сообщения подставляется в запрос автоматически.

Здесь один запрос к модели решает обе задачи. Если сообщение под инструкцию не подходит, модель возвращает служебный маркер пропуска — и ответ не отправляется вообще. Это важное отличие от классического метода: при ИИ-методе молчание в ответ на сообщение — штатное поведение, а не сбой. Провайдер, ключ и модель берутся с вкладки AI.

Темп и форма ответа

ПолеТипПо умолчаниюНазначение
Интервал проверки (сек)Число60Пауза между циклами мониторинга. Значение фиксированное, не диапазон
Задержка перед ответом (сек)Диапазон3–15Случайная пауза перед каждой отправкой — имитация набора текста и защита от FloodWait
Отвечать цитатойФлажокВключеноОтвет уходит цитатой на исходное сообщение. Выключено — обычным сообщением в чат

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

Как проходит один цикл

Сбор списка чатов. В режиме «Непрочитанные» запрашиваются диалоги с непрочитанными, в режиме целей берётся ваш список.

Чтение сообщений. Из каждого чата читаются последние 20 сообщений; отметка «прочитано» при этом не ставится. Недоступная цель даёт предупреждение в лог, остальные обрабатываются дальше.

Отбор новых. Отбрасываются сообщения самого аккаунта, сообщения без текста и всё, что уже разбиралось в этом запуске: режим помнит по каждому чату номер последнего обработанного сообщения.

Решение. Для каждого отобранного сообщения вычисляется ответ — по связкам или через ИИ. Пустой результат означает «не отвечать».

Отправка. Пауза из диапазона задержки, затем ответ уходит цитатой или обычным сообщением. Успешная отправка пишется в лог.

Ожидание. Аккаунт спит заданный интервал проверки, и цикл повторяется.

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

Ограничения

  • Режим не завершается сам. Цикл рассчитан на непрерывную работу и не имеет условия выхода по задаче — аккаунт занят, пока запуск не остановлен вручную.
  • Память о разобранном живёт только внутри запуска. Карта «уже отвеченных» хранится в оперативной памяти. После перезапуска точка отсчёта снимается заново: в режиме целей это безопасно, а в режиме непрочитанных всё оставшееся непрочитанным будет разобрано ещё раз.
  • Ответ — только текст. Отправляется текст с HTML-разметкой. Вложения, приложенные к шаблону ответа, не уйдут — возьмётся лишь текстовая часть.
  • Сообщения без текста игнорируются. Присланное фото, стикер или голосовое без подписи режим не воспримет как повод для ответа.
  • Глубина — 20 сообщений на цель за цикл. Если за интервал проверки в чате написали больше, ранние сообщения выпадут из выборки. Для активных чатов уменьшайте интервал.
  • Собственные сообщения пропускаются — аккаунт не отвечает сам себе, зацикливания не будет.

Рекомендации

  • Начинайте с классического метода. Он предсказуем и ничего не стоит: правило либо совпало, либо нет. ИИ подключайте, когда набор возможных вопросов слишком широк, чтобы его перечислить.
  • Сортируйте правила от частного к общему. Первое совпадение выигрывает, поэтому общее правило-заглушка должно стоять последним.
  • Не ставьте интервал в единицы секунд. Каждый цикл — это запрос диалогов и чтение сообщений по каждой цели; частый опрос сам по себе выглядит как поведение бота. Значения 60 хватает большинству задач, для дежурства по паре чатов достаточно 120–300.
  • Проверяйте правила на себе. Напишите аккаунту с другого номера теми формулировками, которых ждёте от реальных собеседников, — сразу видно, какое правило перехватывает сообщение первым.
  • Для ИИ-метода описывайте и отказ. Прямо укажите в промпте, на что отвечать не нужно, иначе модель будет отвечать почти на всё.

Первый цикл в режиме «Непрочитанные» отвечает всем сразу

Если у аккаунта накопились непрочитанные диалоги, при старте режим ответит на них пачкой — по каждому висящему сообщению, с паузой всего в несколько секунд. На аккаунте с большим бэклогом это неотличимо от рассылки и провоцирует ограничения. Перед первым запуском либо разберите непрочитанное вручную, либо стартуйте в режиме «Конкретные цели» — он историю не трогает.