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


Tudnivalók a készségfelhasználókról

A KÖVETKEZŐKRE VONATKOZIK: SDK v4

A készségfelhasználók olyan robotok, amelyek egy vagy több készséget hívhatnak meg. A készségek tekintetében a gyökérrobot egy felhasználó által használt robot, amely készségfelhasználó is.

A felhasználó szempontjából a gyökérrobot az a robot, amellyel kommunikál. A képesség szempontjából a képességfelhasználó az a csatorna, amelyen keresztül kommunikál a felhasználóval. (További információkért tekintse meg a készségek áttekintését.)

Készségfelhasználóként a gyökérrobot tartalmaz néhány további logikát a közötte és a képesség közötti forgalom kezelésére:

  • Konfigurációs információk minden olyan képességhez, amelyet a gyökér használ.
  • Egy beszélgetésazonosító-előállító , amely lehetővé teszi a gyökér számára, hogy oda-vissza váltson a felhasználóval folytatott beszélgetés és a hozzáértéssel folytatott beszélgetés között.
  • Képességügyfél, amely képes tevékenységeket csomagolni és továbbítani egy képességrobotnak.
  • Készségkezelő, amely képes fogadni a kérelmeket és kicsomagolni a tevékenységeket egy készségrobottól.

Készségek kezelése

A képességfelhasználó néhány kiegészítésével egyetlen képesség futtatásának megkezdését és a befejezésig való futtatását felügyeli. Összetettebb forgatókönyvek is lehetségesek, több szakértelemmel vagy beszélgetési szállal.

A készségfelhasználók legalább két HTTP-végpontot implementálnak:

  • Az üzenetkezelési végpont tevékenységeket fogad a felhasználótól vagy a csatornától. Ez az összes robot által implementálható szokásos üzenetkezelési végpont.
  • Képességgazdavégpont egy képességtől származó tevékenységek fogadásához. Ez visszahívási URL-címként működik, amely a szolgáltatás URL-címe, amelyre a képesség válaszol. (A képességfelhasználónak olyan kódot kell párosítania, amely egy képességkezelővel fogadja a HTTP-metódus kérését.)

Jártassági leírások

Minden képességhez adjon hozzá egy Bot Framework-képességobjektumot a képességfelhasználó konfigurációs fájljába. Mindegyiknek rendelkeznie kell egy azonosítóval, egy alkalmazásazonosítóval és egy végpontot a képességhez.

Property Leírás
Azonosító A képesség azonosítóját vagy kulcsát, amely a készségfelhasználóra vonatkozik.
Alkalmazásazonosító A appId roboterőforráshoz rendelt, amikor a képesség regisztrálva lett az Azure-ban.
Képességvégpont A képesség üzenetkezelési végpontja. Ez az AZ URL-cím, amellyel a fogyasztó kommunikálni fog a szakértelemmel.

Skill client and skill handler

A készségfelhasználó egy képességügyfél használatával küld tevékenységeket egy képességnek. Az ügyfél:

  • Egy felhasználótól vagy a fogyasztó által generált tevékenységtől küld el egy tevékenységet a képességnek.
  • Beállítja a szolgáltatás URL-címét a képességnek a fogyasztó képességgazdavégpontjára küldött tevékenységen.
  • Az eredeti beszélgetési referenciát lecseréli egy fogyasztó-készség beszélgetésre.
  • Bot-to-bot hitelesítési jogkivonatot ad hozzá.
  • Elküldi a frissített tevékenységet a képességnek.

A készségfelhasználó egy képességkezelővel fogad tevékenységeket egy képességből. A kezelő:

  • Kezeli a csatornaszolgáltatás REST API-metódusait.
  • Érvényesíti a hitelesítést és a jogcímek érvényesítését.
  • Lekéri az eredeti beszélgetési hivatkozást.
  • Létrehoz egy tevékenységet a fogyasztó adapteréhez. Ez a tevékenység vagy azt jelzi, hogy a képesség befejeződött, vagy a felhasználónak továbbítandó tevékenység.

Képesség kezelése közvetlenül

Az aktív készségek nyomon követéséhez logikát kell hozzáadnia a készségfelhasználóhoz. A fogyasztón múlik, hogy hogyan kezeli a készségeket általában, hogy képes-e párhuzamosan több aktív készséget fenntartani, vagy sem, és így tovább. A megfontolandó konkrét forgatókönyvek a következők:

  • Új fogyasztói-ügyességi beszélgetés kezdeményezése. (Ez egy adott felhasználói beszélgetéshez lesz társítva.)
    • Ha paramétereket szeretne átadni egy képességnek, állítsa be a kezdeti tevékenység értéktulajdonságát a képességnek.
  • Egy meglévő fogyasztói-képességi beszélgetés folytatása.
  • Egy tevékenység felismerése endOfConversation a képességből egy fogyasztói-készséges beszélgetés végének jelzéseként.
    • Ha bármilyen visszatérési értéket szeretne lekérni egy képességből, ellenőrizze a tevékenység értéktulajdonságát.
    • Annak ellenőrzéséhez, hogy a képesség miért fejeződik be, ellenőrizze a tevékenység kódparaméterét, amely azt jelezheti, hogy a képesség hibát észlelt.
  • A képesség lemondása a fogyasztótól egy tevékenységnek a képességnek való elküldésével endOfConversation .

Megtudhatja, hogyan valósíthat meg készségfelhasználót egy olyan fogyasztó számára, aki közvetlenül kezel egy képességet.

Képesség kezelése készség párbeszédpanel használatával

Ha a párbeszédpanel-kódtárat használja, egy készség párbeszédpanel használatával kezelheti a készséget. Bár a készség párbeszédpanel az aktív párbeszédpanel, a tevékenységek továbbítva lesznek a társított képességnek.

  • A készség párbeszédpanel létrehozásakor a párbeszédpanel beállításai paraméter használatával adja meg a képesség kezeléséhez szükséges összes információt, például a fogyasztó alkalmazásazonosítóját és visszahívási URL-címét, a használni kívánt beszélgetésazonosító-előállítót, a képesség tulajdonságait stb.
    • Ha egynél több készséget szeretne párbeszédpanelként kezelni, minden egyes képességhez külön készségpanelt kell létrehoznia.
    • Gyakran hozzáadja a készség párbeszédpanelt egy összetevő párbeszédpanelhez.
  • A készség párbeszédpanel elindításához használja a párbeszédpanel környezetének kezdő metódusát, és adja meg a készség párbeszédpanel azonosítóját. A beállításparaméter használatával adja meg azt a tevékenységet, amelyet a fogyasztó első tevékenységként küld el a képességnek.
  • A készség párbeszédpanelt ugyanúgy megszakíthatja vagy megszakíthatja, mint bármely más párbeszédpanelt. Példa a felhasználói megszakítások kezelésére.

Megtudhatja, hogyan használhat fel egy párbeszédpanelt egy olyan fogyasztó készségeinek felhasználásához, amely egy készség kezeléséhez párbeszédpanelt használ.

A várt válaszok kézbesítési módjának használata

A robotok és a készségek az iparági szabványnak megfelelő REST és JSON protokollt használják HTTPS-en keresztül a kommunikációhoz. A normál tevékenységfeldolgozási folyamat akkor indul el, amikor a gyökérrobot egy bejegyzést kap egy csatornától az üzenetkezelési végponton. A gyökérrobot ezután elküldi a tevékenységet a feldolgozási képességnek. A képesség válaszait a rendszer a gyökérrobot képességgazda végpontjára küldi vissza, nem pedig az üzenetkezelési végpontjára. Végül a válaszokat tovább dolgozza fel, vagy a gyökérrobot visszaküldi a csatornára. Ez a normál folyamat a képességnek küldött tevékenység kézbesítési módjának módosításával módosítható. Ha a kézbesítési mód "ExpectReplies" értékre van állítva, a képesség nem kerül vissza a képességgazda végpontja felé. Ehelyett minden választevékenység szerializálva lesz a válasz törzsébe. A gyökérrobot ezután iterálja ezeket a tevékenységeket, és ugyanúgy dolgozza fel őket, mint ahogyan a képességgazda végpontja feldolgozta volna őket.

További információkért tekintse meg a Szállítási módot a Tevékenység specifikációjában.