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)

Azure Logic Apps vous aide à automatiser les flux de travail et à intégrer des données dans les services Azure et Microsoft, d’autres applications SaaS (software-as-a-service) et des systèmes locaux. Ce tutoriel montre comment créer un workflow d’application logique 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.

Dans ce tutoriel, vous allez apprendre à :

  • Configurez les applications Stockage Azure et Explorateur Stockage pour vérifier les e-mails et pièces jointes enregistrés.
  • Créez une fonction Azure qui supprime le code HTML des e-mails. Ce didacticiel inclut le code que vous pouvez utiliser pour cette fonction.
  • Créez un workflow d’application logique de consommation vide.
  • Ajoutez un déclencheur qui surveille les e-mails et recherche des pièces jointes.
  • Ajoutez une condition qui vérifie si les e-mails contiennent des pièces jointes.
  • Ajoutez une action qui appelle la fonction Azure lorsqu’un e-mail comporte des pièces jointes.
  • Ajoutez une action qui crée des objets blob de stockage pour les e-mails et les pièces jointes.
  • Ajoutez une action qui envoie des notifications par e-mail.

La capture d’écran suivante montre le workflow à un niveau général :

Capture d’écran montrant un exemple de workflow de consommation à un niveau général pour les besoins de ce tutoriel.

Prérequis

Configurer le stockage pour y enregistrer les pièces jointes

Vous pouvez enregistrer les e-mails entrants et les pièces jointes en tant qu’objets blob dans un conteneur de stockage Azure.

  1. Dans le portail Azure avec vos informations d’identification de compte Azure, créez un compte de stockage, sauf si vous en avez déjà un, en utilisant les informations suivantes sous l’onglet Informations de base :

    Propriété Valeur Description
    Abonnement <Azure-subscription-name> Nom de votre abonnement Azure.
    Groupe de ressources <Azure-resource-group> Nom du groupe de ressources Azure utilisé pour organiser et gérer les ressources connexes. Cet exemple utilise LA-Tutorial-RG.

    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.
    Nom du compte de stockage <Azure-storage-account-name> Nom de votre compte de stockage, qui doit comporter entre 3 et 24 caractères, et ne peut contenir que des lettres minuscules et des chiffres. Cet exemple utilise attachmentstorageacct.
    Région <Azure-region> Région dans laquelle stocker les informations sur votre compte de stockage. Cet exemple utilise la région USA Ouest.
    Performances Standard Ce paramètre spécifie les types de données pris en charge et les médias de stockage des données. Voir Types de compte de stockage.
    Redondance 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.

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

  2. Quand vous avez terminé, sélectionnez Vérifier>Créer.

  3. Une fois qu’Azure a déployé votre compte de stockage, recherchez-le, puis obtenez sa clé d’accès :

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

    2. Copiez le nom de votre compte de stockage et key1, puis enregistrez ces valeurs dans un endroit sûr.

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

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

    1. Dans le menu de votre 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. Sous Nouveau conteneur, entrez pièces jointes comme nom du conteneur. Sous Niveau d’accès public, sélectionnez Conteneur (accès en lecture anonyme pour les conteneurs et les objets blob)>OK.

    Quand 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

Ensuite, connectez l’Explorateur Stockage à votre compte de stockage afin de vérifier que votre workflow peut enregistrer correctement les pièces jointes en tant qu’objets blob dans votre conteneur de stockage.

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

    Notes

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

  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, puis vérifiez que le bon locataire et le bon abonnement Microsoft Entra 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 à Stockage Azure, fournissez les informations suivantes, puis sélectionnez Suivant.

    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. Dans la fenêtre Résumé, vérifiez vos informations de connexion, puis sélectionnez Se connecter.

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

  10. Pour rechercher votre conteneur de stockage d’objets blob, sous Comptes de stockage, développez votre compte de stockage, qui est attachmentstorageacct ici, puis développez Conteneurs d’objets blob où se trouve le conteneur pièces jointes ; par exemple :

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

Créez une fonction Azure qui supprime le code HTML des e-mails entrants.

Créer une fonction pour supprimer le code HTML

Utilisez l’extrait de code fourni par ces étapes pour créer une fonction Azure qui supprime le code HTML dans chaque e-mail entrant. De cette façon, le contenu des e-mails est plus net et plus facile à traiter. Vous pouvez ensuite appeler cette fonction à partir de votre workflow.

  1. Avant de pouvoir créer une fonction, créez une application de fonction en procédant comme suit :

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

      Propriété Valeur Description
      Abonnement <your-Azure-subscription-name> Abonnement Azure que vous avez utilisé précédemment.
      Groupe de ressources LA-Tutorial-RG Groupe de ressources Azure que vous avez utilisé précédemment.
      Nom de l’application de fonction <function-app-name> Nom de votre application de fonction, qui doit être globalement unique dans Azure. Cet exemple utilise déjà CleanTextFunctionApp. Ainsi, fournissez un autre nom, comme MyCleanTextFunctionApp-<votre_nom>
      Voulez-vous déployer du code ou une image conteneur ? Code Publiez les fichiers de code.
      Pile d’exécution <langage-préféré> Sélectionnez un runtime qui prend en charge votre langage de programmation de fonction favori. La modification dans le portail n’est disponible que pour les scripts JavaScript, PowerShell, TypeScript et C#. Les fonctions de la bibliothèque de classes C#, ainsi que les fonctions Java et Python doivent être développées localement. Pour les fonctions C# et F#, sélectionnez .NET.
      Version <numéro-de-version> Sélectionnez la version de votre runtime installé.
      Région <Azure-region> Région que vous avez utilisée. Cet exemple utilise la région USA Ouest.
      Système d’exploitation <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.
      Options et plans d’hébergement Consommation (serverless) Sélectionnez le plan d’hébergement qui définit la façon dont les ressources sont allouées à votre application de fonction. Dans le plan de Consommation par défaut, les ressources sont ajoutées dynamiquement en fonction des besoins de vos fonctions. Avec cet hébergement serverless, vous payez uniquement pour la durée d’exécution de vos fonctions. Si vous exécutez dans un plan App Service, vous devez gérer la mise à l’échelle de votre application de fonction.
    2. Sélectionnez Suivant : Stockage. Sous l’onglet Stockage, indiquez les informations suivantes :

      Propriété Valeur Description
      Compte de stockage cleantextfunctionstorageacct Créez un compte de stockage utilisé par votre application de fonction. 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.

      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. Quand vous avez terminé, sélectionnez Vérifier + créer. Confirmez vos informations, puis sélectionnez Créer.

    4. Une fois qu’Azure crée et déploie la ressource d’application de fonction, sélectionnez Accéder à la ressource.

  2. À présent, créez votre fonction localement, car la création de fonctions est illimitée dans le Portail Azure. Veillez à utiliser le modèle de déclencheur HTTP, fournissez les informations suivantes pour votre fonction et utilisez l’exemple de code inclus, qui supprime le code HTML et retourne les résultats à l’appelant :

    Propriété Valeur
    Nom de la fonction RemoveHTMLFunction
    Niveau d’autorisation Fonction
    #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 });
    }
    
  3. Pour tester votre fonction, vous pouvez utiliser l’exemple d’entrée suivant :

    {"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 votre workflow d’application logique

  1. Dans la zone de recherche supérieure du portail Azure, entrez logic apps, puis sélectionnez Logic Apps.

  2. Dans la page Applications logiques, sélectionnez Ajouter.

  3. Dans la page Créer une application logique, sous Plan, sélectionnez Consommation comme type de plan, afin de n’afficher que les options pour les workflows d’application logique de consommation. Fournissez les informations suivantes, puis sélectionnez Vérifier + créer.

    Propriété Valeur Description
    Abonnement <your-Azure-subscription-name> Abonnement Azure que vous avez utilisé précédemment.
    Groupe de ressources LA-Tutorial-RG Groupe de ressources Azure que vous avez utilisé précédemment.
    Nom de l’application logique LA-ProcessAttachment Nom de votre application logique et de votre workflow. Un workflow et une application logique de consommation portent toujours le même nom.
    Région USA Ouest Région que vous avez utilisée précédemment.
    Activer l’analytique des journaux Non Pour ce didacticiel, maintenez le paramètre Désactivé.
  4. Vérifiez les informations que vous avez fournies, puis sélectionnez Créer. Une fois que Azure a déployé votre application, sélectionnez Accéder à la ressource.

  5. Dans le menu des ressources de l’application logique, sélectionnez Concepteur d’application logique pour ouvrir le concepteur de flux de travail.

Ajouter un déclencheur pour vérifier les e-mails entrants

Ajoutez maintenant un déclencheur qui vérifie les e-mails entrants dotés de pièces jointes. Chaque workflow doit commencer par un déclencheur, qui est activé quand la condition de déclencheur est remplie, par exemple, l’occurrence d’un événement spécifique ou l’existence de nouvelles données. Pour plus d’informations, consultez Démarrage rapide : Créer un exemple de workflow d’application logique Consommation dans Azure Logic Apps multilocataire.

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

  1. Dans le concepteur de flux de travail, sélectionnez Ajouter un déclencheur.

  2. Une fois le volet Ajouter un déclencheur ouvert, entrez office 365 outlook dans la zone de recherche. Dans la liste des résultats du déclencheur, sous Office 365 Outlook, sélectionnez Lorsqu’un nouvel e-mail arrive (V3).

  3. Si vous êtes invité à entrer vos informations d’identification, connectez-vous à votre compte e-mail pour créer une connexion entre votre flux de travail et votre compte e-mail.

  4. Fournissez maintenant les critères de déclencheur pour la vérification des nouveaux e-mails et l’exécution de votre workflow.

    Propriété Valeur 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
  5. Dans la liste Paramètres avancés, sélectionnez Filtre d’objet.

  6. Une fois que la zone Filtre Objet s’affiche dans l’action, spécifiez l’objet comme décrit ici :

    Propriété Valeur Description
    Filtre Objet Business Analyst 2 #423501 Texte à rechercher dans l’objet de l’e-mail.
  7. Enregistrez votre flux de travail. Dans la barre d’outils du Concepteur, sélectionnez Enregistrer.

    Votre workflow d’application logique 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.

Rechercher des pièces jointes

Ajoutez maintenant une condition qui sélectionne uniquement les e-mails contenant des pièces jointes.

  1. Sous le déclencheur, sélectionnez le signe plus (+), puis sélectionnez Ajouter une action.

  2. Dans le volet Ajouter une action, entrez condition dans la zone de recherche.

  3. Dans la liste de résultats des actions, sélectionnez l’action intitulée Condition.

  4. Renommez la condition en utilisant une meilleure description.

    1. Dans le volet d’information Condition, remplacez le nom par défaut par la description suivante : si l’e-mail contient des pièces jointes et une phrase clé d’objet
  5. Créez une condition qui recherche les e-mails contenant des pièces jointes.

    1. Dans la première ligne sous la liste des opérations Et, sélectionnez dans la zone la plus à gauche. Dans la liste de contenu dynamique qui s’affiche, sélectionnez la propriété Comporte une pièce jointe.

      Capture d’écran montrant l’action Condition, la deuxième ligne avec le curseur dans la zone la plus à gauche, la liste de contenu dynamique ouverte et la propriété Pièce jointe sélectionnée.

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

    3. Dans la zone la plus à droite, entrez True, qui est la valeur à comparer avec la valeur de la propriété Comporte une pièce jointe issue 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.

      Capture d’écran montrant la condition complète.

    Dans votre définition de workflow sous-jacente, que vous pouvez afficher en sélectionnant Mode Code dans le concepteur, la condition ressemble à l’exemple suivant :

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

Tester votre condition

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

    Cette étape démarre et exécute manuellement votre workflow, mais rien ne se produit tant que l’e-mail de test n’arrive pas 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 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 déclencheurs activés correctement, sélectionnez Historique des déclencheurs.

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

    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 RemoveHTMLFunction

Cette étape ajoute votre fonction Azure créée à votre workflow et transmet le contenu du corps de l’e-mail depuis le déclencheur d’e-mail à votre fonction.

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

  2. Sous la zone de recherche Choisir une opération, sélectionnez Intégré. Dans la zone de recherche, entrez fonctions azure, puis sélectionnez l’action nommée Choisir une fonction Azure.

    Capture d’écran montrant l’action sélectionnée nommée Choisir une fonction Azure.

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

  4. Sélectionnez maintenant votre fonction, qui est nommée RemoveHTMLFunction dans cet exemple.

  5. Renommez la forme de votre fonction avec la description suivante : Appeler RemoveHTMLFunction pour nettoyer le corps de l’e-mail

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

    1. Pour le champ Corps de la demande, entrez ce texte 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.

      De plus, lorsque le curseur se trouve à l’intérieur de la zone Corps de la demande, la liste de contenu dynamique s’affiche afin que vous puissiez sélectionner les valeurs de propriété disponibles à partir des actions précédentes.

    2. Dans la liste de contenu dynamique, sous À la réception d’un e-mail, sélectionnez la propriété Corps. Après cette propriété, pensez à ajouter l’accolade fermante (}).

      Spécifier le corps de la requête à transmettre à la fonction

    Une fois que vous avez terminé, l’entrée ajoutée à votre fonction ressemble à l’exemple suivant :

    Fin du corps de la demande à transmettre à votre fonction

  7. Enregistrez votre flux de travail.

Ensuite, ajoutez une action qui crée un objet blob dans votre conteneur de stockage pour vous permettre d’enregistrer le corps de l’e-mail.

Créer un objet blob pour le corps de l’e-mail

  1. Dans le concepteur, dans le bloc True, sous votre fonction Azure, sélectionnez Ajouter une action.

  2. Sous la zone de recherche Choisir une opération, sélectionnez Toutes. Dans la zone de recherche, entrez créer un objet blob, puis sélectionnez l’action nommée Créer un objet blob.

    Capture d’écran montrant l’action Stockage Blob Azure nommée Créer un objet blob sélectionnée.

  3. Fournissez les informations de connexion pour votre compte de stockage, puis sélectionnez Créer, par exemple :

    Propriété Valeur Description
    Nom de connexion AttachmentStorageConnection Nom descriptif de la connexion.
    Type d’authentification Clé d’accès Type d’authentification à utiliser pour la connexion
    Nom ou point de terminaison du compte Stockage Azure <storage-account-name> Nom de votre compte de stockage créé, qui est attachmentstorageacct pour cet exemple
    Clé d’accès au compte de stockage Azure <storage-account-access-key> Clé d’accès pour votre compte de stockage créé
  4. Renommez l’action Créer un objet blob avec la description suivante : Créer un objet blob pour le corps de l’e-mail

  5. Dans l’action Créer un objet blob, indiquez les informations suivantes :

    Propriété Valeur Description
    Point de terminaison d’objet blob ou nom du compte de stockage Utiliser les paramètres de connexion (<nom-compte-de-stockage>) Sélectionnez votre compte de stockage, qui est attachmentstorageacct pour cet exemple.
    Chemin d’accès du dossier <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 le conteneur pièces jointes.
    Nom de l’objet blob <nom-expéditeur> Pour cet exemple, utilisez le nom de l’expéditeur comme nom de l’objet blob. Sélectionnez dans cette zone pour afficher la liste du contenu dynamique. Dans la section À la réception d’un e-mail, sélectionnez le champ De.
    Contenu de l’objet blob <contenu-objet-blob> Pour cet exemple, utilisez le corps de l’e-mail sans code HTML comme contenu d’objet blob. Sélectionnez dans cette zone pour afficher la liste du contenu dynamique. Dans la section Appeler RemoveHTMLFunction pour nettoyer le corps de l’e-mail, sélectionnez Corps.

    L’image suivante montre les champs à sélectionner pour l’action Créer un objet blob :

    Capture d’écran montrant des informations sur le corps de l’e-mail sans HTML dans l’action Créer un objet blob.

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

    Capture d’écran montrant des exemples d’entrées d’e-mail sans HTML pour l’action Créer un objet blob terminée.

  6. Enregistrez votre flux de travail.

Vérifier le traitement des pièces jointes

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

    Cette étape démarre et exécute manuellement votre workflow, mais rien ne se produit tant que l’e-mail de test n’arrive pas 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 Objet du déclencheur : Business Analyst 2 #423501

    • Votre e-mail comporte au moins une pièce jointe. 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 : Testing my logic app workflow

    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.

      Capture d’écran montrant 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.

Ajoutez une boucle Pour chaque pour traiter toutes les pièces jointes.

Traiter des pièces jointes

Pour traiter chaque pièce jointe de l’e-mail, ajoutez une boucle Pour chaque au workflow.

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

  2. Sous la zone de recherche Choisir une opération, sélectionnez Intégré. Dans la zone de recherche, entrez pour chaque, puis sélectionnez l’action nommée Pour chaque.

    Capture d’écran montrant l’action sélectionnée nommée Pour chaque.

  3. Renommez votre boucle avec la description suivante : Pour chaque pièce jointe d’e-mail

  4. Sélectionnez les données de la boucle à traiter. Dans la boucle Pour chaque pièce jointe d’e-mail, sélectionnez dans la zone Sélectionnez un résultat à partir des étapes précédentes afin d’afficher la liste de contenu dynamique. Dans la section À la réception d’un e-mail, sélectionnez Pièces jointes.

    Capture d’écran montrant la liste de contenu dynamique avec le champ nommé Pièces jointes sélectionné.

    Le champ Pièces jointes transmet un tableau qui contient toutes les pièces jointes incluses dans un e-mail. La boucle For Each répète des actions sur chaque élément transmis avec le tableau.

  5. Enregistrez votre flux de travail.

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

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 pour spécifier la tâche à effectuer sur chaque pièce jointe trouvée.

    Capture d’écran montrant la boucle avec l’option Ajouter une action sélectionnée.

  2. Sous la zone de recherche Choisir une opération, sélectionnez Toutes. Dans la zone de recherche, entrez créer un objet blob, puis sélectionnez l’action nommée Créer un objet blob.

    Capture d’écran montrant l’action sélectionnée nommée Créer un objet blob.

  3. Renommez l’action Créer un objet blob 2 avec la description suivante : Créer un objet blob pour chaque pièce jointe d’e-mail

  4. Dans l’action Créer un objet blob pour chaque pièce jointe d’e-mail, fournissez les informations suivantes :

    Propriété Valeur Description
    Point de terminaison d’objet blob ou nom du compte de stockage Utiliser les paramètres de connexion (<nom-compte-de-stockage>) Sélectionnez votre compte de stockage, qui est attachmentstorageacct pour cet exemple.
    Chemin d’accès du dossier <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 le conteneur pièces jointes.
    Nom de l’objet blob <nom-pièce-jointe> Pour cet exemple, utilisez le nom de la pièce jointe comme nom de l’objet blob. Sélectionnez dans cette zone pour afficher la liste du contenu dynamique. Dans la section À la réception d’un e-mail, sélectionnez le champ Nom.
    Contenu de l’objet blob <email-content> Pour cet exemple, utilisez le contenu d’e-mail comme contenu d’objet blob. Sélectionnez dans cette zone pour afficher la liste du contenu dynamique. Dans la section À la réception d’un e-mail, sélectionnez Contenu.

    Capture d’écran montrant des informations sur la pièce jointe dans l’action Créer un objet blob.

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

    Capture d’écran montrant des exemples d’informations de pièce jointe pour l’action Créer un objet blob terminée.

  5. Enregistrez votre flux de travail.

Vérifier le traitement des pièces jointes

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

    Cette étape démarre et exécute manuellement votre workflow, mais rien ne se produit tant que l’e-mail de test n’arrive pas 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 la propriété Filtre d’objet du déclencheur : Business Analyst 2 #423501

    • Votre e-mail comporte au moins deux pièces jointes. 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.

      Capture d’écran montrant 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 une action afin que votre workflow envoie un e-mail pour passer en revue les pièces jointes.

Envoyer des notifications par e-mail

  1. Revenez au concepteur. Dans la branche True, réduisez la boucle Pour chaque pièce jointe d’e-mail.

  2. Sous la boucle, sélectionnez Ajouter une action.

    Capture d’écran montrant la boucle Pour chaque réduite. Sous la boucle, l’option Ajouter une action est sélectionnée.

  3. Sous la zone de recherche Choisir une opération, sélectionnez Standard. Dans la zone de recherche, entrez envoyer un e-mail.

  4. Dans la liste d’actions, sélectionnez l’action d’envoi d’un e-mail pour votre fournisseur d’e-mail. Pour filtrer la liste d’actions en fonction d’un connecteur spécifique, vous pouvez sélectionner tout d’abord le connecteur.

    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.

    Capture d’écran montrant l’action d’envoi d’e-mail Office 365 Outlook sélectionnée.

  5. 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.

  6. Renommez l’action Envoyer un e-mail avec la description suivante : Envoyer un e-mail pour révision

  7. Fournissez les informations d’action suivantes et sélectionnez les champs à inclure dans l’e-mail.

    • Pour ajouter des lignes vides dans une zone d’édition, appuyez sur Maj + Entrée.
    • Si vous ne trouvez pas un champ attendu dans la liste de contenu dynamique, sélectionnez Voir plus en regard de À la réception d’un e-mail.
    Propriété Valeur Description
    To <recipient-email-address> À des fins de test, vous pouvez utiliser votre propre adresse e-mail.
    Subject ASAP - Review applicant for position:Subject Objet de l’e-mail que vous souhaitez inclure. Cliquez dans cette zone, entrez l’exemple de texte et dans la liste de contenu dynamique, sélectionnez le champ Objet sous À l’arrivée d’un e-mail.
    Corps Please review new applicant:

    Applicant name:De

    Application file location:Chemin

    Application email content:Corps

    Contenu du corps de l’e-mail. Cliquez dans cette zone, entrez l’exemple de texte et dans la liste de contenu dynamique, sélectionnez ces champs :

    - Le champ De sous À la réception d'un e-mail
    - Le champ Chemin sous Créer un objet blob pour le corps de l’e-mail
    - Le champ Corps sous Appeler RemoveHTMLFunction pour nettoyer le corps de l’e-mail

    Capture d’écran montrant l’exemple d’e-mail à envoyer.

    Notes

    Si vous sélectionnez un champ 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, supprimez le champ du tableau, déplacez l’action de référencement en dehors de la boucle, sélectionnez les points de suspension ( ... ) dans la barre de titre de la boucle, puis Supprimer.

  8. Enregistrez votre flux de travail.

À présent, testez votre workflow, qui ressemble maintenant à l’exemple suivant :

Capture d’écran montrant le workflow terminé.

Exécuter 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 la propriété 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 :

    Capture d’écran montrant un exemple d’e-mail envoyé par le workflow d’application logique.

    Si vous ne recevez pas d’e-mail, vérifiez le dossier Courrier indésirable de votre messagerie. Il se peut que le filtre de courrier indésirable redirige ces types d’e-mails. 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 maintenant créé et exécuté un workflow qui automatise les tâches dans différents services Azure et appelle un code personnalisé.

Nettoyer les ressources

Quand vous n’en avez plus besoin, supprimez le groupe de ressources qui contient votre workflow d’application logique et les ressources associées.

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

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

  3. Dans la barre d’outils de la page Vue d’ensemble du groupe de ressources, sélectionnez Supprimer le groupe de ressources.

  4. 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.