Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

Présentation

Permet de notifier automatiquement des utilisateurs suivant leurs préférences ou celles du projet auquel ils sont associés.
Ces notifications sont crées et envoyées suite à la modification d'une table. Nous nommons ce mécanisme Datatracking.
les utilisateurs peuvent être aussi bien utilisateur du Back-office, technicien sur le Front-office ou encore utilisateur extranet.

Informations rapides

Tables principales exploitées
sw_data_sysnotification : Contient les notifications générées. Elles sont ensuite affichées et/ou envoyées.
sw_data_sysnotificationsubscription : Contient les abonnements aux entités des utilisateurs.
sw_data_sysnotificationuseroptions : Contient les options de notifications des utilisateurs

Generictype exploités
NOTIFICATION_SYSTEM_FREQUENCY : Fréquence à laquelle l'utilisateur sera notifié
NOTIFICATION_SYSTEM_SENDING_METHOD : Méthode utilisé pour notifier l'utilisateur
NOTIFICATION_SYSTEM_TYPE : Contient

Variables exploitées
PortalBaseUrl : Définit l'url de base du Back-office pour ce projet. Permet de rediriger l'utilisateur au bon endroit.
SysNotification.default.frequency : Contient la fréquence par défaut du projet pour chaque méthode d'envoi.

...

Description

Notification sw_data_sysnotification

C'est quoi ?

Une notification contient un message et permet de notifier un utilisateur sur différentes plateformes.

...

  • Lorsque l'utilisateur est abonné a une entité.

  • Notification sans abonnement

    • Tâche

      • Lorsqu'une tâche est affectée à un utilisateur qui n'est pas le créateur.

      • Lorsqu'une tâche est modifiée.

      • Lorsqu'une tâche est supprimée

Abonnement sw_data_sysnotificationsubscription

C'est quoi ?

Un abonnement permet de suivre une entité et être notifié automatiquement lorsque cette dernière est modifiée.

...

Options de notification sw_data_sysnotificationuseroptions

C'est quoi ?

L'utilisateur peut modifier les options liées aux notifications depuis le Back-office dans Mes options > Mes options de notification

...

  • Notification via email

    • Fréquence de notification

  • Notification push (mobile).

    • Fréquence de notification

  • Notification via Teams.

    • Fréquence de notification

    • URL

...

Possibilités

Accéder aux notifications sw_data_sysnotification

...

Possibilité de consulter la liste des abonnements en cours. L'utilisateur peux se rendre sur la page de l'entité, modifier la note liée à l'abonnement et se désabonner massivement en sélectionnant les abonnements et en cliquant sur Se désabonner
Back-office Depuis les options utilisateur cliquant sur Mes abonnements https://weavy.divalto.com/page/myOptions

...

Technique

Process

  • Lorsqu'une table est ajoutée à la gestion des notifications dans le studio, elle est écoutée par le Datatracking.

  • Suivant les événements choisis, le script de process lié sera exécuté.

  • A chaque table sont script de process.

  • On boucle sur les data pour générer les notifications aux subscribers et au cas par cas en remplissant la table sw_data_sysnotification

  • Dès que la table sw_data_sysnotification manipulée, sont script de process est appelé pour définir les notifications à envoyer aux utilisateurs suivants les fréquences et les méthodes choisis.

Variables
PortalBaseUrl : Définit l'url de base du back-office pour ce projet. Permet de rediriger l'utilisateur au bon endroit.
SysNotification.default.frequency : Contient la fréquence par défaut du projet pour chaque méthode d'envoi.
SWx.Mobile.SysNotification.Enabled : Active ou désactive les notifications pour le mobile (FO).

Back-office

Profils autorisés
Tous

Nom du profil principal
/

...

Bibliothèque
helper.sysNotification

Studio

Scripts principaux

  • SysNotification_XXX Script de process. C'est lui qui est appelé lorsque la table (sw_data_XXX où XXX = entité) est modifiée.

  • SysNotification_XXX_ParseForEach Script qui parse les datas. Appelé dans SysNotification_XXX.

  • SysNotificationOverload_XXX Script d'overload permettant de délivrer un message spé aux subscriber. Appelé dans SysNotification_XXX_ParseForEach.

  • FuncSysNotification_InsertNotification Script permettant d'insérer une ligne dans sw_data_sysnotification

  • SysNotificationSysNotification Script de process. C'est lui qui est appelé lorsque la table sw_data_sysnotification est modifiée.

  • FuncSysNotification_ParseForEach Script qui parse les datas. Appelé dans SysNotificationSysNotification.

  • FuncSysNotification_ParseForEach_MethodAndFrequency Script qui délivre les notifications suivant les fréquences et méthodes d'envoi en remplissant sw_data_baseoutbox. Appelé dans FuncSysNotification_ParseForEach.

...

Model de message
Suivant l'entité et l'action (Insert, Update, Delete), le message généré se base sur un model définit en amont.
Ces models sont déclaré dans les traduction et sont composé comme ceci :
NotificationModel_XXX_YYY
XXX = Nom de l'entité (customer, task, etc...)
YYY = Nom de l'action (insert, update, n'importe quoi d'autre, etc...)

...

Scénarios

S'abonner > Modifier les options utilisateurs > Consulter et supprimer les abonnements

...