Ladění robota z libovolného kanálu pomocí nástroje ngrok

PLATÍ PRO: SDK v4

Během vývoje robota můžete pomocí integrovaného vývojového prostředí (IDE) a bot Framework Emulatoru chatovat s robotem místně a kontrolovat zprávy, které robot odesílá a přijímá. Pokud je robot v produkčním prostředí, můžete robota ladit z libovolného kanálu pomocí nástroje ngrok. Bezproblémové připojení robota k více kanálům je klíčovou funkcí dostupnou v bot Frameworku.

Tento článek popisuje, jak ladit robota místně pomocí nástroje ngrok a C# EchoBot v kanálu připojeném k robotovi. Tento článek používá Microsoft Teams jako ukázkový kanál.

Poznámka:

Bot Framework Emulator a ngrok nepodporují spravovanou identitu přiřazenou uživatelem ani roboty s jedním tenantem.

Předpoklady

Spustit ngrok

ngrok je multiplatformní aplikace, která může vytvořit tunelovou nebo předávací adresu URL, aby se požadavky na internet dostaly na místní počítač. Pomocí nástroje ngrok můžete předávat zprávy z externích kanálů na webu přímo na místní počítač, aby bylo možné povolit ladění, a ne standardní koncový bod zasílání zpráv nakonfigurovaný na webu Azure Portal.

  1. Otevřete terminál a přejděte do složky se spustitelným souborem ngrok.

  2. Spuštěním příkazu ngrok vytvořte nový tunel.

    ngrok http 3978 --host-header rewrite
    

    Poznámka:

    Zadaný port je port, na kterém robot běží. Můžete použít libovolný port localhost, který chcete.

  3. Když se spustí ngrok, zkopírujte a uložte veřejnou adresu URL pro přeposílání pro pozdější použití.

    ngrok forwarding URL

Konfigurace na webu Azure Portal

Během ngroku se přihlaste k webu Azure Portal a zobrazte nastavení robota a proveďte určitou konfiguraci.

  1. Vyberte prostředek robota připojený k místnímu robotovi.

  2. Posuňte se dolů na Položku Konfigurace. Zkopírujte a vložte adresu URL přesměrování ngrok do pole koncového bodu zasílání zpráv. Ujistěte se, že na konci adresy URL udržujete "/api/messages".

    Messaging endpoint

  3. Posuňte se nahoru a vyberte Uložit.

Test

V tomto okamžiku se příchozí zprávy z vašeho robota z externích kanálů odešlou do místního robota. Ukázkový robot, který použijeme k předvedení, je už nakonfigurovaný živě pro Microsoft Teams. Přečtěte si Připojení robota do Microsoft Teams o připojení místního robota s kanálem Microsoft Teams.

Teams channel

Místně můžete nastavit zarážky v sadě Visual Studio. Rozbalením textové vlastnosti z objektu příchozí aktivity uvidíte, že zpráva, kterou jste odeslali robotovi z týmů, se zachytí místně, abyste mohli ladit.

Set breakpoints

Odsud můžete ladit normálně a krok za krokem spustit kód. Pomocí tohoto příkazu můžete robota ladit z libovolného kanálu.

Další informace