ตัวแทน RBM ได้รับข้อความและกิจกรรมผ่าน เว็บฮุค เมื่อผู้ใช้ส่งข้อความถึงตัวแทนของคุณ บริการ RBM ของ Google จะส่ง ไปยังเว็บฮุคที่กำหนดค่าไว้ จากนั้น Agent จะถอดรหัสข้อความได้ ประมวลผล และออกคำตอบให้กับผู้ใช้
ผู้ใช้จะส่งข้อความ ตำแหน่ง หรือไฟล์ใดก็ได้ที่ไคลเอ็นต์ RCS อนุญาต ตัวแทนต้องจัดการข้อความ สถานที่ตั้ง หรือไฟล์ที่ผู้ใช้อาจส่ง รวมทั้งสถานะข้อผิดพลาดที่ อาจมีการเรียกใช้ข้อความเหล่านั้น
จัดการข้อความขาเข้า
วิธีที่ตัวแทนของคุณจัดการและตอบกลับข้อความจากผู้ใช้จะขึ้นอยู่กับว่า ในตรรกะทางธุรกิจของคุณ อย่างไรก็ตาม โดยทั่วไป ขั้นตอนในการตอบกลับผู้ใช้ มีความสอดคล้อง
ขั้นตอนที่ 1: ระบุประเภทข้อความที่ผู้ใช้ส่ง
ผู้ใช้สามารถส่งข้อความได้ 4 ประเภทดังนี้
- SMS คือคำตอบรูปแบบอิสระ
- ข้อความคำแนะนำจะมีข้อมูลระบบรายงานผล Conversion และข้อความของ การดำเนินการที่แนะนำหรือคำตอบที่แนะนำซึ่งผู้ใช้แตะ
ข้อความตำแหน่งจะรวมค่าละติจูดและลองจิจูด
ข้อความไฟล์จะมี URI ของไฟล์และข้อมูลที่เกี่ยวข้อง
ขั้นตอนที่ 2: ประมวลผลเนื้อหาของข้อความ
เนื้อหาในข้อความสำหรับผู้ใช้ควรชี้นำตรรกะและคำตอบถัดไปของตัวแทนของคุณ ในการสนทนา
วิธีที่ง่ายที่สุดในการระบุเจตนาของผู้ใช้คือการใช้ข้อมูลระบบรายงานผล Conversion จาก คำตอบหรือการดำเนินการที่แนะนำ โดยไม่คำนึงถึงข้อความที่เชื่อมโยงกับ ข้อมูลระบบรายงานผล Conversion จะสามารถอ่านได้โดยเครื่อง
หากผู้ใช้ส่งข้อความ ตัวแทนของคุณอาจแยกวิเคราะห์การตอบกลับสำหรับ คีย์เวิร์ดที่รองรับหรือใช้ NLU (เช่น Dialogflow) เพื่อประมวลผลข้อความของผู้ใช้ และ ระบุเส้นทางข้างหน้า
ตำแหน่งและข้อความไฟล์จะไม่มีข้อความหรือข้อมูลระบบรายงานผล Conversion ดังนั้น ตัวแทนควรพิจารณาบริบทของการสนทนาและข้อความล่าสุด ก่อนที่จะตอบ
ถ้าตัวแทนของคุณไม่ทราบวิธีตอบกลับข้อความของผู้ใช้ ตัวแทนควร ตอบกลับด้วยสถานะข้อผิดพลาดและพยายามสนทนาต่อโดย เพื่อให้ผู้ใช้สอบถามข้อมูลเพิ่มเติม ด้วยการขอให้ป้อนข้อมูลใน ด้วยวิธีอื่น หรือด้วยการนำเสนอคำตอบที่แนะนำ และการดำเนินการที่แนะนำ ตัวแทนก็รู้ว่าจะต้องตอบกลับอย่างไร
ขั้นตอนที่ 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" } } }
จัดการกิจกรรมที่เข้ามาใหม่
ตัวแทนของคุณจะได้รับการแจ้งเตือนเมื่อข้อความที่ส่งถึงผู้ใช้ ส่งและอ่านแล้ว
รหัสต่อไปนี้จะแสดงวิธีที่ตัวแทนรับข้อความ สำหรับการจัดรูปแบบและ ดูข้อมูลด้านคุณค่าได้ที่ UserEvent
ส่งข้อความถึงผู้ใช้แล้ว
{ "agentId": "AGENT_ID", "senderPhoneNumber": "PHONE_NUMBER", "messageId": "MESSAGE_ID", "eventId": "EVENT_ID", "sendTime": "2018-12-31T15:01:23.045123456Z", "eventType": "DELIVERED" }
ข้อความอ่านแล้วโดยผู้ใช้
{ "agentId": "AGENT_ID", "senderPhoneNumber": "PHONE_NUMBER", "messageId": "MESSAGE_ID", "eventId": "EVENT_ID", "sendTime": "2018-12-31T15:01:23.045123456Z", "eventType": "READ" }
ผู้ใช้กำลังพิมพ์
{ "senderPhoneNumber": "PHONE_NUMBER", "eventType": "IS_TYPING", "eventId": "EVENT_ID", "sendTime": "2018-12-31T15:01:23.045123456Z", "agentId": "AGENT_ID" }