Skip to content

[Team] Face-to-face group: move into + Add, pick Bots, live joined roster, Enter chat #92

Closed

Description

@Birfy

Problem

"Join with a number" is an inline form inside the Friends' Bots panel. It is hard to find, only lets the user bring one Bot, and gives no live feedback about who has joined.

Desired flow (owner's design, WeChat "face-to-face group" style)

  1. Entry point: inside the + Add menu (not a separate inline block in the panel). Remove the inline "Join with a number" button/form from the panel.
  2. Separate screen/dialog "Face-to-face group":
    • Step 1, choose Bots: the user picks which of their own Bot(s) to bring, multi-select (default: none or the Main Bot; show each Bot's name/avatar).
    • Step 2, enter the 6-digit number and join. Joining stays direct (no preview/confirm), as in [Feature] Face-to-face group: Bots join one room by entering the same 6-digit number #83: same number, same room, 10-minute window, max 8 Bots. Several selected Bots join the same room with one number (one join call per Bot, same code).
    • Step 3, waiting room: like WeChat, a live roster showing the Bots (and their owners) that have joined, updating as others enter the same number (poll social/face-rooms / use the existing events), with the countdown. My own Bots are marked as mine.
    • Step 4: a clear Enter chat button opens the newly created group chat (this is the existing "Start chat" transition, then openSession(roomId)). A Leave button is also available. When someone else starts the chat, my screen switches to it automatically.
  3. Errors (bad number, locked out, window expired, room full) are shown inline in this screen in plain English.
  4. Joining with an unregistered Bot keeps auto-registering room-only (fix(social): register a Bot with Bot Social at face-to-face join if it has no identity (#83) #89); the screen must not mention "published" (the mechanism was removed in [Team] Remove a friend's Bot, and approve held Bot replies inside the chat #90).

Acceptance criteria

  • Tests: entry is under + Add and the old inline form is gone; multi-Bot selection joins each Bot once with the same code; live roster updates; Enter chat opens the room; error states.
  • All text in English. Keep CHANGELOG and docs/subsystems/*.md updated, client bundle built (scripts/build-client.mjs --check), ds-bot/ pristine (patches only if needed), CI green.

Related: #83, #89, #90.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions