Element-web: Checking email invite account is unclear when no IS set

Created on 27 Aug 2019  路  9Comments  路  Source: vector-im/element-web

Since it's now possible to be disconnected from an identity server entirely (your session has no active identity server), it's unclear how some IS dependent features should function, such as:

Checking an email invite in the invite preview bar to ensure the invited email is for the active account (in case you have multiple Matrix accounts in different tabs, etc.)

2019-08-23 at 15 53

I think we are at a stage where @lampholder needs to work out how the product should function for this case.


After some discussion, we'd like to use the following text for the different combinations:

  1. Case: Email not added to account
    Title: This invite to %(roomName)s was sent to [email protected] which is not associated with your account.
    Subtitle: Link this email with your account in Settings to receive invites directly in Riot.

  2. Case: Email added to account, no ID server
    Title: This invite to %(roomName)s was sent to [email protected].
    Subtitle: Use an identity server in Settings to receive invites directly in Riot.

  3. Case: Email added to account, have ID server but email not bound
    Title: This invite to %(roomName)s was sent to [email protected].
    Subtitle: Share this email in Settings to receive invites directly in Riot.

  4. Case: Email added to account, email bound on ID server (success case, unchanged from current)
    Do you want to join %(roomName)s?
    userName invited you

In all cases, the button will just say "Join the discussion".

bug defect 1 privacy privacy-sprint identity-server invite

All 9 comments

The current text is actually:

This invite to Testo wasn't sent to your account

Sign in with a different account, ask for another invite, or add the e-mail address [email protected] to this account.

[ Try to join anyway ]

This is not correct or helpful. You don't need to take any of the steps suggested, and there is no 'try' - joining will just work.

We could make this more simple and more correct by:

  • not talking to an IS at all and just comparing the email address in the invite to the email addresses associated with your account on the homeserver
  • changing the message text to something like:

This invite was sent to [email protected], but this email address is not associated with your account.

[ Join anyway ]

I think the three different possible situations are a combination of:

  • Email not added to account
  • Email added to account
    ...and...
  • No ID server
  • Have ID server but email not bound
  • Have ID server and email bound

So I imagine we want some hints that might be subtly different for all of the combinations of those, eg. "Email added to account but not bound" might be, "This invite was sent to [email protected]. Share this email in settings to receive invites directly to Riot"

And yes, on "Try to join anyway" I would go even further personally and just make it, "Join". It should just be a hint that we're providing, it's not an error situation.

We don't know that the invite will succeed though - if the room is private then the join will fail still unless you also happen to be invited by mxid.

@lampholder it's also unclear what all the copy for the states is, if anything. Putting this back as blocked until we have copy for all the states we care about (ie: https://github.com/vector-im/riot-web/issues/10669#issuecomment-525861980 )

We don't know that the invite will succeed though - if the room is private then the join will fail still unless you also happen to be invited by mxid.

Is this true?

I:

  • created a new room (incidentally on lant.uk)
  • configured it like this:
    Screenshot 2019-09-02 at 10 30 46
  • invited a random email address (not associated with any mxid in any way)
  • logged into a super old (pre redesign) riot with a test acccount
  • grabbed the link from the email and navigated to it
  • got some UX that looked like this:
    Screenshot 2019-09-02 at 10 30 30
  • clicked accept
  • joined the room

As far as text for the different combinations, how about:

  1. Email not added to account
    This invite was sent to [email protected], but this email address is not associated with your account.

  2. Email added to account, no ID server
    This invite was sent to [email protected]. Use an identity server in Settings to receive invites directly in Riot.

  3. Email added to account, have ID server but email not bound
    This invite was sent to [email protected]. Share this email in Settings to receive invites directly in Riot.

  4. Email added to account, email bound on ID server (success case, unchanged from current)
    Do you want to join %(roomName)s?
    userName invited you

In all cases, the button will just say "Join". @lampholder, how does this sound?

  1. still sounds a bit errory to me (I anticipate users feeling a little confused by the 'but' there if it doesn't actually stop them joining the room).

How about:
This invite was sent to [email protected] which is not associated with your account. Link this email address with your account in Settings to receive invites directly in Riot.

Otherwise looks good.

Okay, great. I posted the revised version in the top comment of this issue.

Is this true?

Technically, yes. The 'accept' button does a different thing than what you're imagining. It's claiming the invite because it has all the information to do so, even without your email being added.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

t3chguy picture t3chguy  路  3Comments

turt2live picture turt2live  路  3Comments

MurzNN picture MurzNN  路  3Comments

bagage picture bagage  路  3Comments

turt2live picture turt2live  路  3Comments