Notification grouping now on master branch...


  • Admin

    Annoyed with how many notifications you get every day?

    Me too. Every other day, my notification counter would rise to 20+, mostly as a consequence of having "Automatically follow topics I reply to" enabled.

    So I did the only two things I could think of:

    1. I disabled that option in the UCP, and
    2. I kept hitting "Mark all notifications read"

    ... but not using a feature is the complete opposite of what I should've been doing, so now I'm happy to show a preliminary release of the notification grouping feature :grin:

    0_1450292680540_Selection_039.png

    There may be bugs... maybe it'll crash... but unless some bugs are found, this will be in v0.9.3 when released :smile:

    Edit: Please no Freudian analysis on why my test accounts are named after various exotic fruits...


  • Translator

    Now I'm in the mood for exotic fruits :|. Regardless of that, amazing job.


  • Plugin & Theme Dev

    Awesome. Thank you
    Can you explain how it works? Will it stop from getting the new notification from same topic or is only to show them grouped?


  • Admin

    The notifications are grouped on the way out, so any listeners to existing notifications will still receive all notifications as they occur.


  • Plugin & Theme Dev

    @julian said:

    The notifications are grouped on the way out, so any listeners to existing notifications will still receive all notifications as they occur.

    I see. Is it a technical decission?
    Will be nice to see this feature extended for native desktop notifications, pushbullet, mail... to precent notification spam :panda_face:


  • Admin

    I initially wanted to group them as they were created, although it is difficult given that each individual notification can be shared with other users.

    It gets complicated in situations like:

    • Notification: User replied to topic
    • Notification pushed to 4 users
    • 2 of those users read that notification
    • A different user replied to that topic

    Now, what happens here? Do we modify the existing notification object? If we do, then the two users who read the notification already will receive a notification with incorrect data (that is, it will say two users replied to a topic, when it should say 1).

    In hindsight, it might actually be better to keep notifications granular, and have each individual client handle duplication separately...


  • Gamers

    @julian

    THAT is very helpful. De-spam the notifications :D


  • Admin

    I've re-enabled auto-follow on topic reply :grimacing: Let the spamming begin.



  • @julian said:

    I initially wanted to group them as they were created, although it is difficult given that each individual notification can be shared with other users.

    It gets complicated in situations like:

    • Notification: User replied to topic
    • Notification pushed to 4 users
    • 2 of those users read that notification
    • A different user replied to that topic

    Now, what happens here? Do we modify the existing notification object? If we do, then the two users who read the notification already will receive a notification with incorrect data (that is, it will say two users replied to a topic, when it should say 1).

    In hindsight, it might actually be better to keep notifications granular, and have each individual client handle duplication separately...

    Out of curiousity (I am actually just a user of nodebb, not deverloper or anything), but then.. how is it work if they use the forum?

    Example: UserA, UserB, UserC and UserD are following a topic.

    1. UserX writes a new reply, a notifications is sent to A, B, C and D.
    2. A and B enter to the forum, A reads the notification and mark it as read. B doesn't mark it as read neither read the new reply.
    3. A UserY writes a new reply.

    What does the forum then? B, C, D should receive a notification as "two new replies" while A should receive a notification as "one new reply".


    By the way, perhaps a simple solution is saying: "There are new messages in X topic" and until that the user doesn't mark as "read" the notification, he won't be notificated again.



  • @julian said:

    I initially wanted to group them as they were created, although it is difficult given that each individual notification can be shared with other users.

    It gets complicated in situations like:

    • Notification: User replied to topic
    • Notification pushed to 4 users
    • 2 of those users read that notification
    • A different user replied to that topic

    Now, what happens here? Do we modify the existing notification object? If we do, then the two users who read the notification already will receive a notification with incorrect data (that is, it will say two users replied to a topic, when it should say 1).

    In hindsight, it might actually be better to keep notifications granular, and have each individual client handle duplication separately...

    Do not send notification to the users who didnt read these notifications. In @exodo we modified the notifications and it doesn't send notification to the user who hasn't read last notification about something. For example: if someone favourited your post, you wont receive more notifications about more favs for that post until you read that post.


  • Admin

    @alberto__segura that works just fine :smile: no need to change what works really.

    I wanted to have notifications that are always correct. If two users reply, the notification recipient would only get one notif. That's okay, but could be better. These grouped notifications do the trick.


  • Admin

    @pitaj everybody still gets the same notifications. Just when they open the dropdown, the duplicates will be collapsed.


  • Plugin & Theme Dev

    @julian you meant to mention @Pixel right?


  • Admin

    @pichalite yes :laughing: fat fingers caused me to mention the wrong fellow.



  • @julian said:

    @alberto__segura that works just fine :smile: no need to change what works really.

    I wanted to have notifications that are always correct. If two users reply, the notification recipient would only get one notif. That's okay, but could be better. These grouped notifications do the trick.

    yes, grouped notifications are the best solution for the web notifications, but we thought about the plugin and email notifications. If you use the Telegram Bot plugin or the pushbullet plugin, you will receive a lot of notifications from the same topic or post, we doesn't like it, so we tried to fix it. I think both solutions could work together pretty well :)


  • Admin

    @alberto__segura offhand, I do not know if those services support changing a notification if it had already gone out.

    That'd be best...


  • Gamers

    img


  • Admin



  • @julian said:

    @alberto__segura offhand, I do not know if those services support changing a notification if it had already gone out.

    That'd be best...

    I used the telegram plugin and it's true that I was receiving too many notifications.

    Perhaps if the forum will send 2 variables it will be easier for the plugin to cull the notifications to avoid sending too many. For example: one variable might say the type of notification (if it's a mention, a message favourited, new answer, etc. ) and another variable might say if there is another mention, message favourited or new answer that haven't been read in that post. (@alberto__segura may that works?)

    After all, from what I've seen (as a user) is that little things is what makes people think that nodebb has hundreds of differences with other platforms.


  • Admin

    @Pixel, each notification now comes with a mergeId which you can use to determine duplicates and merge or ignore accordingly.


Log in to reply
 


Looks like your connection to NodeBB was lost, please wait while we try to reconnect.