Générer une extension de message basée sur une action
L’extension de message basée sur l’action Teams permet aux utilisateurs d’interagir avec les services web dans le client Microsoft Teams. Les extensions de message permettent de lancer des actions dans un système externe à partir de la zone de rédaction de message, de la zone de commande ou directement à partir d’un message.
Principales fonctionnalités de l’extension de message basé sur l’action :
- Présente à l’utilisateur une fenêtre contextuelle modale pour collecter ou afficher des informations.
- Déclenche les commandes d’action à partir de la zone de rédaction du message, de la zone de commande ou d’un message.
Ce guide pas à pas vous aide à créer une extension de message basé sur des actions Teams pour lancer des actions à partir de la zone de rédaction de message et de message. À la fin de ce didacticiel, vous pouvez obtenir la sortie suivante :
Configuration requise
Veillez à installer les outils suivants et à configurer votre environnement de développement :
Installer | Pour l’utilisation... | |
---|---|---|
Microsoft Teams | Microsoft Teams vous permet de collaborer avec toutes les personnes avec lesquelles vous travaillez via des applications pour la conversation, les réunions et les appels au même endroit. | |
Visual Studio 2022 | Vous pouvez installer la version entreprise dans Visual Studio 2022 et installer les charges de travail de développement ASP.NET et web. Utilisez la dernière version. | |
SDK .NET Core | Liaisons personnalisées pour le débogage local et les déploiements d’applications Azure Functions. Si vous n’avez pas installé la dernière version, installez la version portable. | |
Tunnel de développement | Les fonctionnalités de l’application Teams (bots conversationnels, extensions de message et webhooks entrants) ont besoin de connexions entrantes. Un tunnel connecte votre système de développement à Teams. Le tunnel de développement est un outil puissant pour ouvrir en toute sécurité votre localhost sur Internet et contrôler qui a accès. Le tunnel de développement est disponible dans Visual Studio 2022 version 17.7.0 ou ultérieure. ou Vous pouvez également utiliser ngrok comme tunnel pour connecter votre système de développement à Teams. Elle n’est pas obligatoire pour les applications qui incluent uniquement des onglets. Ce package est installé dans le répertoire du projet (à l’aide de npm devDependencies ). |
Remarque
Après avoir téléchargé ngrok, inscrivez-vous et installez authtoken.
Configurer l’environnement local
Ouvrez Microsoft-Teams-Samples.
Sélectionnez Code.
Dans le menu déroulant, sélectionnez Ouvrir avec GitHub Desktop.
Sélectionnez Cloner.
Inscrire l’application Microsoft Entra
Les étapes suivantes vous aident à créer et à inscrire votre bot dans le portail Azure :
- Créez et inscrivez votre application Azure.
- Créez une clé secrète client pour activer l’authentification unique du bot.
- Ajoutez un canal Teams pour déployer le bot.
- Créez un tunnel vers les points de terminaison de votre serveur web à l’aide du tunnel de développement (recommandé) ou de ngrok.
- Ajoutez un point de terminaison de messagerie au tunnel de développement que vous avez créé.
Ajouter une inscription d’application
Accédez au portail Azure.
Sélectionner les inscriptions d’applications.
Sélectionnez + Nouvelle inscription.
Entrez le nom de votre application.
Sélectionnez Comptes dans n’importe quel annuaire organisationnel (n’importe quel locataire d’ID Microsoft Entra - Multilocataire).
Sélectionner Inscription.
Votre application est inscrite dans l’ID Microsoft Entra. La page vue d’ensemble de l’application s’affiche.
Remarque
Enregistrez l’ID d’application à partir de l’ID d’application (client) et de l’ID d’annuaire (locataire) pour une utilisation ultérieure.
Créer un tunnel
Ouvrez Visual Studio.
Sélectionnez Créer un projet.
Dans la zone de recherche, entrez ASP.NET. Dans les résultats de la recherche, sélectionnez ASP.NET Core Web App.
Sélectionnez Suivant.
Entrez Nom du projet , puis sélectionnez Suivant.
Sélectionnez Créer.
Une fenêtre de vue d’ensemble s’affiche.
Dans la liste déroulante de débogage, sélectionnez Dev Tunnels (aucun tunnel actif)>Créer un tunnel....
Une fenêtre contextuelle apparaît.
Mettez à jour les détails suivants dans la fenêtre contextuelle :
- Compte : entrez un compte Microsoft ou GitHub.
- Nom : entrez un nom pour votre tunnel.
- Type de tunnel : dans la liste déroulante, sélectionnez Temporaire.
- Accès : dans la liste déroulante, sélectionnez Public.
Sélectionnez OK.
Une fenêtre contextuelle s’affiche pour indiquer que le tunnel de développement a été créé avec succès.
Sélectionnez OK.
Vous trouverez le tunnel que vous avez créé dans la liste déroulante de débogage comme suit :
Sélectionnez F5 pour exécuter l’application en mode débogage.
Si une boîte de dialogue Avertissement de sécurité s’affiche, sélectionnez Oui.
Une fenêtre contextuelle apparaît.
Cliquez sur Continuer.
La page d’accueil du tunnel de développement s’ouvre dans une nouvelle fenêtre de navigateur et le tunnel de développement est maintenant actif.
Accédez à Visual Studio, puis sélectionnez Afficher la > sortie.
Dans le menu déroulant Console de sortie, sélectionnez Tunnels de développement.
La console de sortie affiche l’URL du tunnel de développement.
Ajouter une authentification web
Dans le volet gauche, sous Gérer, sélectionnez Authentification.
Sélectionnez Ajouter une plateforme>web.
Entrez l’URI de redirection de votre application en ajoutant
auth-end
au nom de domaine complet. Par exemple :https://your-devtunnel-domain/auth-end
ouhttps://your-ngrok-domain/auth-end
.Sous Octroi implicite et flux hybrides, cochez les cases Jetons d’accès et jetons d’ID .
Sélectionnez Configurer.
Sous Web, sélectionnez Ajouter un URI.
Entrez
https://token.botframework.com/.auth/web/redirect
.Sélectionnez Enregistrer.
Créer une clé secrète client
Dans le volet gauche, sous Gérer, sélectionnez Certificats & secrets.
Sous Clés secrètes client, sélectionnez + Nouvelle clé secrète client.
La fenêtre Ajouter une clé secrète client s’affiche.
Entrez Description.
Sélectionnez Ajouter.
Sous Valeur, sélectionnez Copier dans le Presse-papiers pour enregistrer la valeur de clé secrète client en vue d’une utilisation ultérieure.
Ajouter une autorisation d’API
Dans le volet gauche, sous Gérer, sélectionnez Autorisations d’API.
Sélectionnez + Ajouter une autorisation.
Sélectionnez Microsoft Graph.
Sélectionnez Autorisations déléguées.
Sélectionnez les autorisations suivantes :
- Autorisations> OpenIde-mail, offline_access, openid, profil.
- Utilisateur>User.Read.
Sélectionnez Ajouter des autorisations.
Remarque
- Si une application ne reçoit pas le consentement de l’administrateur informatique, les utilisateurs doivent fournir le consentement la première fois qu’ils utilisent une application.
- Les utilisateurs doivent donner leur consentement aux autorisations d’API uniquement si l’application Microsoft Entra est inscrite dans un autre locataire.
Ajouter un URI d’ID d’application
Dans le volet gauche, sous Gérer, sélectionnez Exposer une API.
En regard de URI d’ID d’application, sélectionnez Ajouter.
Mettez à jour l’URI de l’ID d’application
api://your-devtunnel-domain/botid-{AppID}
au format ou etapi://your-ngrok-domain/botid-{AppID}
sélectionnez Enregistrer.L’image suivante montre le nom de domaine :
Ajouter une étendue
Dans le volet gauche, sous Gérer, sélectionnez Exposer une API.
Sélectionnez + Ajouter une étendue.
Entrez access_as_user comme nom de l’étendue.
Sous Qui peut donner son consentement ?, sélectionnez Administrateurs et utilisateurs.
Mettez à jour les valeurs du reste des champs comme suit :
Entrez Teams peut accéder au profil de l’utilisateur en tant que nom d’affichage du consentement administrateur.
Entrez Autoriser Teams à appeler les API web de l’application en tant qu’utilisateur actuel comme description du consentement administrateur.
Entrez Teams peut accéder au profil utilisateur et effectuer des demandes au nom de l’utilisateur en tant que nom d’affichage du consentement de l’utilisateur.
Entrez Autoriser Teams à appeler les API de cette application avec les mêmes droits que l’utilisateur comme description du consentement de l’utilisateur.
Vérifiez que State est défini comme Enabled.
Sélectionnez Ajouter une étendue.
L’image suivante montre les champs et les valeurs :
Remarque
Le nom de l’étendue doit correspondre à l’URI d’ID d’application avec
/access_as_user
ajouté à la fin.
Ajouter une application cliente
Dans le volet gauche, sous Gérer, sélectionnez Exposer une API.
Sous Applications clientes autorisées, identifiez les applications que vous souhaitez autoriser pour l’application web de votre application.
Sélectionnez + Ajouter une application cliente.
Ajoutez Teams mobile ou de bureau et l’application web Teams.
Pour Teams mobile ou de bureau : entrez l’ID client sous la forme
1fec8e78-bce4-4aaf-ab1b-5451cc387264
.Pour le web Teams : entrez l’ID client en tant que
5e3ce6c0-2b1f-4285-8d4b-75ee78787346
.
Cochez la case Étendues autorisées .
Sélectionnez Ajouter une application.
L’image suivante affiche l’ID client :
Créer votre bot
Créer une ressource de bot Azure
Remarque
Si vous testez déjà votre bot dans Teams, déconnectez-vous de cette application et de Teams. Pour voir cette modification, reconnectez-vous.
Accéder à l’Accueil
Sélectionnez + Créer une ressource.
Dans la zone de recherche, entrez Azure Bot.
Ensuite, sélectionnez Entrée.
Sélectionnez Azure Bot.
Sélectionnez Créer.
Entrez le nom du bot dans Descripteur de bot.
Sélectionnez votre abonnement dans la liste déroulante.
Sélectionnez votre groupe de ressources dans la liste déroulante.
Si vous n’avez pas de groupe de ressources existant, vous pouvez en créer un. Pour créer un groupe de ressources, procédez comme suit :
- Sélectionnez Créer.
- Entrez le nom de la ressource et sélectionnez OK.
- Sélectionnez un emplacement dans la liste déroulante Nouvel emplacement du groupe de ressources .
Sous Tarification, sélectionnez Modifier le plan.
Sélectionnez FO Free>Select.
Sous ID d’application Microsoft, sélectionnez Type d’applicationcomme multilocataire.
Dans Type de création, sélectionnez Utiliser l’inscription d’application existante.
Entrez l’ID d’application.
Remarque
Vous ne pouvez pas créer plusieurs bots avec le même ID d’application Microsoft.
Sélectionnez Examiner et créer.
Une fois la validation réussie, sélectionnez Créer.
L’approvisionnement du bot prend quelques minutes.
Sélectionnez Accéder à la ressource.
Vous avez créé votre bot Azure.
Ajouter un canal Teams
Dans le volet gauche, sélectionnez Canaux.
Sous Canaux disponibles, sélectionnez Microsoft Teams.
Cochez la case pour accepter les conditions d’utilisation du service.
Sélectionnez Accepter.
Sélectionnez Appliquer.
Pour ajouter un point de terminaison de messagerie
Utilisez l’URL du tunnel de développement dans la console de sortie comme point de terminaison de messagerie.
Dans le volet gauche, sous Paramètres, sélectionnez Configuration.
Mettez à jour le point de terminaison de messagerie au format
https://your-devtunnel-domain/api/messages
.Sélectionnez Appliquer.
Vous avez correctement configuré un bot dans Azure Bot Service.
Remarque
Si la clé d’instrumentation Application Insights affiche une erreur, mettez à jour avec l’ID d’application.
Configurer les paramètres d’application et les fichiers manifestes
Accédez au fichier appsettings.json dans le référentiel cloné.
Ouvrez le fichier appsettings.json et mettez à jour les informations suivantes :
- Définissez
"MicrosoftAppType"
sur Multi-locataire. - Définissez sur
"MicrosoftAppId"
l’ID d’application Microsoft de votre bot. - Définissez sur
"MicrosoftAppPassword"
la valeur de clé secrète client de votre bot. - Laissez
"MicrosoftAppTenantId"
vide pour le bot MultiTenant. - Définissez
"BaseUrl"
sur le nom de domaine complet.
- Définissez
Accédez au fichier manifest.json dans le dépôt cloné.
Ouvrez le fichier manifest.json et apportez les modifications suivantes :
- Remplacez par
<<validDomains>>
votre nom de domaine complet. - Remplacez toutes les occurrences de par
<<Microsoft-App-ID>>
l’ID d’application Microsoft de votre bot.
- Remplacez par
Générer et exécuter le service
Pour générer et exécuter le service, utilisez Visual Studio ou la ligne de commande.
Ouvrez Visual Studio.
Accédez à Fichier>Ouvrir>le projet/la solution.....
Dans le dossier csharp , sélectionnez le fichier TeamsMessagingExtensionsAction.csproj .
Appuyez sur F5 pour exécuter le projet.
Sélectionnez Oui si la boîte de dialogue suivante s’affiche :
Une page web s’affiche avec un message Votre bot est prêt !.
Ajouter l’application Extension de message d’action à Teams
Dans votre dépôt cloné, accédez à exemples>msgext-action>csharp>TeamsAppManifest.
Créez un .zip avec les fichiers suivants présents dans le dossier Manifeste :
- manifest.json
- icon-outline.png
- icon-color.png
Dans le client Teams, sélectionnez l’icône Applications .
Sélectionnez Gérer vos applications.
Sélectionnez Charger une application.
Recherchez l’option Charger une application personnalisée. Si vous voyez l’option , le chargement d’applications personnalisées est activé.
Remarque
Si vous ne trouvez pas l’option de charger une application personnalisée, contactez votre administrateur Teams.
Sélectionnez Ouvrir pour charger le fichier messaging.zip que vous avez créé dans le dossier TeamsAppManifest.
Interagir avec l’application dans Teams
Sélectionnez Créer une commande de carte dans la liste des commandes de la zone de composition.
Entrez vos informations dans la fenêtre contextuelle modale.
Sélectionnez Envoyer.
Sélectionnez Plus d’options (...) dans le menu de dépassement.
Sélectionnez Autres actions>Partager le message.
Si vous souhaitez inclure une image, cochez la case Inclure l’image dans la carte héros , puis sélectionnez Envoyer.
Relever le défi
Tu as trouvé quelque chose comme ça ?
Félicitations !
Vous avez terminé le tutoriel pour commencer à utiliser une application Extension de message d’action !
Vous avez un défi avec cette section ? Si c'est le cas, faites-nous part de vos commentaires pour que nous puissions l'améliorer.