Cartouche | |
---|---|
ZEP | 24 |
Titre | Refonte et enrichissement des notifications |
Révision | 4 |
Date de création | 21 janvier 2015 |
Dernière révision | 5 mai 2015 |
Type | Feature |
Statut | Acceptée |
Situation actuelle
Aujourd'hui, il est possible de recevoir des notifications pour les événements suivants :
- nouveau message sur le forum dans un sujet suivi (via le bouton "suivre" ou parce qu'on y a posté)
- nouveau commentaire sur un article qu'on a commenté
- nouveau commentaire sur un tutoriel qu'on a commenté
Rien ne permet de distinguer ces trois types de notifications. De plus, il est actuellement impossible de suivre les commentaires d'un tuto/article manuellement (sans avoir posté donc). Impossible également d'arrêter d'être notifié pour les commentaires d'un tuto/article.
Proposition
L'idée serait de repenser les notifications pour en faire un module à part, qui soit plus complet et plus souple qu'actuellement.
Types de notification
Pour commencer, 11 types de notifications sont proposées :
- [forum] nouveau message dans un sujet suivi
- [forum] nouveau sujet dans un forum suivi
- [forum] nouveau sujet créé avec un tag suivi
- [article] nouveau commentaire dans un article suivi
- [article] mise à jour d'un article dont on est co-auteur (version hors-ligne)
- [tutoriel] mise à jour d'un tutoriel dont on est co-auteur (version hors-ligne)
- [tutoriel] nouveau commentaire dans un tutoriel suivi
- [tutoriel] mise à jour d'un tutoriel suivi
- [tutoriel] nouvelle demande d'aide pour un tuto (avec possibilité de n'être notifié que pour les tutos qui demandent un graphiste par exemple, ou un correcteur.
- [validation] nouveau tuto/article en validation (avec filtre par catégorie/tag)
- [général] ping d'un user dans un commentaire/post du forum (-> sans doute à implémenter séparément)
Dans le futur, d'autres types de notifications pourraient être créées, par exemple concernant les futures tribunes libres.
Chaque type de notification pourra être reçue via le header (par défaut) et/ou via email (à activer). Le comportement pourra être défini par l'utilisateur de manière générale (via une page de paramètres dans le profil), et de manière plus fine pour chaque sujet/tuto/etc. suivi.
[Forum] Nouveau message dans un sujet suivi
Même fonctionnement qu'actuellement
-> mène au premier message non lu
[Forum] Nouveau sujet créé dans un forum suivi
L'abonnement à un forum (exemple, le forum "Dev zone") se ferait sur la page d'accueil du forum en question, via un bouton "Suivre ce forum" dans la sidebar. Désabonnement de la même manière
-> Mène au premier message du sujet, à charge pour l'utilisateur de suivre ou pas ce sujet (s'il ne décide pas explicitement de suivre le sujet, soit via le bouton "suivre" soit en répondant, il ne sera plus notifié à propos de celui-ci).
[Forum] Nouveau sujet créé avec un tag suivi
L'abonnement se ferait sur la page du forum reprenant les sujets ayant ce tag (ex : tag "zep"), toujours via un bouton dans la sidebar. Désabonnement de la même manière.
-> Mène au premier message du sujet, à charge pour l'utilisateur de suivre ou pas ce sujet (s'il ne décide pas le sujet explicitement, soit via le bouton "suivre" soit en répondant, il ne sera plus notifié à propos de celui-ci).
[Article/tuto] Nouveau commentaire dans un article/tuto suivi
Devra sans doute être réadapté si développé avant la finalisation de la ZEP-12
Abonnement via un bouton "Suivre les commentaires de cet article/ce tutoriel" dans la sidebar sur la page de l'article/les différentes pages du tutoriel, ou lorsque l'on poste un commentaire. Désabonnement via un bouton dans la sidebar
-> Mène au premier message non-lu
[Tutoriel]Mise à jour
Devra sans doute être réadapté si développé avant la finalisation de la ZEP-12
Notification si le tutoriel est mis à jour
-> Mène à la page d'accueil du tutoriel ? A un quelconque outil de diff ?
Abonnement via un bouton "Suivre ce tutoriel" dans la sidebar, désabonnement de la même manière.
Bouton différent que pour le suivi des commentaires ?
Décision prise pour le moment : OUI
Je n'ai pas jugé utile d'avoir la même chose pour les article, étant donné qu'un article est moins susceptible d'être complété au fur et à mesure. Il est cependant possible que suite à la ZEP 12, l'implémentation de ce type de notification pour les tutoriel la rendent de facto disponible pour les articles.
[Tutoriel] Nouvelle demande d'aide
Abonnement via un bouton dans la sidebar, désabonnemnt de la même manière. Eventuellement avec pop-up pour choisir le type de demande d'aide dont on veut être notifié.
-> Mène au tutoriel en question
[Validation] Nouveau tuto/article en validation
Abonnement et désabonnement via un bouton dans la sidebar. Si filtré par tag -> abonnement/désabonnement pour le tag.
-> Mène au tutoriel/article en question
[Général] Ping d'un user
Etant donné qu'il s'agirait d'une toute nouvelle fonctionnalité, qui impacte d'autres chose que les notification (markdown, éditeur, …), cela devra faire l'objet une ZEP à part entière.
Un message sur le forum contenant "@@<pseudo>" ("@@" ou autre chose, à définir, une discussion a déjà eu lieu à ce sujet mais où ?) envoie une notification au membre <pseudo>.
-> Mène au message contenant le ping
A prévoir en plus
- une section dans le profil pour gérer les notifs (ou du moins certains types de notifs)
- une éventuelle distinction visuelle des différents types de notifs (couleurs ? icones ? les deux ? autre ?)
- un filtre par type de notifs sur la page "Toutes mes notifications"
- la gestion des notifs via l'API
- plus de d'infos qu'actuellement dans les emails de notifications
Les grosses questions à se poser
Les différents types de notifications proposés sont-ils intéressants ? Y a-t-il d'autres chose qu'il serait bien d'ajouter ?
Répondu dans le topic, liste mise à jour.
Comment introduire les ping vers les utilisateurs ? Faut-il une ZEP dédié à ça ?
Oui, ça fera l'objet d'une ZEP secondaire/à part
Faut-il faire la différence entre "Suivre un tutoriel/article" (ie les mises à jour) et "Suivre les commentaires d'un tutoriel/article" ?
Oui
Qu'est-ce que l'utilisateur doit pouvoir gérer exactement via sa page de profil concernant les notifications ?
Pour chaque type de notif : - notif dans le header ? - notif par email ?
Intégration de l'API ?
L'API sera intégrée directement pendant le développement de la ZEP.