Creați un chatbot care trimite e-mailuri cu Google Dialogflow

Creați un chatbot care trimite e-mailuri cu Google Dialogflow

​​​​​​Chatbot-urile devin un instrument din ce în ce mai vital pentru afaceri în epoca modernă. Cu instrumentele și cunoștințele potrivite, companiile creează agenți de chat care pot avea conversații reale cu clienții.



Google Dialogflow ES este unul dintre cele mai puternice și gratuite instrumente de creare de chatbot de pe piață. Dar cum îi poți elibera întregul potențial?





REALIZAREA VIDEOCLIPULUI ZILEI

Pasul 1: Creați-vă agentul Dialogflow ES

Crearea propriului agent Dialogflow ES este primul pas în acest proces. Orice cont Google funcționează și începeți prin a naviga la Site-ul web Google Dialogflow EN . Click pe Creați agent odată ce v-ați autentificat și completați detaliile din formular înainte de a da clic Crea . Puteți utiliza Dialogflow pentru creați un chatbot pentru divertisment , automatizare sau serviciu pentru clienți. Acest proiect acoperă acestea din urmă.





  creați un agent de flux de dialog

Pasul 2: Adăugați intenții de urmărire Dialogflow

Noul agent are doar o Intenție de întâmpinare implicită și o Intenție de rezervă implicită. O intenție este un fragment sau o etapă dintr-o conversație.

Trebuie să adăugați două intenții ulterioare la Intenția de bun venit implicită existentă pentru a începe. Plasați cursorul peste Intenție de bun venit implicită , Click pe Adăugați intenția de urmărire , și alegeți da din meniul derulant. Repetați procesul selectând Nu din meniul derulant pentru a crea a doua intenție de urmărire.



  da și nu intenții de urmărire

Intenția Fără urmărire va încheia conversația și va lua rămas bun de la utilizator. Deschide Fără intenție de urmărire și adăugați o serie de răspunsuri text pentru a încheia conversația. Activați Setați această intenție ca sfârșit al conversației glisor.

  intenția finală a conversației flux de dialog

Reveniți la ecranul principal de intenții și faceți clic pe Da intenție de urmărire să-l deschidă.





Pasul 3: Creați o listă bogată de răspunsuri Dialogflow cu JSON

Acum că aveți aceste intenții configurate, este timpul să puneți utilizatorului o întrebare, astfel încât să poată ajunge la ele. Deschide Intenție de bun venit implicită și Șterge răspunsurile cu care le-a generat. Clic Adăugați răspunsuri și selectați Sarcină utilă personalizată din meniu.

  sarcină utilă personalizată cu intenție binevenită

Codul JSON de mai jos adaugă două tipuri diferite de răspunsuri bogate; informații și jetoane.





{ 
"richContent": [
[
{
"type": "chips",
"options": [
{
"text": "Yes"
},
{
"text": "No"
}
]
},
{
"image": {
"src": {
"rawUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/5/50/TK_email_icon.svg/1024px-TK_email_icon.svg.png"
}
},
"title": "Tell me about yourself :)",
"subtitle": "Give me some of your personal information. I'll send it to you in an email. That's the deal; absolutely no funny business. Promise! You in?",
"type": "info"
}
]
]
}

Pasul 4: Colectați numele utilizatorului ca parametru Dialogflow

Apoi, este timpul să adăugați o altă intenție de urmărire pentru a colecta date de la utilizator. După cum s-a subliniat în Pasul 2, ar trebui să aveți deja o intenție de urmărire Da care cere numele utilizatorului. Plasați cursorul peste Da intenție de urmărire în meniul principal de intenții, faceți clic Adăugați intenția de urmărire , și selectați Personalizat din lista.

  selectați da intenția de urmărire

Acest lucru va crea o nouă intenție de urmărire fără fraze de antrenament. Accesați secțiunea Expresii de antrenament, introduceți un nume în casetă și apăsați Enter pentru a-l adăuga ca frază nouă. Acest lucru va declanșa crearea unui nou parametru cu tipul de entitate @sys.person. Faceți clic pe @sys.person entitate și schimbați-o în a @sys.given-name entitate.

  setarea parametrului numelui dat pentru fluxul de dialog

Aceasta va stoca intrarea utilizatorului, astfel încât agentul să o poată utiliza. Mergeți la secțiunea Răspunsuri și adăugați un răspuns cu $numele inauntru. Acest lucru apelează parametrul de nume pe care l-ați colectat, permițându-i să apară în chat.

  răspunsul parametrului numelui fluxului de dialog

Pasul 5: Utilizați o sarcină utilă personalizată Dialogflow pentru a declanșa intenții

Rămânând în intenția de urmărire pe care tocmai ați adăugat-o, faceți clic pe Adăugați răspunsuri și selectați sarcină utilă personalizată din listă. Adăugarea codului JSON de mai jos la această secțiune va declanșa un răspuns bogat în listă, solicitând utilizatorului să aleagă o culoare.

  lista de conținut bogat în flux de dialog

Cea mai importantă parte a acestui cod JSON este secțiunea de evenimente cu fiecare intrare. Când se face clic, fiecare element din listă apelează un eveniment numit COLOR cu numele și parametrii de culoare care au fost colectați până acum. Intențiile pot avea evenimente atribuite care le vor declanșa.

{ 
"richContent": [
[
{
"event": {
"languageCode": "en",
"parameters": {
"name": "$given-name",
"color": "Red"
},
"name": "COLOR"
},
"title": "Red",
"type": "list"
},
{
"type": "divider"
},
{
"event": {
"name": "COLOR",
"languageCode": "en",
"parameters": {
"name": "$given-name",
"color": "Green"
}
},
"type": "list",
"title": "Green"
},
{
"type": "divider"
},
{
"type": "list",
"title": "Blue",
"event": {
"languageCode": "en",
"name": "COLOR",
"parameters": {
"name": "$given-name",
"color": "Blue"
}
}
}
]
]
}

Pasul 6: Mutați parametrii Dialogflow între intenții

Reveniți la meniul principal Intenții și faceți clic pe Creați intenție . Dați un nume noii intenții și intrați CULOARE în secțiunea de evenimente înainte de a lovi introduce .

  intenția de culoare cu evenimentul

Accesați secțiunea Expresii de antrenament și adăugați un nume și o culoare listei de fraze pentru a declanșa crearea de noi parametri. Schimba @sys.person entitate parametru la a @sys.given-name entitate și asigurați-vă că entitatea de culoare este setată la @sys.color .

  antrenamentul și parametrii culorii

Acum puteți adăuga câteva răspunsuri folosind $given-name și $color pentru ca intrările utilizatorului să apară în fereastra de chat.

  răspunsuri de intenție de culoare cu parametri

În cele din urmă, întoarceți-vă la Contexte secțiune din partea de sus a paginii și adăugați o ieșire cu un nume unic. Aceasta va trece parametrii de la această intenție la următoarea.

  contextul de ieșire a intenției de culoare

Pasul 7: Colectați țara și numărul de telefon al utilizatorului ca parametri Dialogflow

Reveniți la meniul principal Intenții, plasați cursorul peste Intenția de culoare tocmai ați creat și faceți clic pe Adăugați intenția de urmărire . Verificați secțiunea Contexte a noii intenții. Asigurați-vă că include contextul Culoare pe care l-ați creat la ultimul pas atât în ​​secțiunea de intrare, cât și în secțiunea de ieșire. Adăugați un alt context de ieșire pentru intenția curentă.

  intenția de urmărire a țării de culoare a fluxului de dialog

Du-te la Expresii de antrenament secțiune și adăugați numele unei țări la listă înainte de a apăsa introduce . Acest lucru va crea un nou parametru. Schimbați tipul de entitate al parametrului în @sys.geo-country înainte de a adăuga parametrul la secțiunea de răspuns.

  pregătirea și parametrii de țară

Reveniți la meniul principal Intenții și creați o nouă intenție de urmărire pentru intenția pe care tocmai ați creat-o. Repetați pașii pe care tocmai i-ați făcut, dar utilizați un număr de telefon în Expresii de antrenament secțiune. Asigurați-vă că parametrul generat are a @sys.phone-number tip de entitate.

  formarea numărului de telefon și parametrii

Reveniți la meniul principal Intenții și creați două noi intenții de urmărire pentru intenția pe care tocmai ați creat-o; a Intenție de urmărire Da și Nu. Puteți seta nicio intenție de urmărire pentru a încheia conversația.

  numar de telefon da fara urmariri

Intenția de urmărire Da trebuie să aibă toate Contextele din intențiile anterioare pe care le-ați creat.

  urmărirea contextelor de intrare

În cele din urmă, reveniți la meniul principal Intenții și creați o nouă intenție de urmărire pentru intenția de urmărire Da pe care tocmai ați creat-o. Adăugați o adresă de e-mail la secțiunea Fraze de antrenament și asigurați-vă că parametrul generat are @sys.email ca tipul său de entitate.

  parametrul de e-mail al fluxului de dialog

Du-te la Răspunsuri secțiune, faceți clic Adăugați răspunsuri , și selectați Sarcină utilă personalizată din lista. Următorul cod JSON va adăuga un răspuns bogat de tip listă care apelează un eveniment numit SENDEMAIL. Toți parametrii utilizatorului pe care i-ați solicitat până acum vor fi trimiși în această intenție.

{ 
"richContent": [
[
{
"title": "Send Email",
"event": {
"parameters": {
"name": "#Color-followup.name",
"country": "#Color-country-followup.country",
"email": "$email",
"color": "#Color-followup.color",
"phone": "#Color-country-phonenum-followup.phone-number"
},
"name": "SENDEMAIL",
"languageCode": "en"
},
"type": "list"
}
]
]
}

Pasul 8: Trimiteți un e-mail utilizând Editorul inline Dialogflow Node.js

Clic Creați intenție în meniul principal Intenții. Adăuga TRIMITE EMAIL la Evenimente secțiune și apăsați introduce . Urmați acest lucru adăugând toți parametrii pe care i-ați colectat la Acțiune și parametri secțiune.

  eveniment de e-mail și parametri

Du-te la Împlinire secțiunea din partea de jos a paginii și activați glisorul etichetat Activați apelul webhook pentru această intenție . Acest lucru vă va permite să adăugați cod personalizat acestei intenții.

  îndeplinirea intenției fluxului de dialog

Selectați Împlinire din meniul principal din stânga paginii și activați glisorul pentru a activa Editor inline . Poate fi necesar să adăugați un cont de facturare la proiectul dvs. Google pentru a face acest lucru.

  editor inline activ flux de dialog

Faceți clic pe pachet.json fila și derulați în partea de jos a fișierului. Înlocuiți secțiunea dependențe cu următorul cod pentru a adăuga API-ul Nodemailer la proiectul dvs.

"dependencies": { 
"actions-on-google": "^2.2.0",
"firebase-admin": "^5.13.1",
"firebase-functions": "^2.0.2",
"dialogflow": "^0.6.0",
"nodemailer": "^4.4.2",
"dialogflow-fulfillment": "^0.5.0"
}

Reveniți la fișierul index.js și înlocuiți codul existent cu eșantionul găsit acest proiect CodePen înainte de a da clic Implementează . Va trebui să înlocuiți acreditările Gmail cu cele ale contului dvs. Trebuie să utilizați o parolă de aplicație pentru aceasta. Odată finalizat, chatbot-ul dvs. va trimite prin e-mail utilizatorului toate detaliile pe care le colectați la sfârșitul unei conversații de succes. Poti aflați mai multe despre Node.js și cum să-l folosiți cu ghidul nostru la îndemână.

ar trebui să-mi resetez din fabrică computerul

Utilizarea Dialogflow ES pe site-ul dvs. web

Noul tău chatbot poate colecta informații despre utilizator și poate trimite e-mailuri, dar Dialogflow ES poate face mult mai mult. Puteți conecta aproape orice API la acest serviciu și puteți utiliza API-ul Dialogflow pentru a vă controla chatbot-ul pe propriul site web.