ทรัพยากร: AgentMessage
ข้อความที่ส่งจากตัวแทนถึงผู้ใช้
การแสดง JSON |
---|
{ "name": string, "sendTime": string, "contentMessage": { object ( |
ช่อง | |
---|---|
name |
ช่องนี้จะกำหนดโดยแพลตฟอร์ม RBM อย่าใส่ไว้เมื่อสร้างข้อความตัวแทน ช่องนี้แปลงค่า "phones/{E.164}/agentMessages/{messageId}" โดยที่ {E.164} คือหมายเลขโทรศัพท์ของผู้ใช้ในรูปแบบ E.164 และ {messageId} คือรหัสที่ตัวแทนกำหนดของข้อความจากตัวแทน |
sendTime |
ช่องนี้จะกำหนดโดยแพลตฟอร์ม RBM อย่าใส่ไว้เมื่อสร้างข้อความ Agent ช่องนี้จะระบุเวลาที่ส่งข้อความถึงผู้ใช้ การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขที่เป็นเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: |
contentMessage |
เนื้อหาของข้อความตัวแทน |
ฟิลด์สหภาพ
|
|
expireTime |
ไม่บังคับ การประทับเวลาในเขตเวลา UTC ที่ถือว่าแหล่งข้อมูลนี้หมดอายุ ค่านี้ระบุไว้ในเอาต์พุตหากมีการตั้งค่าไว้หรือหากตั้งค่าช่อง TTL ไว้ การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขที่เป็นเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: |
ttl |
ไม่บังคับ อินพุตเท่านั้น ระยะเวลาที่จะเผยแพร่ข้อความก่อนที่จะถูกเพิกถอนโดยอัตโนมัติ ระยะเวลาเป็นวินาทีที่มีเลขเศษส่วนไม่เกิน 9 หลัก ลงท้ายด้วย " |
AgentContentMessage
เนื้อหาของข้อความที่ส่งจากตัวแทนไปยังผู้ใช้
การแสดง JSON |
---|
{ "suggestions": [ { object ( |
ช่อง | |
---|---|
suggestions[] |
รายการการตอบกลับที่แนะนำและการดำเนินการที่แนะนำซึ่งจะปรากฏเป็นรายการชิปคำแนะนำตามหลังข้อความตัวแทนที่เกี่ยวข้อง สูงสุด 11 คำแนะนำ ชิปจะแสดงก็ต่อเมื่อข้อความตัวแทนที่เกี่ยวข้องเป็นข้อความล่าสุดในการสนทนาเท่านั้น (รวมถึงข้อความของตัวแทนและข้อความของผู้ใช้) ผู้ใช้สามารถแตะการตอบกลับที่แนะนำเพื่อส่งข้อความตอบกลับไปยังตัวแทน หรือแตะการดำเนินการที่แนะนำเพื่อเริ่มการดำเนินการที่มากับอุปกรณ์ |
ฟิลด์สหภาพ content เนื้อหาของข้อความตัวแทน 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
การ์ดริชมีเดียแบบสแตนด์อโลนหรือภาพสไลด์ของการ์ดริชมีเดียที่ส่งจากตัวแทนไปยังผู้ใช้
การแสดง 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 เมื่อแพลตฟอร์มดึงข้อมูลไฟล์ ต้องมีฟิลด์ประเภทเนื้อหาและถูกต้องในการตอบกลับ 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 |
(ไม่บังคับ) ป้ายกำกับของหมุดที่วางที่ latLong |
query |
(ไม่บังคับ รองรับเฉพาะในโปรแกรม Android Messages เท่านั้น) แทนที่จะระบุ latLong (และสามารถเลือกป้ายกำกับ) ตัวแทนจะสามารถระบุสตริงการค้นหาแทน สำหรับแอปแผนที่เริ่มต้นที่รองรับฟังก์ชันการค้นหา (รวมถึง Google Maps) การแตะการดำเนินการที่แนะนำนี้จะส่งผลให้เกิดการค้นหาตำแหน่งโดยมีจุดศูนย์กลางอยู่ที่ตำแหน่งปัจจุบันของผู้ใช้ หากข้อความค้นหานั้นเฉพาะเจาะจงมากพอ ตัวแทนสามารถใช้ข้อความค้นหาดังกล่าวเพื่อเลือกสถานที่ใดก็ได้ในโลก เช่น การตั้งค่าสตริงการค้นหาเป็น "Growing Tree Bank" จะแสดงสถานที่ตั้งธนาคาร Growing Tree Bank ทั้งหมดในบริเวณใกล้เคียงของผู้ใช้ การตั้งค่าสตริงการค้นหาเป็น "1600 Amphitheater Parkway, Mountain View, CA 94043" จะเลือกที่อยู่ที่เจาะจงนั้นโดยไม่คำนึงถึงสถานที่ตั้งของผู้ใช้ |
LatLng
วัตถุที่แสดงคู่ละติจูด/ลองจิจูด ค่านี้แสดงเป็นเลขคู่คู่แทนองศาละติจูดและลองจิจูดองศา ออบเจ็กต์นี้ต้องเป็นไปตาม มาตรฐาน 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 |
ตัวอย่างไฟล์จัดชิดขวาแล้ว |
วิธีการ |
|
---|---|
|
ส่งข้อความจากตัวแทนไปยังผู้ใช้ |
|
เพิกถอนข้อความของตัวแทนที่ส่งแล้วแต่ยังไม่ได้ส่ง |