{"id":149,"date":"2020-11-06T15:07:49","date_gmt":"2020-11-06T15:07:49","guid":{"rendered":"https:\/\/docs.tellya.ai\/?post_type=ht_kb&#038;p=149"},"modified":"2022-03-14T10:00:21","modified_gmt":"2022-03-14T10:00:21","slug":"design-overview","status":"publish","type":"ht_kb","link":"https:\/\/docs.tellya.ai\/index.php\/knowledge-base\/design-overview\/","title":{"rendered":"Process flows overview"},"content":{"rendered":"\n<p>La sezione Design consente di definire e personalizzare il comportamento dell\u2019agente virtuale, configurando le diverse tipologie di servizi e tecnologie da integrare all\u2019interno del flusso di processo che parte dalla richiesta, testuale o vocale, dell\u2019utente finale e si conclude con la risposta fornita dall\u2019agente virtuale.<\/p>\n\n\n\n<p>Per rendere possibile ci\u00f2, viene messa a disposizione un\u2019area di lavoro in cui posizionare e configurare singoli componenti da integrare e alcune sezioni specifiche che permettono di attivare e personalizzare comportamenti a livello di singoli intenti.<\/p>\n\n\n\n<p>L\u2019area di lavoro della sezione Process Flows consente di definire i singoli step del processo di elaborazione della richiesta inviata dall\u2019utente finale all\u2019agente virtuale, posizionare singoli elementi atomici, denominato connettori, i quali permettono di invocare specifici servizi, sistemi o tecnologie.<\/p>\n\n\n\n<p>Ogni flusso di elaborazione prende il nome di&nbsp;<em>journey<\/em>, a cui pu\u00f2 essere associata un singolo motore di NLU (es. Dialogflow) e un numero arbitrario di connettori che verranno processati nell\u2019ordine in cui vengono disposti all\u2019interno dell\u2019area di lavoro (dall\u2019alto verso il basso) ogni volta che l\u2019agente virtuale viene invocato.<\/p>\n\n\n\n<h3 id=\"come-creare-una-nuova-journey\">Come creare una nuova journey<\/h3>\n\n\n\n<p>Per definire una nuova journey \u00e8 necessario selezionare il bottone posto nella barra inferiore dell\u2019area di lavoro e specificare un nome che identifichi la journey stessa ed un\u2019eventuale descrizione.<\/p>\n\n\n\n<p>Inoltre \u00e8 necessario stabilire se tipologia di journey che si intende creare, abilitando o meno la configurazione come \u201cFulfillment Journey\u201d e se tale journey possa essere o meno invocata dall\u2019esterno (\u201cPublic\u201d).<\/p>\n\n\n\n<p>Una journey non \u201cPublic\u201d potr\u00e0 essere invocata e testata unicamente all\u2019interno della piattaforma Tellya (tale configurazione pu\u00f2 essere modificata anche in seguito).<\/p>\n\n\n\n<h4 id=\"htoc-creazione-di-una-fulfillment-journey\">Creazione di una Fulfillment Journey<\/h4>\n\n\n\n<p>In determinate progettualit\u00e0, Tellya non deve frapporsi tra il Front End ed il motore di NLU, ma bens\u00ec dovr\u00e0 posizionarsi e agire solo in seguito all\u2019interrogazione di tale motore. Sar\u00e0 quindi un sistema esterno ad invocare il motore di NLU, il quale a sua volta dovr\u00e0 invocare Tellya in modo da effettuare eventuali attivit\u00e0 di processing configurate all\u2019interno della journey.<\/p>\n\n\n\n<p>Per rendere possibile questo comportamento \u00e8 necessario creare una \u201cFulfillment Journey\u201d, abilitato tale opzione in fase di creazione di una &#8220;Standard Journey&#8221;.<\/p>\n\n\n\n<p class=\"wp-block-ht-blocks-messages wp-block-hb-message wp-block-hb-message--withicon is-style-alert\">Una \u201cStandard Journey\u201d non pu\u00f2 essere convertita in \u201cFulfillment Journey\u201d dopo la sua creazione e non \u00e8 neanche possibile il viceversa: \u00e8 necessario eliminare la journey e crearne una nuova.<\/p>\n\n\n\n<h4 id=\"htoc-configurazione-di-una-fulfillment-journey\">Configurazione di una Fulfillment Journey<\/h4>\n\n\n\n<p>Dopo aver creato una Fulfillment Journey \u00e8 necessario procedere alla sua configurazione selezionando l\u2019agente che invocher\u00e0 tale journey.<\/p>\n\n\n\n<p>Tale configurazione pu\u00f2 essere eseguita selezionando l\u2019alert che viene mostrato nella parte superiore dell\u2019area di lavoro (\u201cFulfillment Journey\u201d) quando in una Fulfillment Journey non \u00e8 stato ancora configurato un agente, oppure selezionando l\u2019icona dell\u2019ingranaggio posta in basso a destra e successivamente la sezione \u201cFulfillment\u201d della finestra visualizzata.<\/p>\n\n\n\n<p>In questa sezione si trovano l\u2019url da chiamare e l\u2019apiKey che vanno inseriti nell\u2019agente al momento della configurazione.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"527\" src=\"https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/journey-fulfillment-Tellya-1024x527.png\" alt=\"\" class=\"wp-image-972\" srcset=\"https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/journey-fulfillment-Tellya-1024x527.png 1024w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/journey-fulfillment-Tellya-300x154.png 300w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/journey-fulfillment-Tellya-768x395.png 768w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/journey-fulfillment-Tellya-50x26.png 50w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/journey-fulfillment-Tellya-1536x791.png 1536w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/journey-fulfillment-Tellya-60x31.png 60w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/journey-fulfillment-Tellya-100x51.png 100w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/journey-fulfillment-Tellya.png 1632w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-ht-blocks-messages wp-block-hb-message wp-block-hb-message--withicon is-style-info\">L\u2019agente associato ad una Fulfillment Journey pu\u00f2 essere modificato in qualasisi momento, scegliendo tra quelli previsti all\u2019interno del proprio account Tellya.<\/p>\n\n\n\n<h5 id=\"htoc-dialogflow-es\">Dialogflow ES<\/h5>\n\n\n\n<p>Se si utilizza Google Dialogflow ES come motore di NLU \u00e8 necessario accedere alla <a rel=\"noreferrer noopener\" href=\"https:\/\/dialogflow.cloud.google.com\/\" target=\"_blank\">console<\/a> e configurare nella sezione \u201cFulfillment\u201d le informazioni relative al Webhook, in particolare URL e l\u2019apiKey della journey che si desidera invocare.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"397\" src=\"https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/02\/fulfillment-journey-1024x397.jpg\" alt=\"\" class=\"wp-image-630\" srcset=\"https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/02\/fulfillment-journey-1024x397.jpg 1024w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/02\/fulfillment-journey-300x116.jpg 300w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/02\/fulfillment-journey-768x298.jpg 768w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/02\/fulfillment-journey-50x19.jpg 50w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/02\/fulfillment-journey-60x23.jpg 60w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/02\/fulfillment-journey-100x39.jpg 100w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/02\/fulfillment-journey.jpg 1525w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-ht-blocks-messages wp-block-hb-message wp-block-hb-message--withicon is-style-alert\">Nel caso in cui si utilizzino delle API Beta di DIalogflow bisogna disabilitarle per poter utilizzare la Fulfillment Journey. <\/p>\n\n\n\n<h5 id=\"htoc-dialogflow-cx\">Dialogflow CX<\/h5>\n\n\n\n<p>Se si utilizza Google Dialogflow CX come motore di NLU \u00e8 necessario accedere alla <a href=\"https:\/\/dialogflow.cloud.google.com\/cx\/\">console<\/a> e configurare nella sezione \u201cWebhooks\u201d le informazioni relative al Webhook, in particolare URL e l\u2019apiKey della journey che si desidera invocare.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"549\" src=\"https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/fulfillment-CX-1024x549.png\" alt=\"\" class=\"wp-image-973\" srcset=\"https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/fulfillment-CX-1024x549.png 1024w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/fulfillment-CX-300x161.png 300w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/fulfillment-CX-768x412.png 768w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/fulfillment-CX-50x27.png 50w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/fulfillment-CX-1536x823.png 1536w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/fulfillment-CX-2048x1097.png 2048w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/fulfillment-CX-60x32.png 60w, https:\/\/docs.tellya.ai\/wp-content\/uploads\/2021\/12\/fulfillment-CX-100x54.png 100w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Per entrambe le configurazioni si possono inserire come Headers opzionali:<\/p>\n\n\n\n<ul><li><strong>customResponse: <\/strong>di default impostato a False, che abilita l\u2019utilizzo delle risposte custom channel al posto di quelle di Tellya<\/li><li><strong>save: <\/strong>di default impostato a True, che permette di non salvare, se impostato a false, le conversazioni su Tellya perdendo la possibilit\u00e0 di avere la History e le analitiche.<\/li><\/ul>\n\n\n\n<h3 id=\"htoc-creazione-di-una-dispatcher-journey\">Creazione di una Dispatcher Journey<\/h3>\n\n\n\n<p>Una <em>journey<\/em> di tipo \u201cDispatcher\u201d permette di orchestrare il dialogo tra l\u2019utente finale e diversi agenti virtuali configurati all\u2019interno di <em>journey<\/em> distinte, senza che l\u2019utente percepisca il trasferimento del dialogo da un agente all\u2019altro.<\/p>\n\n\n\n<p>Questa tipologia di <em>journey<\/em> permette di superare il vincolo che impone l\u2019utilizzo di un unico motore di NLU all&#8217;interno di una singola <em>journey<\/em>, dando possibilit\u00e0 di configurare il passaggio da una <em>journey<\/em> all\u2019altra (e quindi da un agent all\u2019altro) in specifici punti della conversazione e con regole pre stabilite.<\/p>\n\n\n\n<p>\u00c8 possibile configurare una <em>journey <\/em>\u201cDispatcher\u201d durante la fase di creazione di una <em>journey<\/em>, selezionando l\u2019opzione \u201cDispatcher journey\u201d. In fase di creazione di una journey di tale tipologia, verr\u00e0 automaticamente inserito un <a href=\"https:\/\/docs.tellya.ai\/index.php\/knowledge-base\/connettori\/#dispatcher\" data-type=\"URL\" data-id=\"https:\/\/docs.tellya.ai\/index.php\/knowledge-base\/connettori\/#dispatcher\" target=\"_blank\" rel=\"noreferrer noopener\">connettore \u201cDispatcher\u201d<\/a> all\u2019interno del Process Flow della <em>journey<\/em>, il quale richiede di essere successivamente configurato.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/-YYjlfehJn7xCw8srqE3Gl8ztHQ5tmEMzvT2hRJc1JossGcneFlzjqtD8pdJh5pxSPaTH4s8IXokKL2dkzVoED2lt1i7sVJwYRrhCFExbPfm7hUWi9Lz8WGVkExWCjrPcyzAa3tn\" alt=\"\"\/><\/figure>\n\n\n<p>Una <em>journey<\/em> \u201cDispatcher\u201d verr\u00e0 contrassegnata da un\u2019icona specifica (<img decoding=\"async\" loading=\"lazy\" class=\"inline-icon alignnone wp-image-1173 size-full\" src=\"https:\/\/docs.tellya.ai\/wp-content\/uploads\/2020\/11\/dispatcher-icon.png\" alt=\"\" width=\"34\" height=\"33\">)&nbsp; all&#8217;interno delle liste che elenca journey configurate (ad esempio nel \u201cProcess Flow\u201d), in modo da poterla distinguere dalle altre tipologie di <em>journey<\/em>.<\/p>\n\n\n<p class=\"wp-block-ht-blocks-messages wp-block-hb-message wp-block-hb-message--withicon is-style-alert\">All\u2019interno di una <em>journey <\/em>di tipo \u201cDispatcher\u201d non \u00e8 possibile configurare connettori della categoria \u201cNatural Language Understanding\u201d e altre tipologie di connettori di sistema (\u201cAction Mapping\u201d, \u201cData Transfer\u201d, \u201cEvent caller\u201d, \u201cGeneric Rule\u201d).<\/p>\n\n\n\n<h3 id=\"come-testare-una-journey-embedding\">Come integrare una journey (Server integration)<\/h3>\n\n\n\n<p>Selezionando il bottone di impostazione della <em>journey <\/em>e successivamente la sezione \u201cServer integration\u201d, \u00e8 possibile visualizzare i dettagli per invocare tramite richiesta HTTP POST la <em>journey <\/em>selezionata, integrando quindi il dialogo con l\u2019agente virtuale all\u2019interno di sistemi esterni.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>La sezione Design consente di definire e personalizzare il comportamento dell\u2019agente virtuale, configurando le diverse tipologie di servizi e tecnologie da integrare all\u2019interno del flusso di processo che parte dalla richiesta, testuale o vocale, dell\u2019utente finale e si conclude con la risposta fornita dall\u2019agente virtuale. Per rendere possibile ci\u00f2, viene&#8230;<\/p>\n","protected":false},"author":3,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":[],"ht-kb-category":[22],"ht-kb-tag":[],"_links":{"self":[{"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/ht-kb\/149"}],"collection":[{"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/ht-kb"}],"about":[{"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/comments?post=149"}],"version-history":[{"count":12,"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/ht-kb\/149\/revisions"}],"predecessor-version":[{"id":1180,"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/ht-kb\/149\/revisions\/1180"}],"wp:attachment":[{"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/media?parent=149"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/ht-kb-category?post=149"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/ht-kb-tag?post=149"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}