Enhance TelegramBotService with schedule handling and subscription toggling
Updated the TelegramBotService to support new actions for managing subscriptions and retrieving channel schedules. Introduced constants for action types and improved the callback data structure for better clarity. Added a method to send channel schedules, consolidating upcoming program information into a user-friendly format. Updated related tests to ensure proper functionality of the new features and adjusted documentation to reflect changes in button actions.
This commit is contained in:
@@ -51,11 +51,19 @@ NAT и через прокси, и это единственный вариан
|
||||
## Меню в чате
|
||||
|
||||
`/start` с кодом привязывает чат и открывает меню; `/start` без кода — открывает меню уже
|
||||
привязанному. Меню живёт **одним сообщением**: нажатие кнопки переписывает его на месте, иначе
|
||||
привязанному. Заголовок канала в меню — это кнопка «программа передач»: ближайшие восемь блоков
|
||||
в часовом поясе канала, идущее сейчас помечено. Подряд идущие серии одного шоу схлопываются
|
||||
в один блок — зритель спрашивает «что дальше», а не «в каком порядке лежат файлы». Программа
|
||||
приходит отдельным сообщением, меню остаётся на месте: иначе после просмотра пришлось бы звать
|
||||
`/start`, чтобы вернуть кнопки. Меню живёт **одним сообщением**: нажатие кнопки переписывает его на месте, иначе
|
||||
чат заполняется одинаковыми «ваши подписки» после каждого клика. Кнопка — тумблер: повторное
|
||||
нажатие снимает подписку. `/stop` останавливает рассылку, не стирая подписки: вернувшись, зритель
|
||||
получит свои каналы, а не пустой список.
|
||||
|
||||
Данные кнопок несут действие: `sub:канал:вид` переключает подписку, `epg:канал` показывает
|
||||
программу. Действие в первом поле, а не «угадаем по числу частей»: кнопок со временем станет
|
||||
больше, и разбор по длине строки сломался бы на первой же новой.
|
||||
|
||||
## Границы
|
||||
|
||||
- Бот не отвечает на произвольные вопросы и не показывает программу передач — только подписки.
|
||||
|
||||
Reference in New Issue
Block a user