Partager via


Tutoriel : Créer des workflows qui traitent les e-mails avec Azure Logic Apps, Azure Functions et Stockage Azure

S’applique à : Azure Logic Apps (Consommation)

Ce tutoriel montre comment générer un exemple de flux de travail qui intègre Azure Functions et le Stockage Azure à l’aide d’Azure Logic Apps. Cet exemple crée spécifiquement un flux de travail d’application logique Consommation qui gère les e-mails entrants et les pièces jointes, analyse le contenu des e-mails avec Azure Functions, enregistre le contenu dans le Stockage Azure et envoie un e-mail pour passer en revue le contenu.

Lorsque vous avez terminé, votre flux de travail ressemble à l’exemple de haut niveau suivant :

La capture d'écran montre un exemple de flux de travail de haut niveau pour Consommation.

Conseil

Pour en savoir plus, vous pouvez poser ces questions à Azure Copilot :

  • Qu’est-ce qu’Azure Logic Apps ?
  • Qu’est-ce que Azure Functions ?
  • Qu’est-ce que le Stockage Azure ?
  • Qu’est-ce que le flux de travail d’une application logique Consommation ?

Pour rechercher Azure Copilot, dans la barre d’outils du Portail Azure, sélectionnez Copilot.

Vous pouvez créer un flux de travail similaire avec une ressource d'application logique Standard où certaines opérations de connecteur, telles que Stockage Blob Azure, sont également disponibles en tant qu'opérations intégrées, basées sur le fournisseur de services. Cependant, l’expérience utilisateur et les étapes du tutoriel varient légèrement par rapport à la version Consommation.

Prérequis

Configurer le stockage pour y enregistrer les pièces jointes

Les étapes suivantes permettent de configurer le Stockage Azure pour que vous puissiez stocker les e-mails et pièces jointes entrants en tant que blobs.

  1. Dans le portail Azure connectez-vous avec les informations d’identification de votre compte Azure.

  2. Suivez ces étapes pour créer un compte de stockage, sauf si vous en avez déjà un.

    Sous l’onglet De base, fournissez les informations suivantes :

    Propriété Obligatoire Value Description
    Abonnement Oui <Azure-subscription-name> Le nom de votre abonnement Azure.

    Cet exemple utilise Paiement à l’utilisation.
    Groupe de ressources Oui <Azure-resource-group> Nom du groupe de ressources Azure utilisé pour organiser et gérer les ressources connexes.

    Remarque : Un groupe de ressources existe dans une région spécifique. Même si les éléments de ce didacticiel ne sont pas forcément disponibles dans toutes les régions, essayez d’utiliser la même région dans la mesure du possible.

    Cet exemple utilise LA-Tutorial-RG.
    Nom du compte de stockage Oui <Azure-storage-account-name> Nom de votre compte de stockage unique, qui doit comporter entre 3 et 24 caractères, et ne peut contenir que des lettres minuscules et des nombres.

    Cet exemple utilise attachmentstorageacct.
    Région Oui <Azure-region> Région de données Azure de votre compte de stockage.

    Cet exemple utilise la région USA Ouest.
    Service principal Non <Azure-storage-service> Type de stockage principal à utiliser dans votre compte de stockage. Veuillez consulter la rubrique Passer en revue les options de stockage des données dans Azure.
    Niveau de performance Oui - Standard
    - Premium
    Ce paramètre spécifie les types de données pris en charge et les médias de stockage des données. Voir Vue d’ensemble des comptes de stockage.

    Cet exemple utilise Standard.
    Redondance Oui - Stockage localement redondant
    - Stockage géo-redondant (GRS)
    Ce paramètre permet de stocker plusieurs copies de vos données en tant que protection contre les événements planifiés et non planifiés. Pour plus d’informations, consultez Redondance de Stockage Azure.

    Cet exemple utilise le stockage géo-redondant avec accès en lecture (GRS).

    Pour créer votre compte de stockage, vous pouvez également utiliser Azure PowerShell ou Azure CLI.

  3. Quand vous êtes prêt, sélectionnez Vérifier + créer. Une fois qu’Azure a validé les informations relatives à votre ressource de compte de stockage, sélectionnez Créer.

  4. Une fois qu’Azure a déployé votre compte de stockage, sélectionnez Accéder à la ressource. Ou bien, recherchez, puis sélectionnez votre compte de stockage en utilisant la zone de recherche Azure.

  5. Obtenez la clé d’accès au compte de stockage en procédant comme suit :

    1. Dans le menu du compte de stockage, sous Sécurité + réseau, sélectionnez Clés d’accès.

    2. Copiez le nom de compte de stockage et la clé key1. Enregistrez ces valeurs à un emplacement sûr pour pouvoir les utiliser par la suite.

    Pour obtenir la clé d’accès de votre compte de stockage, vous pouvez également utiliser Azure PowerShell ou Azure CLI.

  6. Créez un conteneur de stockage d’objets blob pour vos pièces jointes.

    1. Dans le menu du compte de stockage, sous Stockage de données, sélectionnez Conteneurs.

    2. Dans la barre d’outils de la page Conteneurs, sélectionnez Conteneur.

    3. Dans le volet Nouveau conteneur, indiquez les informations suivantes :

      Propriété Valeur Description
      Nom attachments Nom du conteneur.
      Niveau d’accès anonyme Conteneur (accès en lecture anonyme pour les conteneurs et les objets blob)
    4. Sélectionnez Créer.

    Après que vous avez terminé, la liste des conteneurs affiche le nouveau conteneur de stockage.

Pour créer un conteneur de stockage, vous pouvez également utiliser Azure PowerShell ou Azure CLI.

À présent, connectez l’Explorateur Stockage à votre compte de stockage.

Configurer l’Explorateur Stockage

Les étapes suivantes vous permettent de connecter l’Explorateur Stockage à votre compte de stockage pour confirmer que votre flux de travail enregistre correctement les pièces jointes en tant que blobs dans votre conteneur de stockage.

  1. Lancez Microsoft Azure Storage Explorer. Connectez-vous à votre compte Azure.

    Remarque

    Si aucune invite n’apparaît, dans la barre d’activité de l’Explorateur Stockage, sélectionnez Gestion des comptes (icône de profil).

  2. Dans la fenêtre Sélectionner l’environnement Azure, sélectionnez votre environnement Azure, puis sélectionnez Suivant.

    Pour poursuivre cet exemple, nous sélectionnons l’environnement Azure global et multilocataire.

  3. Dans la fenêtre de navigateur qui apparaît, connectez-vous avec votre compte Azure.

  4. Revenez à l’Explorateur Stockage et à la fenêtre Gestion des comptes. Confirmez que le tenant et l’abonnement Microsoft Entra corrects sont sélectionnés.

  5. Dans la barre d’activité de l’Explorateur Stockage, sélectionnez Ouvrir la boîte de dialogue Connexion.

  6. Dans la fenêtre Sélectionner une ressource, sélectionnez Compte ou service de stockage.

  7. Dans la fenêtre Sélectionner une méthode de connexion, sélectionnez Nom et clé de compte>Suivant.

  8. Dans la fenêtre Se connecter au Stockage Azure, fournissez les informations suivantes :

    Propriété Value
    Nom complet Nom convivial pour votre connexion
    Nom du compte Nom de votre compte de stockage
    Clé de compte Clé d’accès que vous avez enregistrée
  9. Pour Domaine de stockage, confirmez qu’Azure (core.windows.net) est sélectionné, puis sélectionnez Suivant.

  10. Dans la fenêtre Résumé, confirmez vos informations de connexion, puis sélectionnez Se connecter.

    L’Explorateur Stockage crée la connexion. Votre compte de stockage s’affiche dans la fenêtre Explorateur sous Émulateur et>comptes de stockage attachés.

  11. Pour rechercher votre conteneur Stockage Blob, sous Comptes de stockage, développez votre compte de stockage, qui est attachmentstorageacct pour cet exemple. Sous Conteneurs de blobs où vous trouvez le conteneur pièces jointes, par exemple :

    Capture d’écran montrant l’Explorateur Stockage - Rechercher un conteneur de stockage.

Ensuite, créez une application de fonction Azure et une fonction qui supprime le code HTML du contenu.

Créer une application de fonction

Les étapes suivantes créent une fonction Azure que votre flux de travail appelle pour supprimer le code HTML de l’e-mail entrant.

  1. Avant de pouvoir créer une fonction, créez une application de fonction sélectionnant le plan Consommation, puis en procédant comme suit :

    1. Sous l’onglet De base, fournissez les informations suivantes :

      Propriété Obligatoire Value Description
      Abonnement Oui <Azure-subscription-name> Abonnement Azure que vous avez utilisé précédemment pour votre compte de stockage.
      Groupe de ressources Oui <nom-groupe-de-ressources-Azure> Groupe de ressources Azure que vous avez utilisé précédemment pour votre compte de stockage.

      Pour cet exemple, sélectionnez LA-Tutorial-RG.
      Nom de l’application de fonction Oui <function-app-name> Nom de votre application de fonction, qui doit être unique dans les régions Azure et ne peut contenir que des lettres (ne respectant pas la casse), des nombres (0 à 9) et des traits d’union (-).

      Cet exemple utilise déjà CleanTextFunctionApp. Ainsi, fournissez un autre nom, comme MyCleanTextFunctionApp-<votre_nom>
      Pile d’exécution Oui <langage de programmation> Runtime de votre langage de programmation de fonction préféré. Pour les fonctions C# et F#, sélectionnez .NET.

      Cet exemple utilise .NET.

      La modification dans le portail est disponible uniquement pour les langages suivants :

      - JavaScript
      - PowerShell
      - TypeScript
      - C# script

      Vous devez développer localement toutes les fonctions de la bibliothèque de classes C#, ainsi que les fonctions Java et Python.
      Version Oui <numéro-de-version> Sélectionnez la version de votre runtime installé.
      Région Oui <Azure-region> Région que vous avez utilisée.

      Cet exemple utilise la région USA Ouest.
      Système d’exploitation Oui <votre_système_exploitation> Un système d’exploitation est présélectionné pour vous en fonction de la sélection de votre pile d’exécution, mais vous pouvez sélectionner le système d’exploitation qui prend en charge votre langage de programmation de fonction favori. La modification sur le portail est prise en charge sur Windows uniquement.

      Cet exemple sélectionne Windows.
    2. Sélectionnez Suivant : Stockage. Sous l’onglet Stockage, indiquez les informations suivantes :

      Propriété Obligatoire Value Description
      Compte de stockage Oui <Azure-storage-account-name> Créez un compte de stockage que votre application de fonction devra utiliser. Un nom de compte de stockage doit comporter entre 3 et 24 caractères, et ne peut contenir que des lettres minuscules et des chiffres.

      Cet exemple utilise cleantextfunctionstorageacct.

      Remarque : Ce compte de stockage contient vos applications de fonctions et diffère du compte de stockage créé précédemment pour les pièces jointes d’e-mail. Vous pouvez également utiliser un compte existant qui doit répondre aux exigences relatives aux comptes de stockage.
    3. Lorsque vous avez terminé, sélectionnez Vérifier + créer. Après qu’Azure a validé les informations fournies, sélectionnez Créer.

    4. Après fois qu’Azure a déployé la ressource d’application de fonction, sélectionnez Accéder à la ressource.

Créer une fonction pour supprimer le code HTML

Les étapes suivantes créent une fonction Azure qui supprime le code HTML dans chaque e-mail entrant à l’aide de l’exemple d’extrait de code. Cette fonction rend le contenu des e-mails plus net et plus facile à traiter. Vous pouvez appeler cette fonction depuis votre flux de travail.

Pour plus d'informations, consultez Créer votre première fonction à l’aide du portail Azure. Pour la création d’une fonction développée, vous pouvez également créer votre fonction localement.

  1. Sur le Portail Azure, ouvrez votre application de fonction, si ce n’est pas déjà fait.

  2. Pour exécuter votre fonction ultérieurement dans le Portail Azure, configurez votre application de fonction pour accepter explicitement les requêtes depuis le portail. Dans le menu de l’application de fonction, sous API, sélectionnez CORS. Sous Origines autorisées, entrez https://portal.azure.com, puis sélectionnez Enregistrer.

  3. Dans le menu de l’application de fonction, sélectionnez Vue d’ensemble. Dans l’onglet Fonctions, sélectionnez Créer.

  4. Dans le volet Créer une fonction, sélectionnez Déclencheur HTTP : C#>Suivant.

    Remarque

    Si vous ne voyez pas la version C#, veillez à procéder comme suit :

  5. Fournissez les informations suivantes pour votre fonction, puis sélectionnez Créer :

    Paramètre Valeur
    Nom de la fonction RemoveHTMLFunction
    Niveau d’autorisation Fonction
  6. Dans l’onglet Code + Test, entrez l’exemple de code suivant, qui supprime le code HTML, puis retourne les résultats à l’appelant.

    #r "Newtonsoft.Json"
    
    using System.Net;
    using Microsoft.AspNetCore.Mvc;
    using Microsoft.Extensions.Primitives;
    using Newtonsoft.Json;
    using System.Text.RegularExpressions;
    
    public static async Task<IActionResult> Run(HttpRequest req, ILogger log)
    {
       log.LogInformation("HttpWebhook triggered");
    
       // Parse query parameter
       string emailBodyContent = await new StreamReader(req.Body).ReadToEndAsync();
    
       // Replace HTML with other characters
       string updatedBody = Regex.Replace(emailBodyContent, "<.*?>", string.Empty);
       updatedBody = updatedBody.Replace("\\r\\n", " ");
       updatedBody = updatedBody.Replace(@"&nbsp;", " ");
    
       // Return cleaned text
       return (ActionResult)new OkObjectResult(new {updatedBody});
    }
    
  7. Lorsque vous avez terminé, dans la barre d’outils Code + Test, sélectionnez Enregistrer, puis Test/Exécuter.

  8. Dans le volet Test/Exécuter, dans l’onglet Entrée, dans la zone Corps, entrez l’exemple d’entrée suivant, puis sélectionnez Exécuter :

    {"name": "<p><p>Testing my function</br></p></p>"}

    La sortie de votre fonction ressemble au résultat suivant :

    {"updatedBody": "{\"name\": \"Testing my function\"}"}

Une fois le bon fonctionnement de votre fonction confirmé, créez la ressource d’application logique et le flux de travail. Même si ce tutoriel montre comment créer une fonction qui supprime le code HTML des e-mails, Azure Logic Apps fournit également un connecteur HTML to Text (HTML à texte).

Créer une ressource d’application logique Consommation

  1. Dans la zone de recherche du Portail Azure, entrez applications logiques, puis sélectionnez Applications logiques.

  2. Dans la barre d’outils de la page Applications logiques, sélectionnez Ajouter.

    La page Créer une application logique s’affiche et propose les options suivantes :

    Planifier Description
    Consommation Crée une ressource d’application logique qui prend en charge un seul workflow s’exécutant dans Azure Logic Apps multilocataire et utilise le modèle Consommation pour la facturation.
    Standard Crée une ressource d’application logique qui prend en charge plusieurs workflows. Vous disposez des options suivantes :

    - Plan de services de flux de travail : les flux de travail s’exécutent dans Azure Logic Apps à locataire unique et utilisent le modèle de facturation Standard.

    - App Service Environment V3 : les flux de travail s’exécutent dans Azure Logic Apps à locataire unique et utilisent un plan App Service Environment pour la facturation.

    - Hybride (préversion) : les workflows s’exécutent localement et dans plusieurs clouds à l’aide de KEDA (Kubernetes-based event-driven autoscaling). Pour plus d’informations, consultez Créer des workflows Standard pour un déploiement hybride.
  3. Dans la page Créer une Logic App, sélectionnez Consommation (multilocataire).

  4. Sur l’onglet Informations de base, fournissez les informations suivantes sur votre ressource d’application logique :

    Paramètre Obligatoire Value Description
    Abonnement Oui <Azure-subscription-name> Abonnement Azure que vous avez utilisé précédemment.
    Groupe de ressources Oui LA-Tutorial-RG Groupe de ressources Azure que vous avez utilisé précédemment.
    Nom de l’application logique Oui <logic-app-name> Nom de votre ressource d’application logique, qui doit être unique d’une région à l’autre et peut contenir uniquement des lettres, des chiffres, des traits d’union (-), des traits de soulignement (_), des parenthèses (()) et des points (.).

    Cet exemple crée une ressource d’application logique nommée LA-ProcessAttachment. Un workflow et une application logique de consommation portent toujours le même nom.
    Région Oui USA Ouest Région que vous avez utilisée.
    Activer l’analytique des journaux Oui Aucun Changez cette option uniquement quand vous voulez activer la journalisation des diagnostics. Pour ce tutoriel, conservez la sélection par défaut.

    Remarque : cette option est disponible uniquement avec les applications logiques Consommation.

    Remarque

    Les zones de disponibilité sont automatiquement activées pour les nouveaux flux de travail d’application logique Consommation et ceux déjà existants, dans les régions Azure qui prennent en charge les zones de disponibilité. Pour plus d’informations, consultez Fiabilité dans Azure Fuctions et Protéger les applications logiques contre les défaillances de région avec la redondance de zone et les zones de disponibilité.

  5. Quand vous êtes prêt, sélectionnez Vérifier + créer. Une fois qu’Azure a validé les informations relatives à votre ressource d’application logique, sélectionnez Créer.

  6. Une fois qu’Azure a déployé votre ressource d’application logique, sélectionnez Accéder à la ressource. Ou bien, recherchez et sélectionnez votre ressource d’application logique en utilisant la zone de recherche Azure.

Ajouter un déclencheur pour surveiller les e-mails entrants

Les étapes suivantes permettent d’ajouter un déclencheur qui attend les e-mails entrants contenant des pièces jointes.

  1. Dans le menu de l’application logique, sous Outils de développement, sélectionnez Concepteur d’application logique.

  2. Dans le Concepteur de flux de travail, suivez ces étapes générales pour ajouter le déclencheur Office 365 Outlook nommé Lors de l’arrivée d’un nouvel e-mail.

    Le connecteur Office 365 Outlook vous oblige à vous connecter avec un compte professionnel ou scolaire Microsoft. Si vous utilisez un compte Microsoft personnel, utilisez le connecteur Outlook.com.

  3. Connectez-vous à votre compte e-mail pour créer une connexion entre votre flux de travail et votre compte e-mail.

  4. Dans la zone d’informations du déclencheur, dans la liste des Paramètres avancés, ajoutez les paramètres suivants, s’ils n’apparaissent pas et fournissez les informations suivantes :

    Paramètre active Description
    Importance N’importe lequel/laquelle Spécifie le niveau d’importance souhaité de l’e-mail.
    Avec pièces jointes uniquement Oui Récupère uniquement les e-mails comportant des pièces jointes.

    Remarque : Le déclencheur ne supprime pas les e-mails de votre compte. Il vérifie uniquement les nouveaux messages et ne traite que les e-mails qui correspondent au filtre Objet.
    Inclure des pièces jointes Oui Récupérez les pièces jointes en tant qu’entrée de votre flux de travail au lieu de les rechercher simplement.
    Dossier Inbox Dossier d’e-mail à vérifier.
    Filtre Objet Business Analyst 2 #423501 Spécifie le texte à rechercher dans l’objet de l’e-mail.

    Une fois que vous avez terminé, le déclencheur ressemble à l’exemple suivant :

    La capture d’écran montre le flux de travail Consommation et le déclencheur Office 365 Outlook.

  5. Enregistrez votre flux de travail. Dans la barre d’outils du Concepteur, sélectionnez Enregistrer.

    Votre flux de travail est à présent actif, mais il vérifie uniquement vos e-mails. Ajoutez une condition qui spécifie les critères pour poursuivre les actions du workflow.

Ajouter une condition pour vérifier les pièces jointes

Les étapes suivantes ajoutent une condition qui sélectionne uniquement les e-mails contenant des pièces jointes.

  1. Dans le concepteur de flux de travail, suivez ces étapes générales pour ajouter l’action Contrôle nommée Condition.

  2. Dans le volet d’informations de l’action Condition, renommez l’action Si l’e-mail contient des pièces jointes et une expression d’objet clé.

  3. Créez une condition qui vérifie les e-mails contenant des pièces jointes.

    1. Sous l’onglet Paramètres, dans la première ligne sous la liste ET, sélectionnez à l’intérieur de la zone de gauche, puis sélectionnez la liste de contenu dynamique (icône éclair). Dans cette liste, dans la section déclencheur, sélectionnez la sortie Contient une pièce jointe.

      Conseil

      Si vous ne voyez pas la sortie Contient une pièce jointe, sélectionnez Voir plus.

      La capture d'écran montre l’action de condition, la deuxième ligne avec le curseur dans la zone la plus à gauche, la liste de contenu dynamique ouverte et l’option sélectionnée Contient une pièce jointe.

    2. Dans la zone du milieu, conservez l’opérateur nommé est égal à.

    3. Dans la zone la plus à droite, entrez vrai, qui est la valeur à comparer avec la valeur de sortie Contient une pièce jointe provenant du déclencheur. Si les deux valeurs sont égales, l’e-mail comporte au moins une pièce jointe, la condition est transmise et le flux de travail se poursuit.

      La capture d’écran montre la condition complète.

    Dans votre définition de workflow sous-jacente, que vous pouvez afficher en sélectionnant Vue Code sur la barre d’outils du concepteur, la condition ressemble à l’exemple suivant :

    "Condition": {
       "actions": { <actions-to-run-when-condition-passes> },
       "expression": {
          "and": [ {
             "equals": [
                "@triggerBody()?['HasAttachment']",
                  "true"
             ]
          } ]
       },
       "runAfter": {},
       "type": "If"
    }
    
  4. Enregistrez votre flux de travail.

Tester votre condition

  1. Dans la barre d’outils du concepteur, sélectionnez Exécuter>Exécuter.

    Cette étape démarre, puis exécute manuellement votre flux de travail, mais rien ne se produit tant que vous n’envoyez pas d’e-mail de test dans votre boîte de réception.

  2. Envoyez-vous un e-mail qui respecte les critères suivants :

    • L’objet de votre e-mail contient le texte que vous avez spécifié dans le Filtre d’objet du déclencheur : Business Analyst 2 #423501

    • Votre e-mail comporte une pièce jointe. Pour le moment, créez simplement un fichier texte vide et joignez-le à votre e-mail.

    Quand l’e-mail arrive, votre workflow recherche des pièces jointes et le texte de l’objet spécifié. Si la condition réussit, le déclencheur est activé et provoque l’instanciation et l’exécution d’une instance de workflow par Azure Logic Apps.

  3. Pour vérifier que le déclencheur a été activé et que le workflow s’est exécuté avec succès, sélectionnez Vue d’ensemble dans le menu de l’application logique.

    • Pour afficher les workflows exécutés correctement, sélectionnez Historique des exécutions.

    • Pour afficher les déclencheurs activés correctement, sélectionnez Historique des déclencheurs.

    Si le déclencheur n’a pas été activé ou si le workflow n’a pas été exécuté en dépit d’un déclencheur réussi, consultez Résoudre les problèmes de votre workflow d’application logique.

À présent, définissez les actions à entreprendre pour la branche True. Pour enregistrer l’e-mail ainsi que les pièces jointes, supprimez le code HTML dans le corps de l’e-mail, puis créez des objets blob dans le conteneur de stockage correspondant à l’e-mail et aux pièces jointes.

Notes

Votre workflow peut laisser la branche False vide et ne pas effectuer d’actions quand un e-mail n’a pas de pièces jointes. À titre d’exercice supplémentaire à l’issue de ce tutoriel, vous pouvez ajouter une action appropriée que vous souhaitez entreprendre pour la branche False.

Appeler la fonction RemoveHTMLFunction

Les étapes suivantes ajoutent votre fonction Azure créée précédemment, qui accepte le contenu du corps de l’e-mail depuis le déclencheur d»e-mail comme entrée.

  1. Dans le menu de l’application logique, sous Outils de développement, sélectionnez Concepteur d’application logique. Dans la branche True, sélectionner Ajouter une action.

  2. Suivez ces étapes générales pour ajouter l’action Azure Functions nommée Choisir une fonction Azure.

  3. Sélectionnez votre application de fonction créée précédemment, CleanTextFunctionApp dans cet exemple.

  4. Sélectionnez maintenant votre fonction, qui est nommée RemoveHTMLFunction dans cet exemple, puis sélectionnez Ajouter une action.

  5. Dans le volet d’informations de l’action Azure Functions renommez l’action Appeler RemoveHTMLFunction.

  6. Maintenant, spécifiez l’entrée pour votre fonction à traiter.

    1. Pour Corps de la demande, entrez le texte suivant avec un espace de fin :

      { "emailBody":

      Pendant que vous travaillez sur cette entrée dans les étapes suivantes, une erreur de JSON non valide s’affiche jusqu’à ce que votre entrée soit correctement formatée en JSON. Lorsque vous avez testé précédemment cette fonction, l’entrée spécifiée pour cette fonction utilisait JavaScript Objet Notation (JSON). Par conséquent, le corps de la requête doit également utiliser le même format.

    2. Cliquez dans la zone Corps de la demande, puis sélectionnez la liste de contenu dynamique (icône d’éclair) pour pouvoir sélectionner les sorties des actions précédentes.

    3. Dans la liste de contenu dynamique, sous À la réception d’un e-mail, sélectionnez la sortie Corps. Une fois cette valeur résolue dans la zone Corps de la demande, n’oubliez pas d’ajouter l’accolade fermante (}).

      La capture d’écran montre la zone d’informations de fonction Azure avec la liste de contenu dynamique et Corps sélectionnés.

    Quand vous avez terminé, la fonction Azure ressemble à l’exemple suivant :

    La capture d’écran montre la fonction Azure terminée avec le contenu du corps de la demande à transmettre à votre fonction.

  7. Enregistrez votre flux de travail.

Ensuite, ajoutez une action qui crée un blob pour stocker le corps de l’e-mail.

Ajouter une action pour créer un blob pour le corps de l’e-mail

Les étapes suivantes créent un blob qui stocke le corps de l’e-mail dans votre conteneur de stockage.

  1. Dans le concepteur, dans le bloc Vrai de la condition, sous votre fonction Azure, sélectionnez Ajouter une action.

  2. Suivez ces étapes générales pour ajouter l’action Stockage Blob Azure nommée Créer un blob.

  3. Fournissez les informations de connexion de votre compte de stockage, par exemple :

    Paramètre Obligatoire Value Description
    Nom de connexion Oui <connection-name> Un nom descriptif pour la connexion.

    Cet exemple utilise AttachmentStorageConnection.
    Type d’authentification Oui <authentication-type> Type d’authentification à utiliser pour la connexion.

    Cet exemple utilise Clé d’accès.
    Point de terminaison de blob ou nom du compte de Stockage Azure Oui <storage-account-name> Nom de votre compte de stockage créé précédemment.

    Cet exemple utilise attachmentstorageacct.
    Clé d’accès au compte de stockage Azure Oui <storage-account-access-key> Clé d’accès de votre compte de stockage créé précédemment.
  4. Lorsque vous avez terminé, sélectionnez Créer.

  5. Dans le volet d’informations de l’action Créer un blob, renommez l’action Créer un blob pour le corps de l’e-mail.

  6. Fournissez les informations d’action suivantes :

    Conseil

    Si vous ne trouvez pas de sortie spécifiée dans la liste de contenu dynamique, sélectionnez Voir plus en regard du nom de l’opération.

    Paramètre Obligatoire Value Description
    Point de terminaison d’objet blob ou nom du compte de stockage Oui Utiliser les paramètres de connexion (<storage-account-name-or-blob-endpoint>) Sélectionnez l’option qui inclut le nom de votre compte de stockage.

    Cet exemple utilise https://attachmentstorageacct.blob.core.windows.net.
    Chemin d’accès du dossier Oui <chemin-et-nom-du-conteneur> Chemin d’accès et nom du conteneur que vous avez créé précédemment.

    Pour cet exemple, sélectionnez l’icône de dossier, puis sélectionnez Pièces jointes.
    Nom du blob Oui <nom-expéditeur> Pour cet exemple, utilisez le nom de l’expéditeur comme nom du blob.

    1. Cliquez à l’intérieur de la zone Nom du blob, puis sélectionnez l’option liste de contenu dynamique (icône éclair).

    2. Dans la section À la réception d’un e-mail, sélectionnez De.
    Contenu du blob Oui <cleaned-email-body> Pour cet exemple, utilisez le corps de l’e-mail sans code HTML comme contenu d’objet blob.

    1. Cliquez à l’intérieur de la zone Contenu du blob, puis sélectionnez l’option liste de contenu dynamique (icône éclair).

    2. Dans la section Appeler RemoveHTMLFunction, sélectionnez Corps.

    La capture d’écran suivante montre les sorties à sélectionner pour l’action Créer un blob pour le corps de l’e-mail :

    La capture d’écran montre le conteneur de stockage, l’expéditeur et le corps de l’e-mail sans HTML dans l’action Créer un blob.

    Quand vous avez terminé, l’action ressemble à l’exemple suivant :

    La capture d’écran montre un exemple d’informations sur le corps de l’e-mail pour l’action terminée Créer un blob.

  7. Enregistrez votre flux de travail.

Tester le traitement des pièces jointes

  1. Dans la barre d’outils du concepteur, sélectionnez Exécuter>Exécuter.

    Cette étape démarre, puis exécute manuellement votre flux de travail, mais rien ne se produit tant que vous n’envoyez pas d’e-mail de test dans votre boîte de réception.

  2. Envoyez-vous un e-mail qui respecte les critères suivants :

    • L’objet de votre e-mail contient le texte que vous avez spécifié dans le paramètre Filtre d’objet du déclencheur : Business Analyst 2 #423501

    • Votre e-mail contient une ou plusieurs pièces jointes. Pour le moment, créez simplement un fichier texte vide, puis joignez-le à votre e-mail.

    • Le corps de votre e-mail comporte du contenu de test, par exemple : Test de mon flux de travail d’application logique

    Si votre workflow n’a pas été activé ni exécuté en dépit d’un déclencheur réussi, consultez Résoudre les problèmes et diagnostiquer les échecs de workflows d’application logique.

  3. Vérifiez que votre workflow a enregistré l’e-mail dans le conteneur de stockage approprié.

    1. Dans l’Explorateur Stockage, développez Émulateur et attaché>Comptes de stockage>attachmentstorageacct (Clé)>Conteneurs blob>pièces jointes.

    2. Vérifiez le conteneur pièces jointes de l’e-mail.

      À ce stade, seul l’e-mail s’affiche dans le conteneur, car le workflow n’a pas encore traité les pièces jointes.

      La capture d’écran montre l’Explorateur Stockage avec uniquement l’e-mail enregistré.

    3. Lorsque vous avez terminé, supprimez l’e-mail dans l’Explorateur Stockage.

  4. Si vous le souhaitez, pour tester la branche False qui n’effectue aucune action pour le moment, vous pouvez envoyer un e-mail qui ne réponde pas aux critères.

Ensuite, ajoutez une boucle Pour chaque pour traiter chaque pièce jointe d’-mail.

Ajouter une boucle pour traiter les pièces jointes

Les étapes suivantes ajoutent une boucle pour traiter chaque pièce jointe dans l’e-mail.

  1. Revenez au concepteur de workflow. Sous l’action Créer un objet blob pour le corps de l’e-mail, sélectionnez Ajouter une action.

  2. Suivez ces étapes générales pour ajouter l’action Contrôle nommée Pour chaque.

  3. Dans le volet d’informations de l’action Pour chaque, renommez l’action Pour chaque pièce jointe d’e-mail.

  4. Sélectionnez maintenant le contenu de la boucle à traiter.

    1. Dans la boucle Pour chaque pièce jointe d’e-mail, cliquez dans la zone Sélectionnez un résultat à partir des étapes précédentes, puis sélectionnez liste de contenu dynamique (icône éclair).

    2. Dans la section À la réception d’un e-mail, sélectionnez Pièces jointes.

      La sortie Pièces jointes inclut un tableau avec toutes les pièces jointes d’un e-mail. La boucle Pour chaque répète des actions sur chaque élément de tableau.

      Conseil

      Si vous ne voyez pas Pièces jointes, sélectionnez Voir plus.

      La capture d’écran montre la liste de contenu dynamique avec la sortie sélectionnée nommée Pièces jointes.

  5. Enregistrez votre flux de travail.

Ajoutez ensuite une action qui enregistre chaque pièce jointe sous la forme d’un blob dans votre conteneur de stockage pièces jointes.

Ajouter une action pour créer un blob par pièce jointe

Les étapes suivantes ajoutent une action pour créer un objet blob pour chaque pièce jointe.

  1. Dans le concepteur, dans la boucle Pour chaque pièce jointe d’e-mail, sélectionnez Ajouter une action.

  2. Suivez ces étapes générales pour ajouter l’action Stockage Blob Azure nommée Créer un blob.

  3. Dans le volet d’informations de l’action Créer un blob, renommez l’action Créer un blob pour la pièce jointe de l’e-mail.

  4. Fournissez les informations d’action suivantes :

    Conseil

    Si vous ne trouvez pas de sortie spécifiée dans la liste de contenu dynamique, sélectionnez Voir plus en regard du nom de l’opération.

    Paramètre Obligatoire Value Description
    Point de terminaison d’objet blob ou nom du compte de stockage Oui Utiliser les paramètres de connexion (<storage-account-name-or-blob-endpoint>) Sélectionnez l’option qui inclut le nom de votre compte de stockage.

    Cet exemple utilise https://attachmentstorageacct.blob.core.windows.net.
    Chemin d’accès du dossier Oui <chemin-et-nom-du-conteneur> Chemin d’accès et nom du conteneur que vous avez créé précédemment.

    Pour cet exemple, sélectionnez l’icône de dossier, puis sélectionnez Pièces jointes.
    Nom du blob Oui <nom-pièce-jointe> Pour cet exemple, utilisez le nom de la pièce jointe comme nom du blob.

    1. Cliquez à l’intérieur de la zone Nom du blob, puis sélectionnez l’option liste de contenu dynamique (icône éclair).

    2. Dans la section À la réception d’un e-mail, sélectionnez Nom.
    Contenu du blob Oui <email-content> Pour cet exemple, utilisez le contenu d’e-mail comme contenu d’objet blob.

    1. Cliquez à l’intérieur de la zone Contenu du blob, puis sélectionnez l’option liste de contenu dynamique (icône éclair).

    2. Dans la section À la réception d’un e-mail, sélectionnez Contenu.

    Remarque

    Si vous sélectionnez une sortie qui contient un tableau, tel que le champ Contenu, qui est un tableau contenant des pièces jointes, le concepteur ajoute automatiquement une boucle Pour chaque autour de l’action qui référence ce champ. De cette façon, votre workflow peut effectuer cette action sur chaque élément du tableau. Pour supprimer la boucle, déplacez l’action qui fait référence à la sortie vers l’extérieur de la boucle, puis supprimez la boucle.

    La capture d’écran suivante montre les sorties à sélectionner pour l’action Créer un blob pour la pièce jointe de l’e-mail :

    La capture d’écran montre les informations relatives au conteneur de stockage et aux pièces jointes dans l’action Créer un blob.

    Quand vous avez terminé, l’action ressemble à l’exemple suivant :

    La capture d’écran montre des exemples d’informations sur les pièces jointes pour l’action terminée Créer un blob.

  5. Enregistrez votre flux de travail.

Retester le traitement des pièces jointes

  1. Dans la barre d’outils du concepteur, sélectionnez Exécuter>Exécuter.

    Cette étape démarre, puis exécute manuellement votre flux de travail, mais rien ne se produit tant que vous n’envoyez pas d’e-mail de test dans votre boîte de réception.

  2. Envoyez-vous un e-mail qui respecte les critères suivants :

    • L’objet de votre e-mail contient le texte que vous avez spécifié dans le paramètre Filtre d’objet du déclencheur : Business Analyst 2 #423501

    • Votre e-mail contient deux pièces jointes ou plus. Pour le moment, créez simplement deux fichiers texte vides et joignez-les à votre e-mail.

    Si votre workflow n’a pas été activé ni exécuté en dépit d’un déclencheur réussi, consultez Résoudre les problèmes et diagnostiquer les échecs de workflows d’application logique.

  3. Vérifiez que votre workflow a enregistré l’e-mail et les pièces jointes dans le conteneur de stockage approprié.

    1. Dans l’Explorateur Stockage, développez Émulateur et attaché>Comptes de stockage>attachmentstorageacct (Clé)>Conteneurs blob>pièces jointes.

    2. Dans le conteneur pièces de jointes, recherchez l’e-mail et les pièces jointes.

      La capture d’écran montre l’Explorateur Stockage et les e-mails et pièces jointes enregistrés.

    3. Lorsque vous avez terminé, supprimez l’e-mail et les pièces jointes dans l’Explorateur Stockage.

Ajoutez ensuite une action dans votre flux de travail qui envoie un e-mail pour vérifier les pièces jointes.

Ajouter une action pour envoyer un e-mail

Les étapes suivantes ajoutent une action afin que votre flux de travail envoie un e-mail pour vérifier les pièces jointes.

  1. Revenez au concepteur de workflow. Dans la branche Vrai, sous la boucle Pour chaque pièce jointe d’e-mail, sélectionnez Ajouter une action.

  2. Suivez ces étapes générales pour ajouter l’action Office 365 Outlook nommée Envoyer un e-mail.

    Cet exemple se poursuit avec le connecteur Office 365 Outlook, qui fonctionne uniquement avec un compte professionnel ou scolaire Azure. Pour des comptes personnels Microsoft, sélectionnez le connecteur Outlook.com.

  3. Si vous êtes invité à entrer vos informations d’identification, connectez-vous à votre compte e-mail afin qu’Azure Logic Apps puisse établir une connexion avec votre compte e-mail.

  4. Dans le volet d’informations de l’action Envoyer un e-mail, renommez l’action Envoyer un e-mail pour révision.

  5. Fournissez les informations d’action suivantes, puis sélectionnez les sorties à inclure dans l’e-mail :

    Conseil

    Si vous ne trouvez pas de sortie spécifiée dans la liste de contenu dynamique, sélectionnez Voir plus en regard du nom de l’opération.

    Paramètre Obligatoire Value Description
    To Oui <recipient-email-address> À des fins de test, utilisez votre propre adresse e-mail.
    Objet Oui <email-subject> Objet de l’e-mail à inclure.

    Cet exemple utilise ASAP – Vérifier le candidat au poste : et la sortie Objet du déclencheur.

    1. Dans la zone Objet, entrez l’exemple de texte avec un espace de fin.

    2. Cliquez à l’intérieur de la zone Objet, puis sélectionnez l’option liste de contenu dynamique (icône éclair).

    3. Dans la liste, sous À la réception d’un e-mail, sélectionnez Objet.
    Corps Oui <email-body> Corps de l’e-mail à inclure.

    L’exemple utilise Veuillez vérifier le nouveau candidat :, la sortie du déclencheur nommée De, la sortie Chemin de l’action Créer un blob et la sortie Corps de votre action Appeler RemoveHTMLFunction.

    1. Dans la zone Corps, entrez l’exemple de texte Veuillez vérifier le nouveau candidat :.

    2. Sur une nouvelle ligne, entrez l’exemple de texte, Nom du candidat :, puis ajoutez la sortie De du déclencheur.

    3. Sur une nouvelle ligne, entrez l’exemple de texte, Emplacement du fichier d’application :, puis ajoutez la sortie Chemin depuis l’action Créer un blob pour le corps de l’e-mail.

    4. Sur une nouvelle ligne, entrez l’exemple de texte, Contenu de l’e-mail de candidature :, puis ajoutez la sortie Corps de l’action Call RemoveHTMLFunction .

    Remarque

    Si vous sélectionnez une sortie qui contient un tableau, tel que le champ Contenu, qui est un tableau contenant des pièces jointes, le concepteur ajoute automatiquement une boucle Pour chaque autour de l’action qui référence ce champ. De cette façon, votre workflow peut effectuer cette action sur chaque élément du tableau. Pour supprimer la boucle, déplacez l’action qui fait référence à la sortie vers l’extérieur de la boucle, puis supprimez la boucle.

    La capture d’écran suivante montre l’exemple terminé de l’action Envoyer un e-mail :

    La capture d’écran montre un exemple d’e-mail à envoyer.

  6. Enregistrez votre flux de travail.

Votre flux de travail terminé est maintenant semblable à l'exemple suivant :

La capture d’écran montre le flux de travail terminé.

Tester votre workflow

  1. Envoyez-vous un e-mail qui respecte les critères suivants :

    • L’objet de votre e-mail contient le texte que vous avez spécifié dans le paramètre Filtre d’objet du déclencheur : Business Analyst 2 #423501

    • Votre e-mail contient une ou plusieurs pièces jointes. Vous pouvez réutiliser un fichier texte vide de votre test précédent. Pour un scénario plus réaliste, joignez un fichier de CV.

    • Le corps de l’e-mail contient le texte suivant que vous pouvez copier et coller :

      
      Name: Jamal Hartnett
      
      Street address: 12345 Anywhere Road
      
      City: Any Town
      
      State or Country: Any State
      
      Postal code: 00000
      
      Email address: jamhartnett@outlook.com
      
      Phone number: 000-000-0000
      
      Position: Business Analyst 2 #423501
      
      Technical skills: Dynamics CRM, MySQL, Microsoft SQL Server, JavaScript, Perl, Power BI, Tableau, Microsoft Office: Excel, Visio, Word, PowerPoint, SharePoint, and Outlook
      
      Professional skills: Data, process, workflow, statistics, risk analysis, modeling; technical writing, expert communicator and presenter, logical and analytical thinker, team builder, mediator, negotiator, self-starter, self-managing  
      
      Certifications: Six Sigma Green Belt, Lean Project Management
      
      Language skills: English, Mandarin, Spanish
      
      Education: Master of Business Administration
      
  2. Exécutez votre workflow. En cas de réussite, votre workflow vous envoie un e-mail qui ressemble à l’exemple suivant :

    La capture d’écran montre un exemple d’e-mail envoyé par le flux de travail d’application logique.

    Si vous ne recevez pas d’e-mail, vérifiez le dossier Courrier indésirable de votre messagerie. Sinon, si vous ne savez pas si votre workflow s’est correctement exécuté, consultez Dépanner votre workflow d’application logique.

Félicitations, vous avez créé, puis exécuté un flux de travail qui automatise les tâches entre différents services Azure et appelle un code personnalisé !

Nettoyer les ressources

Votre workflow poursuit son exécution jusqu’à ce que vous désactiviez ou supprimiez la ressource d’application logique. Quand vous n’en avez plus besoin, supprimez le groupe de ressources qui contient votre application logique et les ressources associées.

  1. Dans la zone de recherche du portail Microsoft Azure, entrez groupes de ressources, puis sélectionnez Groupes de ressources.

  2. Dans la liste des Groupes de ressources, sélectionnez le groupe de ressources pour ce tutoriel.

  3. Dans le menu du groupe de ressources, sélectionnez Vue d’ensemble.

  4. Dans la barre d’outils de la page Vue d’ensemble, sélectionnez Supprimer un groupe de ressources.

  5. Dans le volet de confirmation, entrez le nom du groupe de ressources, puis sélectionnez Supprimer.

Étapes suivantes

Dans ce tutoriel, vous avez créé un workflow d’application logique qui traite et stocke les pièces jointes en intégrant des services Azure, tels que Stockage Azure et Azure Functions. À présent, découvrez d’autres connecteurs que vous pouvez utiliser pour créer des workflows d’application logique.