• Accueil / Salesforce / Attirer l’attention de…
, Attirer l&rsquo;attention de vos utilisateurs avec des notifications personnalisées<span class="wtr-time-wrap after-title"><span class="wtr-time-number">8</span> minutes de lecture</span>

Attirer l’attention de vos utilisateurs avec des notifications personnalisées8 minutes de lecture


, Attirer l&rsquo;attention de vos utilisateurs avec des notifications personnalisées<span class="wtr-time-wrap after-title"><span class="wtr-time-number">8</span> minutes de lecture</span> Attirer l’attention de vos utilisateurs n’est pas toujours facile, il est essentiel de choisir comment, quand et où les notifier. Depuis Expérience Lightning et Salesforce Mobile est sorti la cloche de notification a été un guichet unique pour Bavarder et Notifications d’approbation, que vous soyez sur votre ordinateur de bureau ou sur votre appareil mobile.

Dans version bêta au moment de la rédaction est une nouvelle fonctionnalité de plate-forme connue sous le nom de Notification Manager qui vous permet d’envoyer vos propres notifications personnalisées à vos utilisateurs pour tout ce que votre cœur désire des mêmes endroits, même sur l’appareil mobile d’un utilisateur! Ce blog plonge dans cette fonctionnalité et comment vous pouvez l’intégrer dans vos créations, que vous soyez un codeur de clic admin, Développeur Apex ou API REST junkie.

Commencer

La première chose à faire est de définir un nouveau type de notification dans le menu Configuration. Il s’agit d’un processus simple qui consiste à lui donner un nom et à décider sur quels canaux vous souhaitez que la notification soit diffusée, actuellement bureau de l’utilisateur et appareils mobiles.

, Attirer l&rsquo;attention de vos utilisateurs avec des notifications personnalisées<span class="wtr-time-wrap after-title"><span class="wtr-time-number">8</span> minutes de lecture</span>

Une fois cela fait, vous pouvez utiliser le nouveau Envoyer une action de notification personnalisée dans Process Builder ou Flow. Cela vous permet de définir le titre et le corps de votre notification, ainsi que les destinataires cibles (utilisateurs, groupes, files d’attente, etc.) le long de l’enregistrement cible qui détermine l’enregistrement que l’utilisateur voit lorsqu’il clique / appuie sur la notification. La capture d’écran suivante montre un exemple d’une telle action dans Process Builder: –

, Attirer l&rsquo;attention de vos utilisateurs avec des notifications personnalisées<span class="wtr-time-wrap after-title"><span class="wtr-time-number">8</span> minutes de lecture</span>

, Attirer l&rsquo;attention de vos utilisateurs avec des notifications personnalisées<span class="wtr-time-wrap after-title"><span class="wtr-time-number">8</span> minutes de lecture</span>

En gros, c’est tout ce qu’il y a à faire! Vous aurez en quelques clics la possibilité d’atteindre non seulement le bureau de vos utilisateurs, mais aussi l’expérience de notification réelle des appareils mobiles sur chacun de leurs appareils mobiles! Vous n’avez pas eu besoin d’apprendre à écrire une application mobile, à comprendre comment faire des notifications mobiles, à enregistrer des choses avec Google ou Apple. Je suis honnêtement époustouflé de voir à quel point c’est facile et puissant!

Il est donc assez facile d’envoyer des notifications de cette manière à partir de processus Process Builder pilotés par les mises à jour d’enregistrement de l’utilisateur et de référencer également les valeurs de champ pour personnaliser le texte de notification. Cependant, dans le monde en constante expansion de Événements de la plateforme, comment envoyer des notifications personnalisées en fonction des événements de la plateforme?

Envoi de notifications personnalisées pour les échecs de tâches Apex par lots

L’un de mes articles de blog les plus anciens et les plus populaires traitait des meilleures pratiques de conception autour des tâches Apex par lots. L’une des considérations qu’elle appelle est à quel point il est important de acheminer les erreurs qui se produisent en arrière-plan vers l’utilisateur. Avance rapide un peu pour ce blog, où j’ai couvert le nouvel événement de la plateforme BatchApexError comme un moyen de capturer et d’acheminer les erreurs de lot (même les exceptions inaccessibles) en temps quasi réel. Il décrit également stratégie permettant aux utilisateurs de réessayer les travaux ayant échoué. Ce que cela n’a pas vraiment résolu, c’est de leur faire savoir que quelque chose s’est mal passé sans qu’ils vérifient un onglet personnalisé. Changeons ça!

Générateur de processus est désormais en mesure de souscrire au standard BatchApexErrorEvent et vous permet ainsi en tant qu’administrateur d’appliquer une logique de filtrage et de routage sur les travaux par lots ayant échoué. Lorsqu’elles sont combinées avec des notifications personnalisées, ces erreurs pouvez désormais être acheminé vers les appareils et / ou les postes de travail des utilisateurs en temps réel. Bien que Process Builder puisse s’abonner à des événements, il a certaines restrictions sur ce qu’il peut faire avec les données d’événement elles-mêmes. Ainsi, nous allons appeler un flux de lancement automatique à partir de Process Builder pour gérer l’événement et envoyer la notification personnalisée depuis Flow. Si vous lisez ceci, vous vous demandez si votre Code Apex peut entrer dans l’action, la réponse est oui (ish), plus à ce sujet plus tard cependant. La solution déclarative utilise un processus Process Builder et deux flux. La séparation des préoccupations entre eux est illustrée dans le diagramme ci-dessous: –

, Attirer l&rsquo;attention de vos utilisateurs avec des notifications personnalisées<span class="wtr-time-wrap after-title"><span class="wtr-time-number">8</span> minutes de lecture</span>

Travaillons de bas en haut pour comprendre pourquoi j’ai décidé de la scinder de cette façon. tout d’abord, SendCustomNotification est un sous-flux (appelable par d’autres flux) et est un wrapper assez simple autour de la nouvelle action Envoyer une notification personnalisée présentée ci-dessus. Vous pourrez y regarder de plus près plus tard grâce au exemple de référentiel de code ici.

, Attirer l&rsquo;attention de vos utilisateurs avec des notifications personnalisées<span class="wtr-time-wrap after-title"><span class="wtr-time-number">8</span> minutes de lecture</span>

Suivant le BatchApexErrorPlatformEventHandler Flow définit un ensemble de variables d’entrée qui sont renseignées à partir du processus Process Builder. Ces variables correspondent aux champs et aux types selon la définition du Événement d’erreur Apex par lots ici. La seule autre chose qu’il fait est d’ajouter l’ID de l’utilisateur qui a généré l’événement (c’est-à-dire l’utilisateur qui a soumis le travail ayant échoué) à la liste des destinataires transmis au SendCustomNotification sous flux ci-dessus. Cela pourrait aussi être un ID de groupe si vous souhaitez envoyer la notification plus loin.

, Attirer l&rsquo;attention de vos utilisateurs avec des notifications personnalisées<span class="wtr-time-wrap after-title"><span class="wtr-time-number">8</span> minutes de lecture</span>

Enfin, dans la capture d’écran ci-dessous, vous voyez le Process Builder qui s’abonne à l’événement d’erreur Apex par lots et mappe les valeurs du champ d’événement aux variables d’entrée exposées depuis BatchApexErrorPlatformEventHandler Flux via le EventReference. L’exemple ici est très simple, mais vous pouvez maintenant imaginer comment vous pouvez ajouter d’autres critères de filtre à ce processus qui vous permettent d’inspecter quel travail Batch Apex a échoué et d’acheminer et / ou d’ajuster la messagerie dans les notifications en conséquence, le tout de manière déclarative bien sûr!

, Attirer l&rsquo;attention de vos utilisateurs avec des notifications personnalisées<span class="wtr-time-wrap after-title"><span class="wtr-time-number">8</span> minutes de lecture</span>

REMARQUE: Il n’est pas immédiatement évident dans tous les cas que vous pouvez accéder aux champs d’événement à partir de Process Builder, car la documentation les indique comme non pris en charge dans les formules. Je veux crier à Alex Edelstein PM pour Flow pour préciser que c’est possible! Découvrez son incroyable blog sur tout ce qui concerne Flow ici. Notez enfin que Process Builder nécessite un objet pour mapper l’événement entrant. Dans ce cas, j’ai mappé à un enregistrement d’utilisateur en utilisant le champ CreatedById sur l’événement.

Envoi de notifications personnalisées à partir du code

le Envoyer une action de notification personnalisée est également exposé via le API REST Salesforce Action définie ici (indice pour Outil d’action de masse de Doug Ayers pour le soutenir). Vous pouvez bien sûr essayer d’appeler cette API REST via Apex également. Bien qu’il n’y ait actuellement aucune API Apex Action native, il s’avère que l’appel ci-dessus SendCustomNotification Flow d’Apex fonctionne plutôt bien pendant ce temps. J’ai écrit un petit wrapper autour de cette technique pour la rendre un peu plus élégante à exécuter à partir d’Apex et cela sert également à faire abstraction de cette solution de contournement, espérons-le, temporaire pour les développeurs Apex.

new CustomNotification()
    .type('MyNotificationType')
    .title('Fun Custom Notification')
    .body('Custom Notifications are Awesome!')
    .sendToCurrentUser();

Le code Apex suivant entraîne l’apparition de cette notification sur votre appareil!

, Attirer l&rsquo;attention de vos utilisateurs avec des notifications personnalisées<span class="wtr-time-wrap after-title"><span class="wtr-time-number">8</span> minutes de lecture</span>

Ce Notification personnalisée la classe d’assistance est incluse dans l’exemple de code de ce blog et exploite une autre classe que j’ai écrite qui englobe l’API native Apex Flow. J’ai utilisé ce wrapper parce que cela m’a permis de me moquer de l’invocation réelle de Flow car il n’y a aucun moyen, à ma connaissance, d’affirmer que la notification a été effectivement envoyée.

REMARQUE: Lors de l’envoi de notifications personnalisées via des outils déclaratifs et / ou via un code, j’ai confirmé lors de mes tests qu’elles sont incluses dans la transaction en cours. De plus, je vous recommande de toujours éviter d’appeler Flow dans des boucles dans votre code Apex, mais plutôt de faire en sorte que vos Flows prennent des variables de liste (c’est-à-dire d’essayer de regrouper les Flows appelés depuis Apex). Bien que non affiché dans l’Apex ci-dessus, le Flow encapsulé prend une liste de destinataires.

Sommaire

Vous pouvez trouver tout le code de ce blog dans exemple de référentiel de code ici. Alors voilà, des notifications personnalisées pour mobile et bureau envoyées depuis Générateur de processus, Couler, Sommet et API REST. Gardez à l’esprit bien sûr qu’au moment de la rédaction de cet article, il s’agit d’un Fonctionnalité bêta et lisez donc attentivement la clause de la documentation. Maintenant, allez de l’avant et commencez à penser à tous les domaines que vous pouvez activer avec cette fonctionnalité!

P.S. Découvrez une autre nouvelle fonctionnalité intéressante appelée Conseils dans l’application Lightning.



Source de l’article traduit automatiquement en Français

Besoin d'aide ?
Voulez-vous utiliser Pardot à sa capacité maximale et avoir
+ DE LEADS QUALIFIÉS

Notre analyse de votre Pardot offerte dès aujourd'hui
Merci, vous pouvez compléter notre questionnaire
Nous allons revenir vers vous rapidement !

Fermer