{"id":1431,"date":"2022-09-02T11:11:55","date_gmt":"2022-09-02T11:11:55","guid":{"rendered":"https:\/\/docs.tellya.ai\/?post_type=ht_kb&#038;p=1431"},"modified":"2022-09-07T09:37:40","modified_gmt":"2022-09-07T09:37:40","slug":"lateral-entry","status":"publish","type":"ht_kb","link":"https:\/\/docs.tellya.ai\/index.php\/knowledge-base\/lateral-entry\/","title":{"rendered":"Lateral entry"},"content":{"rendered":"\n<p>Configurando un flusso conversazionale in Dialogflow ES, pu\u00f2 esserci la necessit\u00e0 di richiedere all\u2019utente, una serie di informazioni, le quali vengono recuperate attraverso delle entit\u00e0 obbligatorie estratte in intenti differenti, collegati da contesti.<\/p>\n\n\n\n<p>Ad esempio, un ipotetico flusso di apertura di un ticket di supporto, potrebbe richiedere all\u2019utente tre informazioni: una mail di contatto, l\u2019oggetto della segnalazione e la descrizione dettagliata del problema. Ogni informazioni viene estratta tramite entit\u00e0 attraverso tre intenti consecutivi di un dialogo.<\/p>\n\n\n\n<p>Una o pi\u00f9 informazioni richieste all\u2019interno di un flusso conversazionale per\u00f2, potrebbero essere gi\u00e0 note all\u2019agente virtuale (perch\u00e9 richieste in precedenza o perch\u00e9 gi\u00e0 presenti in qualche \u201cparametro di sessione\u201d). Per questo motivo tali informazioni non andrebbero richieste all\u2019utente.<\/p>\n\n\n\n<p>La funzionalit\u00e0 \u201c<strong>lateral entry<\/strong>\u201d permette di gestire tale casistica, accedendo direttamente ad un intento posto all\u2019interno di un flusso, superando uno o pi\u00f9 intenti posizionati prima di esso, poich\u00e9 richiedono informazioni gi\u00e0 note.<\/p>\n\n\n\n<p>Ad esempio, nel flusso di apertura ticket descritto precedentemente, potrebbe essere gi\u00e0 noto l\u2019indirizzo mail. Sfruttando la funzionalit\u00e0 \u201clateral entry\u201d \u00e8 possibile entrare in tale flusso ma \u201cignorare\u201d l\u2019intento che richiede l\u2019indirizzo mail e richiedere all\u2019utente le informazioni successive.<\/p>\n\n\n\n<p>Prima di configurare tale funzionalit\u00e0 \u00e8 necessario che ogni intento del flusso possa essere innescato anche attraverso uno specifico \u201cevento\u201d, informazione che deve essere quindi configurata, con valori differenti, per tutti gli intenti che compongono il flusso. L\u2019evento verr\u00e0 utilizzato da Tellya per richiamare automaticamente gli intenti successivi nel caso il parametro richiesto sia gi\u00e0 noto.<\/p>\n\n\n\n<p>Per configurare una \u201clateral entry\u201d \u00e8 necessario utilizzare il campo \u201caction\u201d dell\u2019intento, popolato utilizzando la seguente sintassi:<\/p>\n\n\n\n<p class=\"has-text-align-center\"><em>lateralEntry(nomeEvento=nomeParametro)<\/em><\/p>\n\n\n\n<ul><li><em>nomeEvento = <\/em>nome dell\u2019evento che permette di innescare l\u2019intento successivo del flusso<\/li><li><em>nomeParametro<\/em> = nome del parametro che verr\u00e0 richiesto come obbligatorio nell\u2019intento successivo&nbsp;<\/li><\/ul>\n\n\n\n<p class=\"wp-block-ht-blocks-messages wp-block-hb-message wp-block-hb-message--withicon is-style-info\">\u00c8 possibile configurare pi\u00f9 di un parametro dopo l\u2019uguale (\u201c=\u201d) separandoli con una la virgola (\u201c,\u201d).<\/p>\n\n\n\n<p>Ogni volta che verr\u00e0 innescato un intento con una \u201clateral entry\u201d configurata al suo interno nel campo \u201caction\u201d, Tellya, prima di fornire la risposta definita per tale intento, verificher\u00e0 se il parametro (<em>nomeParametro<\/em>) che il flusso si aspetta nell\u2019intento successivo (e quindi richiesto attraverso la risposta dell\u2019intento corrente) non sia gi\u00e0 presente:<\/p>\n\n\n\n<ul><li>Se il parametro <em>nomeParametro<\/em> \u00e8 gi\u00e0 presente invocher\u00e0 l\u2019evento <em>nomeEvento<\/em> specificato nella \u201clateral entry\u201d, non fornendo all\u2019utente la risposta definita per l\u2019intento corrente<\/li><li>Se il parametro <em>nomeParametro<\/em> non \u00e8 presente non effettuer\u00e0 alcuna invocazione e fornir\u00e0 all\u2019utente la risposta configurata nell\u2019intento corrente<\/li><\/ul>\n\n\n\n<p class=\"wp-block-ht-blocks-messages wp-block-hb-message wp-block-hb-message--withicon is-style-info\">Per utilizzare al meglio una \u201clateral entry\u201d si consiglia di considerare la possibilit\u00e0 di configurare i \u201cdefault value\u201d per i differenti parametri obbligatori, <a rel=\"noreferrer noopener\" href=\"https:\/\/cloud.google.com\/dialogflow\/es\/docs\/intents-actions-parameters#params\" target=\"_blank\">come messo a disposizione da Dialogflow ES<\/a>.<\/p>\n\n\n\n<p>In alternativa, \u00e8 anche possibile configurare una seconda action da richiamare qualora questa della \u201clater entry\u201d non dovesse andare a buon fine, separata da un punto e virgola:<\/p>\n\n\n\n<p class=\"has-text-align-center\"><em>lateralEntry(nomeEvento=ParametroRaccolto);nomeAction<\/em><\/p>\n\n\n\n<p>Dove, al posto di <em>nomeAction<\/em>, \u00e8 necessario specificare il nome dell\u2019action da richiamare.<\/p>\n\n\n\n<p>\u00c8 possibile configurare pi\u00f9 lateralEntry separandole con il punto e virgola (\u201c;\u201d). Viene data priorit\u00e0 alla laterEntry che ha pi\u00f9 parametri configurati e se nessuna lateralEntry configurata soddisfa la condizione viene eseguita l\u2019action standard, se presente.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Configurando un flusso conversazionale in Dialogflow ES, pu\u00f2 esserci la necessit\u00e0 di richiedere all\u2019utente, una serie di informazioni, le quali vengono recuperate attraverso delle entit\u00e0 obbligatorie estratte in intenti differenti, collegati da contesti. Ad esempio, un ipotetico flusso di apertura di un ticket di supporto, potrebbe richiedere all\u2019utente tre informazioni:&#8230;<\/p>\n","protected":false},"author":4,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":[],"ht-kb-category":[27],"ht-kb-tag":[],"_links":{"self":[{"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/ht-kb\/1431"}],"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\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/comments?post=1431"}],"version-history":[{"count":4,"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/ht-kb\/1431\/revisions"}],"predecessor-version":[{"id":1446,"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/ht-kb\/1431\/revisions\/1446"}],"wp:attachment":[{"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/media?parent=1431"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/ht-kb-category?post=1431"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/docs.tellya.ai\/index.php\/wp-json\/wp\/v2\/ht-kb-tag?post=1431"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}