feature(bot): add online/offline format and link/address steps to /newsession wizard #136

Closed
opened 2026-06-09 16:14:58 +03:00 by Toutsu · 1 comment
Owner

Идея

В wizard /newsession сейчас нет выбора формата проведения:

  • онлайн — нужно попросить ссылку на игру;
  • офлайн — нужно попросить адрес;
  • возможно гибрид — ссылка + адрес или короткое описание.

Почему важно

CreateSessionCommand уже имеет Format, а sessions.format ограничен значениями Online, Offline, Hybrid. Также join_link есть в schema и renderer показывает ссылку, если она заполнена. Но wizard сейчас передаёт:

Link: string.Empty,
Format: null

В результате опубликованное signup message не содержит полезной информации о месте/ссылке проведения.

Предлагаемое направление

После стабилизации hotfix #135 отдельно спроектировать wizard steps:

  1. Выбор формата: 🌐 Онлайн, 📍 Офлайн, возможно 🔀 Гибрид.
  2. Для online — text input с URL/ссылкой.
  3. Для offline — text input с адресом.
  4. Для hybrid — оба поля или один свободный текст как подключиться/где играть.
  5. Передавать значения в CreateSessionCommand.Link/Format и, если понадобится, добавить отдельное поле адреса в schema/rendering.

Acceptance criteria

  • Wizard явно спрашивает формат проведения.
  • Online session сохраняет и показывает ссылку.
  • Offline session сохраняет и показывает адрес/место.
  • Existing DB constraints для sessions.format не нарушаются.
  • Есть regression tests на wizard payload → CreateSessionCommand.
## Идея В wizard `/newsession` сейчас нет выбора формата проведения: - онлайн — нужно попросить ссылку на игру; - офлайн — нужно попросить адрес; - возможно гибрид — ссылка + адрес или короткое описание. ## Почему важно `CreateSessionCommand` уже имеет `Format`, а `sessions.format` ограничен значениями `Online`, `Offline`, `Hybrid`. Также `join_link` есть в schema и renderer показывает ссылку, если она заполнена. Но wizard сейчас передаёт: ```csharp Link: string.Empty, Format: null ``` В результате опубликованное signup message не содержит полезной информации о месте/ссылке проведения. ## Предлагаемое направление После стабилизации hotfix #135 отдельно спроектировать wizard steps: 1. Выбор формата: `🌐 Онлайн`, `📍 Офлайн`, возможно `🔀 Гибрид`. 2. Для online — text input с URL/ссылкой. 3. Для offline — text input с адресом. 4. Для hybrid — оба поля или один свободный текст `как подключиться/где играть`. 5. Передавать значения в `CreateSessionCommand.Link`/`Format` и, если понадобится, добавить отдельное поле адреса в schema/rendering. ## Acceptance criteria - Wizard явно спрашивает формат проведения. - Online session сохраняет и показывает ссылку. - Offline session сохраняет и показывает адрес/место. - Existing DB constraints для `sessions.format` не нарушаются. - Есть regression tests на wizard payload → `CreateSessionCommand`.
Author
Owner

Реализовано в PR #138 и выпущено в v3.10.0. Prod: gmrelaybot-bot-1, gmrelaybot-discord-1, gmrelaybot-web-1 — 3.10.0 (healthy).

Реализовано в PR #138 и выпущено в [v3.10.0](https://git.codeanddice.ru/Toutsu/GmRelayBot/releases/tag/v3.10.0). Prod: gmrelaybot-bot-1, gmrelaybot-discord-1, gmrelaybot-web-1 — 3.10.0 (healthy).
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Toutsu/GmRelayBot#136