18 lines
870 B
Markdown
18 lines
870 B
Markdown
## Простой фреймворк\фасад для Telegram-бота
|
||
|
||
### Цели
|
||
|
||
* Предоставить удобные абстракции
|
||
* Предоставить инструменты для тестирования
|
||
* Отделить логику бота от конкретной реализации
|
||
|
||
### Основная идея
|
||
|
||
Цепочка из `Command` принимает `BotRequest` и `BotResponse`, и после обработки вызывает следующий `Command`.
|
||
|
||
`BotRequest` содержит информации о действии пользователя.
|
||
|
||
`BotResponse` позволяет отправить ответ в виде `Screen`.
|
||
|
||
`Screen` содержит отображаемый текст и действия -- кнопки для клавиатуры или inline-кнопки с данными.
|