• Accueil / Marketing Cloud / Optimiser le développement…

Optimiser le développement de Marketing Cloud – Le blog de Markus Slabina, principalement lié à Salesfoce, qui couvre les meilleures pratiques, des trucs et astuces. La majorité des articles se concentre sur les scénarios Marketing Cloud et Cross-Cloud.11 minutes de lecture


Vous rencontrez régulièrement des défis lors du développement, du déploiement ou de la création de prototypes pour vos solutions Marketing Cloud connectées? Mon expérience en développement web et logiciel en général m’a beaucoup aidé à démarrer rapidement. Dans cet article, je vais partager certains de mes outils préférés avec vous.

Les bases

Commençons par les bases du développement: vous avez besoin d’un bon éditeur pour écrire votre code et vous devez utiliser une sorte de contrôle de version afin de pouvoir revenir à une version plus ancienne en cas de problème.

Éditeur avec mise en évidence AMPscript

Si vous souhaitez disposer d’un environnement de développement avec la coloration syntaxique AMPscript ainsi que des capacités de développement Salesforce CRM (coloration syntaxique Apex, support Salesforce DX, etc.) – «Visual Studio Code» est le bon (et gratuit) outil à utiliser. Oh, et il a également des fonctionnalités de mise en évidence de la syntaxe pour d’autres langages qui pourraient vous être utiles – par exemple SQL.

Assurez-vous simplement d’installer les packages dont vous avez besoin en recherchant dans la bibliothèque d’extensions «AMPscript» ou «Salesforce DX» par exemple et en vérifiant le extensions officielles développées par Salesforce. Un plugin que vous devriez absolument vérifier est « Vscode-ampscipt » par Sergey Agadzhanov (ingénieur de solution principal chez Salesforce) qui ajoute la coloration syntaxique, la complétion automatique, des info-bulles avec référence de fonction et vous permet même de vous connecter à Marketing Cloud à l’aide de l’API afin de modifier directement vos actifs.

Je recommande généralement d’écrire votre code dans un éditeur hors ligne, puis de le copier sur votre instance Marketing Cloud (ou de le diffuser via un service coud) pour les raisons suivantes:

  1. Avez-vous déjà fait glisser accidentellement le pavé tactile de votre ordinateur portable et vous êtes ainsi déplacé dans l’historique du navigateur? Je parie que vous l’avez fait et que vous avez perdu le code récemment écrit.
  2. Vous pourriez dire qu’il y a la fonction d’enregistrement automatique, non? Mais c’est la raison suivante. Que se passe-t-il si quelqu’un d’autre ouvre votre e-mail / page cloud et modifie quelque chose – peut-être aussi accidentellement – l’enregistrement automatique écrase votre code avec la modification involontaire.
  3. Pour les solutions de code, l’expérience d’édition d’un éditeur hors ligne est bien meilleure que celle de la plupart des éditeurs en ligne.

Contrôle de version

La deuxième raison de la section ci-dessus n’est qu’une des nombreuses raisons pour lesquelles vous devriez utiliser le contrôle de version. Le contrôle de version ajoute également une couche de documentation, car vous pouvez ajouter un commentaire pour chaque modification que vous apportez. Lorsque vous travaillez en équipe, c’est une fonctionnalité intéressante. De plus, il est possible de travailler sur le même morceau de code en parallèle et de fusionner les modifications de deux développeurs plus tard.

Dans le développement de logiciels traditionnels, le contrôle de version est déjà une norme depuis longtemps, alors pourquoi ne le serait-il pas avec du code que vous écrivez pour Marketing Automation?! Au fur et à mesure que les solutions deviennent plus complexes et nécessitent plus de code, je ne vois aucune raison pour laquelle elles devraient être traitées différemment du développement logiciel traditionnel.

Mon logiciel de contrôle de version préféré et open source s’appelle «Git». Vous pouvez l’utiliser localement pour vous-même, l’avoir sur les serveurs de votre entreprise pour travailler en équipe ou l’utiliser comme cloudervice sur Bitbucket ou GitHub par exemple. Si vous utilisez des services cloud, assurez-vous simplement de vous inscrire aux services privés si vous n’avez pas l’intention d’héberger votre code publiquement! Il existe de nombreuses ressources intéressantes sur git, que vous pouvez trouver en ligne ou dans votre librairie préférée. Git a même une intégration dans Code Visual Studio, l’éditeur que j’ai mentionné plus tôt.

Astuce supplémentaire: L’utilisation d’un service cloud pour votre référentiel git ou même d’un service de partage de fichiers tel que Dropbox avec CloudPages peut vous faire gagner beaucoup de temps, car les mises à jour de votre code sont immédiatement reflétées sans avoir à attendre la publication de la page (ce qui peut prendre jusqu’à cinq minutes).

Le CloudPage comprend uniquement la ligne de code suivante qui charge votre code réel à partir du service cloud de votre choix:

%%=TreatAsContent(HTTPGet('https://cloudservice.com/yourampscript.html'))=%%

Ce conseil est l’un des MVP de Salesforce Eliot Harper hacks AMPscript préférés. Pour en savoir plus sur les conseils et astuces AMPscript de sa part, consultez mon résumé du webinaire Lookup (Answers).

Remarque: assurez-vous de ne faire cela qu’avec du code qui ne contient aucune information sensible et évitez de le faire en production!

Prototypage

Maintenant que vous avez la configuration de votre deleopment, je veux vous ramener en arrière. Comment abordez-vous le développement de solutions? Si vous êtes comme moi, j’ai une pensée dans mon esprit sur la façon dont quelque chose pourrait être fait, griffonnez-le avec un stylo et du papier et pour des solutions plus complexes, j’aime vérifier cela rapidement. Si une solution est basée sur un modèle de données plus complexe et peut-être des sources de données ou des objets qui ne sont pas déjà synchronisés avec Marketing Cloud, cela peut être un peu difficile – surtout si vous découvrez que cela ne fonctionnera pas de cette façon et que vous pourrait devoir aborder cette solution différemment. Essayer les points de terminaison de l’API pour voir s’ils vous aident à faire ce que vous voulez sans écrire une seule ligne de code semble bien aussi, non?!

Prototypage / développement SQL

C’est le cas pour beaucoup de choses, mais l’une d’entre elles se démarque car elle nécessite beaucoup d’efforts pour l’essayer – développer des instructions SQL complexes qui impliquent beaucoup de logique, peut-être des agrégations, des regroupements, etc. Donc, avant que tout le travail d’intégration ne soit terminé, je crée parfois des tables de test simplifiées et j’exécute des requêtes de test. En raison du fait que vous devez disposer des extensions de données (= tables de base de données) et des activités de requête dans Marketing Cloud, cela peut prendre beaucoup de temps.

Oh et voir des messages d’erreur serait bien aussi, non? Comme Marketing Cloud ne les expose pas ouvertement, vous pourriez penser à d’autres options. Vous ne voulez certainement pas configurer votre propre serveur Microsoft SQL pour imiter le comportement de Salesforce Marketing Cloud uniquement pour ce prototypage, n’est-ce pas?! « SQL Fiddle » est juste le bon outil pour vous. Il vous permet de créer des tables et d’exécuter des requêtes directement depuis votre navigateur pour voir si vous obtenez le résultat attendu ou quelle erreur pourrait se produire.

Remarque: J’ai vu des problèmes de stabilité dans le passé, mais je l’aime beaucoup et je suis sûr que cela peut vous être utile aussi!

Si vous avez déjà toutes les structures de données configurées dans Marketing Cloud et que vous souhaitez simplement essayer certaines requêtes SQL, l’application AppExchange « Query Studio pour Marketing Cloud » développé par Salesforce Labs pourrait vous convenir.

Prototypage JavaScript

Si vous avez besoin d’effectuer une tâche facile rapidement et par programme – comme la conversion d’un horodatage, la génération d’un nombre pseudo-aléatoire pour un tirage au sort, l’encodage d’URL, etc. – ou si vous souhaitez essayer un court extrait de code JavaScript (qui ne contient aucun Marketing Cloud code SSJS spécifique) vous aimerez certainement «JSFiddle». Il vous permet même d’ajouter du code HTML et CSS pour essayer du code FrontEnd pour vos pages de destination.

Prototypage d’interaction API

Supposons que vous ayez découvert un nouveau point de terminaison d’API dans Marketing Cloud, qui semble être parfaitement adapté à l’un de vos nouveaux projets. Construire tout pour ensuite découvrir que cela ne fonctionne pas comme prévu vous ramènerait au point de départ et vous manqueriez votre échéance. Pour éviter cela, utiliser un outil qui vous permet d’envoyer des requêtes API sans aucun code est la bonne chose à faire.

En utilisant Facteur il vous suffit de préparer les données que vous souhaitez transmettre, d’authentifier votre demande et d’appuyer sur envoyer. La réponse est directement affichée sur votre ordinateur et vous pouvez l’utiliser pour construire votre script / programme autour d’elle. L’enregistrement et le partage des requêtes courantes sont également faciles car les collections de requêtes peuvent être exportées sous forme de fichier JSON.

De nombreuses demandes préparées pour l’API Marketing Cloud sont également disponibles en téléchargement sur api.mcexperts.ninja.

Tester les intégrations d’API

Imaginez avoir un système externe qui doit se connecter à l’API Marketing Cloud, un point de terminaison personnalisé que vous créez ou l’inverse et que le résultat n’est pas celui souhaité, mais vous n’avez accès à aucun journal de serveur. Si vous avez traité un tel scénario, l’outil en ligne «Requestbin.com» pourrait vous être utile.

Il vous permet de créer un point de terminaison en ligne – appelé «bac de demandes» – qui accepte les demandes et affiche ces demandes dans l’interface utilisateur. Vous pouvez voir si tous les en-têtes sont corrects, la charge utile est correctement encodée et contient les données attendues et bien plus encore.

Mes utilisations les plus récentes de Requestbin.com:

  • Je voulais essayer le service de notification d’événements sans avoir à créer un point de terminaison pour le webhook de notification. (→ restez à l’écoute pour mon prochain article de blog, qui couvrira cette fonctionnalité)
  • Un collègue a créé une intégration avec l’API Marketing Cloud et quelque chose n’a pas fonctionné. J’ai donc laissé mon collègue changer le point de terminaison en requestbin et voilà, nous pourrions résoudre le problème en quelques minutes!

Déploiements

Travaillez-vous dans une instance Marketing Cloud avec plusieurs unités commerciales? Et utilisez-vous un «bac à sable» ou un système de staging pour vos nouveaux développements? Ce n’est pas rare et parfois nécessaire. Si vous travaillez avec une configuration Cross-Cloud avec de nombreux systèmes connectés – disons Sales / Service Cloud, Commerce Cloud, etc. – vous pouvez être dépendant des déploiements dans ces systèmes et être lié à une version spécifique. Afin d’être prêt à partir une fois le déploiement effectué dans les autres clouds, le développement vers un environnement de Staging connecté peut être nécessaire.

Qu’en est-il des déploiements dans Marketing Cloud? Est-ce que c’est possible?

Malheureusement, Marketing Cloud ne propose pas de processus de déploiement prêt à l’emploi. Donc, apporter vos développements à l’environnement de production implique généralement beaucoup de reconstruction et de copier-coller ou si vous en aviez marre à un moment donné, peut-être des solutions personnalisées basées sur l’API.

Mais les choses se sont beaucoup améliorées récemment, car Salesforce Labs a commencé à fournir une solution avec l’application AppExchange appelée «Gestionnaire de déploiement pour Marketing Cloud». La fonctionnalité actuelle (novembre 2020) comprend l’importation / l’exportation des éléments suivants:

  • flux de voyage (la structure du canevas)
  • schémas d’extension de données
  • automatisations (prise en charge partielle uniquement)
  • groupes d’attributs de modèle de contact (prise en charge partielle uniquement)

L’ensemble de fonctionnalités se développe et je m’attends à voir un processus de déploiement complet à l’avenir!

Pointe: Ajoutez les informations exportées à un référentiel Git pour disposer également d’un contrôle de version / sauvegarde de ces actifs.

Outils de développement

Parfois, l’interface utilisateur de Marketing Cloud vous cache des éléments dont vous pourriez avoir besoin pour vos développements et intégrations. Cela peut être des identifiants, des clés, des informations sur l’instance ou simplement des messages d’erreur. Toutes ces informations sont disponibles lors de la vérification des données transmises au navigateur – elles ne sont tout simplement pas affichées. Pour pouvoir voir ces informations, j’ai créé un plugin pour Google Chrome, qui le montre.

Découvrez les fonctionnalités actuelles sur la page Salesforce Marketing Cloud – Outils de développement, installez-la à partir du boutique en ligne chrome ou contribuez au plugin en soumettant une pullrequest sur GitHub.

Trouvez tous les outils et sites Web mentionnés ci-dessous afin de pouvoir les consulter:

Diapositives de présentation

Avez-vous quelque chose à ajouter?

Y a-t-il quelque chose que vous aimez utiliser et que vous aimez partager? Veuillez me le faire savoir par e-mail ou par message privé sur LinkedIn.





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