Pulse

Как пользоваться Pulse

Бот тихо доводит важные посты до подписчиков канала, которые замьютили ленту, и предупреждает, когда Reels модели набирают просмотры. Здесь — что делает каждая кнопка.

Раздел 1

Что вообще происходит

У канала модели тысячи подписчиков. Большинство мьютит канал и не видит прогревающие посты к офферу, стриму или PPV. Обычная рассылка невозможна — бот не может писать людям в личку без их согласия.

Что делает Pulse. Админ даёт боту пост, бот публикует его в канал один раз, а затем отправляет короткие служебные сообщения со скрытыми упоминаниями подписчиков. Упоминание вызывает пуш-уведомление даже на замьюченном канале. Через несколько секунд служебное сообщение удаляется — в ленте остаётся только ваш пост. Человек тапает уведомление и попадает в канал.

Плюс Instagram. Бот периодически смотрит Reels привязанных аккаунтов и пишет в штаб-чат, когда просмотры пересекают заданный порог. В сам Instagram бот ничего не публикует; в канал Telegram — только если вы сами включили автопост из очереди (раздел 11).

Важно. Скрытые массовые упоминания раздражают людей и приводят к жалобам. Только для редких важных постов — не каждый день.
Раздел 2

Быстрый старт за 5 шагов

Всё — кнопками. Нижняя кнопка ☰ Меню всегда открывает панель.

  1. Напишите боту /start. Появится панель.
  2. Все проекты → ➕ Новый проект → пришлите название модели (например, Samira). Один проект = одна модель.
  3. В карточке проекта 🔗 Канал → перешлите боту любой пост из канала. Бот должен быть админом канала с правом постить и удалять сообщения.
  4. 🧪 Тест на себя — бот отправит служебное сообщение в канал, упомянув только вас. Проверьте, что пуш пришёл.
  5. 🚀 Запустить пинг — мастер из 4 шагов: пост → текст уведомления → кому → старт.

База подписчиков наберётся сама — импорт файла не обязателен (см. раздел 5).

Раздел 4

Канал

Кнопка 🔗 Канал в карточке проекта.

  1. Добавьте @N0t1f1cator_bot в канал администратором. Права: публикация сообщений и удаление сообщений.
  2. В боте: 🔗 Канал → перешлите любой пост из этого канала. Можно вместо форварда прислать @username канала.
  3. Бот проверит свои права и привяжет канал. Если у канала есть обсуждалка (комментарии) — подцепит и её, чтобы собирать id комментаторов.
Публичный канал не обязателен, но с ним удобнее: можно ссылаться по @username. Приватный канал бот тоже поддерживает.
Привязать канал можно только в личке боту — ни одна команда, отправленная прямо в канал, ничего не привязывает. Так сделано специально: Telegram не сообщает боту, кто написал пост в канале, так что проверить права там нельзя — а раз нельзя проверить, значит нельзя и разрешать привязку оттуда.
Раздел 5

База подписчиков

Готовый список подписчиков Telegram боту не даёт — это ограничение платформы, не баг. Поэтому базу id бот набирает сам, по мере активности:

🙋 Собрать id (кнопка в канале)

Самый быстрый способ. Бот публикует в канал сообщение с кнопкой «I'm here» — каждый, кто её нажмёт, попадает в базу. Закрепите на пару дней, потом можно удалить: собранные id останутся.

👥 Загрузить id

Разовый импорт — если у вас уже есть выгрузка тех, кто подписан. Файл .txt (id построчно) или .csv (user_id,first_name,username), либо просто вставьте список id сообщением. Импортируется пачками, дубли отсеиваются.

Молчунов, которые никогда не реагируют, как список получить нельзя. Но на скрытый пинг они почти и не откликаются — собирайте активных, их и есть смысл пинговать.
Раздел 6

🧪 Тест на себя

Бот отправляет в канал одну служебную волну, упомянув только вас. Проверьте:

Служебное сообщение само удалится через ~12 секунд, либо жмите «🗑 Удалить из канала сейчас».

Раздел 7

🚀 Запуск пинга

Мастер из 4 шагов. Ничего не публикуется в канал, пока вы не нажмёте «🚀 Старт».

Шаг 1 — что за пост

Шаг 2 — текст уведомления

Это 1–2 строки, которые человек увидит в пуше и на пару секунд в ленте. Должно цеплять и звать открыть канал. Ссылку на пост бот добавит сам. Можно написать свой текст или оставить пример (🔔 new drop in the channel 👇).

Шаг 3 — кому

подписчики (активные)
основной вариант: те, кто, по данным бота, в канале
все известные id
вообще все, кого бот знает, включая вышедших
замечены за 7 / 30 дней
кто недавно как-то проявлялся
только вышедшие
для проверки «жив ли пинг»
только я / явный список id
тест на себя или на конкретные id

Шаг 4 — проверка и старт

Шаг 4 из 4 — проверь и запускай: Проект: Samira Кому: подписчики (активные) Людей: 3 640 Служебных сообщений: ~728 (~45 мин) Пропущено по кулдауну (24ч): 160 Пост опубликую в канал при «Старт».
🚀 Старт
⏱ Пропустить тех, кого пинговали за 24ч ✓
Отмена

Кулдаун. По умолчанию бот не пингует человека чаще раза в сутки — защита от жалоб. Средняя кнопка переключает: слать всем подряд или пропускать недавних. Если «Людей: 0» — значит всех уже пинговали за последние сутки; выключите кулдаун или подождите.

Раздел 8

Ход кампании

После старта кампания идёт в фоне. Отчёты — старт, прогресс, финиш, ошибки — приходят в штаб-чат. Запустившему — короткая копия в личку.

Кампания #8 — ▶️ идётКому: подписчики (активные) Прогресс: 210 / 728 волн ✅ упоминаний 1 050 · ⏭ скип 12 · ❌ ошибок 0
🔄 Обновить статус
⏸ Пауза
🛑 Остановить
🗂 Карточка проекта
Раздел 9

⚙️ Настройки

Кнопка ⚙️ Настройки в карточке проекта.

⚙️ Настройки «Samira»
Убирать служебное сообщение из ленты
через 1с
● 3с
не убирать
Не пинговать одного чаще, чем раз в
● 24ч
48ч
без лимита
Раздел 10

🚫 Кого не пинговать

Список id, которые никогда не получат пинг, даже если попадут в базу. Нужно для самой модели, менеджеров, знакомых, конкурентов.

Кнопка 🚫 Кого не пинговать → «➕ Добавить id в исключения» → пришлите id через пробел. Убрать — так же через «➖».

Раздел 11

📸 Instagram-алерты

Кнопка 📸 Instagram-алерты в карточке проекта.

  1. ➕ Добавить IG-аккаунт → пришлите ник (например, imsamira). Если авто-режим уже включён, бот сразу проверит в Instagram, что такой аккаунт есть, и покажет имя и число подписчиков — убедитесь, что это правда та модель, прежде чем продолжать.
  2. 🎯 пороги → отметьте значения просмотров галочками (10k / 30k / 100k / …) или задайте свои числа кнопкой «✍️ Свои числа».
  3. Когда просмотры рилса пересекают порог — бот пишет в штаб-чат. Один рилс × один порог = один раз. Растёт дальше — следующий порог.

Что нужно для авто-режима

Бот сам смотрит Reels только при наличии логина Instagram. Это разовая настройка на сервере (не в этом мануале — см. .env.example и DEPLOY.md в репозитории), в двух словах:

  1. Завести отдельный аккаунт Instagram под бота (не основной аккаунт модели).
  2. Залогинить его на сервере, пересобрать: WITH_IG=1 docker compose up -d --build.

Один аккаунт-наблюдатель тянет все хэндлы всех моделей. В карточке Instagram-алертов будет 🟢 Авто-режим включён.

Про свежедобавленный аккаунт. Первая проверка молча запоминает просмотры всех текущих Reels — в штаб не прилетит куча алертов «задним числом» по контенту, который вы и так видели. Алерты дальше идут только по новому росту: новый ролик или старый, который перевалил за следующий порог. Чтобы не ждать до 30 минут — жмите 🔄 Собрать базу сейчас сразу после добавления.

🔍 Проверить аккаунт

Кнопка рядом с ником в списке Instagram-аккаунтов (нужен авто-режим). В любой момент показывает, кто реально привязан — имя, число подписчиков, закрытый ли аккаунт. Полезно, если добавили ник по памяти или с опечаткой: не ждать первого алерта, а сверить сразу.

📊 Просмотры последних Reels

Кнопка в карточке (только в авто-режиме). Админ жмёт — бот показывает текущие просмотры 6 последних рилсов по каждому аккаунту, отсортированные по просмотрам.

🎬 Автопост из очереди

Отдельная, необязательная функция: цель по просмотрам для конкретного Instagram-аккаунта (кнопка 🎬 автопост на карточке аккаунта). Когда очередной ролик набирает эту цель — бот сам публикует в канал проекта следующий пост из очереди.

  1. 📦 Очередь постов в разделе Instagram-алертов → «➕ Добавить пост» → пришлите готовый пост (текст/фото/видео) боту. Он встаёт в конец очереди; порядок можно менять стрелками ⬆️⬇️.
  2. На карточке нужного IG-аккаунта → 🎬 автопост → задайте цель по просмотрам (например 50000) или 0, чтобы выключить.
  3. Как только любой ролик этого аккаунта наберёт цель — бот публикует верхний пост из очереди и пишет в штаб, сколько осталось. Если очередь пуста — придёт предупреждение вместо публикации.
Это единственное место, где бот сам публикует контент без нажатия «Старт» — остальной бот только пингует и уведомляет. Держите очередь заполненной, если включили автопост.
Про аккаунт-наблюдатель. API неофициальный: Instagram может временно ограничить или запросить подтверждение у этого аккаунта, если дёргать часто. Интервал 30 минут — щадящий. Если аккаунт заблокируют — авто-режим просто выключится, бот продолжит работать по пингам.
Бот в Instagram ничего не публикует и не запускает пинги автоматически — только уведомляет. Единственное исключение — включённый вручную автопост из очереди (см. выше): это осознанно настроенная функция, а не что-то, что бот делает сам по себе.
Раздел 12

👤 Админы проекта

Кнопка 👤 Админы проекта (только для супер-админа).

Что может админ проекта: импорт, запуск пингов, статистика, настройки, Instagram, исключения — в рамках своего проекта. Не может: создавать и удалять проекты, трогать стоп-кран.

Раздел 13

🗑 Удаление проекта

Удаляет проект со всеми кампаниями, IG-аккаунтами и настройками. Канал и сам бот не трогаются.

Подписчиков можно не терять. Если есть другой проект, при удалении появится кнопка 📦 Перенести подписчиков в … — они переедут со всем: имя, @username, статус и откуда пришли. Совпадающие с уже существующими в целевом проекте остаются как есть.

Раздел 14

Штаб-чат и стоп-кран

Раздел 15

Частые вопросы

Почему бот не видит всех подписчиков сразу?

Telegram не отдаёт ботам список подписчиков канала. Совсем. Это защита платформы. Обойти можно только сторонним «юзерботом» на реальном аккаунте — а это против правил Telegram и грозит баном аккаунта. Pulse собирает id честно, по мере активности.

Почему в ленте канала чисто, если бот шлёт кучу сообщений?

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

Подписчики увидят, что их упомянули?

Нет. Упоминания стоят на невидимых символах в конце сообщения. Видимый текст — только ваша завлекалка. Человек получает пуш и, открыв канал, видит обычное сообщение.

Что если запустить пинг дважды подряд?

Второй раз почти всех отсеет кулдаун (их пинговали только что). Плюс бот не даст стартовать вторую кампанию, пока идёт первая.

Это безопасно для канала?

Относительно. Массовые скрытые упоминания — серый приём. Редко и по делу (оффер, стрим, PPV) — обычно ок. Каждый день — жалобы, ограничения бота и канала. Стоп-кран /kill на случай проблем есть.

Может ли чужая команда «увести» себе наш проект или канал?

Нет. Стать админом проекта можно только двумя путями: супер-админ явно добавил вас (/админ_добавить или кнопка «👤 Админы проекта»), либо вы сами супер-админ (SUPERADMIN_IDS в .env — задаётся один раз на сервере). Привязать канал к проекту можно только в личной переписке с ботом, никогда — командой прямо в канале. Слаг проекта сам по себе доступ не даёт.

Раздел 16

Термины

Проект
одна модель: свой канал, аудитория, настройки, IG-аккаунты, админы
Активный проект
тот, к которому сейчас применяются кнопки панели
Канонический пост
ваш пост, который бот публикует в канал один раз
Служебное сообщение / ghost-волна
короткое сообщение со скрытыми упоминаниями, которое создаёт пуш и удаляется
Текст уведомления
1–2 строки, которые человек видит в пуше и мельком в ленте
Сегмент
кого пинговать в этой кампании
Кулдаун
минимальный интервал между двумя пингами одного человека
Штаб-чат
чат, куда бот шлёт отчёты и алерты
Порог (Instagram)
число просмотров рилса, при пересечении которого приходит алерт