รับข้อความ

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

ผู้ใช้ส่งข้อความถึงตัวแทน

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

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

จัดการข้อความขาเข้า

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

ขั้นตอนที่ 1: ระบุประเภทข้อความที่ผู้ใช้ส่ง

ผู้ใช้สามารถส่งข้อความได้ 4 ประเภท ดังนี้

  • ข้อความคือการตอบกลับแบบอิสระ
  • ข้อความคำแนะนำจะมีข้อมูลการส่งคืนและข้อความของ การดำเนินการที่แนะนำหรือการตอบกลับที่แนะนำซึ่งผู้ใช้แตะ
  • ข้อความตำแหน่งจะมีค่าละติจูดและลองจิจูด

  • ข้อความไฟล์จะมี URI ของไฟล์และข้อมูลที่เกี่ยวข้อง

ขั้นตอนที่ 2: ประมวลผลเนื้อหาข้อความ

เนื้อหาข้อความของผู้ใช้ควรเป็นแนวทางในการกำหนดตรรกะและการตอบกลับครั้งถัดไปของตัวแทนในการสนทนา

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

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

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

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

ขั้นตอนที่ 3: ดำเนินการตามตรรกะทางธุรกิจสำหรับการโต้ตอบ

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

ขั้นตอนที่ 4: ตอบกลับผู้ใช้

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

ตัวอย่าง

โค้ดต่อไปนี้แสดงวิธีที่ตัวแทนได้รับข้อความ ดูข้อมูลการจัดรูปแบบและ ค่าได้ที่ UserMessage

ตัวแทนได้รับข้อความ

{
  "agentId": "AGENT_ID",
  "senderPhoneNumber": "PHONE_NUMBER",
  "messageId": "MESSAGE_ID",
  "sendTime": "2018-12-31T15:01:23.045123456Z",
  "text": "Hello, world!"
}

ตัวแทนได้รับข้อความจากคำแนะนำ

{
  "agentId": "AGENT_ID",
  "senderPhoneNumber": "PHONE_NUMBER",
  "messageId": "MESSAGE_ID",
  "sendTime": "2018-12-31T15:01:23.045123456Z",
  "suggestionResponse": {
    "postbackData": "suggestion_1",
    "text": "Suggestion #1"
  }
}

ตัวแทนได้รับตำแหน่ง

{
  "agentId": "AGENT_ID",
  "senderPhoneNumber": "PHONE_NUMBER",
  "messageId": "MESSAGE_ID",
  "sendTime": "2018-12-31T15:01:23.045123456Z",
  "location": {
    "latitude": 37.422000,
    "longitude": -122.084056
  }
}

ตัวแทนได้รับไฟล์

{
  "agentId": "AGENT_ID",
  "senderPhoneNumber": "PHONE_NUMBER",
  "messageId": "MESSAGE_ID",
  "sendTime": "2018-12-31T15:01:23.045123456Z",
  "userFile": {
    "thumbnail": {
      "mimeType": "image/jpeg",
      "fileSizeBytes": 1280,
      "fileUri": "https://storage.googleapis.com/copper_test/77ddb795-24ad-4607-96ae-b08b4d86406a/d2dcc67ab888d34ee272899c020b13402856f81597228322079eb007e8c8",
      "fileName": "4_animated.jpeg"
    },
    "payload": {
      "mimeType": "image/gif",
      "fileSizeBytes": 127806,
      "fileUri": "https://storage.googleapis.com/copper_test/77ddb795-24ad-4607-96ae-b08b4d86406a/d2dcc67ab888d34ee272899c020b13402856f81597228322079eb007e8c9",
      "fileName": "4_animated.gif"
    }
  }
}