feat: добавить лимит мест в сессии и лист ожидания #7

Closed
opened 2026-04-23 19:40:44 +03:00 by Toutsu · 1 comment
Owner

Для реальных TTRPG-столов часто нужен cap на количество игроков и понятное поведение после его достижения.

Что нужно сделать:

  • добавить максимальное число мест на сессию;
  • запрещать прямую запись сверх лимита;
  • поддержать лист ожидания;
  • дать GM возможность повышать игрока из листа ожидания;
  • отобразить это в Telegram и Web.

Критерий готовности:
GM может задать лимит, бот корректно ведёт основной состав и очередь ожидания.

Для реальных TTRPG-столов часто нужен cap на количество игроков и понятное поведение после его достижения. Что нужно сделать: - добавить максимальное число мест на сессию; - запрещать прямую запись сверх лимита; - поддержать лист ожидания; - дать GM возможность повышать игрока из листа ожидания; - отобразить это в Telegram и Web. Критерий готовности: GM может задать лимит, бот корректно ведёт основной состав и очередь ожидания.
Toutsu added this to the Этап 3 — Базовый продуктовый рост milestone 2026-04-23 19:44:29 +03:00
Toutsu added the type:featurearea:botarea:webpriority:p1 labels 2026-04-23 19:46:23 +03:00
Author
Owner

Готово в релизе v1.2.0.

Что вошло:

  • лимит мест для сессий через Мест: / Лимит: / Максимум: в /newsession;
  • автоматический лист ожидания при полном основном составе;
  • продвижение первого игрока из ожидания ГМом в Telegram и Web;
  • отображение заполненности, основного состава и листа ожидания в Telegram/Web;
  • RSVP, переносы и напоминания работают только по активным участникам;
  • миграция V006__add_session_capacity_waitlist.sql;
  • README и wiki обновлены до версии 1.2.0.

Проверки:

  • dotnet test tests/GmRelay.Bot.Tests/GmRelay.Bot.Tests.csproj --collect:"XPlat Code Coverage" — passed, 30/30;
  • dotnet build GM-Relay.slnx -c Release — passed;
  • Gitea Actions run #34 — success, build/push/deploy выполнены.
Готово в релизе [v1.2.0](https://git.codeanddice.ru/Toutsu/GmRelayBot/releases/tag/v1.2.0). Что вошло: - лимит мест для сессий через `Мест:` / `Лимит:` / `Максимум:` в `/newsession`; - автоматический лист ожидания при полном основном составе; - продвижение первого игрока из ожидания ГМом в Telegram и Web; - отображение заполненности, основного состава и листа ожидания в Telegram/Web; - RSVP, переносы и напоминания работают только по активным участникам; - миграция `V006__add_session_capacity_waitlist.sql`; - README и wiki обновлены до версии `1.2.0`. Проверки: - `dotnet test tests/GmRelay.Bot.Tests/GmRelay.Bot.Tests.csproj --collect:"XPlat Code Coverage"` — passed, 30/30; - `dotnet build GM-Relay.slnx -c Release` — passed; - Gitea Actions run #34 — success, build/push/deploy выполнены.
Sign in to join this conversation.