Page MenuHomePhabricator

[Intervention] Introduce New Topic Notifications (desktop)
Closed, ResolvedPublic

Assigned To
Authored By
ppelberg
Sep 25 2020, 2:12 AM
Referenced Files
F36956699: image.png
Apr 19 2023, 5:15 PM
F36956695: image.png
Apr 19 2023, 5:15 PM
F36953641: image.png
Apr 16 2023, 7:13 PM
F36953638: image.png
Apr 16 2023, 7:08 PM
F36859295: image.png
Feb 17 2023, 8:03 PM
F36859286: image.png
Feb 17 2023, 7:54 PM
F36859283: image.png
Feb 17 2023, 7:54 PM
F36859281: image.png
Feb 17 2023, 7:54 PM

Description

This task represents the work involved with enabling people to elect to receive notifications when new topics are posted on talk pages they are interested in.

Objective and theory of change

Objective
This work is intended to increase the likelihood Junior and Senior Contributors know when someone is talking about something they are interested in.

Theory of change
We think that:

  • If people can decide to receive notifications when new topics are posted on talk pages they are interested in...
  • Then they will be able to more easily and quickly identify conversations they can share their expertise/support/guidance/etc. in
  • ...and be more likely to respond to those comments in a timely manner.

Requirements

For people who

  • 1) Have the Enable topic subscription setting within Special:Preferences#mw-prefsection-editing enabled and
  • 2) Are logged in
  • 3) Are accessing Wikipedia using any of the following skins: Vector (2010), Vector (2022), MonoBook, and Timeless

...the following should be true:

  • 3) When visiting a talk page, a link should appear within the skin's existing Tools menu called Subscribe
  • 4). When people click this Subscribe link a toast should appear that reads: You have subscribed! You will receive notifications when new topics are started on this page.
  • 5) The link that read Subscribe in step 3), should now read Unsubscribe
  • 6) Whenever a new topic is published on the page they took "Step 3)" on by someone other than them, they should receive a notification, via Echo, that reads: New topic "TOPIC NAME" started on PAGE TOPIC WAS STARTED ON by USERNAME OF PERSON WHO STARTED TOPIC"
  • 7) When someone clicks an Unsubscribe link a toast should appear that reads: You have subscribed! You will receive notifications when new topics are started on this page.You have unsubscribed. You will no longer receive notifications when new topics are started on this page.`
  • 8) Whenever a new topic is published on the page they took "Step 7)" on by someone other than them, they should NOT receive a notification via Echo
NOTE: the state of the Subscribe link this task introduces should NOT have any impact on whether people receive notifications about new comments in topics they are subscribed to manually or automatically.

Approaches

  • Approach #1: Implement a new button on each talk page that enables people to decide whether they would like to be notified when new topics are published to it
  • Approach #2: Present people with the option to be notified about new topics when published to a talk page after commenting or starting a discussion
    • This approach would build upon what was implemented in T262103. Note: this approach is likely too limiting in so far as it would inhibit people who have not yet participated on a page from electing to be made aware of future conversations they may want to participate in/
  • Approach #3: Present people with the option to be notified about new topics that are published if/when they tap the ⭐️ to add the page to their Watchlist
  • Approach #4: TBD

Open questions

  • What needs to be true for the software to consider someone to be "interested in" a talk page? E.g. they explicitly decided to "Watch" the talk page? They participated on the talk page before? They started a topic on the talk page?
  • How – if at all – should people watching talk pages affect whether they are notified when a new topic is added?
    • Note: some people watch talk pages indirectly, by way of watching its corresponding article page. In this case, people might be confused/surprised about receiving a notification about a talk page which they may have never directly seen and/or interacted with.

References

Related Objects

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
ppelberg renamed this task from [Experiment]Ensure people are aware when someone starts a conversation about a topic they are interested in to [Intervention] New topic notifications.Feb 8 2021, 9:07 PM
ppelberg updated the task description. (Show Details)

Regarding the first open question. I imagine this would be a manual opt-in. I wouldn't want to be signed up somewhere unless I specifically asked. For me, there might be 5-10 such pages on Swedish Wikipedia (and possibly similar on other wikis), but once set, I don't think it will ever change. With an exception perhaps for Meta, where these kinds of pages pop up regularly.

ppelberg renamed this task from [Intervention] New topic notifications to [Intervention] Introduce New Topic Notifications.Nov 10 2021, 12:46 AM

(Comment moved from T284795)
In terms of re-using the backend, we could store these subscriptions in discussiontools_subscription. Example row for a topic subscription:

image.png (46×1 px, 7 KB)

sub_item is the item ID which starts h- for topics (and c- for individual comments, but currently we don't support subscribing to sub-threads). This could be set to p for the whole page (or p-nt for "new topics" to allow for new-topics-and-comments in the future). sub-section would be left blank. We would need to make a small update Special:TopicSubscriptions to handle these new subscription types.

Generating the notifications would be fairly trivial - we already have "removed topic" notifications, so it would be mostly copy-and-paste work.

Quoting my comment from T284795 as to why I think we should focus on this type of notification, rather than auto-subscribing to new topics, or some other variant of this feature:

In a perfect world we could create every variant of this feature to please every user. In practice we will only get around to deploying something like this if we can keep the initial version as simple as possible, both on the backend and frontend.

To that end I would suggest that a single button that subscribed you to notifications about new threads would be a great improvement and be the best balance for all users, and if we can re-use most of the infrastructure we set up for per-topic subscriptions there's a small chance someone might have time to do it.

(Also, someone could probably write a gadget to auto-subscribe you to a topic whenever you click on one of these "new topic notifications")

Change 886134 had a related patch set uploaded (by Esanders; author: Esanders):

[mediawiki/extensions/DiscussionTools@master] New topic notifications

https://gerrit.wikimedia.org/r/886134

Test wiki created on Patch demo by ESanders (WMF) using patch(es) linked to this task:
https://patchdemo.wmflabs.org/wikis/b2cf82aaf0/w

ppelberg updated the task description. (Show Details)

Our proposed first placement (not necessarily the most discoverable, but the least disruptive) is in the action tools menu:

Vector 2022:

image.png (386×851 px, 95 KB)

Vector 2010:

image.png (353×963 px, 77 KB)

Mobile:

image.png (762×382 px, 72 KB)

The label is just "Subscribe" (or "Unsubscribe") while the details of what the subscription means is left to the tooltip and success notification:

image.png (106×274 px, 7 KB)

Change 890089 had a related patch set uploaded (by Esanders; author: Esanders):

[mediawiki/extensions/DiscussionTools@master] Add new topic subscription button to page actions

https://gerrit.wikimedia.org/r/890089

Minerva doesn't use the normal hooks for their overflow menu, so fixing mobile will have to be a separate job.

Test wiki created on Patch demo by ESanders (WMF) using patch(es) linked to this task:
https://patchdemo.wmflabs.org/wikis/95876c0041/w

@Jdlrobson is there a way to extend the overflow menu in Minerva as shown in T263821#8626270 ?

I can't see your image but you should try the SkinTemplateNavigation hook. We've been slowly trying to get that working. If not we should see if we can fix that up.

Test wiki created on Patch demo by ESanders (WMF) using patch(es) linked to this task:
https://patchdemo.wmflabs.org/wikis/95876c0041/w

This is looking great; what do you think of making these little revisions the language? cc @nayoub

CTAToast
Current (Subscribe)SubscribeYou have subscribed! You will receive notifications about new topics on this page.
Current (Unsubscribe)UnsubscribeYou have unsubscribed. You will no longer receive notifications about new topics on this page.
Proposed (Subscribe)SubscribeYou are subscribed! You will receive notifications when new topics are started on this page.
Proposed (Unsubscribe)UnsubscribeYou are unsubscribed. You will no longer receive notifications when new topics are started on this page.

This is looking great; what do you think of making these little revisions the language? cc @nayoub

LGTM. Done.

ppelberg updated the task description. (Show Details)

Change 886134 merged by jenkins-bot:

[mediawiki/extensions/DiscussionTools@master] New topic notifications

https://gerrit.wikimedia.org/r/886134

Change 890089 merged by jenkins-bot:

[mediawiki/extensions/DiscussionTools@master] Add new topic subscription button to page actions

https://gerrit.wikimedia.org/r/890089

Test wiki created on Patch demo by PPelberg (WMF) using patch(es) linked to this task:
https://patchdemo.wmflabs.org/wikis/92e48d7152/w

ppelberg renamed this task from [Intervention] Introduce New Topic Notifications to [Intervention] Introduce New Topic Notifications (desktop).Mar 21 2023, 5:48 PM
ppelberg updated the task description. (Show Details)

Tech/News Proposed Copy
People accessing talk pages using a desktop skin will gain the ability to subscribe to entire talk pages. Once "subscribed," people will receive an Echo notification whenever a new topic is started on a talk page they have "subscribed" to.

Tech/News Proposed Copy
People accessing talk pages using a desktop skin will gain the ability to subscribe to entire talk pages. Once "subscribed," people will receive an Echo notification whenever a new topic is started on a talk page they have "subscribed" to.

Should we mention where the feature is (under "Tools"), and/or provide screenshots, given how hard it is to find?

Proposed iteration:

People accessing talk pages on desktop will gain the ability to subscribe to entire talk pages. This can be done by clicking on Subscribe under the Tools menu (see screenshots). Once you have subscribed to an entire talk page, you will receive a notification whenever a new topic is started.

Since this was merged on Monday, it made into this week’s train, so it should be in past tense in Tech News. I’ve rephrased it to

Desktop users are now able to subscribe to talk pages by clicking on the Subscribe link in the Tools menu. If you subscribe to a talk page, you receive notifications when new topics are started on that talk page. This is separate from putting the page on your watchlist or subscribing to a single discussion.


Should we mention where the feature is (under "Tools"), and/or provide screenshots, given how hard it is to find?

It’s now mentioned where it is, but adding some screenshots to the description of this task (e.g. those that are in T263821#8626270) wouldn’t hurt. (BTW the mobile screenshot is not public, could you please attach it to this task?)

(Is there some onboarding planned? Had to create my own for Convenient-Discussions since it's easily missable.)

image.png (206×520 px, 18 KB)

Also, is it a good idea to add the "Subscribe" button to pages other than action=view, like with other page actions (e.g. "Move")?

(Is there some onboarding planned? Had to create my own for Convenient-Discussions since it's easily missable.) {F36953641}

Your screenshot is not attached...

(Is there some onboarding planned? Had to create my own for Convenient-Discussions since it's easily missable.)

image.png (206×520 px, 18 KB)

What do you do when the "Subscribe" button is hidden in a menu, which it is by default in Vector 2022 and Vector 2010?

(Is there some onboarding planned? Had to create my own for Convenient-Discussions since it's easily missable.)

image.png (206×520 px, 18 KB)

What do you do when the "Subscribe" button is hidden in a menu, which it is by default in Vector 2022 and Vector 2010?

Point to the dropdown trigger. I also added "To subscribe to a page, click "Subscribe" in the page actions menu." instruction to make the required action clear.

image.png (267×373 px, 20 KB)
image.png (220×438 px, 17 KB)

Test wiki on Patch demo by ESanders (WMF) using patch(es) linked to this task was deleted:

https://patchdemo.wmflabs.org/wikis/95876c0041/w/

Test wiki on Patch demo by ESanders (WMF) using patch(es) linked to this task was deleted:

https://patchdemo.wmflabs.org/wikis/b2cf82aaf0/w/

As I just noticed it on dewiki: is it intended that the subscribe option is now available for basically all pages outside of ns-0? In my eyes, it only makes sense on talk pages and other meta pages used as talk pages (like eg. this project), but there is no use for it on static meta pages. Most prominently I noticed this on our main page.

That's reported as T335346. It's not intended. We have used the same conditions for enabling page subscriptions as topic subscriptions, and this turns out to be a bit too broad. It wasn't a problem for topic subscriptions, since you don't see really that they're available if there are no subscribable discussion topics on the page.

See https://www.mediawiki.org/w/index.php?title=Topic:Xnih5bh8hqbseivl, where I've requested a special page that lists a user's subscriptions.

Test wiki on Patch demo by PPelberg (WMF) using patch(es) linked to this task was deleted:

https://patchdemo.wmflabs.org/wikis/92e48d7152/w/