mirror of
https://github.com/FerraSoft/bottohelp.git
synced 2026-08-07 14:15:02 +00:00
4.6 KiB
4.6 KiB
📅 Руководство по планировщику постов
Описание
Планировщик постов позволяет администраторам чата планировать публикацию сообщений в указанное время автоматически.
🚀 Быстрый старт
-
Запустите планировщик:
python scheduler.py -
Используйте команды в Telegram:
/schedule_post +1h Привет всем!- запланировать пост через час/list_posts- посмотреть все запланированные посты/delete_post 1- удалить пост с ID 1
📋 Доступные команды
/schedule_post [время] [текст]
Планирует публикацию поста в указанное время.
Форматы времени:
-
Относительное время:
+30m- через 30 минут+2h- через 2 часа+1d- через 1 день
-
Абсолютное время:
2024-01-15 14:30:00- 15 января 2024 года в 14:302024-01-15 14:30- то же самое без секунд
Примеры:
/schedule_post +1h Ежедневное приветствие!
/schedule_post +30m Напоминание о встрече
/schedule_post 2024-01-15 09:00 Доброе утро!
/list_posts
Показывает список всех запланированных постов с информацией:
- ID поста
- Время публикации
- Автор поста
- Текст поста (первые 100 символов)
/delete_post [ID]
Удаляет запланированный пост по его ID.
Пример:
/delete_post 5
/publish_now [ID]
Немедленно публикует пост и удаляет его из планировщика.
Пример:
/publish_now 3
⚙️ Как это работает
- База данных - все посты хранятся в таблице
scheduled_posts - Планировщик (
scheduler.py) работает в фоне и проверяет посты каждые 30 секунд - Автопубликация - посты публикуются автоматически в указанное время
- Логирование - все действия записываются в логи планировщика
🔧 Структура базы данных
Таблица scheduled_posts содержит:
post_id- уникальный идентификатор постаchat_id- ID чата для публикацииtext- текст постаimage_path- путь к изображению (если есть)schedule_time- время публикацииcreated_by- ID пользователя, создавшего постstatus- статус поста (scheduled/published)published_at- время фактической публикацииcreated_at- время создания поста
📝 Примечания
- Только администраторы чата могут управлять постами по расписанию
- Планировщик должен работать постоянно для автоматической публикации
- Рекомендуется запускать планировщик в отдельном терминале или как сервис
- Все посты сохраняются в истории даже после публикации
🔍 Мониторинг
Для мониторинга работы планировщика проверяйте:
- Логи планировщика в терминале
- Статус постов командой
/list_posts - Лог публикаций в основном боте
🛠️ Устранение неисправностей
Планировщик не публикует посты:
- Убедитесь, что планировщик запущен (
python scheduler.py) - Проверьте права бота в чате
- Убедитесь, что время на сервере правильное
Посты не сохраняются:
- Проверьте права доступа к базе данных
- Убедитесь, что пользователь является администратором чата
- Проверьте формат команды и времени