リソース: AgentMessage
エージェントからユーザーに送信されるメッセージ。
JSON 表現 |
---|
{ "name": string, "sendTime": string, "contentMessage": { object ( |
フィールド | |
---|---|
name |
このフィールドは RBM プラットフォームによって設定されます。エージェント向けのメッセージを作成する際には含めないでください。このフィールドは「phones/{E.164}/agentMessages/{messageId}」を解決します。ここで、{E.164} は E.164 形式のユーザーの電話番号、{messageId} はエージェントが割り当てたエージェント メッセージの ID です。 |
sendTime |
このフィールドは RBM プラットフォームによって設定されます。エージェント向けのメッセージを作成する際には含めないでください。このフィールドは、メッセージがユーザーに送信された時刻に解決されます。 RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: |
contentMessage |
エージェント メッセージの内容。 |
共用体フィールド
|
|
expireTime |
省略可。このリソースが期限切れとみなされるタイムスタンプ(UTC)。この値は、設定されている場合、または TTL フィールドが設定されている場合は、出力に提供されます。 RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: |
ttl |
省略可。入力のみのメッセージが自動的に取り消されるまでの有効期間です。
|
AgentContentMessage
エージェントからユーザーに送信されたメッセージの内容。
JSON 表現 |
---|
{ "suggestions": [ { object ( |
フィールド | |
---|---|
suggestions[] |
返信文と操作の候補のリスト。関連するエージェント メッセージの後に、候補ワードのリストとして表示されます。候補は最大 11 件です。 このチップは、関連付けられているエージェントのメッセージが会話内の最新のメッセージ(エージェントとユーザーのメッセージの両方を含む)である場合にのみ表示されます。ユーザーは提案された返信をタップして、テキスト返信をエージェントに返信できます。また、提案されたアクションをタップしてデバイスでネイティブ アクションを開始することもできます。 |
共用体フィールド content 。エージェント メッセージ content の内容は、次のいずれかになります。 |
|
text |
UTF-8 でエンコードされたテキスト。 |
fileName |
ファイルの一意の名前。エージェントがファイルをアップロードすると、RBM プラットフォームはファイル名を返します。以下で非推奨となり、uploadedRbmFile に置き換えられました。 |
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
カルーセル内のカードの幅。
列挙型 | |
---|---|
CARD_WIDTH_UNSPECIFIED |
指定されていません。 |
SMALL |
120 DP。なお、縦長のメディアは使用できません。 |
MEDIUM |
232 DP。 |
CardContent
カードの内容
JSON 表現 |
---|
{ "title": string, "description": string, "media": { object ( |
フィールド | |
---|---|
title |
(省略可)カードのタイトル。最大半角 200 文字(全角 100 文字)。 |
description |
(省略可)カードの説明。最大半角 2,000 文字(全角 1,000 文字)。 |
media |
(省略可)カードに含めるメディア(画像、GIF、動画)。 |
suggestions[] |
(省略可)カードに含める候補のリスト。候補は最大 4 件です。 |
メディア
リッチカード内のメディア ファイル。
JSON 表現 |
---|
{ "height": enum ( |
フィールド | |
---|---|
height |
縦向きレイアウトのリッチカード内のメディアの高さ。横向きレイアウトのスタンドアロン カードの場合、高さはカスタマイズできないため、このフィールドは無視されます。 |
共用体フィールド content 。メディア コンテンツ content は次のいずれかになります。 |
|
fileName |
ファイルのアップロード時に RBM プラットフォームから返されたファイルの一意の名前。以下で非推奨となり、uploadedRbmFile に置き換えられました。 |
uploadedRbmFile |
RBM サーバーによってアップロードされ、配信されたファイルとサムネイルの識別子が格納されています |
contentInfo |
ファイルに関する情報(ファイルの URL やファイルのサムネイルの URL など)。 RBM プラットフォームはキャッシュからコンテンツを提供しますが、エージェントは RBM プラットフォームに対してコンテンツの新しいバージョンを取得してキャッシュを更新するよう強制できます。 |
ContentInfo
コンテンツ情報を含むメッセージ。
JSON 表現 |
---|
{ "fileUrl": string, "thumbnailUrl": string, "forceRefresh": boolean } |
フィールド | |
---|---|
fileUrl |
一般公開されているファイルの URL。RBM プラットフォームは、ファイルをフェッチするときに、HTTP ヘッダーの content-type フィールドからファイルの MIME タイプを判断します。URL からの HTTP レスポンスに content-type フィールドは正確に記述されている必要があります。推奨される最大ファイルサイズは 100 MB です。 |
thumbnailUrl |
(省略可、画像ファイル、音声ファイル、動画ファイルの場合のみ)一般にアクセス可能なサムネイルの URL。最大サイズ: 100 KB。 サムネイルの URL を指定しない場合、ユーザーのデバイスがファイルをダウンロードするまで、RBM プラットフォームは空白のプレースホルダのサムネイルを表示します。ユーザーの設定によっては、ファイルが自動的にダウンロードされず、ダウンロード ボタンをタップしなければならない場合があります。 |
forceRefresh |
設定されている場合、RBM プラットフォームはファイル(またはサムネイル)のコピーをキャッシュに保存している場合でも、指定された URL からファイルとサムネイルを取得します。 |
Media.Height
メディアの高さ
列挙型 | |
---|---|
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 文字(全角 12 文字)以内。 |
postbackData |
ユーザーが返信メッセージの候補をタップしたときに、エージェントがユーザー イベントで受け取る Base64 エンコード ペイロード。 |
SuggestedAction
タップすると、対応するネイティブ アクションがデバイス上で開始されます。
JSON 表現 |
---|
{ "text": string, "postbackData": string, "fallbackUrl": string, // Union field |
フィールド | |
---|---|
text |
アクション候補に表示されるテキスト。半角 25 文字(全角 12 文字)以内。 |
postbackData |
ユーザーが提案されたアクションをタップしたときに発生するユーザー イベントでエージェントに送信されるペイロード(base64 エンコード)。 |
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 メッセージ クライアントでのみサポート)latLong(および必要に応じてラベル)を指定する代わりに、エージェントがクエリ文字列を指定できます。検索機能をサポートするデフォルトの地図アプリ(Google マップなど)では、この操作候補をタップすると、ユーザーの現在地を中心に場所検索が行われます。クエリが具体的であれば、エージェントはそれを使用して世界中の場所を選択できます。 たとえば、クエリ文字列を「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
カードの向き。
列挙型 | |
---|---|
CARD_ORIENTATION_UNSPECIFIED |
指定されていません。 |
HORIZONTAL |
横向きレイアウト。 横向きリッチカードの |
VERTICAL |
縦向きレイアウト。 |
StandaloneCard.ThumbnailImageAlignment
横向きレイアウトのスタンドアロン カードの画像プレビューの配置。
列挙型 | |
---|---|
THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED |
指定されていません。 |
LEFT |
ファイルのプレビューが左揃えになっています。 |
RIGHT |
ファイルのプレビューが右揃えになっています。 |
メソッド |
|
---|---|
|
エージェントからユーザーにメッセージを送信します。 |
|
送信済みだが未配信のエージェント メッセージを取り消します。 |