
Partager:
Oscar Rodriguez is the Director Global Solution Engineering at Nexmo, the Vonage API Platform
Intégration de la messagerie multicanal dans Salesforce
Temps de lecture : 9 minutes
Nexmo Messages API pour Salesforce, optimisé par BillenniumL'API Nexmo Messages pour Salesforce vous permet d'envoyer des messages par SMS, MMS, WhatsApp Business, Facebook Messenger et Viber Service Messages directement dans la classe Apex de Salesforce. Cela signifie que vous pouvez appeler l'API dans votre environnement Salesforce. Que vous soyez un développeur créant une application de messagerie ou un administrateur créant un flux de messagerie, l'API Messages est un moyen simple d'intégrer une stratégie omnicanale.
Dans ce tutoriel, je vous guiderai dans l'installation de l'API Messages de Nexmo Messages API pour Salesforce que vous pouvez ensuite utiliser pour créer une application Salesforce ou un package Salesforce géré qui exploite l'API Nexmo Messages en tant que fournisseur de messagerie sous-jacent. J'expliquerai également comment construire un flux avec Salesforce Process Builder. Il existe plusieurs façons d'intégrer ce package dans votre environnement Salesforce, mais celle que je vais présenter ici est un outil de déploiement très pratique qui est hébergé sur notre GitHub repo.
Mais avant de nous plonger dans les détails, abordons les points suivants grande grande question : Pourquoi utiliser l'API Messages plutôt que la pléthore de services pour chaque canal individuel ? La réponse est simple : vous accédez à plusieurs canaux par le biais d'une seule API. Tout ce que vous avez à faire, c'est de spécifier le canal dans un paramètre de votre charge utile. Vous pouvez donc spécifier que votre message sera envoyé par SMS ou WhatsApp, par exemple, en insérant ce paramètre de canal dans votre demande d'API.
Une autre grande valeur ajoutée de l Messages API est qu'elle vous permet d'intégrer divers services d'intelligence artificielle. Par exemple, nous avons utilisé l'API Messages pour construire une expérience de chatbot avec des plateformes d'IA telles que IBM Watson ou Google Dialogflow.
Nexmo Messaging API Flow
Installation en un clic de Nexmo Messages API pour Salesforce
Passons donc en revue le processus d'installation, en explorant le package Messages API pour Salesforce et ce qui se passe sous le capot. Pour démontrer ses capacités, je vais montrer à quoi ressemble le lancement d'une fonction anonyme. Regardez la Video ci-dessous pour voir ma démonstration d'installation complète.
Pour commencer, visitez la page de la communauté Nexmo sur GitHub où nous hébergeons du code source ouvert. Le package Nexmo Messages API pour Salesforce est hébergé à l'adresse suivante nexmo-salesforce. Nous disposons d'une documentation si vous souhaitez effectuer une sorte de démarrage rapide ou si vous souhaitez installer avec Ant. Sinon, la page Déployer vers Salesforce intégré en haut de la documentation permet l'intégration en un clic à laquelle j'ai fait référence plus tôt. Cliquez sur ce bouton pour lancer le processus d'installation, puis nous invoquerons la fonction d'envoi de message dans nos applications Salesforce.
Nexmo for Salesforce
La première chose à faire est de vous connecter à Salesforce, car il s'agit de l'environnement dans lequel vous souhaitez intégrer le paquet. Assurez-vous simplement que votre environnement de production est vérifié lorsque vous effectuez l'installation.
Après avoir fourni l'autorisation à Salesforce, vous verrez la page sur laquelle le package sera installé, ainsi que les classes qui seront disponibles dans Salesforce. Lorsque vous cliquez sur le bouton de déploiement, vous verrez qu'un déploiement a commencé et que vous devriez recevoir des mises à jour sur cette installation jusqu'à ce qu'elle soit terminée.
Vous venez donc d'intégrer le paquet Messages API pour Salesforce dans votre environnement Salesforce. Vous pouvez prouver qu'il est installé en retournant dans votre environnement Salesforce, en ouvrant la console du développeur, puis en ouvrant la classe Nexmo Apex. Vous verrez que la classe Nexmo globale est disponible dans votre environnement Salesforce sur Apex.
code example
Ce code est open source pour votre consommation ; le point d'arrivée-https://api.nexmo.com-ne changera pas. La version peut changer à l'avenir, mais nous n'allons pas la déprécier de sitôt. Nous avons très simplement supprimé la nécessité de spécifier le canal ou de faire plusieurs demandes afin d'envoyer des messages sur différents canaux.
Consultez le code et vous verrez que vous pouvez également invoquer la fonction de manière anonyme. Ctrl+E ouvre cette fonction Apex anonyme. Vous pouvez appeler la fonction sendMessage de la classe Apex Nexmo. Par exemple, si vous introduisez un numéro de téléphone mobile dans le ToNumber et un numéro Nexmo comme adresse from, vous pouvez tester la fonction. Il vous suffit de saisir un message de test, de spécifier le canal comme "sms", d'exécuter le code et vous recevrez le message sur votre téléphone portable. Vous pouvez effectuer le même test pour tous les autres canaux pris en charge par l'API Messages Nexmo.
La classe Nexmo Apex est disponible dans notre environnement. Si vous créez vous-même un composant ou un paquet Lightning, il vous suffit d'invoquer cette fonction pour pouvoir envoyer des messages par l'intermédiaire de l'API Nexmo Messages. C'est aussi simple que cela.
Créez un flux de messagerie multicanal avec Salesforce Process Builder
Je vais maintenant nous présenter le Process Builder et créer un cas d'utilisation très courant : les notifications d'assistance. Lorsqu'un agent du support client ferme un dossier dans Service Cloud, Process Builder déclenche un flux qui envoie un SMS ou un message WhatsApp au client. Je vais vous montrer comment vous pouvez créer un listener dans Process Builder qui enverra une notification d'alerte à vos clients à chaque fois qu'un agent répond à une demande d'un client et clôture le dossier. Regardez la Video ci-dessous pour voir ma démonstration complète de Process Builder.
Pour commencer, ouvrez un nouveau processus dans Process Builder et saisissez un nom de processus unique, par exemple Nexmo_Case_Close. Pour la description, vous pouvez saisir "Envoyer un message au client confirmant que son problème a été résolu". Le processus démarre lorsque dans le menu déroulant, choisissez un enregistrement change car c'est le déclencheur qui lancera le processus.
Process builder
Le processus s'ouvrira dans l'interface Process Builder, un outil de construction visuelle simple qui ne nécessite aucune expérience en matière de développement. Si le paquet Messages API pour Salesforce est installé, la classe Nexmo Apex est disponible dans Process Builder.
process builder deep dive
Cliquez sur Ajouter un objet. Choisissez Cas comme objet. Nous avons déjà un processus (Nexmo_Case_Close) qui surveille les cas, alors allez-y et sélectionnez-le.
process builder
Pour s'assurer que le processus nous permet de suivre les dossiers comme prévu, choisissez de lancer le processus lorsqu'un enregistrement est créé ou modifiéplutôt que de le lancer uniquement lors de sa création. Dans les options avancées, ne cochez pas pour l'instant l'option de récursivité ("Autoriser le processus à évaluer un enregistrement plusieurs fois au cours d'une même transaction"). Sauvegardez l'objet.
Cliquez ensuite sur Ajouter un critère dans le processus. Le nom du critère peut être quelque chose comme Case_Closedcar nous voulons simplement envoyer une notification au client final lorsqu'un agent a clôturé le dossier. Les Critères d'exécution des actions La sélection est l'endroit où nous allons déterminer notre logique d'entreprise, donc encore une fois, vous n'avez pas besoin d'une expérience de codage pour construire le processus. Il s'agit en fait de construire la logique qui va déterminer si les fonctions de votre flux seront exécutées ou non. Réglons-la donc pour que toutes les conditions soient remplies.
Process builder
Ensuite, nous allons définir des conditions. La seule condition est que le dossier soit clos, donc pour le Champparcourez la liste et sélectionnez Closed, qui sera de type booléen (true ou false) et le nom de l'API sera IsClosed. Les conditions sélectionnées se lisent donc comme suit : si le dossier est clôturé, le processus doit faire quelque chose. L'option avancée est "Voulez-vous exécuter les actions uniquement lorsque les modifications spécifiées sont apportées à l'enregistrement ?" Allez-y et cochez Oui, parce que vous ne voulez probablement pas de mises à jour à chaque fois que le dossier est modifié, qu'il y a une sorte de message interne, ou que le statut passe d'ouvert à travaillé ou d'ouvert à escaladé. Vous voulez que la mise à jour ne soit exécutée que lorsque le dossier est clôturé. Cliquez sur Sauvegarder.
Nous disposons maintenant d'un dossier que nous contrôlons. Nous avons mis en place une logique qui nous permet de savoir quand un dossier est réellement clôturé.
Ensuite, ajoutons une action. Nous pouvons sélectionner Apex comme type d'action. Le nom de l'action peut être "Envoyer un message de mise à jour". Pour la classe Apex, l'action "Envoyer un message Nexmo" s'affichera et, comme vous avez installé ce paquet, elle devrait être disponible directement.
process builder
Ce qui vient ensuite, ce sont les variables Apex, les variables que vous allez passer dans votre requête en tant que partie de la charge utile. Vous pouvez spécifier le canal, qui dans ce cas est WhatsApp. La variable fromId sera un numéro WhatsApp activé par Numbers. Le texte sera quelque chose comme "Bonjour, merci pour votre demande. Votre problème a été résolu. Nous vous avons envoyé un remboursement du montant xyz." Il pourrait s'agir d'une valeur dynamique, mais pour cet exercice, nous la garderons statique. Le toId sera votre numéro de téléphone. Une fois toutes les chaînes correctement définies, vous pouvez enregistrer les variables. Il ne vous reste plus qu'à activer le processus.
process builder
Pour tester le processus, vous pouvez jouer le rôle d'un agent et voir s'il se comporte comme prévu. Accédez à votre lanceur d'applications et ouvrez la console de service. Imaginez que vous êtes un agent assis dans votre centre de contact et que vous examinez les dossiers ouverts qui s'accumulent dans votre file d'attente.
process builder
Choisissez un dossier en fonction de son numéro et supposez que sa description est quelque chose comme "Bonjour, j'ai vu votre annonce, je suis intéressé". Vous pouvez répondre au client en saisissant un message disant : "Très bien, nous allons vous contacter directement. Merci pour votre soutien !" et en le partageant.

L'étape clé consiste à mettre à jour le statut du dossier, car nous avons défini le déclencheur pour la clôture du dossier. Nous allons donc clôturer le dossier et voir si le processus le prend en compte.
case details
La clôture du dossier aurait dû déclencher le trigger lorsque cet événement a été pris en compte par notre flux Process Builder. Vous devriez recevoir un message de Process Builder sur votre Account WhatsApp disant : "Bonjour, merci pour votre demande. Votre problème a été résolu. Nous vous avons envoyé un remboursement d'un montant de xyz."
Si tout va bien, votre flux vous a envoyé un message sur le cas clôturé. Nous avons utilisé Process Builder, mais il existe de nombreux outils pour réaliser cette opération. Vous pourriez tout aussi bien utiliser quelque chose comme un flux MuleSoft ou vous pouvez le construire en interne dans votre propre application client ou application côté serveur.
Démarrer avec Nexmo Messages API pour Salesforce
Si vous souhaitez obtenir plus d'informations sur le package Nexmo Messages API pour Salesforce, consultez notre documentation. Vous y trouverez des informations pour intégrer le service directement dans votre application, que ce soit côté serveur ou côté client, au sein de Salesforce ou non. Encore une fois, il vous permet d'envoyer des messages à travers les différents canaux à l'aide d'une interface unique, et il est vraiment simple à intégrer.
Si vous souhaitez accéder au code et utiliser le paquet lui-même, rendez-vous sur notre page de la communauté GitHub et vous pouvez l'installer avec cet outil d'installation en un clic ou en utilisant Ant, selon ce qui convient le mieux à vos besoins.
Pour voir comment nos partenaires utilisent le package, regardez cette démo de la solution de messagerie multicanal de SMS Magic alimentée par l'API Nexmo Messages pour Salesforce.