Testowanie agentów przy użyciu tuneli dev

Korzystając z tuneli dev, możesz testować agenta Agent 365 z aplikacjami Microsoft 365 (np. Teams, Outlook lub Word), gdy agent działa lokalnie na komputerze deweloperskim. To podejście łączy lokalny rozwój z testowaniem w rzeczywistym środowisku, dzięki czemu możesz zweryfikować działanie agenta w faktycznych środowiskach Microsoft 365 przed wdrożeniem do chmury.

Wymagania wstępne

Przed użyciem tuneli dev upewnij się, że masz zainstalowane narzędzie wiersza poleceń tuneli dev.

Skonfiguruj tunel dev

Skonfiguruj tunel dev, aby wystawić lokalny punkt końcowy agenta usługom Microsoft 365.

Utwórz i rozpocznij tunel

  1. Zaloguj się do tunelu dev:

    devtunnel user login
    
  2. Utwórz trwały tunel:

    devtunnel create --allow-anonymous
    

    Polecenie zwraca identyfikator tunelu. Zachowaj ten identyfikator do późniejszego użycia.

  3. Skonfiguruj port tunelu:

    Ustaw port używany przez serwer agenta (zazwyczaj 3978):

    devtunnel port create <tunnel-id> -p <port-number>
    
  4. Uruchom tunel:

    devtunnel host <tunnel-id>
    

    Polecenie wyświetla URL tunelu (na przykład https://abc123xyz.devtunnels.ms:3978). Skopiuj ten adres URL do następnego kroku.

Wskazówka

Użyj devtunnel list, aby wyświetlić wszystkie tunele, oraz devtunnel delete <tunnel-id>, aby usunąć tunele, których już nie potrzebujesz.

Skonfiguruj punkt końcowy komunikacji agenta

Zarejestruj swój adres URL tunelu dev (na przykład https://abc123xyz.devtunnels.ms:3978/api/messages) jako punkt końcowy wiadomości agentów, aby Microsoft 365 wiedział, gdzie ma przesyłać wiadomości. Nie zapomnij o przyrostku /api/messages do punktu końcowego.

Zobacz temat Ustaw punkt końcowy komunikacji agenta

Przetestuj w Microsoft 365

Gdy tunel dev jest aktywny, a punkt końcowy zarejestrowany, przetestuj swojego agenta w aplikacjach Microsoft 365.

Testuj w aplikacji Microsoft Teams

  1. Uruchom lokalnego agenta, korzystając z instrukcji w Zainstaluj zależności i uruchom serwer aplikacji agenta.

  2. Sprawdź łączność tunelu:

    devtunnel list
    

    Sprawdź, czy tunel wyświetla aktywne połączenia hosta. Kolumna „Połączenia hosta” powinna wyświetlać liczbę większą niż 0.

  3. Wejdź w interakcję ze swoim agentem w Teams:

    • Otwórz Microsoft Teams (w wersji webowej lub stacjonarnej)
    • W pasku wyszukiwania Teams wyszukaj swojego agenta po nazwie lub adresie e-mail
    • Rozpocznij rozmowę z agentem
    • Wyślij wiadomość i sprawdź odpowiedź
    • Sprawdź lokalną konsolę pod kątem nadchodzących zapytań i aktywności agenta

Testu powiadomienia e-mail

Jeśli agent jest skonfigurowany do powiadomień e-mail:

  1. Wyślij wiadomość e-mail na adres agenta
  2. Dodaj agenta w kopii do wątku e-mail
  3. Monitoruj lokalną konsolę pod kątem webhook powiadomień
  4. Zweryfikuj, czy agent przetwarza i odpowiada na e-mail

Testu integrację Word

Dla agentów obsługujących komentarze w Word:

  1. Otwórz dokument Word, do którego agent ma dostęp.
  2. Dodaj komentarz, w którym oznaczasz swojego agenta.
  3. Sprawdź powiadomienie w swojej lokalnej konsoli.
  4. Sprawdź, czy odpowiedź agenta pojawia się w Word.

Monitoruj aktywność tunelu

Tunele dev umożliwiają inspekcję ruchu w celu debugowania problemów z połączeniami i analizy przepływu żądań:

devtunnel show <tunnel-id>

To polecenie wyświetla:

  • Aktywne połączenia i szczegóły sesji.
  • Informacje o żądaniach i odpowiedziach.
  • Statystyki dotyczące natężenia ruchu.
  • Błędy i ostrzeżenia połączenia.

Możesz też monitorować aktywność tunelu w czasie rzeczywistym, obserwując wyjście polecenia devtunnel host.

Utrzymuj połączenia tunelowe

Tunele dev wymagają, aby proces devtunnel host pozostawał uruchomiony. Jeśli brak aktywności, problemy z siecią lub przejście komputera w stan uśpienia spowodują przerwanie połączenia, musisz je ponownie uruchomić.

Sprawdź stan tunelu

Sprawdź, czy tunel jest aktywny:

devtunnel list

Wyjście wyświetla:

  • Identyfikator tunelu: identyfikator tunelu
  • Połączenia hosta: Liczba aktywnych połączeń (powinno być jedno lub więcej, gdy devtunnel host jest uruchomiony)
  • Porty: Skonfigurowane porty
  • Wygaśnięcie: Czas wygaśnięcia tunelu

Jeśli Połączenia hosta pokazuje 0, tunel istnieje, ale nie jest obecnie hostowany.

Uruchom ponownie rozłączony tunel

Jeśli połączenie tunelowe się zerwie, uruchom je ponownie, używając tego samego identyfikatora tunelu:

devtunnel host <tunnel-id>

Adres URL tunelu pozostaje bez zmian, więc nie musisz aktualizować konfiguracji punktu końcowego wiadomości agenta.

Utrzymuj tunele aktywne podczas prac rozwojowych

Aby utrzymać stabilne połączenia:

  • Pozostaw otwarte okno terminala – Nie zamykaj działającego terminala devtunnel host.
  • Zapobiegaj usypianiu komputera – Ustaw, aby komputer nie przechodził w tryb uśpienia podczas sesji testowych.
  • Monitoruj błędy połączenia – Monitoruj wyjście terminala devtunnel host w celu wykrycia komunikatów o rozłączeniu.
  • Restartuj po zmianie sieci – Jeśli zmienisz sieć lub ponownie połączysz się z VPN, zrestartuj tunel.

Wskazówka

Jeśli tunel często się rozłącza, sprawdź ustawienia sieci i reguły zapory, aby upewnić się, że nie blokują połączenia.

Oczyszczanie

Po zakończeniu testów z tunelami dev:

Zatrzymaj tunel

Naciśnij Ctrl+C w terminalu, w którym działa devtunnel host, aby zatrzymać tunel.

To polecenie usuwa adres URL tunelu dev z punktu końcowego wiadomości agenta. Podczas wdrażania do produkcji ustaw adres URL punktu końcowego hostowanego w chmurze.

Notatka

Tunel pozostaje dostępny do przyszłego użytku, dopóki nie usuniesz go ręcznie, używając devtunnel delete <tunnel-id>.

Ograniczenia

Weź pod uwagę te ograniczenia podczas testów z tuneli dev:

  • Tylko do celów deweloperskich: Używaj tuneli dev do rozwoju i testowania, nie w środowisku produkcyjnym.
  • Wydajność: Spodziewaj się wyższych opóźnień w porównaniu z agentami hostowanymi w chmurze ze względu na routing sieciowy.
  • Stabilność połączenia: Połączenia tunelowe mogą czasem się zerwać i wymagać ręcznego ponownego uruchomienia.
  • Kwestie bezpieczeństwa: Flaga --allow-anonymous jest wygodna do testowania, ale nie używaj jej z danymi poufnymi.
  • Zarządzanie sesją: Może być konieczne okresowe ponowne uwierzytelnianie w zależności od długości sesji.

Następne kroki

Po pomyślnych testach tuneli dev:

Rozwiązywanie problemów

Jeśli napotykasz problemy podczas testowania za pomocą tuneli dev, zacznij tutaj, aby znaleźć typowe rozwiązania problemów z tunelem, łącznością i punktami końcowymi. W przypadku bardziej ogólnych problemów z Agent 365 (konfiguracja, uwierzytelnianie i obsługa wiadomości), zobacz Rozwiązywanie problemów.

Błąd połączenia tunelu

Objawy: Tunel dev nie uruchamia się lub natychmiast się rozłącza.

Rozwiązania:

  • Sprawdź, czy użytkownik jest zalogowany: devtunnel user login
  • Sprawdź, czy inny proces korzysta z tego samego portu
  • Upewnij się, że zapora sieciowa pozwala na połączenia tunelu dev
  • Usuń i utwórz tunel na nowo: devtunnel delete <tunnel-id> a potem stwórz nowy

Wiadomości nie docierają do lokalnego agenta

Objawy: Microsoft 365 wskazuje, że wiadomość została wysłana, ale lokalny agent jej nie otrzymuje.

Rozwiązania:

  • Upewnij się, że agent działa lokalnie
  • Zweryfikuj, czy tunel jest aktywny: devtunnel list powinien wyświetlać stan „Połączone”
  • Sprawdź konfigurację punktu końcowego w a365.config.json i upewnij się, że adres URL tunel dev jest ustawiony jako punkt końcowy wiadomości
  • Sprawdź dzienniki tuneli dev w terminalu uruchomionym za pomocą devtunnel host pod kątem błędów połączenia
  • Upewnij się, że lokalny port jest zgodny z portem tunelu (oba powinny domyślnie mieć wartość 3978)

Błędy uwierzytelniania przez tunel dev

Objawy: błędy 401 lub 403 podczas testowania przez tunel dev.

Rozwiązania:

  • Upewnij się, że uwierzytelnianie agenta jest skonfigurowane (uwierzytelnianie za pomocą tokena typu elementu nośnego nie działa z tunelami dev przy integracji z Microsoft 365).
  • Sprawdź dane uwierzytelniające konspektu agenta w a365.generated.config.json.
  • Potwierdź, że agent ma wymagane uprawnienia do testowanych operacji.
  • Upewnij się, że tokeny uwierzytelniające nie wygasły.

Zmieniony lub wygasły URL tunelu

Objawy: Wcześniej działający URL tunelu nie wykonuje już routing do agenta.

Rozwiązania:

  • Sprawdź stan tunelu, używając devtunnel list.
  • Zrestartuj tunel, używając devtunnel host <tunnel-id>.
  • Zaktualizuj punkt końcowy komunikacji, jeśli adres URL się zmienił, używając a365 setup blueprint --endpoint-only.