- Ya
- 5 Agosti 2026, 06:37 UTC
- Mwandishi
- Kamo
- Ahadi ya
- 0876f47
Adds the Provider Setup tab to /settings/features/meets and makes every other tab honest about the provider it is configuring. useMeeting no longer builds meet.<domain>/<room> in the browser — that was what made every meeting a Kamo Meets meeting regardless of configuration. It now creates the meeting through the backend and uses the URLs the provider returns, so the Interaction Center, the chat tool window and the member directory all route through the abstraction without changes of their own: they share MeetingDialog, which shares this hook. - Provider Setup: provider cards with a settings-coverage bar, so the cost of switching is visible before the switch rather than discovered afterwards on a tab of greyed-out controls. Credential forms are write-only — the server returns which fields are set, never their values — plus a live connection test and per-provider setup instructions. - Capability gating: useMeetProvider reads the provider's supported settings and MeetSettingRow disables the rest with a tooltip naming the provider. Unsupported settings are shown rather than hidden, and are genuinely disabled rather than merely dimmed, so they cannot be changed by keyboard. Saves omit them entirely. Gating fails open — a failed capability lookup shows everything, since greying out a working screen is worse than showing a control the backend would ignore. - New settings the other providers support: join-before-host, in-meeting chat, screen share, dial-in, authenticated-users-only, passcode length and embedding, lobby bypass scope, presenter and attendee controls, cloud recording, transcripts, recording download and provider-sent invitations. - /meet/join/<ref> is now provider-aware: Kamo Meets still gets a one-time key minted at click time, Zoom and Teams redirect to the provider's own URL. It accepts a meeting id or a room name, so invitations sent before this change keep working. - The email invitation link is built from a UUID-validated meeting id rather than a room name, keeping the existing rule that a client-supplied URL is never trusted into an org-branded email.