Processus de débogage en arrière-plan

Le processus de débogage implique les .vscode/launch.json fichiers et .vscode/tasks.json pour configurer les débogueurs dans Microsoft Visual Studio Code. Visual Studio Code lance le débogueur Node et le débogueur de navigateur, et Microsoft Edge ou Google Chrome lance un nouveau navigateur instance.

Le flux de travail du processus de débogage est le suivant :

  1. launch.json le fichier configure le débogueur dans Visual Studio Code.

  2. Visual Studio Code exécute le preLaunchTask composé, Démarrer l’application Teams localement dans le .vscode/tasks.json fichier.

  3. Visual Studio Code lance ensuite les débogueurs spécifiés dans les configurations composées, telles que Attach to Bot, Attacher au Backend, Attach to Frontend, et Lancer Bot.

  4. Le débogueur de navigateur, Microsoft Edge ou Google Chrome, lance une nouvelle instance de navigateur et ouvre une page web pour charger le client Microsoft Teams.

Valider les prérequis

Microsoft Teams Toolkit vérifie les prérequis suivants pendant le processus de débogage :

  • Teams Toolkit vérifie si Node.js est installé. Si Node.js n’est pas installé, le débogage se termine.

  • Teams Toolkit vérifie si Node.js version correspond aux versions définies dans le package.json fichier. Si la version ne correspond pas, le Kit de ressources Teams affiche un message d’avertissement dans le canal de sortie.

  • Teams Toolkit vous invite à vous connecter au compte Microsoft 365 si vous ne vous êtes pas connecté avec vos informations d’identification valides.

  • Le chargement d’applications personnalisées pour votre locataire développeur est activé pour empêcher l’arrêt du débogage local.

  • Si Ngrok n’est pas installé ou si la version ne correspond pas à la configuration requise, teams Toolkit installe le package ngrok@4.2.2 npm Ngrok dans ~/.fx/bin/ngrok. La version binaire Ngrok 2.3 s’applique à l’extension de bot et de message et est gérée par le package npm Ngrok dans /.fx/bin/ngrok/node modules/ngrok/bin.

    Remarque

    Les modèles de projet Teams Toolkit utilisent le package npm ngrok@4.3.3, qui contient la version 2.3.40. Pour plus d’informations sur l’obtention d’une licence valide, consultez ngrok.

  • Si Azure Functions Core Tools version 4 n’est pas installée ou si la version ne correspond pas à la configuration requise, teams Toolkit installe Azure Functions package azure-functions-core-tools@3 npm Core Tools pour Windows et macOS dans ~/.fx/bin/func. Le package npm Azure Functions Core Tools dans ~/.fx/bin/func/node_modules/azure-functions-core-tools/bin gère Azure Functions binaire Core Tools. Pour Linux, le débogage local se termine.

  • Si le Kit de développement logiciel (SDK) .NET Core n’est pas installé ou si la version ne correspond pas à la configuration requise, teams Toolkit installe le KIT de développement logiciel (SDK) .NET Core pour Windows et macOS dans ~/.fx/bin/dotnet. La version du SDK .NET Core s’applique à Azure Functions. Pour Linux, le débogage local se termine.

    Le tableau suivant répertorie les versions .NET Core :

    Plateforme Logiciels
    Windows, macOs (x64) et Linux 3.1 (recommandé), 5.0, 6.0
    macOs (arm64) 6.0
  • Si le certificat de développement pour localhost n’est pas installé pour l’onglet dans Windows ou macOS, le Kit de ressources Teams vous invite à l’installer.

  • Si Azure Functions extensions de liaison n’est pas installée, le Kit de ressources Teams installe Azure Functions extensions de liaison dans api/extensions.csproj.

  • Si les packages npm ne sont pas installés, le Kit de ressources Teams installe tous les packages npm applicables à l’application d’onglet, à l’application de bot, à l’extension de message et Azure Functions.

  • Teams Toolkit démarre Ngrok pour créer un tunnel HTTP pour le bot et l’extension de message.

  • Si les ports tab, bot, extension de message et Azure Functions ne sont pas disponibles, le débogage local se termine.

    Le tableau suivant répertorie les ports disponibles pour les composants :

    Composant Port
    Tab 53000
    Bot ou extension de message 3978
    Inspecteur de nœud pour l’extension de bot ou de messagerie 9239
    Azure Functions 7071
    Inspecteur de nœud pour les fonctions Azure 9229

Lorsque vous sélectionnez Démarrer le débogage (F5), le canal de sortie du Kit de ressources Teams affiche la progression et le résultat après avoir vérifié les prérequis.

Capture d’écran montrant les prérequis case activée résumé.

Pour plus d’informations, consultez Tâche de validation des prérequis.

Démarrer le tunnel local

Pour l’extension de bot et de message, Teams Toolkit démarre un service de tunnel local pour rendre le point de terminaison de messagerie du bot public. Pour plus d’informations, consultez Démarrer la tâche de tunnel local.

Créer les ressources de débogage

Teams Toolkit exécute le cycle de vie provision défini dans teamsapp.local.yml pour créer les ressources associées à l’application Teams requises pour le débogage. Pour plus d’informations, consultez Provisionner la tâche et les actions disponibles.

Générer un projet

Teams Toolkit exécute le cycle de vie deploy défini dans teamsapp.local.yml pour générer le projet. Pour plus d’informations, consultez Déployer la tâche et les actions disponibles.

Suivre une visite guidée du code source

Vous pouvez afficher les dossiers et fichiers du projet sous Explorer dans Visual Studio Code après le débogage. Le tableau suivant répertorie les fichiers liés au débogage :

Nom du dossier Sommaire Type de configuration de débogage
teamsapp.local.yml Fichier projet main Teams Toolkit pour le débogage. Ce fichier définit les cycles de vie et les actions nécessaires au débogage.
env/.env.local Fichier de variables d’environnement pour le projet Teams Toolkit. Les valeurs de chaque variable d’environnement sont consommées ou générées pendant le débogage.
.localConfigs Fichier de variables d’environnement pour le code de l’application. Les valeurs de chaque variable d’environnement sont générées pendant le débogage.

Pour plus d’informations sur la structure des dossiers du projet, consultez Projet teams Toolkit.

Voir aussi