Коммент-бот
Комментирование постов каналов от пула аккаунтов: разовый проход по найденным постам или круглосуточное дежурство у новых публикаций.
Коммент-бот оставляет комментарии под постами каналов. Технически комментарий — это сообщение в связанной с каналом группе обсуждений, поэтому режим работает только там, где под постом есть кнопка «Комментарии». Если обсуждения у канала не подключены, комментарий отправить некуда.
Одним набором настроек режим решает две разные задачи: разово прокомментировать уже опубликованные посты — или дежурить у каналов и реагировать на новую публикацию через секунды после её выхода.
Комментатор или наблюдатель
Режим комментирования (по умолчанию Комментатор) переключает не только набор полей, но и всю логику работы.
| Вариант | Что делает | Когда завершается |
|---|---|---|
| Комментатор (по умолчанию) | Каждый аккаунт проходит по списку целей в случайном порядке и оставляет по комментарию под найденным постом | Когда список целей закончился |
| Наблюдатель | Аккаунты делят каналы между собой, опрашивают их с заданным интервалом и комментируют посты, вышедшие уже после запуска | Не завершается сам — останавливайте задачу вручную |
Ключевое отличие: «Комментатор» работает с тем, что уже опубликовано, «Наблюдатель» — только с тем, что появится после старта. Посты, существовавшие на момент запуска наблюдателя, он запоминает как точку отсчёта и не комментирует.
Где комментировать
Поле Цели — список каналов или конкретных постов, по одному на строку. Годится ссылка на пост
(https://t.me/channel/123), ссылка на канал, @username или числовой ID. Список не делится между
аккаунтами: каждый аккаунт получает свою перемешанную копию всего списка.
Как именно искать пост в канале, задают Индикаторы поиска постов — флажки, доступные только в режиме «Комментатор»:
| Индикатор | Что включает | Как ищет пост |
|---|---|---|
| (ни одного) | — | Комментирует последний пост канала |
| Ключевые слова | Поле Ключевые слова (через запятую) | Ищет пост, содержащий все перечисленные слова |
| Дата | Поле Дата поста | Ищет пост, опубликованный в эту дату |
Индикаторы можно совмещать — тогда критерии складываются. Если в цели указана прямая ссылка на конкретный пост, индикаторы не нужны.
Текст комментария
Тип комментария (по умолчанию Список) определяет, откуда берётся текст. Под выбранный тип появляется своё поле, остальные скрываются. Тексты собирает та же общая механика, что и в Рассыльщике.
| Тип | Что отправляется | Где задаётся |
|---|---|---|
| Статичный | Один и тот же текст под каждым постом | Визуальный редактор |
| Список (по умолчанию) | Случайный вариант на каждый пост | Поле со списком вариантов, по одному на строку |
| Динамический | Шаблон со спинтаксом и переменными | Поле шаблона |
| ИИ | Текст генерирует модель по вашему промпту | Поле промпта для ИИ |
| Шаблоны | Сохранённые заготовки | Визуальный редактор |
Статичный и Шаблоны используют визуальный редактор: в комментарий можно вложить фото, видео, файлы, голосовые и видеосообщения. Остальные типы работают только с текстом; HTML-разметка включена. Параметры модели для типа ИИ берутся из вкладки AI.
Темп и сохранение
| Поле | Тип | По умолчанию | Назначение |
|---|---|---|---|
| Задержка перед отправкой комментария | Диапазон, сек | 2–5 | Пауза перед каждым комментарием; значение выбирается случайно. Обязательное поле |
| Интервал проверки новых постов | Диапазон, сек | 2–5 | Как часто аккаунт заглядывает в закреплённый за ним канал. Появляется только в режиме «Наблюдатель» |
| Сохранять комментарии (в интерфейсе «Save sended messages») | Флажок | Выключено | Писать отправленное в базу |
| Папка базы (в интерфейсе «Directory») | Папка | — | Куда класть базу. Появляется при включённом сохранении, обязательное поле |
При включённом сохранении каждый отправленный комментарий уходит в SQLite-базу в указанной папке —
отдельный файл на запуск, таблица messages: аккаунт, канал, ID сообщения, текст и время отправки.
Как работает наблюдатель
Самая неочевидная часть режима — как несколько аккаунтов дежурят у одного списка каналов. Опрос каналов делится между аккаунтами, а комментирование — нет.
Построение плана. Пул выбранных аккаунтов сортируется в одинаковом для всех порядке, список целей чистится от дублей и тоже сортируется. Дальше цели раздаются по кругу: первый аккаунт берёт 1-ю, 4-ю, 7-ю цель, второй — 2-ю, 5-ю и так далее. Каждый аккаунт следит только за своей долей — так один и тот же канал не опрашивается десятью сессиями сразу.
Открытие смены. Первый аккаунт в отсортированном пуле выступает координатором: он заводит новый идентификатор запуска и очищает общую доску находок, чтобы записи прошлого запуска не сработали повторно.
Первый взгляд — точка отсчёта. При первом опросе канала аккаунт запоминает ID последнего поста и ничего не комментирует. Комментарии пойдут только на посты с бо́льшим ID, то есть на вышедшие после запуска.
Находка попадает на общую доску. Увидев новый пост, аккаунт публикует запись о нём на общей доске — она видна всем аккаунтам задачи.
Комментируют все. Каждый аккаунт читает доску и комментирует каждый найденный пост, независимо от того, кто его обнаружил. Перед отправкой выдерживается задержка, после успеха пост отмечается как обработанный, повторно он не комментируется.
Проще говоря: делится наблюдение, а не комментирование. Десять аккаунтов не растянут очередь комментариев — они лишь быстрее заметят пост, а комментариев под ним всё равно будет десять.
Частота опроса ограничена изнутри: один аккаунт делает не больше 8 запросов в секунду, как бы мало ни стоял интервал проверки. При ошибке (в том числе при FloodWait) включается нарастающая пауза — 5 секунд, затем удвоение до максимума в 5 минут; после успешного действия пауза сбрасывается. Неудавшийся комментарий не помечается обработанным и будет повторён после паузы, а канал, на котором произошла ошибка, отодвигается в очереди опроса — остальные его каналы аккаунт продолжает проверять.
Сколько получится комментариев
Это главная арифметика режима, и она одинакова для обоих режимов:
- Комментатор: каждый аккаунт проходит весь список целей → комментариев будет аккаунты × цели.
- Наблюдатель: каждый аккаунт комментирует каждый найденный пост → аккаунты комментариев под каждым новым постом.
Пул из десяти аккаунтов на списке из двадцати каналов — это двести комментариев, а не двадцать. Считайте объём заранее.
Лимиты и риски
- Нет обсуждений — нет комментария. Канал без привязанной группы обсуждений закончится ошибкой на каждой попытке.
- Ограничения группы обсуждений. Владелец канала может закрыть комментарии, ограничить новых участников или забанить аккаунт — Multogram это не обходит.
- Одинаковый текст от нескольких аккаунтов. Пачка идентичных комментариев под одним постом — очевидный шаблон для автоматических фильтров Telegram и для модератора канала.
- Слишком частый опрос. Интервал 2–5 секунд на большом списке каналов — это постоянная нагрузка на сессию; при FloodWait режим сам замедлится, но лучше до этого не доводить.
- Наблюдатель не останавливается сам. Пока задача включена, аккаунты дежурят; следите за логами и не забывайте останавливать её вручную.
- Ошибка не роняет работу. Каждый комментарий и каждый опрос изолированы: сбой на одном канале логируется и не мешает остальным.
Рекомендации
- Начинайте с типа «Список» или «Динамический». Разный текст на каждый комментарий снимает главную претензию к режиму. Тип «Статичный» оставьте для одиночных задач.
- Ставьте наблюдателя на 3–10 секунд, а не на минимум. Выигрыш в секундах реакции почти незаметен, а нагрузка на аккаунт растёт кратно.
- Проверяйте на одном канале и одном аккаунте. Так вы увидите, проходят ли комментарии в обсуждениях, до того, как в чат придёт весь пул.
- Увеличивайте задержку на «холодных» аккаунтах. 2–5 секунд — стартовое значение для прогретых сессий, для новых безопаснее десятки секунд.
- Включайте сохранение сразу, если планируете потом проверять или править отправленное: восстановить список комментариев задним числом не получится.
Каждый аккаунт комментирует каждый пост
Партиционируется только опрос каналов — комментируют все аккаунты пула. Под одним постом появится столько комментариев, сколько аккаунтов вы выбрали, и все они уйдут почти одновременно. Для дежурства у канала обычно достаточно одного-двух аккаунтов; десять — это уже не «быстрее», а «десять одинаковых комментариев подряд» и прямой путь к жалобе от владельца канала.