Testa och felsöka med emulatorn
GÄLLER FÖR: SDK v4
Bot Framework Emulator är ett skrivbordsprogram som gör det möjligt för robotutvecklare att testa och felsöka robotar, antingen lokalt eller via fjärranslutning. Med emulatorn kan du chatta med din robot och inspektera de meddelanden som roboten skickar och tar emot. Emulatorn visar meddelanden som de skulle visas i ett webbchattgränssnitt och loggar JSON-begäranden och svar när du utbyter meddelanden med din robot. Innan du distribuerar roboten till molnet kör du den lokalt och testar den med emulatorn. Du kan testa din robot med emulatorn även om du ännu inte har skapat den med Azure AI Bot Service eller konfigurerat den att köras på alla kanaler.
Kommentar
Bot Framework JavaScript-, C#- och Python-SDK:erna fortsätter att stödjas, men Java SDK dras tillbaka med slutligt långsiktigt stöd som slutar i november 2023.
Befintliga robotar som skapats med Java SDK fortsätter att fungera.
Om du vill skapa en ny robot kan du använda Microsoft Copilot Studio och läsa om hur du väljer rätt copilot-lösning.
Mer information finns i Framtiden för robotbygge.
Förutsättningar
- Installera Bot Framework-emulatorn
Köra en robot lokalt
Innan du ansluter roboten till Bot Framework-emulatorn måste du köra roboten lokalt. Du kan använda Visual Studio eller Visual Studio Code för att köra roboten eller använda kommandoraden. Om du vill köra en robot med kommandoraden gör du följande:
Gå till kommandotolken och ändra katalogen till robotprojektkatalogen.
Starta roboten genom att köra följande kommando:
dotnet run
Kopiera portnumret på raden innan programmet startade. Tryck på CTRL+C för att stänga av.
Nu bör roboten köras lokalt.
Ansluta till en robot som körs på localhost
Konfigurera proxyinställningar
När du utvecklar bakom en företagsproxy använder emulatorn de konfigurerade miljövariablerna HTTP_PROXY
och HTTPS_PROXY
, som anger proxy-URL-vägen för HTTP- respektive HTTPs-begäranden.
Om du ansluter till en robot som körs på localhost
försöker emulatorn först dirigera via proxyn innan du ansluter till localhost
. Vanligtvis blockerar proxyn anslutningen om du inte anger att den ska kringgås för localhost
.
För att kringgå HTTP_PROXY
inställningarna och HTTPS_PROXY
tillåta att emulatorn ansluter till localhost
måste du definiera följande miljövariabel på den lokala datorn:
NO_PROXY=localhost
Konfigurera emulatorn för autentisering
Om en robot kräver autentisering och visar en inloggningsdialogruta måste du konfigurera emulatorn enligt nedan.
Använda en verifieringskod för inloggning
- Starta emulatorn.
- I emulatorn väljer du Inställningar (kugghjulsikonen) i det vänstra fönstret.
- Aktivera Använd en inloggningsverifieringskod för OAuthCards.
- Välj Spara.
När du väljer inloggningsknappen som visas av roboten genereras en verifieringskod. Du anger koden i chattrutan för robotindata för att autentiseringen ska äga rum. Därefter kan du utföra de tillåtna åtgärderna.
Du kan också utföra stegen som beskrivs nedan.
Använda autentiseringstoken
- Starta emulatorn.
- I emulatorn väljer du Inställningar (kugghjulsikonen) i det vänstra fönstret.
- Aktivera Använd version 1.0-autentiseringstoken.
- Välj Spara.
När du väljer inloggningsknappen som visas av roboten uppmanas du att ange dina autentiseringsuppgifter. En autentiseringstoken genereras. Därefter kan du utföra de tillåtna åtgärderna.
Om du vill ansluta till en robot som körs lokalt väljer du Öppna robot. Lägg till det portnummer som du kopierade tidigare till följande URL och klistra in den uppdaterade URL:en i fältet Robot-URL:
http://localhost:<port number>/api/messages
Om din robot körs med autentiseringsuppgifter för Microsoft-konto (MSA) anger du även dessa autentiseringsuppgifter.
Använda autentiseringsuppgifter för robot
När du öppnar roboten anger du Lösenordet för Microsoft App-ID och Microsoft App om roboten körs med autentiseringsuppgifter. Om du har skapat din robot med Azure AI Bot Service är autentiseringsuppgifterna tillgängliga i robotens App Service under avsnittet Inställningar –> Konfiguration . Om du inte känner till värdena kan du ta bort dem från den lokalt aktiva robotens konfigurationsfil och sedan köra roboten i emulatorn. Om roboten inte körs med de här inställningarna behöver du inte heller köra emulatorn med inställningarna.
Kom ihåg följande när du skapar ett AD-identitetsproviderprogram:
- När kontotypen som stöds är inställd på en enskild klientorganisation, om du använder en personlig prenumeration i stället för ett Microsoft-konto, skulle emulatorn utfärda felet: Robotens Microsoft App-ID eller Microsoft App Password är felaktigt.
- I det här fallet måste de kontotyper som stöds anges till Konton i valfri organisationskatalog (Alla Microsoft Entra-ID-kataloger – Multitenant) och personliga Microsoft-konton (t.ex. Xbox).
Mer information finns i Skapa ett Microsoft Entra ID-identitetsproviderprogram och Registrera ett nytt program med hjälp av Azure Portal.
Visa detaljerade meddelandeaktiviteter med kontrollanten
Skicka ett meddelande till roboten, som då bör svara. Du kan välja meddelandebubblan i konversationsfönstret och inspektera JSON-aktiviteten med hjälp av funktionen INSPECTOR till höger i fönstret. När du väljer det här alternativet blir meddelandebubblan gul och aktivitetens JSON-objekt visas till vänster om chattfönstret. JSON-informationen innehåller nyckelmetadata, inklusive kanal-ID, aktivitetstyp, konversations-ID, textmeddelande, slutpunkts-URL och så vidare. Du kan inspektera aktiviteter som skickas från användaren och aktiviteter som roboten svarar med.
Dricks
Du kan felsöka tillståndsändringar i en robot som är ansluten till en kanal genom att lägga till Inspection Middleware i roboten.
Inspektera tjänster
Kommentar
Azure AI QnA Maker dras tillbaka den 31 mars 2025. Från och med den 1 oktober 2022 kan du inte skapa nya QnA Maker resurser eller kunskapsbaser för 2022. En nyare version av fråge- och svarsfunktionen är nu tillgänglig som en del av Azure AI Language.
Svar på anpassade frågor, en funktion i Azure AI Language, är den uppdaterade versionen av QnA Maker-tjänsten. Mer information om stöd för frågor och svar i Bot Framework SDK finns i Förstå naturligt språk.
Kommentar
Language Understanding (LUIS) dras tillbaka den 1 oktober 2025. Från och med den 1 april 2023 kan du inte skapa nya LUIS-resurser. En nyare version av språktolkning är nu tillgänglig som en del av Azure AI Language.
Conversational Language Understanding (CLU), en funktion i Azure AI Language, är den uppdaterade versionen av LUIS. Mer information om stöd för språktolkning i Bot Framework SDK finns i Förstå naturligt språk.
Med emulatorn kan du också inspektera JSON-svaren från LUIS och QnA Maker. Om du använder en robot med en ansluten språktjänst kan du välja spåra i LOG-fönstret längst ned till höger. Det här nya verktyget innehåller även funktioner för att uppdatera dina språktjänster direkt från emulatorn.
Med en ansluten LUIS-tjänst anger spårningslänken Luis Trace. När du väljer det visas råsvaret från LUIS-tjänsten, som innehåller avsikter och entiteter, tillsammans med deras angivna poäng. Du kan omtilldela avsikter för dina användaryttranden.
Med en ansluten QnA Maker-tjänst visar loggen QnA Trace. När du väljer det här alternativet kan du förhandsgranska det fråge- och svarspar som är associerat med den aktiviteten, tillsammans med en konfidenspoäng. Härifrån kan du lägga till en alternativ frågeformulering för ett svar.
Logga in på Azure
Du kan använda emulatorn för att logga in på ditt Azure-konto. Det här är användbart om du vill lägga till och hantera tjänster som din robot är beroende av. Så här loggar du in:
Välj Arkiv och sedan Logga in med Azure.
På välkomstskärmen väljer du Logga in med ditt Azure-konto. Du kan också låta emulatorn hålla dig inloggad i emulatorprogrammets omstarter.
Inaktivera datainsamling
Om du inte längre vill tillåta att emulatorn samlar in användningsdata kan du enkelt inaktivera datainsamling genom att följa dessa steg:
I emulatorn väljer du Inställningar (kugghjulsikonen) i det vänstra fönstret.
Under Datainsamling avmarkerar du Hjälp till att förbättra emulatorn genom att låta oss samla in användningsdata.
Välj Spara.
Om du ändrar dig kan du återaktivera datainsamling senare.
Ytterligare resurser
Bot Framework-emulatorn är öppen källkod. Du kan bidra till utvecklingen och skicka buggar och förslag.
Felsökning finns i Felsöka allmänna problem och andra felsökningsartiklar i det avsnittet.
Gå vidare
Använd kontrollmellanprogram för att felsöka en robot som är ansluten till en kanal.