翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
RCS の提案の設定
提案は、RCS メッセージの下または内部に表示されるインタラクティブなチップです。URL を開く、電話番号を呼び出す、場所を共有するなど、事前に定義された返信やアクションを提示することで、受信者が入力することなく、会話を通じて受信者をガイドします。提案は、 を使用してインタラクティブで会話的なエクスペリエンスを構築する方法ですSendRcsMessage。
2 つのレベルで、任意のコンテンツタイプ (テキスト、ファイル、リッチカード、カルーセル) に提案を追加できます。
-
メッセージレベル。の最上位
SuggestionsリストでRcsMessageContentとともに提供されますContent。メッセージごとに最大 11 個の提案を含めることができます。 -
カードレベル。個々のリッチカードまたはカルーセルカード
Suggestionsのリストで提供されます。カードごとに最大 4 つの候補を含めることができます。
AWSエンドユーザーメッセージングは、、Reply、OpenUrl、、DialPhoneShowLocation、RequestLocationおよび の 6 つの提案タイプをサポートしていますCreateCalendarEvent。すべての提案には、Textラベル (最大 25 文字) と PostbackData (最大 2,048 文字) が必要です。
トピック
ポストバックデータの仕組み
各提案には、受信者が提案を選択したときに AWSEnd User Messaging がアプリケーションに送信する最大 2,048 文字のPostbackData文字列が含まれます。ポストバックデータは受信者には表示されません。これを使用して、ルーティング情報、インテント識別子、セッションコンテキスト、またはバックエンドが選択を処理するために必要なメタデータをエンコードします。
受信者が提案を選択すると、AWSEnd User Messaging は、双方向メッセージング用に設定した Amazon SNS トピックにインバウンドメッセージイベントを配信します。表示テキストpostbackDataではなく にロジックをルーティングします。インバウンドイベントの詳細については、「」を参照してくださいRCS メッセージイベント。
提案の表示
- 一時的な提案 (デフォルト)
-
一時的な提案は、メッセージバブルの外側、最新のメッセージの下に表示されます。受信者が選択するか、メッセージを送信すると、それらは消えます。
- 永続的な提案
-
永続的な提案はメッセージバブル内に表示され、受信者がスクロールして過ぎたり、後のメッセージとやり取りした後も表示されます。永続的な表示は、リッチカード内の提案の位置によって決まります。スタンドアロンのリッチカードにアタッチされた提案は、サポートされているクライアントで永続的にレンダリングされます。
Reply
Reply 提案は、事前定義されたテキスト返信をエージェントに送信します。表示テキストは、会話の送信メッセージとして表示され、 PostbackDataはアプリケーションに配信されます。
{ "Reply": { "Text": "Yes, confirm", "PostbackData": "confirm_order_12345" } }
| フィールド | 必要 | 制約 |
|---|---|---|
Text | はい | 最大 25 文字 |
PostbackData | はい | 最大 2,048 文字 |
OpenUrl
OpenUrl 提案により URL が開きます。デフォルトでは、URL はデバイスブラウザで開きます。受信者をメッセージングアプリ内に保持するウェブビューで 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 アプリ内ウェブビューで を開くには |
WebviewViewMode | 条件付き | Application が の場合に必須WEBVIEW: FULL、HALF、または TALL |
注記
Url は https://プロトコルを使用する必要があります。s3:// URL が拒否されました。標準ブラウザが開いているのとは異なり、ウェブビューは受信者を会話内に保持します。これは、支払いやフォームなどの短いフローに役立ちます。
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 文字 |
提案タップの受信
受信者が提案を選択すると、AWSEnd User Messaging は双方向 SNS トピックにインバウンドメッセージを発行します。には、提案タイプ、表示テキスト、postbackData設定した を含む JSON オブジェクトmessageBodyが含まれています。ロジックを にルーティングします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 文字 |
ベストプラクティス
テキストのアクション指向を維持します。Track order、Call support、View メニューなどの動詞を使用します。
3~5 つのオプションを提供します。5 人以上が受信者を圧倒する可能性があります。
でルーティング
PostbackDataします。テキストは表示されません。テキストはユーザー用、ポストバックデータはアプリケーション用です。action:valueペアや JSON など、ポストバックデータを一貫して構造化します。提案をタップするのではなく、受信者がフリーテキストを入力するケースを処理します。
Reply、、 などの提案タイプを 1 つのメッセージに結合OpenUrlしますDialPhone。
詳細なガイダンスについては、「」を参照してくださいRCS のベストプラクティス。