Page MenuHomePhabricator

Allow users to create custom notifications onwiki
Open, MediumPublicFeature

Assigned To
Authored By
Legoktm
Oct 30 2013, 5:39 AM
Referenced Files
None
Tokens
"100" token, awarded by Framawiki."Barnstar" token, awarded by Enterprisey."Like" token, awarded by jhsoby."Love" token, awarded by xcombelle."Love" token, awarded by Luke081515."Like" token, awarded by Sylvain_WMFr."Love" token, awarded by Sadads."Love" token, awarded by Trizek-WMF."Love" token, awarded by MGChecker.

Description

Basically allow users onwiki to create custom types of notifications and send them. Right now they can only be sent via software actions that call EchoEvent::create and register various hooks.

Usecase: sane notifications for XfD, your file needs categories!, comment on this RfC please, etc.

Need some kind of structure for each notification: notification text, email template, image? category, priority, etc.

A special page which lets a user send out notifications, based on the types that are already set up.


Version: unspecified
Severity: enhancement

Event Timeline

bzimport raised the priority of this task from to Needs Triage.Nov 22 2014, 2:21 AM
bzimport added a project: Notifications.
bzimport set Reference to bz56362.
bzimport added a subscriber: Unknown Object (MLST).

The WMF core features team tracks this bug on Mingle card https://mingle.corp.wikimedia.org/projects/flow/cards/393, but people from the community are welcome to contribute here and in Gerrit.

EBernhardson set Security to None.
EBernhardson subscribed.

These seems like thing a bot or author would currently drop a message on your User talk page, long term Flow is intended to start handling these use cases but there is no timeline yet.

Trizek-WMF subscribed.

Duplicate's description:

(Based on an interesting internal conversation about how to warn people about a new feature or a survey.)

The idea of a Community Notification Board is to give a way for communities to create Notifications concerning community announcements (like RFCs, events, elections...). Some communities sometimes use the SiteNotice to have a community announcement, which is difficult and too big for daily life.

To avoid spam, each request on the Community Notification Board would be validated by admins (or an other role). Some "how to use" advice should be suggested to communities when it will be deployed and all possible notifications provided by this tool would be mutable on user preferences.

This feature would replace the Community announcement boards which exist on certain wikis, and increase participation, like helping a small but active community to built a real community.

That feature may be used by WMF too, for a new feature to test or a survey to answer.

Use case on the French Wikipedia: push fr:Wikipédia:Annonces to Echo.

This is a concrete example validating the more generic use case found by @Trizek-WMF in previous comment.

The people working on the copyvio detection bot here at Wikimedia-Hackathon-2016 also want to be able to send people Echo notifications about things being flagged as copyvio.

A use-case form non-wikimedia wikis would be: being able to create notification types to be triggered when pages are created having certain criteria; such as a specific category or in a specific namespace.

For example in our organisation we use mediawiki for our documentation and have a namespace for minutes of meetings. We'd like all users to be notified when a new page in the MoMs namespace is created.

We'd like the wiki administrator to be able to create such a notification, and turn it on by default for all users, with email notification also enabled.

Similar to what's described in https://mediawiki.org/wiki/Extension:Email_notification/to-do#new-page_notification

@ahmad Thanks for the use-case description.
Just fyi, that page you linked is unrelated to this feature (the more recent Echo/Notifications system is currently distinct from the ancient "enotif" (email notification) system). Also fyi, the current list of requested new notification-types for Echo is at T125653: Create new types of notifications (of which this is a subtask) and semi-duplicated onwiki at https://www.mediawiki.org/wiki/Notifications#Suggested_new_notification_types

Aklapper changed the subtype of this task from "Task" to "Feature Request".Feb 4 2022, 12:23 PM
Aklapper removed a subscriber: wikibugs-l-list.

Change 928980 had a related patch set uploaded (by SD0001; author: SD0001):

[mediawiki/extensions/Echo@master] Add API module for sending notifications

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

Have raised a patch which adds an API for bots to deliver notifications to users. There is no UI - and probably there doesn't need to be as this doesn't seem like something that makes much sense in a non-automated context. Per T306211, it also allows sending notifications to self (even if you're not a bot), which could be used in gadgets or OAuth based tools.

Things to consider:

  • Should this be a logged action? If so, what all details should be logged?
  • Should users be able to mute notifications from specific bots?
    • Since the same bot could send multiple kinds of notifications, should there be an alternative mute mechanism?
  • What should be the size limits on the header and body contents of these notifications?
  • Could this be used by a bot operator to harass someone, knowing that contents of notifications aren't logged?

IMO:

  • Public logging should only include the bot sending the notification and the user receiving it. Private logging can include all details of the notification, but be restricted to crats / stewards.
  • Bots should be able to define categories of notifications that they send through an API. Users should then be able to granularly mute notifications in each category.
  • Size limit should be the same as other types of notifications, for standardization.
  • This definitely is a concerning possibility. I think that logging of the entire notification's contents, available to crats + stewards, could help mitigate this.

I also think that it'd be nice to be able to send notifications from one user to another. One use case of this would be sending small, private notes, without needing email. I also think that having a UI, even if it will be a bots-only feature, will be helpful, especially for debugging.

Coming back to this, I'm not sure if logging is a good idea. The closest MW function to this is email which is also not logged (except for the private CheckUser logging which identifies just the sender). Regarding the harassment possibility, I think we can ignore the concern as the same holds for email as well (to a bigger extent - emails don't have size limits and are available to all users than just bots, and even blocked users can send emails!).

Also, Echo allows the same EchoEvent to result in notifications to multiple users – if we want to expand the API to allow multiple recipients (which has reasonable usecases - such as notifying all major contributors of an article which is AfD'd), it will be cumbersome to log all the recipients in one log entry.

I thought that email contents were available to sysadmins?

Question. Could an editor apply for the notifications of a certain article "from the bot"? It could work like watchlist for notifications. It'd be useful for all the notifications that reach article creators that are not anymore active or have another account. Also if a wikilink is added from one to an other page, then both articles might be able to be expanded. Maybe it is also a wrong wikilink, which then can be removed. Notifications of AfDs for articles where its creator is not active anymore or has been blocked. And we all one day will leave wikipedia, and then the notifications from "our" articles will reach no-one. It like to think of a democratization or demonopolization of notifications :)

Change 958058 had a related patch set uploaded (by SD0001; author: SD0001):

[mediawiki/extensions/Echo@master] Add logging for notifications sent via API module

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

Change 958058 abandoned by SD0001:

[mediawiki/extensions/Echo@master] Add logging for notifications sent via API module

Reason:

no need for logging

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