Skip to content

[Story] EX multi-account: deep-link sign-in resolves to the right account #3336

Description

@mxandreas

Description

  • As a user opening a sign-in deep link that specifies a server/domain (and optionally a username)
  • I want to be taken to the right place — my existing account, a fresh sign-in, or the add-account flow — based on whether I'm already signed in
  • So that deep-linked sign-in works correctly now that multiple accounts are possible

Acceptance criteria

  • Given the deep link includes a username, when the user has no accounts signed in yet, then behavior is unchanged from today.
  • Given the deep link includes a username, when the user already has that specific account signed in, then the app opens and switches the active account to that one.
  • Given the deep link includes a username, when the user has other accounts but not that specific one, then the user is taken into the "Add account" flow.
  • Given the deep link does not include a username, when the user has no accounts signed in yet, then behavior is unchanged from today.
  • Given the deep link does not include a username, when the user already has one or more accounts signed in, then the "Add account" flow is triggered with the specified homeserver pre-filled.
  • Given the deep link's login_hint doesn't cleanly match a signed-in account (e.g. it's an email address rather than a matrix ID), then proceed as "not logged in to this account" (e.g. into the add-account flow).

Dependencies

  • None

Out of scope

  • Matching of arbitrary login_hint values (e.g. email addresses) to a specific signed-in account

Questions

  • None

Subtasks

Android

iOS

Rust

Other

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions