สร้างแชทบอทสำหรับส่งอีเมลด้วย Google Dialogflow

สร้างแชทบอทสำหรับส่งอีเมลด้วย Google Dialogflow

​​​​แชทบอทกำลังกลายเป็นเครื่องมือที่สำคัญมากขึ้นสำหรับธุรกิจในยุคปัจจุบัน ด้วยเครื่องมือและความรู้ที่ถูกต้อง บริษัทต่างๆ จะสร้างตัวแทนการแชทที่สามารถสนทนากับลูกค้าได้จริง





Google Dialogflow ES เป็นหนึ่งในเครื่องมือสร้างแชทบ็อตที่มีประสิทธิภาพและฟรีที่สุดในตลาด แต่คุณจะปลดปล่อยศักยภาพออกมาอย่างเต็มที่ได้อย่างไร?





การทำวิดีโอประจำวัน

ขั้นตอนที่ 1: สร้าง Dialogflow ES Agent ของคุณ

การสร้างเอเจนต์ Dialogflow ES ของคุณเองเป็นขั้นตอนแรกในกระบวนการนี้ บัญชี Google ใดก็ได้ และคุณเริ่มต้นด้วยการไปที่ เว็บไซต์ Google Dialogflow TH . คลิกที่ สร้างตัวแทน เมื่อคุณเข้าสู่ระบบและกรอกรายละเอียดในแบบฟอร์มก่อนคลิก สร้าง . คุณสามารถใช้ Dialogflow เพื่อ สร้างแชทบอทเพื่อความบันเทิง , ระบบอัตโนมัติ หรือการบริการลูกค้า โครงการนี้ครอบคลุมช่วงหลัง





  สร้างไดอะล็อกโฟลว์ es ตัวแทน

ขั้นตอนที่ 2: เพิ่มความตั้งใจติดตามผล Dialogflow

เอเจนต์ใหม่มีเพียง Default Welcome Intent และ Default Fallback Intent เจตนาเป็นส่วนหรือขั้นตอนในการสนทนา

windows 10 ปิดการแจ้งเตือนเมล

คุณต้องเพิ่ม Intent การติดตามสองรายการใน Default Welcome Intent ที่มีอยู่เพื่อเริ่มต้น วางเมาส์เหนือ ความตั้งใจในการต้อนรับเริ่มต้น , คลิกที่ เพิ่มความตั้งใจในการติดตาม และเลือก ใช่ จากเมนูแบบเลื่อนลง ทำซ้ำขั้นตอนโดยเลือกไม่จากเมนูแบบเลื่อนลงเพื่อสร้างความตั้งใจในการติดตามครั้งที่สอง



  ใช่และไม่มีเจตนาติดตาม

เจตนาไม่มีการติดตามจะสิ้นสุดการสนทนาและบอกลาผู้ใช้ เปิด ไม่มีเจตนาติดตาม และเพิ่มชุดข้อความตอบกลับเพื่อสิ้นสุดการสนทนา เปิดใช้งาน ตั้งเจตนานี้เป็นการสิ้นสุดการสนทนา ตัวเลื่อน

  ความตั้งใจสิ้นสุดการสนทนาโต้ตอบ

กลับไปที่หน้าจอ Intent หลักและคลิกที่ ใช่ความตั้งใจในการติดตาม เพื่อเปิด





ขั้นตอนที่ 3: สร้างรายการตอบกลับ Dialogflow ที่หลากหลายด้วย JSON

ตอนนี้คุณได้ตั้งค่าความตั้งใจเหล่านี้แล้ว ก็ถึงเวลาตั้งคำถามกับผู้ใช้เพื่อให้เข้าถึงได้ เปิด ความตั้งใจในการต้อนรับเริ่มต้น และ ลบ การตอบสนองที่สร้างขึ้นด้วย คลิก เพิ่มการตอบกลับ และเลือก น้ำหนักบรรทุกที่กำหนดเอง จากเมนู

  ยินดีต้อนรับ payload ที่กำหนดเองโดยเจตนา

โค้ด JSON ด้านล่างเพิ่มการตอบกลับแบบสมบูรณ์สองประเภทที่แตกต่างกัน ข้อมูลและชิป





{ 
"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"
}
]
]
}

ขั้นตอนที่ 4: รวบรวมชื่อผู้ใช้เป็นพารามิเตอร์ Dialogflow

ต่อไป ถึงเวลาเพิ่มความตั้งใจติดตามผลเพื่อรวบรวมข้อมูลจากผู้ใช้ ตามที่ระบุไว้ในขั้นตอนที่ 2 คุณควรมีความตั้งใจในการติดตามผลที่ถามถึงชื่อผู้ใช้อยู่แล้ว วางเมาส์เหนือ ใช่ความตั้งใจในการติดตาม ในเมนูความตั้งใจหลัก คลิก เพิ่มความตั้งใจในการติดตาม และเลือก กำหนดเอง จากรายการ

  เลือกใช่ติดตามความตั้งใจ

สิ่งนี้จะสร้างความตั้งใจติดตามผลใหม่โดยไม่มีวลีฝึกอบรมใด ๆ ไปที่ส่วน Training Phrases พิมพ์ชื่อลงในช่อง แล้วกด Enter เพื่อเพิ่มเป็นวลีใหม่ สิ่งนี้จะทริกเกอร์การสร้างพารามิเตอร์ใหม่ด้วยประเภทเอนทิตี @sys.person คลิกที่ @sys.person เอนทิตีและเปลี่ยนเป็น a @sys.given-name นิติบุคคล

  ไดอะล็อกโฟลว์กำหนดชื่อการตั้งค่าพารามิเตอร์

สิ่งนี้จะเก็บข้อมูลอินพุตของผู้ใช้เพื่อให้ตัวแทนสามารถใช้งานได้ ไปที่ส่วนการตอบกลับและเพิ่มการตอบกลับด้วย $given-name ข้างในนั้น ซึ่งจะเรียกพารามิเตอร์ชื่อที่คุณรวบรวมไว้ ทำให้สามารถปรากฏในแชทได้

  การตอบสนองพารามิเตอร์ชื่อไดอะล็อกโฟลว์

ขั้นตอนที่ 5: ใช้ Payload แบบกำหนดเองของ Dialogflow เพื่อทริกเกอร์ Intent

ตามความตั้งใจในการติดตามที่คุณเพิ่งเพิ่ม ให้คลิกที่เพิ่มการตอบสนอง และเลือก Payload ที่กำหนดเองจากรายการ การเพิ่มโค้ด JSON ด้านล่างในส่วนนี้จะทริกเกอร์การตอบกลับแบบสมบูรณ์ของรายการที่ขอให้ผู้ใช้เลือกสี

  รายการเนื้อหาที่อุดมไปด้วยไดอะล็อก

ส่วนที่สำคัญที่สุดของโค้ด JSON นี้คือส่วนเหตุการณ์ที่มีแต่ละรายการ เมื่อคลิก แต่ละรายการจะเรียกเหตุการณ์ที่เรียกว่า COLOR ด้วยชื่อและพารามิเตอร์สีที่รวบรวมไว้จนถึงตอนนี้ ความตั้งใจสามารถมีเหตุการณ์ที่กำหนดให้กับพวกเขาซึ่งจะทริกเกอร์พวกเขา

{ 
"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"
}
}
}
]
]
}

ขั้นตอนที่ 6: ย้ายพารามิเตอร์ Dialogflow ระหว่าง Intents

กลับไปที่เมนู Intent หลัก แล้วคลิก สร้างความตั้งใจ . ตั้งชื่อความตั้งใจใหม่ของคุณและป้อน สี ในส่วนกิจกรรมก่อนตี เข้า .

  เจตนาสีกับเหตุการณ์

ไปที่ส่วนวลีการฝึกอบรม และเพิ่มชื่อและสีลงในรายการวลีเพื่อกระตุ้นการสร้างพารามิเตอร์ใหม่ เปลี่ยน @sys.person เอนทิตีพารามิเตอร์ไปยังa @sys.given-name เอนทิตีและตรวจสอบให้แน่ใจว่าได้ตั้งค่าเอนทิตีสีเป็น @sys.color .

  การฝึกสีและพารามิเตอร์

ตอนนี้คุณสามารถเพิ่มคำตอบโดยใช้ $given-name และ $color เพื่อให้ข้อมูลของผู้ใช้ปรากฏในหน้าต่างแชท

  การตอบสนองความตั้งใจของสีด้วยพารามิเตอร์

สุดท้ายกลับไปที่ บริบท ที่ด้านบนของหน้าและเพิ่มผลลัพธ์ที่มีชื่อเฉพาะ สิ่งนี้จะส่งพารามิเตอร์จากความตั้งใจนี้ไปยังอีกอันหนึ่ง

  บริบทเอาต์พุตเจตนาของสี

ขั้นตอนที่ 7: รวบรวมประเทศและหมายเลขโทรศัพท์ของผู้ใช้เป็นพารามิเตอร์ Dialogflow

กลับไปที่เมนู Intent หลัก วางเมาส์เหนือ ความตั้งใจของสี คุณเพิ่งสร้างและคลิกที่ เพิ่มความตั้งใจในการติดตาม . ตรวจสอบส่วนบริบทของความตั้งใจใหม่ ตรวจสอบให้แน่ใจว่าได้รวมบริบทสีที่คุณสร้างขึ้นในขั้นตอนสุดท้ายทั้งในส่วนอินพุตและเอาต์พุต เพิ่มบริบทเอาต์พุตอื่นสำหรับความตั้งใจปัจจุบัน

  ความตั้งใจในการติดตามประเทศของไดอะล็อกโฟลว์สี

ไปที่ วลีฝึกอบรม และเพิ่มชื่อประเทศในรายการก่อนกด เข้า . สิ่งนี้จะสร้างพารามิเตอร์ใหม่ เปลี่ยนประเภทเอนทิตีของพารามิเตอร์เป็น @sys.geo-country ก่อนเพิ่มพารามิเตอร์ในส่วนการตอบกลับ

วิธีทำให้คอมพิวเตอร์ของคุณเงียบขึ้นฟรี
  การฝึกอบรมและพารามิเตอร์ของประเทศ

กลับไปที่เมนู Intent หลัก และสร้าง Intent ติดตามผลใหม่สำหรับ Intent ที่คุณเพิ่งสร้างขึ้น ทำซ้ำขั้นตอนที่คุณเพิ่งทำ แต่ใช้หมายเลขโทรศัพท์ใน วลีฝึกอบรม ส่วน. ตรวจสอบให้แน่ใจว่าพารามิเตอร์ที่สร้างขึ้นมี a @sys.phone-number ประเภทเอนทิตี

  การฝึกอบรมหมายเลขโทรศัพท์และพารามิเตอร์

กลับไปที่เมนู Intent หลัก และสร้าง Intent ติดตามผลใหม่สองรายการสำหรับ Intent ที่คุณเพิ่งสร้างขึ้น ความตั้งใจในการติดตามผลใช่และไม่ใช่ คุณสามารถตั้งค่าความตั้งใจไม่มีการติดตามเพื่อสิ้นสุดการสนทนาได้

  หมายเลขโทรศัพท์ ใช่ ไม่ ติดตามผล

ความตั้งใจในการติดตามผลใช่จำเป็นต้องมีบริบททั้งหมดจากความตั้งใจก่อนหน้านี้ที่คุณสร้างขึ้น

  ติดตามบริบทอินพุต

สุดท้าย ให้กลับไปที่เมนู Intent หลัก และสร้าง Intent ติดตามผลใหม่สำหรับความตั้งใจในการติดตาม Yes ที่คุณเพิ่งสร้างขึ้น เพิ่มที่อยู่อีเมลในส่วนวลีการฝึกอบรม และตรวจสอบให้แน่ใจว่าพารามิเตอร์ที่สร้างขึ้นมี @sys.email เป็นประเภทเอนทิตี

  พารามิเตอร์อีเมลไดอะล็อกโฟลว์

ไปที่ ตอบกลับ ส่วนคลิก เพิ่มการตอบกลับ และเลือก น้ำหนักบรรทุกที่กำหนดเอง จากรายการ รหัส JSON ต่อไปนี้จะเพิ่มการตอบสนองแบบสมบูรณ์ประเภทรายการที่เรียกใช้เหตุการณ์ที่เรียกว่า SENDEMAIL พารามิเตอร์ผู้ใช้ทั้งหมดที่คุณขอจะถูกส่งไปยังเจตนานี้

{ 
"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"
}
]
]
}

ขั้นตอนที่ 8: ส่งอีเมลโดยใช้ Dialogflow Node.js Inline Editor

คลิก สร้างความตั้งใจ ในเมนูความตั้งใจหลัก เพิ่ม ส่งอีเมล ถึง กิจกรรม ส่วนและตี เข้า . ทำตามนี้โดยเพิ่มพารามิเตอร์ทั้งหมดที่คุณรวบรวมไว้ใน การดำเนินการและพารามิเตอร์ ส่วน.

  เหตุการณ์อีเมลและพารามิเตอร์

ไปที่ สมหวัง ที่ด้านล่างของหน้าและเปิดใช้งานแถบเลื่อนที่มีข้อความว่า เปิดใช้งานการเรียกเว็บฮุคสำหรับความตั้งใจนี้ . ซึ่งจะทำให้คุณสามารถเพิ่มโค้ดที่กำหนดเองลงในเจตนานี้ได้

  การปฏิบัติตามความตั้งใจของไดอะล็อกโฟลว์

เลือก สมหวัง จากเมนูหลักทางด้านซ้ายของหน้าและเปิดใช้งานตัวเลื่อนเพื่อเปิดใช้งาน ตัวแก้ไขอินไลน์ . คุณอาจต้องเพิ่มบัญชีสำหรับการเรียกเก็บเงินใน Google Project เพื่อดำเนินการนี้

  ตัวแก้ไขอินไลน์ที่ใช้งานไดอะล็อกโฟลว์

คลิกที่ package.json แท็บและเลื่อนไปที่ด้านล่างของไฟล์ แทนที่ส่วนการพึ่งพาด้วยรหัสต่อไปนี้เพื่อเพิ่ม Nodemailer API ให้กับโครงการของคุณ

"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"
}

กลับไปที่ไฟล์ index.js และแทนที่โค้ดที่มีอยู่ด้วยตัวอย่างที่พบใน โครงการ CodePen นี้ ก่อนคลิก ปรับใช้ . คุณจะต้องแทนที่ข้อมูลรับรอง Gmail ด้วยข้อมูลประจำตัวของบัญชีของคุณเอง คุณต้องใช้รหัสผ่านสำหรับแอปนี้ เมื่อเสร็จสิ้น Chatbot ของคุณจะส่งอีเมลรายละเอียดทั้งหมดที่คุณรวบรวมไปยังผู้ใช้เมื่อสิ้นสุดการสนทนาที่ประสบความสำเร็จ คุณสามารถ เรียนรู้เพิ่มเติมเกี่ยวกับ Node.js และวิธีใช้งานด้วยคู่มือที่มีประโยชน์ของเรา

วิธีทำเสาอากาศแบบโฮมเมดสำหรับทีวีของคุณ

การใช้ Dialogflow ES บนเว็บไซต์ของคุณ

Chatbot ใหม่ของคุณสามารถรวบรวมข้อมูลผู้ใช้และส่งอีเมลได้ แต่ Dialogflow ES สามารถทำได้มากกว่านั้น คุณสามารถเชื่อมต่อ API ใดก็ได้กับบริการนี้ และคุณสามารถใช้ Dialogflow API เพื่อควบคุมแชทบ็อตบนเว็บไซต์ของคุณเองได้