
Автоматическое расписание публикаций — не «календарь ради красоты». Это договорённость: когда выходит контент, кто ставит статус `ready`, и что делать, если слот пустой или токен отвалился.
Без буфера готовых материалов автоматизация ускоряет хаос: пустые слоты, дубли, посты с черновыми формулировками. Ниже — роли, статусы, очередь, Telegram-лимиты из Bot API и метрики, которые показывают, работает ли контур.
Кому это нужно
- - экспертам и студиям с 1–3 каналами;
- - командам, где посты пишет один человек, а публикует система;
- - бизнесу с контент-планом на месяц, уставшему от ручного копипаста.
Если тем и оффера нет — сначала стратегия постинга. Расписание не заменяет смысл.
Из чего состоит рабочее расписание
Цели канала (заявки / прогрев / анонсы)
→ рубрики
→ слоты по дням и времени
→ буфер ready на 5–10 материалов
→ очередь (планировщик / Make / бот)
→ алерты об ошибках
→ разбор метрик раз в 2 недели
Статусы, которые стоит зафиксировать в таблице: `idea → draft → review → ready → queued → published` и отдельно `error`.
Роли: кто ставит ready
| Роль | Действие |
|---|---|
| Автор | draft, правки по факту |
| Редактор | единственный, кто ставит `ready` |
| Оператор | следит за алертами и `error` |
| Стратег | рубрики, CTA, запреты |
Пока `ready` ставит «кто успел», автопостинг превращается в рулетку.
Буфер: почему 5–10 материалов
| Размер буфера | Что происходит |
|---|---|
| 0–1 | любой сбой = пустой канал |
| 3–4 | хватит на отпуск автора, но не на поломку интеграции |
| 5–10 | переживает неделю без паники |
| 20+ | риск устаревших офферов |
Буфер проверяйте в понедельник: сколько `ready` с датой публикации впереди.
Telegram: лимиты для планировщика
По Telegram Bot API:
- - бот постит в канал только как администратор с правом публикации;
- - текст — до 4096 символов, подпись к медиа — до 1024;
- - `429` с `retry_after` — норма при пачке отправок;
- - бот не пишет первым подписчикам — расписание относится к каналу, не к холодным ЛС.
Для лонгрида: короткий анонс в канале + ссылка на статью сайта с UTM.
Очередь: как устроить технически
Минимальный источник истины — таблица:
| Поле | Назначение |
|---|---|
| id | ключ строки |
| status | idea…published / error |
| channel | telegram / vk / … |
| text | тело поста |
| media_url | картинка |
| publish_at | слот UTC или локальный + TZ |
| published_id | message_id после успеха |
Контур публикации (каждые 15 мин): выбрать `ready` где `publish_at <= now`, отправить, записать id или `error`. См. автоматизацию контента и Make для автопостинга.
Error handler обязателен: алерт в служебный Telegram-чат, строка не удаляется — её чинят и возвращают в `ready`.
Слоты: время и частота
- - Один канал — 4 рубрики обычно достаточно; см. нейросети для SMM для черновиков, не для автопубликации без review.
- - Частота: лучше стабильные 3 поста в неделю, чем 7 в первую неделю и тишина месяц.
- - Время: проверьте, когда аудитория онлайн; для B2B в РФ часто работают утро и обед по местному TZ канала.
Связка с сайтом и заявками
Каждый коммерческий пост должен знать один CTA: услуга, форма, бот. UTM-шаблон один на команду:
`utm_source=telegram&utm_medium=channel&utm_campaign=rubric_faq`
Анонсы статей из блога — отдельный контур RSS/вебхук CMS, не смешивайте с ручными постами в одной очереди без `Router`.
Метрики расписания (не охваты ради охватов)
| Метрика | Смысл |
|---|---|
| Доля слотов без срыва | дисциплина контура |
| Число `error` в месяц | стабильность интеграции |
| Переходы по UTM | связь с заявками |
| Время от `ready` до `published` | нет ли залипания |
Охват без CTA — вторичен для бизнес-канала.
Часовой пояс и поле publish_at
Ошибка «пост вышел не тогда» почти всегда — смешение TZ:
| Подход | Плюс | Минус |
|---|---|---|
| Всё в UTC в таблице | однозначность | команда думает в MSK |
| Локальный TZ в колонке | понятно автору | нужна конвертация в сценарии |
| TZ в настройках Make | один раз | миграция ломает старые строки |
Зафиксируйте правило в инструкции на одну страницу и не меняйте без миграции данных.
Два контура: генерация и публикация
Контур A — идеи и черновики (может включать LLM). Контур B — только строки со статусом `ready` и проверкой `publish_at`. Если B зависит от A, падение OpenAI останавливает канал. Разделение — базовая ремонтопригодность, см. автоматизацию контента.
План внедрения на 10 дней
| День | Шаг |
|---|---|
| 1 | Таблица, статусы, роли |
| 2 | 7 материалов в `ready` вручную |
| 3 | Тестовый канал, один успешный слот |
| 4 | Error handler + алерт |
| 5 | Прод-канал, 3 слота |
| 6–7 | Буфер 10 ready |
| 8 | UTM на все CTA |
| 9 | Сломанный токен — проверка алерта |
| 10 | Ретро: срывы, error, переходы |
Форматирование постов в Telegram
| Режим | Когда |
|---|---|
| HTML | автогенерация, проще экранировать |
| MarkdownV2 | ручные посты с опытным автором |
| Без разметки | максимальная надёжность |
Ссылки на услуги проверяйте после публикации: битый UTM в автоконтуре повторяется десятки раз до алерта.
Согласование с юрлицом и брендом
Любой пост со скидкой проходит тот же `review`, что и ручной. Автоматизация не отменяет бренд-буфер: дисклеймеры, пометки рекламы, ограничения по нишам (медицина, финансы) — в чеклисте редактора перед `ready`.
Резервная публикация
Если Make или VPS недоступны дольше часа:
- 1. Открыть таблицу, фильтр `ready` на сегодня.
- 2. Опубликовать вручную 1–2 критичных слота.
- 3. Вернуть строкам корректный `published_id` или пометку «manual».
- 4. После восстановления — не дублировать те же id.
Инструкция на одну страницу спасает канал в праздники, когда некому чинить сценарий.
Согласование с контент-планом
Слоты в таблице расписания должны ссылаться на `id` строки контент-плана. Тогда видно, какой оффер ушёл в эфир и какой CTA стоял в момент публикации — без этого ретро по заявкам превращается в угадывание.
Несколько каналов
Один сценарий публикации — Router по полю `channel`. Не дублируйте копии сценария на каждый Telegram-канал: правка UTM превратится в квест. Общая таблица, разные токены ботов в env с понятными именами `BOT_TOKEN_MAIN`, `BOT_TOKEN_LOCAL`. Так проще аудит и ротация секретов.
Частые ошибки
- - Автопостинг без статуса `ready`.
- - Часовой пояс «на глаз» — посты уезжают на 3 часа.
- - Один сценарий на генерацию и публикацию — сломалась LLM, канал молчит.
- - Нет буфера — отпуск автора = дыра.
- - MarkdownV2 без экранирования — посты с `error` каждый второй слот.
Частые вопросы
Хватит ли встроенного отложенного постинга Telegram?
Для одного канала и ручного режима — иногда да. Как только нужны несколько площадок, UTM, статусы и алерты — нужна таблица и автоматизация.
Можно ли ИИ сразу в канал?
Только через `review → ready`. Иначе в эфир уйдут выдуманные цифры и устаревшие акции.
Что если Make упал?
Должен прийти алерт; буфер `ready` не сгорает. Публикацию можно временно вести вручную из таблицы.
Гео: время и площадки
- - Часовые пояса. Команда в Москве, аудитория в Красноярске — слот 10:00 MSK для всех не универсален; зафиксируйте TZ в `publish_at`.
- - Региональный контент. Отдельные строки таблицы под локальные акции; на сайте — geo-лендинги вроде Самара с согласованными фактами.
- - Площадки РФ. Telegram и VK стабильны для автопостинга; экзотические API без SLA не стоит класть в критичный контур.
Чеклист запуска
- - [ ] Таблица со статусами и полями
- - [ ] Редактор, который ставит `ready`
- - [ ] Буфер ≥ 5 материалов
- - [ ] Контур публикации + алерты
- - [ ] UTM на CTA
- - [ ] Тест сломанного токена
- - [ ] Инструкция на одну страницу
Что сделать дальше
- 1. Заполнить буфер `ready` на две недели вперёд.
- 2. Включить очередь на одном канале.
- 3. Две недели — считать срывы и `error`.
- 4. Добавить второй канал только после стабильности.
Услуги: автопубликация, автопостинг, цены, контакты. Буфер `ready` — главный KPI контура.