Udostępnij za pośrednictwem


Jak działają boty usługi Microsoft Teams

DOTYCZY: ZESTAW SDK w wersji 4

W tym artykule omówiono informacje przedstawione w temacie Jak działają boty i konwersacje oparte na zdarzeniach. Przed kontynuowaniem należy zapoznać się z tymi artykułami.

Podstawową różnicą w botach opracowanych dla usługi Microsoft Teams jest sposób obsługi działań. Procedura obsługi działań usługi Teams pochodzi z programu obsługi działań i przetwarza typy działań specyficznych dla usługi Teams przed przetworzeniem bardziej ogólnych typów działań.

Uwaga

Zestawy SDK języka JavaScript, C# i Python platformy Bot Framework będą nadal obsługiwane, jednak zestaw SDK języka Java jest wycofywany z ostatecznym długoterminowym wsparciem kończącym się w listopadzie 2023 r.

Istniejące boty utworzone za pomocą zestawu JAVA SDK będą nadal działać.

W przypadku tworzenia nowego bota rozważ użycie agentów usługi Power Virtual Agents i przeczytaj o wyborze odpowiedniego rozwiązania czatbota.

Aby uzyskać więcej informacji, zobacz Przyszłość tworzenia botów.

Procedura obsługi działań usługi Teams

Aby utworzyć bota dla usługi Teams, utwórz bota z klasy obsługi działań usługi Teams. Gdy taki bot odbiera działanie, kieruje działanie za pośrednictwem różnych procedur obsługi działań. Początkowa, podstawowa procedura obsługi jest procedurą obsługi kolei i kieruje działanie do programu obsługi na podstawie typu działania. Procedura obsługi kolei wywołuje procedurę obsługi , która jest przeznaczona do obsługi określonego typu odebranego działania. Klasa obsługi działań usługi Teams pochodzi z klasy obsługi działań. Oprócz typów działań, które program obsługi działań może przetworzyć, klasa obsługi działań usługi Teams zawiera dodatkowe procedury obsługi dla działań specyficznych dla usługi Teams.

Bot pochodzący z programu obsługi działań usługi Teams jest podobny do bota, który pochodzi bezpośrednio z klasy obsługi działań. Jednak usługa Teams zawiera dodatkowe informacje dotyczące conversationUpdate działań i wysyła działania specyficzne dla invoke usługi Teams.event

Gdy program obsługi działań usługi Teams odbiera działanie komunikatu, jego program obsługi kolei kieruje działanie komunikatów przychodzących do programu OnMessageActivityAsync obsługi, podobnie jak bot oparty na procedurze obsługi działań. Jednak gdy bot usługi Teams odbiera działanie aktualizacji konwersacji, wersja OnConversationUpdateActivityAsync programu obsługi usługi Teams przetwarza działanie.

Nie ma podstawowej implementacji dla większości procedur obsługi działań specyficznych dla usługi Teams. Należy zastąpić te programy obsługi i zapewnić odpowiednią logikę bota.

Wszystkie programy obsługi działań opisane w sekcji obsługi działań konwersacji sterowanych zdarzeniami przy użyciu procedury obsługi działań będą nadal działać tak samo jak w przypadku bota innego niż Teams, z wyjątkiem obsługi dodanych i usuniętych działań członków, te działania będą inne w kontekście zespołu, w którym nowy członek zostanie dodany do zespołu, w przeciwieństwie do wątku wiadomości. Aby uzyskać więcej informacji, zobacz Działania aktualizacji konwersacji w usłudze Teams.

Aby zaimplementować logikę dla tych procedur obsługi działań specyficznych dla usługi Teams, zastąpisz metody w botze.

Logika bota usługi Teams

Logika bota przetwarza przychodzące działania z co najmniej jednego kanału botów i generuje działania wychodzące w odpowiedzi. Jest to nadal prawdziwe w przypadku bota pochodzącego z klasy obsługi działań usługi Teams, która najpierw sprawdza działania usługi Teams, a następnie przekazuje wszystkie inne działania do programu obsługi działań platformy Bot Framework.

Działania aktualizacji instalacji usługi Teams

Dodaj procedurę obsługi zdarzenia aktualizacji instalacji , aby umożliwić botowi:

  • Wyślij komunikat wprowadzający po zainstalowaniu go w wątku konwersacji.
  • Wyczyść dane użytkownika i wątku po odinstalowaniu z wątku.

Aby uzyskać więcej informacji, zobacz Zdarzenie aktualizacji instalacji w dokumentacji usługi Teams.

Działania aktualizacji konwersacji w usłudze Teams

W poniższej tabeli wymieniono zdarzenia usługi Teams, które generują aktywność aktualizacji konwersacji w botze. W artykule zdarzeń aktualizacji konwersacji w usłudze Microsoft Teams opisano sposób używania każdego z tych zdarzeń.

Poniżej znajduje się lista wszystkich procedur obsługi działań usługi Teams wywoływanych z OnConversationUpdateActivityAsync metody programu obsługi działań usługi Teams .

EventType Program obsługi Stan Dokumentacja usługi Teams
channelCreated OnTeamsChannelCreatedAsync Wysyłane za każdym razem, gdy nowy kanał zostanie utworzony w zespole, w którym jest zainstalowany bot. Utworzony kanał.
channelDeleted OnTeamsChannelDeletedAsync Wysyłane za każdym razem, gdy kanał zostanie usunięty w zespole, w którym jest zainstalowany bot. Usunięto kanał.
channelRenamed OnTeamsChannelRenamedAsync Wysyłane za każdym razem, gdy nazwa kanału zostanie zmieniona w zespole, w którym jest zainstalowany bot. Zmieniono nazwę kanału.
channelRestored OnTeamsChannelRestoredAsync Wysyłane za każdym razem, gdy kanał, który został wcześniej usunięty, zostanie przywrócony w zespole, w którym jest już zainstalowany bot. Przywrócono kanał.
członkowieDodaj OnTeamsMembersAddedAsync Domyślnie wywołuje metodę ActivityHandler.OnMembersAddedAsync . Wysłane po raz pierwszy bot jest dodawany do konwersacji i za każdym razem, gdy nowy użytkownik zostanie dodany do zespołu lub czatu grupowego, w którym jest zainstalowany bot. Dodali członkowie zespołu.
elementy członkowskieUsuwane OnTeamsMembersRemovedAsync Domyślnie wywołuje metodę ActivityHandler.OnMembersRemovedAsync . Wysłane, jeśli bot zostanie usunięty z zespołu i za każdym razem, gdy każdy użytkownik zostanie usunięty z zespołu, do którego należy bot. Członkowie zespołu usunęli.
teamArchived OnTeamsTeamArchivedAsync Wysłane, gdy zespół, w którym jest zainstalowany bot, jest archiwizowany. Zarchiwizowane zespoły.
teamDeleted OnTeamsTeamDeletedAsync Wysłane, gdy zespół, w ramach którego znajduje się bot, został usunięty. Zespół został usunięty.
teamRenamed OnTeamsTeamRenamedAsync Wysłane, gdy zespół, w ramach którego znajduje się bot, został zmieniony. Zmieniono nazwę zespołu.
teamRestored OnTeamsTeamRestoredAsync Wysłane po przywróceniu wcześniej usuniętego zespołu bota. Zespół przywrócony.
teamUnarchived OnTeamsTeamUnarchivedAsync Wysłane, gdy zespół, w którym jest zainstalowany bot, jest niearchiwny. Zespół niearchiwowany.

Działania dotyczące zdarzeń usługi Teams

W poniższej tabeli wymieniono działania zdarzeń specyficzne dla aplikacji Teams wysyłane do bota. Wymienione działania zdarzeń dotyczą botów konwersacyjnych w usłudze Teams.

Są to programy obsługi zdarzeń specyficzne dla aplikacji Teams wywoływane z OnEventActivityAsyncprogramu obsługi działań usługi Teams .

Typy zdarzeń Program obsługi opis
application/vnd.microsoft.meetingEnd OnTeamsMeetingEndAsync Bot jest skojarzony ze spotkaniem, które właśnie zostało zakończone.
application/vnd.microsoft.meetingStart OnTeamsMeetingStartAsync Bot jest skojarzony ze spotkaniem, które właśnie zostało rozpoczęte.

Zespoły wywołują działania

W poniższej tabeli wymieniono działania wywoływane specyficzne dla usługi Teams wysyłane przez aplikację Teams do bota. Wymienione działania wywołania dotyczą botów konwersacyjnych w usłudze Teams. Zestaw SDK platformy Bot Framework obsługuje również wywołania specyficzne dla rozszerzeń obsługi komunikatów. Aby uzyskać więcej informacji, zobacz artykuł What are messaging extensions (Co to są rozszerzenia obsługi komunikatów w usłudze Teams).

Uwaga

Dokumentacja platformy Microsoft Teams i biblioteka klienta JavaScript usługi Teams (TeamsJS) odnoszą się do modułów zadań jako modalnych okien dialogowych. Aby uzyskać więcej informacji, zobacz Okna dialogowe .

Oto lista wszystkich procedur obsługi działań usługi Teams wywoływanych z OnInvokeActivityAsyncprogramu obsługi działań usługi Teams :

Wywoływanie typów Program obsługi opis
actionableMessage/executeAction OnTeamsO365ConnectorCardActionAsync Akcja karty usługi Teams O365 Połączenie or.
CardAction.Invoke OnTeamsCardActionInvokeAsync Wywołanie akcji karty usługi Teams.
fileConsent/invoke OnTeamsFileConsentAcceptAsync Zgoda na plik aplikacji Teams — zaakceptuj.
fileConsent/invoke OnTeamsFileConsentAsync Zgoda na plik aplikacji Teams.
fileConsent/invoke OnTeamsFileConsentDeclineAsync Zgoda na plik aplikacji Teams.
signin/verifyState OnTeamsSigninVerifyStateAsync Logowanie w usłudze Teams w stanie weryfikacji.
zadanie/pobieranie OnTeamsTaskModuleFetchAsync Pobieranie modułu zadań usługi Teams.
zadanie/przesyłanie OnTeamsTaskModuleSubmitAsync Przesyłanie modułu zadań usługi Teams.

Następne kroki

Aby tworzyć boty usługi Teams, zapoznaj się z dokumentacją dla deweloperów usługi Microsoft Teams.