EE: Group Mentions

Target release

Q2 2020

Epic

https://mattermost.atlassian.net/browse/MM-20775

Edition

E20

Document status

99%

Community Server Channel

EE: Group Mentions

Document owner

@Dennis Kittrell (Deactivated)

Designer

@Michael Gamble (Deactivated)

Tech lead

@Scott Bishel

Technical writers

@Justine Geffen (Deactivated)

QA

@Rohitesh Gupta (Deactivated)

OKR

Continue to add high priority business improvements for enterprise customers.

Request (CR)

https://mattermost.atlassian.net/browse/CR-4

Request (other)

 

Design Spec

https://mattermost.atlassian.net/wiki/spaces/EN/pages/451936320

Technical Spec

Test Plan

Objective

Group objects (whether native or AD/LDAP) are valuable as referenced objects in communication. Groups of people, whether departments, roles, owners, etc. can be needed in a discussion or channel for collaboration purposes. This feature aims to provide that value by enabling group mentions on a per group basis (opt-in).

Background

Groups exists via AD/LDAP sync and native, self-defined MM groups are being considered as a standalone feature. Referencing these groups for purposes of at-mentions of users is demanded and expected by MM users and administrators.

There is currently a plugin that was built to accomplish several of the user scenarios:

Success metrics

Goal

Metric

Goal

Metric

Build a useful feature that enables alerting/notifying groups of users with a single command

  • 100% of customers who requested this feature confirm that this is what they want

  • 75% of MM customers with telemetry have at least some daily mentions to groups

User Scenarios

  • Members (not guests) of any channel can @mention groups of users (e.g. @infosec or @finance)

  • Members want to mention users in a specific channel that are also in a specific group

  • Admins can choose which groups are available to be mentioned

  • System Admin - To be edit / modify the group mention name

  • Channel Member - I’d like to see any group mentions in the “@ - Recent Mentions“ search filter in the top bar

Assumptions

Phases & Milestones

Feb2020MarAprMay5.22 CF5.24 CF
Design
Develop

UX Review

iOS App

Android

Development

QA

Documentation

Areas Touched

  • System Console UI (Group Configuration page)

  • Chat-facing UI

  • LDAP Groups

  • Desktop/Mobile Apps

Requirements

Requirement

User Story

Importance

Direct Design Link

Jira Issue

Requirement

User Story

Importance

Direct Design Link

Jira Issue

1

add group section to autosuggest

As a user, I want to be able to distinguish between a user and a group in autosuggest dialogue, so that I can more easily reference the users I intend to

MEDIUM

 

 

2

Allow members to @mention groups by their group name (slug is auto-generated)

As a user, I want the ability to @mention entire groups and push a notification to that group, so that I can better collaborate with groups of people

HIGH

 

3

Add group slugs to autocomplete suggestions on mention screens

As a user, I want automated suggestions for groups as a type, so that I can more easily find the group I am looking to reference

MEDIUM

 

4

Ability for admins to turn on/off @mentions for specified groups (off by default)

 As an admin, I want the ability to opt-in to the above setting for each group, so that I can selectively choose which groups can mentioned

MEDIUM

 

5

If a team or channel is group constrained, only autosuggest groups who are available in that team or channel

As a user, I want to be sure that the groups I am mentioning are available in the team and channel I am posting in, so that I do not mention groups that cannot view my post

MEDIUM

 

 

6

If the team and channel are not group constrained, all groups with the toggle enabled are mentionable

 

MEDIUM

 

 

7

confirmation modal before sending to 5 or more users (add to setting for @mentioning groups) - same threshold as @here and @all

As a user, I want to be alerted before I alert a large number of users, so that I can reassess the impact of my action

LOW

 

8

system message notifying user that some users were not members of the channel with option to invite

As a user, I want to be made aware if members of the group I am mentioning are not members of the channel (and won’t be alerted from my mention), so that I can choose to invite them.

LOW

 

 

9

Ability to rename group slug

As an admin, I want the ability to rename the group slug, so that I can maximize group mentions usability for my users

MEDIUM

 

(DESIGN)

10

Convert group config to draft / save style (like permissions scheme)

In order to rename slugs we need draft state

MEDIUM

 

11

Duplicate detection for groups when slug is created

As an admin, I want to be sure there are no conflicts of group slugs when I am enabling or renaming group slugs, so that I can be sure my users can easily mention the intended group

MEDIUM

Figma

12

Team Member - setting in “Account Settings > Notifications” to add/remove my group slugs to the search filter in the “@ - Recent Mentions“ - Default Enabled
removed from scope - without granular selection of group notifications, this could potentially render the Recent Mentions feature useless. We will revisit Post MVP -

As a group member, I want to see my groups' mentions in the recent mentions search query, so that I can easily find past notifications intended for me.

MEDIUM

 

(MOBILE)

13

Highlighting

  • All valid mentions (triggering any notifications) are blue text (unless mentions are disabled for the channel as a permission)

  • All mentions that trigger a notification for YOU (the user viewing the post) would be blue text AND highlighted in yellow - as an identifier of what mentions in the post triggered the notification for the user.

As a user, I want to easily identify which group mentions triggered notifications for others, so that I can accurately assess who likely saw or will soon see a message.

As a user, I want to easily identify which group mentions were directed to me (and triggered notifications for me) so that I can quickly find content others want me to focus on.

MEDIUM

 

Open Questions

Question

Answer

Date Answered

Question

Answer

Date Answered

Does this include role @mentions? Such as @system admin or @moderator, etc?

This is out of scope for MVP

Mar 31, 2020

How do we prevent disruptive invitations to a channel when attempting to mention users?

This will not be answered in MVP. We need to determine if this is a real problem through user feedback.

Mar 31, 2020

If I’m inviting a group name, and I can’t see the individuals / who’s in it - is this useful / would I use it?

 

 

Risks

  • disruptive invitations to a channel when attempting to mention users

  • security issue if we reveal users in specific groups

  • group invites may be limited by the current invite architecture having a max limit of invites sent at once (not batched on the backend)

  • group invites will have challenges with the current invite modal UX possibly feeling overwhelming in two ways, first will having a huge quantity of chips in the input field feel ok? second, will having a large number of invites listed in the confirmation screen feel ok?

Out of Scope / Deferred

  • Secret groups - groups that can be mentioned only and if no one from the group is in the channel, nothing happens (potentially with preview before joining)

  • Ability for users to ignore group mentions per channel

  • Specific Permission to allow mentioning Groups

  • Ability for users to mute or turn off notifications from group mentions

  • Ability for admins to restrict disabling of notifications for specific groups

  • System Admin ability to explicitly make a group available for invites - should only approach if comes in a request

  • System Admin ability to configure number of notifications that would trigger a warning dialogue prior to posting a group mention

  • Ability to invite groups to the team using the “invite people” flow ** For this item please note the third and fourth item under “Risks”

  • Channel Admin ability to granularly control which members can use group mentions (as part of Channel Moderation)

  • Show group member count in the group mention autocomplete

  • Ability to invite a group using the /invite command (or something similar)

  • Accurate count of how many people will be notified in how many different timezones when sending group notification

  • Quick invite option for channel member who mentions a group with no members currently on the team

  • Ability for channel member to specify which groups they will be notified for (account settings level)

    • This will allow display of group mentions in “Recent Mentions” area

  • Updated design for group configuration - group profiles needs improvement

  • Updated icons for groups

  • Make group mentions linkable (click a link and see a profile card? Maybe see who’s in the group?

  • Group filter for bulk enabling mentions (As an admin, I want to enable group mentions in bulk, so that I don’t have to tediously enable each group one by one)