docs(adr-001): add Discord Gateway + NetCord decision, update Aspire services
This commit is contained in:
@@ -56,8 +56,18 @@ Aspire обеспечивает:
|
|||||||
- Service discovery и передачу connection strings.
|
- Service discovery и передачу connection strings.
|
||||||
- OpenTelemetry (traces, metrics, logs) из коробки.
|
- OpenTelemetry (traces, metrics, logs) из коробки.
|
||||||
- Aspire Dashboard для мониторинга.
|
- Aspire Dashboard для мониторинга.
|
||||||
|
- **Три сервиса:** Bot (Telegram long polling + Discord Gateway), Web, PostgreSQL.
|
||||||
|
|
||||||
### 5. Telegram.Bot 22.x + Long Polling
|
### 5. Discord Gateway + NetCord
|
||||||
|
|
||||||
|
Discord-интеграция реализована через NetCord Gateway (не DSharpPlus) из-за:
|
||||||
|
- Нативной совместимости с .NET 10 и минимального размера зависимостей.
|
||||||
|
- Gateway events маршрутизируются в те же vertical slice handlers, что и Telegram updates.
|
||||||
|
- Slash-команды регистрируются через NetCord `ApplicationCommandService`.
|
||||||
|
|
||||||
|
Ephemeral-ответы (кнопки Join/Leave/RSVP) используют `InteractionMessageProperties` с `Flags = MessageFlags.Ephemeral`.
|
||||||
|
|
||||||
|
### 6. Telegram.Bot 22.x + Long Polling
|
||||||
|
|
||||||
- Long Polling — единственный вариант для Pi за NAT.
|
- Long Polling — единственный вариант для Pi за NAT.
|
||||||
- Telegram.Bot поддерживает `System.Text.Json` source generators для AOT.
|
- Telegram.Bot поддерживает `System.Text.Json` source generators для AOT.
|
||||||
|
|||||||
Reference in New Issue
Block a user