REST Resource: phones.agentMessages

リソース: AgentMessage

エージェントからユーザーに送信されるメッセージ。

JSON 表現
{
  "name": string,
  "sendTime": string,
  "contentMessage": {
    object (AgentContentMessage)
  },
  "messageTrafficType": enum (MessageTrafficType),

  // Union field expiration can be only one of the following:
  "expireTime": string,
  "ttl": string
  // End of list of possible types for union field expiration.
}
フィールド
name

string

このフィールドは RBM プラットフォームによって設定されます。エージェント メッセージの作成時には含めないでください。このフィールドは「phones/{E.164}/agentMessages/{messageId}」を解決します。ここで、{E.164} は E.164 形式のユーザーの電話番号、{messageId} はエージェント メッセージのエージェント割り当て ID です。

sendTime

string (Timestamp format)

このフィールドは RBM プラットフォームによって設定されます。エージェント メッセージの作成時には含めないでください。このフィールドは、メッセージがユーザーに送信される時間を解決します。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

contentMessage

object (AgentContentMessage)

エージェント メッセージの内容。

messageTrafficType

enum (MessageTrafficType)

メッセージ トラフィックのタイプ。

共用体フィールド expiration

expiration は次のいずれかになります。

expireTime

string (Timestamp format)

省略可。このリソースの有効期限が切れたとみなされる、UTC 形式のタイムスタンプ。この値は、設定されている場合、または TTL フィールドが設定されている場合に出力で提供されます。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

ttl

string (Duration format)

省略可。入力のみのメッセージが自動的に取り消されるまでの有効期間。

s で終わる小数点以下 9 桁までの秒単位の期間。例: "3.5s"

AgentContentMessage

エージェントからユーザーに送信されたメッセージの内容。

JSON 表現
{
  "suggestions": [
    {
      object (Suggestion)
    }
  ],

  // Union field content can be only one of the following:
  "text": string,
  "fileName": string,
  "uploadedRbmFile": {
    object (UploadedRbmFile)
  },
  "richCard": {
    object (RichCard)
  },
  "contentInfo": {
    object (ContentInfo)
  }
  // End of list of possible types for union field content.
}
フィールド
suggestions[]

object (Suggestion)

関連するエージェント メッセージの後に候補ワードのリストとして表示される、返信の候補と操作の候補のリスト。最大 11 個の候補が表示されます。

チップは、関連付けられたエージェント メッセージが会話内の最新のメッセージ(エージェントとユーザーの両方のメッセージを含む)である場合にのみ表示されます。ユーザーは、候補の返信をタップしてテキストの返信をエージェントに送信したり、候補のアクションをタップしてデバイスでネイティブ アクションを開始したりできます。最大 11 個の候補が表示されます。

共用体フィールド content。エージェント メッセージ content の内容は、次のいずれかになります。
text

string

UTF-8 でエンコードされたテキスト。最大 3,072 文字。

fileName
(deprecated)

string

ファイルの一意の名前。エージェントがファイルをアップロードすると、RBM プラットフォームはファイル名を返します。以下の uploadedRbmFile に置き換えられました

uploadedRbmFile

object (UploadedRbmFile)

RBM サーバーにアップロードされ、RBM サーバーによって配信されたファイルとサムネイルの識別子が含まれます

richCard

object (RichCard)

スタンドアロンのリッチカード。

contentInfo

object (ContentInfo)

ファイルの URL やファイルのサムネイルの URL など、ファイルに関する情報。

RBM プラットフォームはキャッシュからコンテンツを配信しますが、エージェントは RBM プラットフォームにコンテンツの新しいバージョンを取得させ、キャッシュを更新させることができます。

UploadedRbmFile

ファイルとサムネイルの情報を含むメッセージ

JSON 表現
{
  "fileName": string,
  "thumbnailName": string
}
フィールド
fileName

string

ファイルがアップロードされたときに RBM プラットフォームから返されるファイルの名前。

thumbnailName

string

サムネイルの名前。サムネイルがアップロードされたときに RBM プラットフォームから返されます。

RichCard

エージェントからユーザーに送信されたスタンドアロンのリッチカードまたはリッチカードのカルーセル。

JSON 表現
{

  // Union field card can be only one of the following:
  "carouselCard": {
    object (CarouselCard)
  },
  "standaloneCard": {
    object (StandaloneCard)
  }
  // End of list of possible types for union field card.
}
フィールド
共用体フィールド card。スタンドアロン カードまたはカードのカルーセル。card は次のいずれかになります。
carouselCard

object (CarouselCard)

カードのカルーセル。

standaloneCard

object (StandaloneCard)

スタンドアロン カード。

CarouselCard

カードのカルーセル。

JSON 表現
{
  "cardWidth": enum (CarouselCard.CardWidth),
  "cardContents": [
    {
      object (CardContent)
    }
  ]
}
フィールド
cardWidth

enum (CarouselCard.CardWidth)

カルーセル内のカードの幅。

cardContents[]

object (CardContent)

カルーセルの各カードのコンテンツのリスト。カルーセルには、最小 2 枚、最大 10 枚のカードを設定できます。

CarouselCard.CardWidth

カルーセル内のカードの幅。

列挙型
CARD_WIDTH_UNSPECIFIED 指定されていません。
SMALL 120 DP。縦長のメディアは使用できません。
MEDIUM 232 DP。

CardContent

カードのコンテンツ

JSON 表現
{
  "title": string,
  "description": string,
  "media": {
    object (Media)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ]
}
フィールド
title

string

(省略可)カードのタイトル。最大 200 文字。

description

string

(省略可)カードの説明。最大 2,000 文字。

media

object (Media)

(省略可)カードに含めるメディア(画像、GIF、動画、PDF)。

suggestions[]

object (Suggestion)

(省略可)カードに含める候補のリスト。最大 4 件の候補。

メディア

リッチカード内のメディア ファイル。

JSON 表現
{
  "height": enum (Media.Height),

  // Union field content can be only one of the following:
  "fileName": string,
  "uploadedRbmFile": {
    object (UploadedRbmFile)
  },
  "contentInfo": {
    object (ContentInfo)
  }
  // End of list of possible types for union field content.
}
フィールド
height

enum (Media.Height)

縦レイアウトのリッチカード内のメディアの高さ。水平レイアウトのスタンドアロン カードの場合、高さはカスタマイズできないため、このフィールドは無視されます。

共用体フィールド content。メディア コンテンツ content は次のいずれかになります。
fileName
(deprecated)

string

ファイルのアップロード時に RBM プラットフォームから返される、ファイルの一意の名前。以下の uploadedRbmFile に置き換えられました

uploadedRbmFile

object (UploadedRbmFile)

RBM サーバーにアップロードされ、RBM サーバーによって配信されたファイルとサムネイルの識別子が含まれます

contentInfo

object (ContentInfo)

ファイルの URL やファイルのサムネイルの URL など、ファイルに関する情報。

RBM プラットフォームはキャッシュからコンテンツを配信しますが、エージェントは RBM プラットフォームにコンテンツの新しいバージョンを取得させ、キャッシュを更新させることができます。

ContentInfo

コンテンツ情報を含むメッセージ。

JSON 表現
{
  "fileUrl": string,
  "thumbnailUrl": string,
  "forceRefresh": boolean
}
フィールド
fileUrl

string

ファイルの一般公開 URL。RBM プラットフォームは、プラットフォームがファイルを取得するときに、HTTP ヘッダーの content-type フィールドからファイルの MIME タイプを判断します。URL からの HTTP レスポンスに Content-Type フィールドが存在し、正確である必要があります。推奨される最大ファイルサイズは 100 MB です。

注: ファイル URL のリダイレクトはサポートされていません。リダイレクトが必要な場合は、CreateFileRequest を使用してください。

thumbnailUrl

string

(省略可、画像、音声、動画ファイルのみ)サムネイルの一般公開 URL。最大サイズは 100 KB。

サムネイルの URL を指定しない場合、ユーザーのデバイスがファイルをダウンロードするまで、RBM プラットフォームには空白のプレースホルダ サムネイルが表示されます。ユーザーの設定によっては、ファイルが自動的にダウンロードされず、ユーザーがダウンロード ボタンをタップする必要がある場合があります。

注: ファイル URL のリダイレクトはサポートされていません。リダイレクトが必要な場合は、CreateFileRequest を使用してください。

forceRefresh

boolean

設定すると、RBM プラットフォームは、プラットフォームにファイルのコピー(および/またはサムネイル)がキャッシュに保存されている場合でも、指定された URL からファイルとサムネイルを取得します。

Media.Height

メディアの高さ

列挙型
HEIGHT_UNSPECIFIED 指定されていません。
SHORT 112 DP。
MEDIUM 168 DP。
TALL 264 DP。カードの幅が小に設定されている場合、リッチカード カルーセルでは使用できません。

候補

リッチカードまたは候補チップリストに含まれる定型返信または候補アクション。

JSON 表現
{

  // Union field option can be only one of the following:
  "reply": {
    object (SuggestedReply)
  },
  "action": {
    object (SuggestedAction)
  }
  // End of list of possible types for union field option.
}
フィールド
共用体フィールド option。候補の返信または候補のアクション option は、次のいずれか 1 つのみにできます。
reply

object (SuggestedReply)

ユーザーは、返信候補をタップして、テキストの返信をエージェントに送信できます。

action

object (SuggestedAction)

ユーザーは、候補のアクションをタップして、デバイスで対応するネイティブ アクションを開始できます。

SuggestedReply

タップすると、テキスト返信がエージェントに返信されます。

JSON 表現
{
  "text": string,
  "postbackData": string
}
フィールド
text

string

ユーザーがタップしたときに、候補の返信に表示され、エージェントに返信されるテキスト。最大 25 文字。

postbackData

string

ユーザーが候補の返信をタップしたときに、エージェントがユーザー イベントで受け取る base64 エンコードされたペイロード。

SuggestedAction

タップすると、デバイスで対応するネイティブ アクションが開始されます。

JSON 表現
{
  "text": string,
  "postbackData": string,
  "fallbackUrl": string,

  // Union field action can be only one of the following:
  "dialAction": {
    object (DialAction)
  },
  "viewLocationAction": {
    object (ViewLocationAction)
  },
  "createCalendarEventAction": {
    object (CreateCalendarEventAction)
  },
  "openUrlAction": {
    object (OpenUrlAction)
  },
  "shareLocationAction": {
    object (ShareLocationAction)
  }
  // End of list of possible types for union field action.
}
フィールド
text

string

操作候補に表示されるテキスト。最大 25 文字。

postbackData

string

ユーザーが提案されたアクションをタップしたときに発生するユーザー イベントでエージェントに送信されるペイロード(base64 エンコード)。2,048 文字以内で指定します。

fallbackUrl

string

(省略可)クライアントが提案されたアクションをサポートしていない場合に使用するフォールバック URL。フォールバック URL は新しいブラウザ ウィンドウで開きます。RFC 3986 で定義されている有効な URI である必要があります。2,048 文字以内で指定します。

共用体フィールド action。ユーザーが候補のアクション action をタップしたときにデバイスで開始されるネイティブ アクションは、次のいずれか 1 つのみです。
dialAction

object (DialAction)

エージェントが指定した電話番号が入力された状態で、ユーザーのデフォルトの電話アプリが開きます。

viewLocationAction

object (ViewLocationAction)

ユーザーのデフォルトの地図アプリを開き、エージェントが指定した場所を選択するか、エージェントが指定したクエリに基づいてユーザーの現在地周辺を検索します。

createCalendarEventAction

object (CreateCalendarEventAction)

ユーザーのデフォルトのカレンダー アプリを開き、エージェントが指定した予定データが事前入力された状態で新しいカレンダーの予定フローを開始します。

openUrlAction

object (OpenUrlAction)

ユーザーのデフォルトのウェブブラウザ アプリを開き、指定された URL を表示します。ユーザーが URL のデフォルト ハンドラとして登録されているアプリをインストールしている場合は、代わりにこのアプリが開かれ、そのアイコンが提案アクションの UI で使用されます。

shareLocationAction

object (ShareLocationAction)

RCS アプリの位置情報選択ツールを開き、ユーザーがエージェントに送信する位置情報を選択できるようにします。

DialAction

エージェントが指定した電話番号が入力された状態で、ユーザーのデフォルトの電話アプリが開きます。

JSON 表現
{
  "phoneNumber": string
}
フィールド
phoneNumber

string

E.164 形式の電話番号(例: +12223334444)。

ViewLocationAction

ユーザーのデフォルトの地図アプリを開き、エージェントが指定した場所を選択するか、エージェントが指定したクエリに基づいてユーザーの現在地周辺を検索します。

JSON 表現
{
  "latLong": {
    object (LatLng)
  },
  "label": string,
  "query": string
}
フィールド
latLong

object (LatLng)

(省略可)指定された場所の緯度と経度。

label

string

(省略可)latLong にドロップされたピンのラベル。

query

string

(省略可、Android メッセージ クライアントでのみサポート)latLong(およびラベル(省略可))を指定する代わりに、エージェントはクエリ文字列を指定できます。検索機能をサポートするデフォルトの地図アプリ(Google マップなど)の場合、この提案されたアクションをタップすると、ユーザーの現在地を中心とした場所の検索が行われます。クエリが十分に具体的であれば、エージェントはそれを使用して世界中の任意の場所を選択できます。

たとえば、クエリ文字列を「Growing Tree Bank」に設定すると、ユーザーの近隣にある Growing Tree Bank のすべての店舗が表示されます。クエリ文字列を「1600 Amphitheater Parkway, Mountain View, CA 94043」に設定すると、ユーザーの現在地に関係なく、その特定の住所が選択されます。

LatLng

緯度と経度のペアを表すオブジェクト。これは緯度を表す倍精度値と経度を表す倍精度値のペアで表現されます。特に明記されていない場合、このオブジェクトは WGS84 規格に準拠する必要があります。値は正規化範囲内で指定する必要があります。

JSON 表現
{
  "latitude": number,
  "longitude": number
}
フィールド
latitude

number

緯度(度単位)。範囲 [-90.0, +90.0] 内になければなりません。

longitude

number

経度(度単位)。範囲 [-180.0, +180.0] 内になければなりません。

CreateCalendarEventAction

ユーザーのデフォルトのカレンダー アプリを開き、エージェントが指定した予定データが事前入力された状態で新しいカレンダーの予定フローを開始します。

JSON 表現
{
  "startTime": string,
  "endTime": string,
  "title": string,
  "description": string
}
フィールド
startTime

string (Timestamp format)

イベントの開始時間。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

endTime

string (Timestamp format)

イベントの終了時間。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

title

string

イベントのタイトル。100 文字以内で指定します。

description

string

イベントの説明。500 文字まで入力できます。

OpenUrlAction

ユーザーのデフォルトのウェブブラウザ アプリを開き、指定された URL を表示します。ユーザーが URL のデフォルト ハンドラとして登録されているアプリをインストールしている場合は、代わりにこのアプリが開かれ、そのアイコンが提案アクションの UI で使用されます。

JSON 表現
{
  "url": string,
  "application": enum (OpenUrlApplication),
  "webviewViewMode": enum (WebviewViewMode),
  "description": string
}
フィールド
url

string

開く URL。2025 年 11 月 1 日より、URL スキームは https:// または http:// にする必要があります。この日以降、他のスキーム(tel:、mailto:、sms: など)を使用する API リクエストは、400 Bad Request エラーで拒否されます。URL は、RFC 3986 で定義されている有効な URI である必要があります。2,048 文字以内で指定します。

application

enum (OpenUrlApplication)

URL を開くアプリケーション、ブラウザ、WebView。ユーザーのデバイスが WebView モードをサポートしているかどうかを確認するには、まず機能チェックを実行します。詳しくは、ドキュメント(https://developers.google.com/business-communications/rcs-business-messaging/guides/build/capabilities)をご覧ください。

webviewViewMode

enum (WebviewViewMode)

ウェブビューの表示モード

description

string

WebView のユーザー補助の説明。

OpenUrlApplication

URL を開くアプリケーションのタイプ

列挙型
OPEN_URL_APPLICATION_UNSPECIFIED 指定なし。ブラウザを使用して開きます。
BROWSER ブラウザを使用して URL を開きます。
WEBVIEW 統合ウェブビュー ウィンドウで URL を開く

WebviewViewMode

ウェブビューのビューモードのタイプ。

列挙型
WEBVIEW_VIEW_MODE_UNSPECIFIED 指定なし。webview を使用するには、ビューモードを指定する必要があります。
FULL ステータスバーに Chatbot の会話のラベルが表示された全画面オーバーレイが必要です。
HALF 画面の半分を覆うオーバーレイが必要です。
TALL 画面の 4 分の 3 を覆うオーバーレイが必要です。

ShareLocationAction

この型にはフィールドがありません。

RCS アプリの位置情報選択ツールを開き、ユーザーがエージェントに送信する位置情報を選択できるようにします。

StandaloneCard

スタンドアロン カード

JSON 表現
{
  "cardOrientation": enum (StandaloneCard.CardOrientation),
  "thumbnailImageAlignment": enum (StandaloneCard.ThumbnailImageAlignment),
  "cardContent": {
    object (CardContent)
  }
}
フィールド
cardOrientation

enum (StandaloneCard.CardOrientation)

カードの向き。

thumbnailImageAlignment

enum (StandaloneCard.ThumbnailImageAlignment)

水平レイアウトのスタンドアロン カードの画像プレビューの配置。

cardContent

object (CardContent)

カードのコンテンツ。

StandaloneCard.CardOrientation

カードの向き。

列挙型
CARD_ORIENTATION_UNSPECIFIED 指定されていません。
HORIZONTAL

横長レイアウト。

横型リッチカードの object(CardContent)media フィールドが含まれている場合は、titledescriptionsuggestions[] フィールドのいずれか 1 つ以上も含まれている必要があります。

VERTICAL 縦長レイアウト。

StandaloneCard.ThumbnailImageAlignment

水平レイアウトのスタンドアロン カードの画像プレビューの配置。

列挙型
THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED 指定されていません。
LEFT ファイルのプレビューが左揃えになっています。
RIGHT ファイルのプレビューが右揃えになっている。

MessageTrafficType

サポートされているメッセージ トラフィック タイプ。追加のトラフィック タイプをサポートするように列挙型が拡張されます。

列挙型
MESSAGE_TRAFFIC_TYPE_UNSPECIFIED デフォルトの動作: メッセージ トラフィック タイプは、エージェントのユースケースによって決まります。メッセージの内容に基づいて、必要に応じてトラフィック タイプを更新します。複数回使用エージェントの場合、デフォルトは提供されません。トラフィック タイプは手動で設定する必要があります(例: TRANSACTION、PROMOTION)。
AUTHENTICATION OTP エージェントのユースケースの認証メッセージ。
TRANSACTION Transactional または Multi-use agent のユースケースのトランザクション メッセージの場合。
PROMOTION プロモーション エージェントまたはマルチユース エージェントのユースケースのプロモーション メッセージ。
SERVICEREQUEST ユーザーが受信に同意したサービスに関するメッセージ。OTP、トランザクション、プロモーション、マルチユース エージェントのユースケースで使用されます。
ACKNOWLEDGEMENT ユーザーの登録解除リクエストを確認するメッセージ。OTP、トランザクション、プロモーション、マルチユース エージェントのユースケースで使用されます。

メソッド

create

エージェントからユーザーにメッセージを送信します。

delete

送信済みでまだ配信されていないエージェント メッセージを取り消します。