ทรัพยากร: AgentMessage
ข้อความที่ตัวแทนส่งไปยังผู้ใช้
การแสดง JSON |
---|
{ "name": string, "sendTime": string, "contentMessage": { object ( |
ช่อง | |
---|---|
name |
ช่องนี้กำหนดโดยแพลตฟอร์ม RBM อย่าใส่ข้อมูลนี้เมื่อสร้างข้อความจาก Agent ช่องนี้ระบุค่า "phones/{E.164}/agentMessages/{messageId}" โดยที่ {E.164} คือหมายเลขโทรศัพท์ของผู้ใช้ในรูปแบบ E.164 และ {messageId} คือรหัสที่ตัวแทนกำหนดให้ของข้อความจากตัวแทน |
sendTime |
ช่องนี้กำหนดโดยแพลตฟอร์ม RBM อย่าใส่ข้อมูลนี้เมื่อสร้างข้อความจาก Agent ช่องนี้จะระบุเวลาที่ส่งข้อความถึงผู้ใช้ การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: |
contentMessage |
เนื้อหาของข้อความ Agent |
ฟิลด์การรวม
|
|
expireTime |
ไม่บังคับ การประทับเวลาในเขตเวลา UTC เมื่อระบบถือว่าแหล่งข้อมูลนี้หมดอายุ ค่านี้จะมีอยู่ในเอาต์พุตถ้ามีการตั้งค่าไว้หรือหากตั้งค่าช่อง TTL ไว้ การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: |
ttl |
ไม่บังคับ อินพุตเท่านั้น อินพุตเท่านั้น ระยะเวลาที่จะเผยแพร่ข้อความก่อนที่จะถูกเพิกถอนโดยอัตโนมัติ ระยะเวลาเป็นวินาทีโดยมีตัวเลขเศษส่วนไม่เกิน 9 หลัก ซึ่งลงท้ายด้วย " |
AgentContentMessage
เนื้อหาของข้อความที่ส่งจากตัวแทนไปยังผู้ใช้
การแสดง JSON |
---|
{ "suggestions": [ { object ( |
ช่อง | |
---|---|
suggestions[] |
รายการการตอบกลับที่แนะนำและการดำเนินการที่แนะนำซึ่งปรากฏเป็นรายการชิปคำแนะนำหลังจากข้อความตัวแทนที่เกี่ยวข้อง สูงสุด 11 คำแนะนำ ชิปจะแสดงเฉพาะเมื่อข้อความตัวแทนที่เกี่ยวข้องเป็นข้อความล่าสุดในการสนทนาเท่านั้น (รวมทั้งข้อความจากตัวแทนและข้อความผู้ใช้) ผู้ใช้สามารถแตะการตอบกลับที่แนะนำเพื่อส่งข้อความตอบกลับไปยังตัวแทน หรือแตะการดำเนินการที่แนะนำเพื่อเริ่มการดำเนินการที่มาพร้อมเครื่องในอุปกรณ์ |
ฟิลด์การรวม content เนื้อหาของข้อความ Agent content ต้องเป็นอย่างใดอย่างหนึ่งต่อไปนี้เท่านั้น |
|
text |
ข้อความที่เข้ารหัสเป็น UTF-8 |
fileName |
ชื่อที่ไม่ซ้ำกันของไฟล์ แพลตฟอร์ม RBM จะแสดงชื่อไฟล์เมื่อตัวแทนอัปโหลดไฟล์ เลิกใช้งานเพื่อเปลี่ยนไปใช้ UploadRbmFile ด้านล่างแล้ว |
uploadedRbmFile |
มีตัวระบุสำหรับไฟล์และภาพขนาดย่อที่อัปโหลดและแสดงโดยเซิร์ฟเวอร์ RBM |
richCard |
การ์ดริชมีเดียแบบสแตนด์อโลน |
contentInfo |
ข้อมูลเกี่ยวกับไฟล์ ซึ่งรวมถึง URL ของไฟล์และ URL ภาพขนาดย่อของไฟล์ แพลตฟอร์ม RBM จะแสดงเนื้อหาจากแคช แต่ตัวแทนสามารถบังคับให้แพลตฟอร์ม RBM ดึงข้อมูลเนื้อหาเวอร์ชันใหม่และรีเฟรชแคชได้ |
UploadedRbmFile
ข้อความที่มีข้อมูลไฟล์และภาพขนาดย่อ
การแสดง JSON |
---|
{ "fileName": string, "thumbnailName": string } |
ช่อง | |
---|---|
fileName |
ชื่อของไฟล์ที่แพลตฟอร์ม RBM แสดงผลเมื่ออัปโหลดไฟล์ |
thumbnailName |
ชื่อของภาพขนาดย่อที่แพลตฟอร์ม RBM แสดงขึ้นมาเมื่อมีการอัปโหลดภาพขนาดย่อ |
RichCard
การ์ดริชมีเดียแบบสแตนด์อโลนหรือภาพสไลด์ของการ์ดริชมีเดียที่ส่งจาก Agent ไปยังผู้ใช้
การแสดง JSON |
---|
{ // Union field |
ช่อง | |
---|---|
ฟิลด์การรวม card การ์ดแบบเดี่ยวหรือภาพหมุน card ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น |
|
carouselCard |
ภาพสไลด์ของการ์ด |
standaloneCard |
บัตรสแตนด์อโลน |
CarouselCard
ภาพสไลด์ของการ์ด
การแสดง JSON |
---|
{ "cardWidth": enum ( |
ช่อง | |
---|---|
cardWidth |
ความกว้างของการ์ดในภาพสไลด์ |
cardContents[] |
รายการเนื้อหาของการ์ดแต่ละใบในภาพสไลด์ ภาพสไลด์มีการ์ดอย่างน้อย 2 ใบและได้สูงสุด 10 ใบ |
CarouselCard.CardWidth
ความกว้างของการ์ดในภาพสไลด์
Enum | |
---|---|
CARD_WIDTH_UNSPECIFIED |
ไม่ได้ระบุ |
SMALL |
120 DP โปรดทราบว่าไม่สามารถใช้สื่อขนาดสูงได้ |
MEDIUM |
232 DP |
CardContent
เนื้อหาการ์ด
การแสดง JSON |
---|
{ "title": string, "description": string, "media": { object ( |
ช่อง | |
---|---|
title |
(ไม่บังคับ) ชื่อของการ์ด สูงสุด 200 อักขระ |
description |
(ไม่บังคับ) คำอธิบายของการ์ด สูงสุด 2,000 อักขระ |
media |
(ไม่บังคับ) สื่อ (รูปภาพ, GIF, วิดีโอ) ที่จะใส่ไว้ในการ์ด |
suggestions[] |
(ไม่บังคับ) รายการคำแนะนำที่จะรวมไว้ในการ์ด แนะนำได้สูงสุด 4 รายการ |
สื่อ
ไฟล์สื่อภายในการ์ดริชมีเดีย
การแสดง JSON |
---|
{ "height": enum ( |
ช่อง | |
---|---|
height |
ความสูงของสื่อภายในการ์ดริชมีเดียที่มีเลย์เอาต์แนวตั้ง สำหรับการ์ดแบบสแตนด์อโลนที่มีเลย์เอาต์แนวนอน คุณจะปรับแต่งความสูงไม่ได้ และช่องนี้จะไม่สนใจ |
ฟิลด์การรวม content เนื้อหาสื่อ content ต้องเป็นอย่างใดอย่างหนึ่งต่อไปนี้เท่านั้น |
|
fileName |
ชื่อที่ไม่ซ้ำกันของไฟล์ซึ่งแสดงโดยแพลตฟอร์ม RBM เมื่ออัปโหลดไฟล์ เลิกใช้งานเพื่อเปลี่ยนไปใช้ UploadRbmFile ด้านล่างแล้ว |
uploadedRbmFile |
มีตัวระบุสำหรับไฟล์และภาพขนาดย่อที่อัปโหลดและแสดงโดยเซิร์ฟเวอร์ RBM |
contentInfo |
ข้อมูลเกี่ยวกับไฟล์ ซึ่งรวมถึง URL ของไฟล์และ URL ภาพขนาดย่อของไฟล์ แพลตฟอร์ม RBM จะแสดงเนื้อหาจากแคช แต่ตัวแทนสามารถบังคับให้แพลตฟอร์ม RBM ดึงข้อมูลเนื้อหาเวอร์ชันใหม่และรีเฟรชแคชได้ |
ContentInfo
ข้อความที่มีข้อมูลเนื้อหา
การแสดง JSON |
---|
{ "fileUrl": string, "thumbnailUrl": string, "forceRefresh": boolean } |
ช่อง | |
---|---|
fileUrl |
URL ของไฟล์ที่เข้าถึงได้แบบสาธารณะ แพลตฟอร์ม RBM จะกำหนดประเภท MIME ของไฟล์จากช่องประเภทเนื้อหาในส่วนหัว HTTP เมื่อแพลตฟอร์มดึงไฟล์ ต้องมีฟิลด์ content-type อยู่และถูกต้องในการตอบกลับ HTTP จาก URL แนะนำให้ใช้ขนาดไฟล์สูงสุด 100 MB |
thumbnailUrl |
(ไม่บังคับ สำหรับไฟล์รูปภาพและวิดีโอเท่านั้น) URL ของภาพขนาดย่อที่เข้าถึงได้แบบสาธารณะ ขนาดสูงสุด 100 KB หากคุณไม่ระบุ URL ของภาพขนาดย่อ แพลตฟอร์ม RBM จะแสดงภาพขนาดย่อที่ว่างเปล่าของตัวยึดตำแหน่งจนกว่าอุปกรณ์ของผู้ใช้จะดาวน์โหลดไฟล์ ไฟล์อาจไม่ดาวน์โหลดโดยอัตโนมัติและอาจต้องให้ผู้ใช้แตะปุ่มดาวน์โหลด ทั้งนี้ขึ้นอยู่กับการตั้งค่าของผู้ใช้ |
forceRefresh |
หากมีการตั้งค่า แพลตฟอร์ม RBM จะดึงข้อมูลไฟล์และภาพขนาดย่อจาก URL ที่ระบุ แม้ว่าแพลตฟอร์มจะแคชสำเนาไฟล์ (และ/หรือภาพขนาดย่อ) ไว้ก็ตาม |
Media.Height
ความสูงของสื่อ
Enum | |
---|---|
HEIGHT_UNSPECIFIED |
ไม่ได้ระบุ |
SHORT |
112 DP |
MEDIUM |
168 DP |
TALL |
264 DP ใช้ไม่ได้กับภาพสไลด์การ์ดริชมีเดียเมื่อตั้งค่าความกว้างของการ์ดเป็นขนาดเล็ก |
คำแนะนำ
การตอบกลับที่แนะนำหรือการดำเนินการที่แนะนำซึ่งรวมอยู่ในการ์ดริชมีเดียหรือในรายการชิปคำแนะนำ
การแสดง JSON |
---|
{ // Union field |
ช่อง | |
---|---|
ฟิลด์การรวม option การตอบกลับที่แนะนำหรือการดำเนินการที่แนะนำ option ต้องเป็นอย่างใดอย่างหนึ่งต่อไปนี้เท่านั้น |
|
reply |
ผู้ใช้สามารถแตะการตอบกลับที่แนะนำเพื่อส่งข้อความตอบกลับไปยังตัวแทนได้ |
action |
ผู้ใช้สามารถแตะการดำเนินการที่แนะนำเพื่อเริ่มการดำเนินการดั้งเดิมที่เกี่ยวข้องในอุปกรณ์ได้ |
SuggestedReply
เมื่อแตะแล้ว ระบบจะส่งข้อความตอบกลับไปยังตัวแทน
การแสดง JSON |
---|
{ "text": string, "postbackData": string } |
ช่อง | |
---|---|
text |
ข้อความที่แสดงในการตอบกลับที่แนะนำและส่งกลับไปยังตัวแทนเมื่อผู้ใช้แตะคำตอบ สูงสุด 25 อักขระ |
postbackData |
เพย์โหลดที่เข้ารหัสแบบ Base64 ที่ Agent ได้รับในเหตุการณ์ของผู้ใช้เมื่อผู้ใช้แตะการตอบกลับที่แนะนำ |
SuggestedAction
เมื่อแตะ จะเป็นการเริ่มการทำงานดั้งเดิมที่เกี่ยวข้องในอุปกรณ์
การแสดง JSON |
---|
{ "text": string, "postbackData": string, "fallbackUrl": string, // Union field |
ช่อง | |
---|---|
text |
ข้อความที่แสดงในการดำเนินการที่แนะนำ สูงสุด 25 อักขระ |
postbackData |
เพย์โหลด (เข้ารหัสแบบ Base64) ที่จะส่งไปยัง Agent ในเหตุการณ์ผู้ใช้ที่แสดงผลลัพธ์เมื่อผู้ใช้แตะการดำเนินการที่แนะนำ |
fallbackUrl |
(ไม่บังคับ) URL ทางเลือกที่จะใช้หากไคลเอ็นต์ไม่รองรับการดำเนินการที่แนะนำ URL ทางเลือกจะเปิดในหน้าต่างเบราว์เซอร์ใหม่ |
ฟิลด์การรวม action การดำเนินการดั้งเดิมที่เริ่มต้นในอุปกรณ์เมื่อผู้ใช้แตะการดำเนินการที่แนะนำ action จะเป็นการดำเนินการอย่างใดอย่างหนึ่งต่อไปนี้เท่านั้น |
|
dialAction |
เปิดแอปโทรศัพท์เริ่มต้นของผู้ใช้ที่มีการกรอกหมายเลขโทรศัพท์ที่ตัวแทนระบุ |
viewLocationAction |
เปิดแอปแผนที่เริ่มต้นของผู้ใช้แล้วเลือกตำแหน่งที่ตัวแทนระบุหรือการค้นหารอบๆ ตำแหน่งของผู้ใช้ตามคำค้นหาที่ระบุโดยตัวแทน |
createCalendarEventAction |
เปิดแอปปฏิทินเริ่มต้นของผู้ใช้และเริ่มโฟลว์กิจกรรมในปฏิทินใหม่ที่มีข้อมูลกิจกรรมที่ตัวแทนระบุไว้ล่วงหน้า |
openUrlAction |
เปิดแอปเว็บเบราว์เซอร์เริ่มต้นของผู้ใช้ไปยัง URL ที่ระบุ หากผู้ใช้มีแอปที่ติดตั้งไว้ซึ่งลงทะเบียนเป็นตัวแฮนเดิลเริ่มต้นสำหรับ URL แอปจะเปิดขึ้นแทน และจะใช้ไอคอนของแอปใน UI การดำเนินการที่แนะนำ |
shareLocationAction |
เปิดตัวเลือกสถานที่ของแอป RCS เพื่อให้ผู้ใช้เลือกตำแหน่งที่จะส่งถึงตัวแทน |
DialAction
เปิดแอปโทรศัพท์เริ่มต้นของผู้ใช้ที่มีการกรอกหมายเลขโทรศัพท์ที่ตัวแทนระบุ
การแสดง JSON |
---|
{ "phoneNumber": string } |
ช่อง | |
---|---|
phoneNumber |
หมายเลขโทรศัพท์ในรูปแบบ E.164 เช่น +12223334444 |
ViewLocationAction
เปิดแอปแผนที่เริ่มต้นของผู้ใช้แล้วเลือกตำแหน่งที่ตัวแทนระบุหรือการค้นหารอบๆ ตำแหน่งของผู้ใช้ตามคำค้นหาที่ระบุโดยตัวแทน
การแสดง JSON |
---|
{
"latLong": {
object ( |
ช่อง | |
---|---|
latLong |
(ไม่บังคับ) ละติจูดและลองจิจูดของตำแหน่งที่ระบุ |
label |
(ไม่บังคับ) ป้ายกำกับของหมุดที่วางที่ละติจูดลองจิจูด |
query |
(ไม่บังคับ แต่รองรับเฉพาะในไคลเอ็นต์ Android Messages) แทนที่จะระบุ latLong (และสามารถเลือกติดป้ายกำกับหรือไม่ก็ได้) ตัวแทนสามารถระบุสตริงคำค้นหาแทนได้ สำหรับแอปแผนที่เริ่มต้นที่รองรับฟังก์ชันการค้นหา (รวมถึง Google Maps) การแตะการดำเนินการที่แนะนำนี้จะส่งผลให้เกิดการค้นหาตำแหน่งโดยมีจุดศูนย์กลางอยู่ที่ตำแหน่งปัจจุบันของผู้ใช้ หากข้อความค้นหามีความเฉพาะเจาะจงมากพอ ตัวแทนสามารถใช้ข้อความค้นหานี้เพื่อเลือกสถานที่ใดก็ได้ในโลก เช่น การตั้งค่าสตริงการค้นหาเป็น "Growing Tree Bank" จะแสดงสถานที่ตั้งของธนาคาร Growing Tree Bank ทั้งหมดในบริเวณใกล้เคียงของผู้ใช้ การตั้งค่าสตริงคำค้นหาเป็น "1600 Amphitheater Parkway, Mountain View, CA 94043" จะเลือกที่อยู่ที่เจาะจงนั้นโดยไม่คำนึงถึงสถานที่ตั้งของผู้ใช้ |
LatLng
วัตถุที่แสดงคู่ละติจูด/ลองจิจูด ค่านี้แสดงเป็นเลขคู่ 1 คู่เพื่อแสดงองศาละติจูดและลองจิจูดองศา ออบเจ็กต์นี้ต้องเป็นไปตาม มาตรฐาน WGS84 เว้นแต่จะระบุไว้เป็นอย่างอื่น ค่าต้องอยู่ในช่วงมาตรฐาน
การแสดง JSON |
---|
{ "latitude": number, "longitude": number } |
ช่อง | |
---|---|
latitude |
ละติจูด หน่วยเป็นองศา โดยต้องอยู่ในช่วง [-90.0, +90.0] |
longitude |
ลองจิจูด หน่วยเป็นองศา โดยต้องอยู่ในช่วง [-180.0, +180.0] |
CreateCalendarEventAction
เปิดแอปปฏิทินเริ่มต้นของผู้ใช้และเริ่มโฟลว์กิจกรรมในปฏิทินใหม่ที่มีข้อมูลกิจกรรมที่ตัวแทนระบุไว้ล่วงหน้า
การแสดง JSON |
---|
{ "startTime": string, "endTime": string, "title": string, "description": string } |
ช่อง | |
---|---|
startTime |
เวลาเริ่มต้นกิจกรรม การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: |
endTime |
เวลาสิ้นสุดกิจกรรม การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: |
title |
ชื่อกิจกรรม |
description |
คำอธิบายกิจกรรม |
OpenUrlAction
เปิดแอปเว็บเบราว์เซอร์เริ่มต้นของผู้ใช้ไปยัง URL ที่ระบุ หากผู้ใช้มีแอปที่ติดตั้งไว้ซึ่งลงทะเบียนเป็นตัวแฮนเดิลเริ่มต้นสำหรับ URL แอปจะเปิดขึ้นแทน และจะใช้ไอคอนของแอปใน UI การดำเนินการที่แนะนำ
การแสดง JSON |
---|
{ "url": string } |
ช่อง | |
---|---|
url |
URL |
StandaloneCard
บัตรแบบสแตนด์อโลน
การแสดง JSON |
---|
{ "cardOrientation": enum ( |
ช่อง | |
---|---|
cardOrientation |
การวางแนวของการ์ด |
thumbnailImageAlignment |
การจัดแนวตัวอย่างรูปภาพสำหรับการ์ดแบบสแตนด์อโลนที่มีเลย์เอาต์แนวนอน |
cardContent |
เนื้อหาการ์ด |
StandaloneCard.CardOrientation
การวางแนวของการ์ด
Enum | |
---|---|
CARD_ORIENTATION_UNSPECIFIED |
ไม่ได้ระบุ |
HORIZONTAL |
เลย์เอาต์แนวนอน หาก |
VERTICAL |
เลย์เอาต์แนวตั้ง |
StandaloneCard.ThumbnailImageAlignment
การจัดแนวตัวอย่างรูปภาพสำหรับการ์ดแบบสแตนด์อโลนที่มีเลย์เอาต์แนวนอน
Enum | |
---|---|
THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED |
ไม่ได้ระบุ |
LEFT |
ตัวอย่างไฟล์จัดชิดซ้าย |
RIGHT |
การแสดงตัวอย่างไฟล์อยู่ในแนวที่ถูกต้อง |
วิธีการ |
|
---|---|
|
ส่งข้อความจากตัวแทนไปยังผู้ใช้ |
|
เพิกถอนข้อความของตัวแทนที่ส่งแล้วแต่ยังไม่ได้ส่ง |