Sdílet prostřednictvím


Nejčastější dotazy k bot Frameworku

Tento článek odpovídá na nejčastější dotazy.

PLATÍ PRO: SDK v4

Proč aktivita psaní nic nedělá?

Některé kanály nepodporují přechodné aktualizace psaní v klientovi.

Jaký je rozdíl mezi knihovnou Připojení or a knihovnou Builderu v sadě SDK?

Knihovna Připojení or je expozice rozhraní REST API. Knihovna Builderu přidá programovací model konverzačních dialogových oken a další funkce, jako jsou výzvy, vodopády, řetězy a dokončování formulářů s asistencí. Knihovna Builderu také poskytuje přístup ke službám Azure AI, jako je porozumění přirozenému jazyku.

Jak se uživatelské zprávy vztahují k voláním metody HTTPS?

Když uživatel odešle zprávu přes kanál, webová služba Bot Framework vydá do koncového bodu webové služby robota protokol HTTPS POST. Robot může uživateli v daném kanálu odeslat nulu, jednu nebo mnoho zpráv tak, že pro každou zprávu, kterou odesílá, odešle do služby Bot Framework samostatný protokol HTTPS POST.

Jaký je rozdíl mezi "proaktivní" a "reaktivní"?

Z pohledu robota "reaktivní" znamená, že uživatel zahájí konverzaci odesláním zprávy robotovi a robot reaguje na tuto zprávu. Naproti tomu "proaktivní" znamená, že robot zahájí konverzaci odesláním první zprávy uživateli. Robot může například odeslat proaktivní zprávu, která uživatele upozorní, když vyprší platnost časovače nebo dojde k události.

Jak můžu uživateli posílat proaktivní zprávy?

Příklady, které ukazují, jak odesílat proaktivní zprávy, najdete v ukázkách C# V4 a ukázkách Node.js v úložišti BotBuilder-Samples na GitHubu.

Co je ETag? Jak souvisí s úložištěm datové tašky robota?

ETag je mechanismus pro řízení optimistické souběžnosti. Úložiště datové tašky robota používá značky ETag k zabránění konfliktních aktualizací dat. Chyba značky ETag se stavovým kódem HTTP 412 "Předběžná podmínka se nezdařila" označuje, že před dokončením první operace robota bylo přijato více zpráv paralelně. Zásobník a stav dialogového okna jsou uložené v datových taškách robota. Pokud robot stále zpracovává předchozí zprávu, když obdrží novou zprávu pro danou konverzaci, může se například zobrazit chyba ETag "Předběžná podmínka se nezdařila".

Co je omezování rychlosti?

Služba Bot Framework musí chránit sama sebe a své zákazníky před zneužívajícími vzory volání (například útokem na dostupnost služby), aby žádný jednotlivý robot mohl nepříznivě ovlivnit výkon jiných robotů. Abychom tohoto typu ochrany dosáhli, přidali jsme do koncových bodů limity rychlosti (označované také jako omezování). Vynucením limitu rychlosti můžeme omezit frekvenci, s jakou může klient nebo robot provádět konkrétní volání. Například: pokud by robot chtěl publikovat velký počet aktivit, musel by je během časového období uvolnit. Účelem omezování rychlosti není limit celkového objemu robota. Je navržená tak, aby zabránila zneužití konverzační infrastruktury, která nedodržuje vzory lidské konverzace. Například zaplavení dvou konverzací s větším obsahem než dva lidé by mohli někdy využívat.

Jaké jsou limity četnosti?

Neustále dolaďujeme limity rychlosti, aby byly co nejlínější a současně chránily naše služby a naše uživatele. Vzhledem k tomu, že prahové hodnoty se občas změní, nepublikujeme v tuto chvíli čísla. A konečně, pokud hostujete robota ve službě App Service, je robot vázán na omezení služby App Service. Další informace najdete v souhrnu smluv SLA pro služby Azure, pokud máte vliv na omezování rychlosti, neváhejte nás kontaktovat na adrese bf-reports@microsoft.com.

Jaký je limit velikosti souboru přenášeného pomocí kanálů?

Některé kanály mají omezení velikosti nebo typu souborů, které je možné odeslat. Například datové části aktivity Direct Line i Facebook omezují na 262 144 bajtů, zatímco bot Framework Emulator nemá žádný limit. Tyto limity jsou vynucovány kanálem. Pokud odešlete zprávu, která tento limit překročí, může se zobrazit chyba, například: Délka obsahu požadavku překročila limit 262 144 bajtů. Jako přílohu v internetu ale můžete k prostředku poskytnout odkaz. Další informace o odesílání příloh najdete v článku o tom, jak přidat multimédia do zpráv.

Jak poznám, jestli mám vliv na omezování rychlosti?

Je nepravděpodobné, že se setkáte s omezováním rychlosti, a to i při vysokém objemu. K většině omezování rychlosti dochází pouze kvůli hromadnému odesílání aktivit (z robota nebo z klienta), extrémnímu zátěžovém testování nebo chybě. Když dojde k omezení požadavku, vrátí se odpověď HTTP 429 (Příliš mnoho požadavků) spolu s hlavičkou Opakování po označující dobu (v sekundách), po které se má počkat, než se požadavek zopakuje. Tyto informace můžete shromažďovat povolením analýz robota prostřednictvím Aplikace Azure Přehledy. Nebo můžete do robota přidat kód pro protokolování zpráv.

Jak dochází k omezování rychlosti?

Omezování rychlosti je způsobeno některou z následujících podmínek:

  • Robot odesílá zprávy příliš často.
  • Klient robota odesílá zprávy příliš často.
  • Klienti Direct Line příliš často požadují nový webový soket.

Jak implementovat lidské předání?

Někdy je potřeba převést (předání) konverzace z robota na člověka, například když robot nerozumí uživateli nebo žádost nemůže být automatizovaná. V těchto případech robot poskytuje přechod na lidi. Sada SDK služby Bot Framework podporuje předání člověku. Existuje několik typů událostí pro signalizační operace předání. Tyto události se vyměňují mezi robotem a centrem agenta, označovaným také jako centrum zapojení. Toto centrum agentů je definováno jako aplikace nebo systém, který umožňuje agentům, obvykle lidem, přijímat a zpracovávat žádosti od uživatelů a žádosti o eskalaci od robotů. Podrobné informace najdete v článku Převod konverzací z robota na člověka .