Trigger API

Pro vyvolání určitého dialogu pro vybraného uživatele ve virtuálním asistentovi iniciované externím systémem je možné využít Trigger API.

Každý bot běží na své doméně (většinou ve formátu  https://feedbot-${BOT_ID}.azurewebsites.net) a je chráněn klíčem buď v  ?code=... URL query parametru nebo x-functions-key: ... HTTP hlavičce.

POST /api/management/trigger/${ADDRESS_JSON_AS_BASE64}/${DIALOG_ID}/${MODE?}

  • parametry volání jsou:
    • adresa uživatele (objekt s propertami bot, user, channelId a conversation?) ve formátu JSON řetezce zakódovaného pomocí BASE64
    • ID dialogu, který se má spustit
    • volitelně mód spuštění, aktuálně podporovaný jen "clear", který nejprve smaže pozici uživatele ve stromu a pak teprve spustí dialog
  • v těle požadavku může být JSON objekt s dodatečnými informacemi, které se uloží do dat uživatele
  • reakci na ni je potřeba předem definovat v Designeru, kde je možné případně pomocí proměnných využít dodatečné informace
Příklad použití
  • uživatel si zažádá o převod kreditů na své věrnostní kartě na účet, přičemž tato operace může trvat několik minut
  • virtuální asistent pomocí integračního kroku zavolá systém zákazníka vč. předání ID uživatele pro zahájení převodu
  • uživatele informuje, že převod započal + spustí timeout na 10 min, který by uživatele informoval, že převod se nepovedlo dokončit v případě, že ze systému nepřijde do té doby odpověď
  • pokud se převod povedl, systém zavolá na botovi Trigger API POST /api/trigger/5ca39df/transfer-complete?code=... s detaily transakce jako JSON tělem požadavku, což spustí dialog, který potvrdí uživateli že se vše povedlo a  zobrazí detaily transakce
  • pokud se převod nepovedl, systém zavolá na botovi Trigger API POST /api/trigger/5ca39df/transfer-error?code=... a virtuální asistent na to zareaguje chybovou zprávou s instrukcemi jak pokračovat dále