Megosztás a következőn keresztül:


A Microsoft Teams robotok működése

A KÖVETKEZŐKRE VONATKOZIK: SDK v4

Ez a cikk a robotok működéséről és az eseményvezérelt beszélgetésekről tanultakra épül; a folytatás előtt ismernie kell ezeket a cikkeket.

A Microsoft Teamshez kifejlesztett robotok elsődleges különbsége a tevékenységek kezelése. A Teams tevékenységkezelője a tevékenységkezelőből származik, és az általánosabb tevékenységtípusok feldolgozása előtt feldolgozza a Teams-specifikus tevékenységtípusokat.

Feljegyzés

A Bot Framework JavaScript, C# és Python SDK-k továbbra is támogatottak lesznek, a Java SDK-t azonban 2023 novemberében végső hosszú távú támogatással kivonják.

A Java SDK-val létrehozott meglévő robotok továbbra is működni fognak.

Az új robotépítéshez fontolja meg a Microsoft Copilot Studio használatát, és olvassa el a megfelelő copilot-megoldás kiválasztását.

További információ: A robotépítés jövője.

Teams-tevékenységkezelő

Ha robotot szeretne létrehozni a Teamshez, származtathatja a robotot a Teams tevékenységkezelő osztályából. Amikor egy ilyen robot kap egy tevékenységet, különböző tevékenységkezelőken keresztül irányítja át a tevékenységet. A kezdeti alapkezelő a turn handler, és a tevékenység típusától függően egy kezelőhöz irányítja a tevékenységet. A turn handler meghívja azt a kezelőt, amely a fogadott tevékenység adott típusának kezelésére lett kialakítva. A Teams tevékenységkezelő osztálya a tevékenységkezelő osztályból származik. A tevékenységkezelő által feldolgozható tevékenységtípusok mellett a Teams tevékenységkezelő osztálya további kezelőket is tartalmaz a Teams-specifikus tevékenységekhez.

A Teams tevékenységkezelőből származó robot hasonlít egy olyan robotra, amely közvetlenül a tevékenységkezelő osztályból származik. A Teams azonban további információkat tartalmaz a tevékenységekről conversationUpdate , és Teams-specifikus invoke és event tevékenységeket küld.

Amikor a Teams tevékenységkezelő robotja üzenettevékenységet kap, a turn handler a bejövő üzenettevékenységet a kezelőjéhez OnMessageActivityAsync irányítja, hasonlóan ahhoz, ahogyan egy tevékenységkezelő-alapú robot tenné. Amikor azonban a Teams-robot beszélgetésfrissítési tevékenységet kap, a OnConversationUpdateActivityAsync kezelő Teams-verziója feldolgozza a tevékenységet.

A Teams-specifikus tevékenységkezelők többsége nem rendelkezik alapszintű implementációval. Felül kell bírálnia ezeket a kezelőket, és meg kell adnia a robot számára megfelelő logikát.

Az eseményvezérelt beszélgetések tevékenységkezelő szakaszában ismertetett tevékenységkezelők mindegyike tevékenységkezelő cikk használatával továbbra is ugyanúgy működik, mint egy nem Teams-robottal, kivéve a hozzáadott és eltávolított tevékenységek kezelését. Ezek a tevékenységek a csapat kontextusában eltérőek lesznek, ahol az új tagot a rendszer hozzáadja a csapathoz az üzenetszál helyett. További információ: Teams beszélgetésfrissítési tevékenységek.

A Teams-specifikus tevékenységkezelők logikájának implementálásához felül kell bírálnia a robot metódusait.

Teams-bot logika

A robotlogika feldolgozza a bejövő tevékenységeket egy vagy több robotcsatornából, és válaszként kimenő tevékenységeket hoz létre. Ez továbbra is igaz a Teams tevékenységkezelő osztályából származó robotra, amely először ellenőrzi a Teams-tevékenységeket, majd átadja az összes többi tevékenységet a Bot Framework tevékenységkezelőjének.

A Teams telepítési frissítési tevékenységei

Adjon hozzá egy kezelőt a telepítési frissítési eseményhez, hogy a robot:

  • Bevezető üzenet küldése, ha egy beszélgetési szálra van telepítve.
  • A felhasználói és a száladatok törlése a szálból való eltávolításkor.

További információkért tekintse meg a Telepítési frissítés eseményt a Teams dokumentációjában.

Teams-beszélgetések frissítési tevékenységei

Az alábbi táblázat azokat a Teams-eseményeket sorolja fel, amelyek beszélgetésfrissítési tevékenységet hoznak létre egy robotban. A Microsoft Teams Beszélgetés frissítési eseményei című cikk ismerteti, hogyan használhatja ezeket az eseményeket.

Az alábbiakban látható a Teams tevékenységkezelő metódusából OnConversationUpdateActivityAsync meghívott összes Teams-tevékenységkezelő listája.

EventType Kezelő Feltétel A Teams dokumentációja
channelCreated OnTeamsChannelCreatedAsync Minden alkalommal elküldve, amikor új csatorna jön létre egy olyan csapatban, amelyben a robot telepítve van. A csatorna létrejött.
csatorna törölve OnTeamsChannelDeletedAsync Minden alkalommal elküldve, amikor töröl egy csatornát egy olyan csapatban, amelyben a robot telepítve van. Csatorna törölve.
channelRenamed OnTeamsChannelRenamedAsync Minden alkalommal elküldve, amikor egy csatornát átneveznek egy olyan csapatban, amelyben a robot telepítve van. A csatorna átnevezve.
channelRestored OnTeamsChannelRestoredAsync Minden alkalommal elküldve, amikor egy korábban törölt csatornát visszaállítanak egy olyan csapatban, amelyben a robot már telepítve van. A csatorna visszaállítva.
membersAdded OnTeamsMembersAddedAsync Alapértelmezés szerint meghívja a metódust ActivityHandler.OnMembersAddedAsync . A robot első alkalommal kerül beszélgetésbe, és minden alkalommal, amikor új felhasználót ad hozzá egy csapathoz vagy csoportos csevegéshez, amelyben a robot telepítve van. A csapattagok hozzáadva.
membersRemoved OnTeamsMembersRemovedAsync Alapértelmezés szerint meghívja a metódust ActivityHandler.OnMembersRemovedAsync . Akkor küldi el, ha a robotot eltávolítják egy csapatból, és minden alkalommal, amikor a felhasználót eltávolítják egy olyan csapatból, amelynek a robot tagja. A csapattagok el lettek távolítva.
teamArchived OnTeamsTeamArchivedAsync A robotot telepített csapat archiválásakor küldi el a rendszer. A csapat archiválva.
csapat törölve OnTeamsTeamDeletedAsync Akkor küldi el, amikor a robotot a program törölte. Csapat törölve.
teamRenamed OnTeamsTeamRenamedAsync Akkor küldi el, amikor a robotot átnevezték. A csapat átnevezve.
teamRestored OnTeamsTeamRestoredAsync Egy korábban törölt csapat visszaállításakor küldi el a robot. A csapat visszaállítva.
teamUnarchived OnTeamsTeamUnarchivedAsync A robot telepítésekor küldött csapat nem lesz archiválva. A csapat nemarchivált.

Teams-eseménytevékenységek

Az alábbi táblázat felsorolja a Teams-specifikus eseménytevékenységeket, amelyeket a Teams egy robotnak küld. A felsorolt eseménytevékenységek a Teams beszélgetési robotjaihoz tartoznak.

Ezek a Teams-specifikus eseménytevékenység-kezelők, amelyeket a OnEventActivityAsync Teams tevékenységkezelője hív meg.

Eseménytípusok Kezelő Leírás
application/vnd.microsoft.meetingEnd OnTeamsMeetingEndAsync A robot egy most véget ért értekezlethez van társítva.
application/vnd.microsoft.meetingStart OnTeamsMeetingStartAsync A robot egy éppen megkezdett értekezlethez van társítva.

Teams-meghívási tevékenységek

Az alábbi táblázat felsorolja a Teams-specifikus meghívási tevékenységeket, amelyeket a Teams egy robotnak küld. A felsorolt meghívási tevékenységek a Teams beszélgetési robotjaihoz tartoznak. A Bot Framework SDK az üzenetküldési bővítményekre vonatkozó meghívásokat is támogatja. További információ: Teams What are messaging extensions article.

Feljegyzés

A Microsoft Teams platform dokumentációja és a Teams JavaScript ügyféloldali kódtára (TeamsJS) modális párbeszédpanelként hivatkozik a feladatmodulokra. További információt a Párbeszédpanelek című témakörben talál.

Az alábbi lista a Teams tevékenységkezelője által OnInvokeActivityAsync hívott Teams-tevékenységkezelők listáját tartalmazza:

Meghívási típusok Kezelő Leírás
actionableMessage/executeAction OnTeamsO365ConnectorCardActionAsync Teams O365-összekötőkártya művelete.
CardAction.Invoke OnTeamsCardActionInvokeAsync Teams-kártyaművelet meghívása.
fileConsent/invoke OnTeamsFileConsentAcceptAsync A Teams fájl hozzájárulásának elfogadása.
fileConsent/invoke OnTeamsFileConsentAsync Teams-fájl hozzájárulása.
fileConsent/invoke OnTeamsFileConsentDeclineAsync Teams-fájl hozzájárulása.
signin/verifyState OnTeamsSigninVerifyStateAsync A Teams bejelentkezik az Állapot ellenőrzése szolgáltatásba.
feladat/beolvasás OnTeamsTaskModuleFetchAsync Teams-feladatmodul beolvasása.
feladat/küldés OnTeamsTaskModuleSubmitAsync Teams-feladatmodul beküldése.

Következő lépések

A Teams-robotok létrehozásához tekintse meg a Microsoft Teams fejlesztői dokumentációját.