本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定 RCS 建議
建議是顯示在 RCS 訊息下方或內部的互動式晶片。它們透過呈現預先定義的回覆和動作來引導收件人進行對話,例如開啟 URL、撥打電話號碼或共用位置,而無需收件人輸入 。建議是如何使用 建立互動式的對話體驗SendRcsMessage。
您可以在兩個層級將建議新增至任何內容類型 (文字、檔案、豐富卡和浮動切換):
-
訊息層級。在 的最上層
Suggestions清單中提供RcsMessageContent,以及Content。每則訊息最多可包含 11 個建議。 -
卡片層級。在個別的實物卡或浮動切換卡
Suggestions清單中提供。每張卡片最多可包含 4 個建議。
AWS最終使用者傳訊支援六個建議類型:Reply、OpenUrl、DialPhone、RequestLocation、 ShowLocation和 CreateCalendarEvent。每個建議都需要Text標籤 (最多 25 個字元) 和 PostbackData(最多 2,048 個字元)。
主題
後退資料的運作方式
每個建議都包含最多 2,048 個字元的PostbackData字串,當收件人選擇建議時,AWS最終使用者傳訊會傳回您的應用程式。收件人看不到後退資料。使用它來編碼路由資訊、意圖識別符、工作階段內容或後端處理選取項目所需的任何中繼資料。
當收件人選擇建議時,AWS最終使用者傳訊會將傳入訊息事件傳送到您為雙向傳訊設定的 Amazon SNS 主題。在 上路由邏輯,postbackData而不是顯示文字。如需傳入事件的詳細資訊,請參閱 RCS 訊息事件。
建議顯示
- 暫時性建議 (預設)
-
暫時性建議會出現在訊息泡泡外部,位於最新訊息下方。收件人選擇一個訊息或傳送任何訊息後,它們就會消失。
- 持久性建議
-
持久性建議會出現在訊息氣泡中,並在收件人捲動過去或與稍後的訊息互動後保持可見。持久性顯示取決於建議在豐富卡片中的位置。連接到獨立 rich 卡的建議會在支援的用戶端上呈現為持久性。
Reply
Reply 建議會將預先定義的文字回覆傳回給您的客服人員。顯示文字會在對話中顯示為已傳送的訊息,而 PostbackData會傳送到您的應用程式。
{ "Reply": { "Text": "Yes, confirm", "PostbackData": "confirm_order_12345" } }
| 欄位 | 必要 | 限制條件 |
|---|---|---|
Text | 是 | 最多 25 個字元 |
PostbackData | 是 | 最多 2,048 個字元 |
OpenUrl
OpenUrl 建議會開啟 URL。根據預設,URL 會在裝置瀏覽器中開啟。若要在 Webview 中開啟將收件人保留在簡訊應用程式中的 URL,請將 Application 設定為 WEBVIEW並指定 WebviewViewMode。
{ "OpenUrl": { "Text": "Complete payment", "PostbackData": "pay_12345", "Url": "https://example.com/pay", "Application": "WEBVIEW", "WebviewViewMode": "TALL" } }
| 欄位 | 必要 | 限制條件 |
|---|---|---|
Text | 是 | 最多 25 個字元 |
PostbackData | 是 | 最多 2,048 個字元 |
Url | 是 | 必須以 開頭https://。最多 2,048 個字元 |
Application | 否 | WEBVIEW 在應用程式內 Webview 中開啟 |
WebviewViewMode | 有條件 | 當 Application為 時為必要WEBVIEW:HALF、 FULL或 TALL |
注意
Url 必須使用 https://通訊協定。s3:// URL 遭到拒絕。與標準瀏覽器開啟不同,Webview 可讓收件人進入對話,這對於付款或表單等短期流程很有用。
DialPhone
DialPhone 建議會對您指定的號碼開始通話。
{ "DialPhone": { "Text": "Call support", "PostbackData": "dial_support", "PhoneNumber": "+18005551234" } }
| 欄位 | 必要 | 限制條件 |
|---|---|---|
Text | 是 | 最多 25 個字元 |
PostbackData | 是 | 最多 2,048 個字元 |
PhoneNumber | 是 | 例如 E.164 格式 +18005551234 |
ShowLocation
ShowLocation 建議會在您指定的座標開啟映射。
{ "ShowLocation": { "Text": "View on map", "PostbackData": "show_store_loc", "Latitude": 47.6062, "Longitude": -122.3321, "Label": "Seattle store" } }
| 欄位 | 必要 | 限制條件 |
|---|---|---|
Text | 是 | 最多 25 個字元 |
PostbackData | 是 | 最多 2,048 個字元 |
Latitude | 是 | -90.0 到 90.0 |
Longitude | 是 | -180.0 到 180.0 |
Label | 否 | 地圖接腳的顯示標籤 |
RequestLocation
RequestLocation 建議會提示收件人分享其目前的位置。共用的座標會以個別傳入位置事件的形式抵達。
{ "RequestLocation": { "Text": "Share location", "PostbackData": "request_user_location" } }
| 欄位 | 必要 | 限制條件 |
|---|---|---|
Text | 是 | 最多 25 個字元 |
PostbackData | 是 | 最多 2,048 個字元 |
CreateCalendarEvent
CreateCalendarEvent 建議會使用您指定的詳細資訊,在收件人的裝置上建立行事曆事件。
{ "CreateCalendarEvent": { "Text": "Add to calendar", "PostbackData": "calendar_appt_5678", "Title": "Service appointment", "StartTime": "2026-05-28T14:00:00Z", "EndTime": "2026-05-28T15:00:00Z", "Description": "Downtown location. Arrive 10 minutes early." } }
| 欄位 | 必要 | 限制條件 |
|---|---|---|
Text | 是 | 最多 25 個字元 |
PostbackData | 是 | 最多 2,048 個字元 |
Title | 是 | 最多 100 個字元 |
StartTime | 是 | 事件開始時間 |
EndTime | 是 | 事件結束時間 |
Description | 否 | 最多 500 個字元 |
接收建議點選
當收件人選擇建議時,AWS最終使用者傳訊會將傳入訊息發佈到您的雙向 SNS 主題。messageBody 包含 JSON 物件,其中包含建議類型、顯示文字和postbackData您設定的 。在 上路由邏輯postbackData。
{ "originationNumber": "+12065551234", "destinationNumber": "rcs-a1b2c3d4", "messageBody": "{\"type\":\"SUGGESTION\",\"text\":\"Yes, confirm\",\"postbackData\":\"confirm_order_12345\"}", "inboundMessageId": "msg-abc123def456" }
對於RequestLocation點選,收件人的座標會抵達不同的傳入位置事件。如需完整的傳入事件參考,請參閱 RCS 訊息事件。
建議限制
| 限制條件 | 限制 |
|---|---|
建議Text長度 | 25 個字元 |
PostbackData 長度 | 2,048 個字元 |
| 每則訊息的建議 | 11 |
| 每張卡片的建議 | 4 |
CreateCalendarEvent 標題 | 100 個字元 |
CreateCalendarEvent 描述 | 500 個字元 |
最佳實務
保持文字動作導向。使用追蹤順序、通話支援或檢視功能表等動詞。
提供 3 到 5 個選項。超過 5 個可能讓收件人不堪重負。
在 上路由
PostbackData,不顯示文字。文字適用於人員,後退資料適用於您的應用程式。持續建構後備資料,例如
action:value配對或 JSON。處理收件人輸入任意文字而非點選建議的情況。
在單一訊息中結合建議類型,例如
Reply、OpenUrl和DialPhone。
如需更深入的指引,請參閱 RCS 最佳實務。