Добавлена документация
This commit is contained in:
47
docs/GETTING_STARTED.md
Normal file
47
docs/GETTING_STARTED.md
Normal file
@@ -0,0 +1,47 @@
|
||||
# Быстрый старт — BotPages
|
||||
|
||||
Эта инструкция поможет запустить и протестировать проект локально.
|
||||
|
||||
Требования
|
||||
- .NET 8 SDK
|
||||
- Токен Telegram (если используете Telegram-адаптер)
|
||||
|
||||
Сборка
|
||||
```bash
|
||||
dotnet build
|
||||
```
|
||||
|
||||
Запуск демонстрации
|
||||
1. Откройте проект `Demo`.
|
||||
2. Внесите токен Telegram (если используется) в код инициализации адаптера или в переменные окружения проекта Demo.
|
||||
3. Запустите:
|
||||
```bash
|
||||
dotnet run --project Demo
|
||||
```
|
||||
|
||||
Пример конфигурации приложения
|
||||
```csharp
|
||||
var app = new BotPagesApp(stateStorage, logger)
|
||||
.AddAdapter("telegram", new TelegramAdapterSetup("<token>"))
|
||||
.AddDefaultPage<WelcomePage>()
|
||||
.MapCommand<WelcomePage>("/start")
|
||||
.AddMiddleware(new LoggingMiddleware(logger));
|
||||
|
||||
await app.Build(CancellationToken.None);
|
||||
```
|
||||
|
||||
Как написать страницу
|
||||
- Наследуйте `StatefulPage` для страниц с пер-сессионным состоянием.
|
||||
- Наследуйте `SingletonPage` для одноэкземплярных страниц.
|
||||
- Переопределите `OnEnter`, `OnUpdate`, `OnText`, `OnButton`, `OnFile`, `OnError` по необходимости.
|
||||
- Для автоматического маппинга маршрутов используйте `AutoMapRoute()`.
|
||||
|
||||
Тестирование команд
|
||||
- Команды регистрируются в `BotPagesApp.MapCommand`.
|
||||
- Шаблон команд поддерживает именованные и опциональные аргументы: `/cmd {a} {b?}`.
|
||||
|
||||
Подсказки
|
||||
- Middleware выполняются в том порядке, в котором их добавляют в `BotPagesApp`.
|
||||
- Команды имеют приоритет над обработкой страниц (если текст начинается с `/`).
|
||||
|
||||
Если требуется подробный справочник API — смотрите `docs/API_REFERENCE.md`.
|
||||
Reference in New Issue
Block a user