Tutoriel : Créer une fonction à intégrer à Azure Logic Apps

Azure Functions s’intègre avec Azure Logic Apps dans le Concepteur d’applications logiques. Cette intégration vous permet d’utiliser la puissance de calcul de Functions dans des orchestrations avec d’autres services Azure et tiers.

Ce tutoriel vous montre comment créer un workflow pour analyser l’activité de Twitter. À mesure que les tweets sont évalués, le workflow envoie des notifications quand des sentiments positifs sont détectés.

Ce didacticiel vous apprend à effectuer les opérations suivantes :

  • Créez une ressource d’API pour Azure AI services.
  • Créer une fonction qui classe le sentiment des tweets.
  • Créer une application logique qui se connecte à Twitter.
  • Ajouter la détection des sentiments à l’application logique.
  • Connecter l’application logique à la fonction.
  • Envoyer un courrier électronique en fonction de la réponse de la fonction.

Prérequis

Notes

Si vous souhaitez utiliser le connecteur Gmail, seuls les comptes professionnels G-Suite peuvent utiliser ce connecteur sans restriction dans Logic Apps. Si vous disposez d’un compte de consommateur Gmail, vous pouvez utiliser le connecteur uniquement avec certains services et applications approuvés par Google, ou vous pouvez créer une application cliente Google pour servir lors de l’authentification dans votre connecteur Gmail.

Pour plus d’informations, consultez Stratégies de confidentialité et de sécurité des données pour les connecteurs Google dans Azure Logic Apps.

Créer une ressource Analyse de texte

Les API Azure AI services sont disponibles dans Azure en tant que ressources individuelles. Utilisez l’API Analyse de texte pour détecter le sentiment des tweets postés.

  1. Connectez-vous au portail Azure.

  2. Sélectionnez Créer une ressource dans le coin supérieur gauche du portail Azure.

  3. Sous Catégories, sélectionnez IA + Machine Learning.

  4. Sous Analyse de texte, sélectionnez Créer.

  5. Entrez les valeurs suivantes dans l’écran Créer une analyse de texte.

    Paramètre Valeur Notes 
    Abonnement Le nom de votre abonnement Azure
    Groupe de ressources Créez un groupe de ressources nommé tweet-sentiment-tutorial Par la suite, vous supprimerez ce groupe de ressources pour supprimer toutes les ressources créées pendant ce tutoriel.
    Région Sélectionnez la région la plus proche de vous.
    Nom TweetSentimentApp
    Niveau tarifaire Sélectionnez Gratuit F0
  6. Sélectionnez Revoir + créer.

  7. Sélectionnez Create (Créer).

  8. Une fois le déploiement terminé, sélectionnez Accéder à la ressource.

Obtenir les paramètres Analyse de texte

Une fois la ressource Analyse de texte créée, vous allez copier quelques paramètres et les mettre de côté pour une utilisation ultérieure.

  1. Sélectionnez Clés et point de terminaison.

  2. Copiez la Clé 1 en cliquant sur l’icône située à la fin de la zone d’entrée.

  3. Collez la valeur dans un éditeur de texte.

  4. Copiez le Point de terminaison en cliquant sur l’icône située à la fin de la zone d’entrée.

  5. Collez la valeur dans un éditeur de texte.

Créer l’application de fonction

  1. Dans la zone de recherche située en haut, recherchez et sélectionnez Application de fonction.

  2. Sélectionnez Create (Créer).

  3. Saisissez les valeurs suivantes.

    Paramètre Valeur suggérée Notes 
    Abonnement Le nom de votre abonnement Azure
    Groupe de ressources tweet-sentiment-tutorial Utilisez le même nom de groupe de ressources tout au long de ce tutoriel.
    Nom de l’application de fonction TweetSentimentAPI + un suffixe unique Les noms d’application de fonction sont globalement uniques. Les caractères valides sont a-z (insensible à la casse), 0-9et -.
    Publier Code
    Pile d’exécution .NET Le code de fonction fourni pour vous est en C#.
    Version Sélectionnez le numéro de version le plus récent
    Région Sélectionnez la région la plus proche de vous.
  4. Sélectionnez Revoir + créer.

  5. Sélectionnez Create (Créer).

  6. Une fois le déploiement terminé, sélectionnez Accéder à la ressource.

Créer une fonction déclenchée via HTTP

  1. Dans le menu de gauche de la fenêtre Fonctions, sélectionnez Fonctions.

  2. Sélectionnez Ajouter dans le menu du haut, puis entrez les valeurs suivantes.

    Paramètre Valeur Notes 
    Environnement de développement Développer dans le portail
    Modèle Déclencheur HTTP
    Nouvelle fonction TweetSentimentFunction Il s’agit du nom de votre fonction.
    Niveau d’autorisation Fonction
  3. Sélectionnez le bouton Ajouter.

  4. Sélectionnez le bouton Code + test.

  5. Collez le code suivant dans la fenêtre d’éditeur de code.

    #r "Newtonsoft.Json"
    
    using System;
    using System.Net;
    using Microsoft.AspNetCore.Mvc;
    using Microsoft.Extensions.Logging;
    using Microsoft.Extensions.Primitives;
    using Newtonsoft.Json;
    
    public static async Task<IActionResult> Run(HttpRequest req, ILogger log)
    {
    
        string requestBody = String.Empty;
        using (StreamReader streamReader =  new  StreamReader(req.Body))
        {
            requestBody = await streamReader.ReadToEndAsync();
        }
    
        dynamic score = JsonConvert.DeserializeObject(requestBody);
        string value = "Positive";
    
        if(score < .3)
        {
            value = "Negative";
        }
        else if (score < .6) 
        {
            value = "Neutral";
        }
    
        return requestBody != null
            ? (ActionResult)new OkObjectResult(value)
           : new BadRequestObjectResult("Pass a sentiment score in the request body.");
    }
    

    Un score de sentiment est transmis à la fonction, qui retourne un nom de catégorie pour la valeur.

  6. Sélectionnez le bouton Enregistrer dans la barre d’outils pour enregistrer vos changements.

    Notes

    Pour tester la fonction, sélectionnez Tester/Exécuter dans le menu du haut. Sous l’onglet Entrée, entrez la valeur 0.9 dans la zone de texte Corps, puis sélectionnez Exécuter. Vérifiez que la valeur Positif est retournée dans la zone Contenu de la réponse HTTP dans la section Sortie.

Ensuite, créez une application logique qui s’intègre à Azure Functions, à Twitter et à l’API Azure AI services.

Créer une application logique

  1. Dans la zone de recherche située en haut, recherchez et sélectionnez Applications logiques.

  2. Sélectionnez Ajouter.

  3. Sélectionnez Consommation, puis entrez les valeurs suivantes.

    Paramètre Valeur suggérée
    Abonnement Le nom de votre abonnement Azure
    Groupe de ressources tweet-sentiment-tutorial
    Nom de l’application logique TweetSentimentApp
    Région Sélectionnez la région la plus proche de vous, de préférence la même région que celle que vous avez sélectionnée lors des étapes précédentes.

    Acceptez les valeurs par défaut pour tous les autres paramètres.

  4. Sélectionnez Revoir + créer.

  5. Sélectionnez Create (Créer).

  6. Une fois le déploiement terminé, sélectionnez Accéder à la ressource.

  7. Sélectionnez le bouton Application logique vide.

    Bouton Application logique vide

  8. Sélectionnez le bouton Enregistrer dans la barre d’outils pour enregistrer votre progression.

Vous pouvez maintenant utiliser le Concepteur Logic Apps pour ajouter des services et des déclencheurs à votre application.

Se connecter à Twitter

Créez une connexion à Twitter pour que votre application puisse déterminer s’il y a de nouveaux tweets.

  1. Recherchez Twitter dans la zone de recherche située en haut.

  2. Sélectionnez l’icône Twitter.

  3. Sélectionnez le déclencheur Lors de la publication d’un nouveau tweet.

  4. Entrez les valeurs suivantes pour configurer la connexion.

    Paramètre Valeur
    Nom de la connexion MyTwitterConnection
    Type d’authentification Utilisez l’application partagée par défaut
  5. Sélectionnez Connexion.

  6. Suivez les invites qui s’affichent dans la fenêtre contextuelle pour effectuer la connexion à Twitter.

  7. Ensuite, entrez les valeurs suivantes dans la zone Lors de la publication d’un nouveau tweet.

    Paramètre Valeur
    Search text (Texte de recherche) #my-twitter-tutorial
    How often do you want to check for items? (À quelle fréquence souhaitez-vous rechercher des éléments ?) 1 dans la zone de texte, et
    Heure dans la liste déroulante. Vous pouvez entrer des valeurs différentes, mais veillez à passer en revue les limitations actuelles du connecteur Twitter.
  8. Sélectionnez le bouton Enregistrer dans la barre d’outils pour enregistrer votre progression.

Ensuite, connectez-vous à l’analyse de texte pour détecter les sentiments des tweets collectés.

Ajouter la détection de sentiments de l’Analyse de texte

  1. Sélectionnez Nouvelle étape.

  2. Recherchez Analyse de texte dans la zone de recherche.

  3. Sélectionnez l’icône Analyse de texte.

  4. Sélectionnez Détecter le sentiment, puis entrez les valeurs suivantes.

    Paramètre Valeur
    Nom de la connexion TextAnalyticsConnection
    Clé du compte Collez la clé de compte Analyse de texte que vous avez mis de côté précédemment.
    URL du site Collez le point de terminaison Analyse de texte que vous avez mis de côté précédemment.
  5. Sélectionnez Create (Créer).

  6. Cliquez dans la zone Ajouter un nouveau paramètre, puis cochez la case en regard de Documents qui s’affiche dans la fenêtre contextuelle.

  7. Cliquez dans la zone de texte documents id - 1 (ID de documents - 1) pour ouvrir la fenêtre contextuelle de contenu dynamique.

  8. Dans la zone de recherche dynamic content (contenu dynamique), recherchez id, puis cliquez sur Tweet id (ID du tweet).

  9. Cliquez dans la zone de texte documents Text - 1 (Texte de documents - 1) pour ouvrir la fenêtre contextuelle de contenu dynamique.

  10. Dans la zone de recherche dynamic content (contenu dynamique), recherchez text (texte), puis cliquez sur Tweet text (Texte du tweet).

  11. Dans Choisir une action, saisissez Analyse de texte, puis cliquez sur l’action Détecter le sentiment.

  12. Sélectionnez le bouton Enregistrer dans la barre d’outils pour enregistrer votre progression.

La zone Détecter le sentiment doit ressembler à la capture d’écran suivante.

Détecter le sentiment

Connecter une sortie de sentiment à un point de terminaison de fonction

  1. Sélectionnez Nouvelle étape.

  2. Recherchez Azure Functions dans la zone de recherche.

  3. Sélectionnez l’icône Azure Functions.

  4. Recherchez le nom de votre fonction dans la zone de recherche. Si vous avez suivi les instructions ci-dessus, le nom de votre fonction commence par TweetSentimentAPI.

  5. Sélectionnez l’icône de fonction.

  6. Sélectionnez l’élément TweetSentimentFunction.

  7. Cliquez dans la zone Corps de la demande, puis sélectionnez l’élément Détecter le sentimentscore dans la fenêtre contextuelle.

  8. Sélectionnez le bouton Enregistrer dans la barre d’outils pour enregistrer votre progression.

Ajouter une étape conditionnelle

  1. Sélectionnez le bouton Ajouter une action.

  2. Cliquez dans la zone Contrôle, puis recherchez et sélectionnez Contrôle dans la fenêtre contextuelle.

  3. Sélectionnez Condition.

  4. Cliquez dans la zone Choisir une valeur, puis sélectionnez l’élément TweetSentimentFunctionCorps dans la fenêtre contextuelle.

  5. Entrez Positif dans la zone Choisir une valeur.

  6. Sélectionnez le bouton Enregistrer dans la barre d’outils pour enregistrer votre progression.

Ajouter des notifications par courrier électronique

  1. Sous la zone Vrai, sélectionnez le bouton Ajouter une action.

  2. Recherchez et sélectionnez Office 365 Outlook dans la zone de texte.

  3. Recherchez Envoyer, puis sélectionnez Envoyer un e-mail dans la zone de texte.

  4. Sélectionnez le bouton Se connecter.

  5. Suivez les invites qui s’affichent dans la fenêtre contextuelle pour effectuer la connexion à Office 365 Outlook.

  6. Entrez votre adresse e-mail dans la zone À.

  7. Cliquez dans la zone Objet, puis sur l’élément Corps sous TweetSentimentFunction. Si l’élément Corps n’est pas affiché dans la liste, cliquez sur le lien Afficher plus pour développer la liste d’options.

  8. Une fois l’élément Corps placé dans l’Objet, entrez le texte Tweet de : .

  9. Après avoir entré le texte Tweet de : , cliquez de nouveau sur la zone, puis sélectionnez Nom d’utilisateur dans la liste des options Lors de la publication d’un nouveau tweet.

  10. Cliquez dans la zone Corps, puis sélectionnez le Texte du tweet sous la liste des options Lors de la publication d’un nouveau tweet. Si l’élément Texte du tweet n’est pas affiché dans la liste, cliquez sur le lien Afficher plus pour développer la liste d’options.

  11. Sélectionnez le bouton Enregistrer dans la barre d’outils pour enregistrer votre progression.

La boîte e-mail doit maintenant ressembler à cette capture d’écran.

Notification par e-mail

Exécuter le workflow

  1. À partir de votre compte Twitter, tweetez le texte suivant : I’m enjoying #my-twitter-tutorial (J’adore #mon-tutoriel-twitter).

  2. Retournez au Concepteur Logic Apps, puis sélectionnez le bouton Exécuter.

  3. Consultez vos e-mails pour voir si vous avez reçu un message du workflow.

Nettoyer les ressources

Pour nettoyer tous les services et comptes Azure créés lors de ce tutoriel, supprimez le groupe de ressources.

  1. Recherchez Groupes de ressources dans la zone de recherche située en haut.

  2. Sélectionnez le tutoriel tweet-sentiment-tutorial (tutoriel sur le sentiment des tweets).

  3. Sélectionnez Supprimer le groupe de ressources.

  4. Entrez tweet-sentiment-tutorial dans la zone de texte.

  5. Sélectionnez le bouton Supprimer.

Si vous le souhaitez, vous pouvez retourner dans votre compte Twitter et supprimer tous les tweets de test de votre flux.

Étapes suivantes