REST Resource: phones.agentMessages

Resource: AgentMessage

Pesan yang dikirim dari agen ke pengguna.

Representasi JSON
{
  "name": string,
  "sendTime": string,
  "contentMessage": {
    object (AgentContentMessage)
  },

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

string

Kolom ini ditetapkan oleh platform RBM. Jangan sertakan saat membuat pesan agen. Kolom ini me-resolve "phones/{E.164}/agentMessages/{messageId}", dengan {E.164} adalah nomor telepon pengguna dalam format E.164 dan {messageId} adalah ID pesan agen yang ditetapkan agen.

sendTime

string (Timestamp format)

Kolom ini ditetapkan oleh platform RBM. Jangan menyertakannya saat membuat pesan agen. Kolom ini me-resolve waktu saat pesan dikirim ke pengguna.

Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan maksimal sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

contentMessage

object (AgentContentMessage)

Konten pesan agen.

Kolom union expiration.

expiration hanya dapat berupa salah satu dari hal berikut:

expireTime

string (Timestamp format)

Opsional. Stempel waktu dalam UTC saat resource ini dianggap sudah tidak berlaku. Nilai ini diberikan pada output jika ditetapkan atau jika kolom TTL ditetapkan.

Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

ttl

string (Duration format)

Opsional. Hanya input. Durasi pesan akan aktif sebelum dicabut secara otomatis.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

AgentContentMessage

Konten pesan yang dikirim dari agen ke pengguna.

Representasi 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.
}
Kolom
suggestions[]

object (Suggestion)

Daftar balasan yang disarankan dan tindakan yang disarankan yang muncul sebagai daftar chip saran setelah pesan agen terkait. Maksimum 11 saran.

Chip hanya ditampilkan jika pesan agen terkait adalah pesan terbaru dalam percakapan (termasuk pesan agen dan pengguna). Pengguna dapat mengetuk balasan yang disarankan untuk mengirim balasan teks kembali ke agen atau mengetuk tindakan yang disarankan untuk memulai tindakan native di perangkat. Maksimum 11 saran.

Kolom union content. Konten pesan agen content hanya dapat berupa salah satu dari yang berikut:
text

string

Teks yang dienkode dalam UTF-8. Maksimum 3.072 karakter.

fileName
(deprecated)

string

Nama unik file. Platform RBM menampilkan nama file saat agen mengupload file. Tidak digunakan lagi dan digantikan dengan uploadedRbmFile di bawah

uploadedRbmFile

object (UploadedRbmFile)

Berisi ID untuk file dan thumbnail yang diupload ke dan ditayangkan oleh server RBM

richCard

object (RichCard)

Kartu informasi mandiri.

contentInfo

object (ContentInfo)

Informasi tentang file, termasuk URL file dan URL thumbnail file.

Platform RBM menayangkan konten dari cache, tetapi agen dapat memaksa platform RBM untuk mengambil versi baru konten dan memuat ulang cache.

UploadedRbmFile

Pesan yang berisi informasi file dan thumbnail

Representasi JSON
{
  "fileName": string,
  "thumbnailName": string
}
Kolom
fileName

string

Nama file, yang ditampilkan oleh platform RBM saat file diupload.

thumbnailName

string

Nama thumbnail, yang ditampilkan oleh platform RBM saat thumbnail diupload.

RichCard

Kartu informasi mandiri atau carousel kartu informasi yang dikirim dari agen kepada pengguna.

Representasi 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.
}
Kolom
Kolom union card. Kartu mandiri atau carousel kartu. card hanya dapat berupa salah satu dari berikut:
carouselCard

object (CarouselCard)

Carousel kartu.

standaloneCard

object (StandaloneCard)

Kartu mandiri.

CarouselCard

Carousel kartu.

Representasi JSON
{
  "cardWidth": enum (CarouselCard.CardWidth),
  "cardContents": [
    {
      object (CardContent)
    }
  ]
}
Kolom
cardWidth

enum (CarouselCard.CardWidth)

Lebar kartu di carousel.

cardContents[]

object (CardContent)

Daftar konten untuk setiap kartu di carousel. Carousel dapat memiliki minimal 2 kartu dan maksimal 10 kartu.

CarouselCard.CardWidth

Lebar kartu di carousel.

Enum
CARD_WIDTH_UNSPECIFIED Tidak ditentukan.
SMALL 120 DP. Perhatikan bahwa media tinggi tidak dapat digunakan.
MEDIUM 232 DP.

CardContent

Konten kartu

Representasi JSON
{
  "title": string,
  "description": string,
  "media": {
    object (Media)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ]
}
Kolom
title

string

(Opsional) Judul kartu. Maksimum 200 karakter.

description

string

(Opsional) Deskripsi kartu. Maksimum 2.000 karakter.

media

object (Media)

(Opsional) Media (gambar, GIF, video) yang akan disertakan dalam kartu.

suggestions[]

object (Suggestion)

(Opsional) Daftar saran yang akan disertakan dalam kartu. Maksimum 10 saran.

Media

File media dalam kartu informasi.

Representasi 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.
}
Kolom
height

enum (Media.Height)

Tinggi media dalam kartu informasi dengan tata letak vertikal. Untuk kartu mandiri dengan tata letak horizontal, tinggi tidak dapat disesuaikan, dan kolom ini diabaikan.

Kolom union content. Konten media content hanya dapat berupa salah satu dari hal berikut:
fileName
(deprecated)

string

Nama unik file, yang ditampilkan oleh platform RBM saat file diupload. Tidak digunakan lagi dan digantikan dengan uploadedRbmFile di bawah

uploadedRbmFile

object (UploadedRbmFile)

Berisi ID untuk file dan thumbnail yang diupload ke dan ditayangkan oleh server RBM

contentInfo

object (ContentInfo)

Informasi tentang file, termasuk URL file dan URL thumbnail file.

Platform RBM menayangkan konten dari cache, tetapi agen dapat memaksa platform RBM untuk mengambil versi baru konten dan memuat ulang cache.

ContentInfo

Pesan yang berisi informasi konten.

Representasi JSON
{
  "fileUrl": string,
  "thumbnailUrl": string,
  "forceRefresh": boolean
}
Kolom
fileUrl

string

URL file yang dapat dijangkau secara publik. Platform RBM menentukan jenis MIME file dari kolom content-type di header HTTP saat platform mengambil file. Kolom content-type harus ada dan akurat dalam respons HTTP dari URL. Ukuran file maksimum yang direkomendasikan adalah 100 MB.

thumbnailUrl

string

(Opsional, hanya untuk file gambar, audio, dan video) URL thumbnail yang dapat dijangkau secara publik. Ukuran maksimum 100 kB.

Jika Anda tidak memberikan URL thumbnail, platform RBM akan menampilkan thumbnail placeholder kosong hingga perangkat pengguna mendownload file. Bergantung pada setelan pengguna, file mungkin tidak didownload secara otomatis dan mungkin mengharuskan pengguna mengetuk tombol download.

forceRefresh

boolean

Jika ditetapkan, platform RBM akan mengambil file dan thumbnail dari URL yang ditentukan, meskipun platform telah meng-cache salinan file (dan/atau thumbnail).

Media.Height

Tinggi media

Enum
HEIGHT_UNSPECIFIED Tidak ditentukan.
SHORT 112 DP.
MEDIUM 168 DP.
TALL 264 DP. Tidak tersedia untuk carousel kartu informasi jika lebar kartu disetel ke kecil.

Saran

Saran balasan atau tindakan yang disarankan disertakan dalam kartu informasi atau daftar chip saran.

Representasi 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.
}
Kolom
Kolom union option. Balasan yang disarankan atau tindakan yang disarankan option hanya dapat berupa salah satu dari hal berikut:
reply

object (SuggestedReply)

Pengguna dapat mengetuk balasan yang disarankan untuk mengirim balasan teks kembali ke agen.

action

object (SuggestedAction)

Pengguna dapat mengetuk tindakan yang disarankan untuk memulai tindakan native yang sesuai di perangkat.

SuggestedReply

Saat diketuk, balasan teks akan dikirim kembali ke agen.

Representasi JSON
{
  "text": string,
  "postbackData": string
}
Kolom
text

string

Teks yang ditampilkan dalam balasan yang disarankan dan dikirim kembali ke agen saat pengguna mengetuknya. Maksimum 25 karakter.

postbackData

string

Payload yang dienkode base64 yang diterima agen dalam peristiwa pengguna saat pengguna mengetuk balasan yang disarankan.

SuggestedAction

Saat diketuk, akan memulai tindakan native yang sesuai di perangkat.

Representasi 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)
  },
  "composeAction": {
    object (ComposeAction)
  }
  // End of list of possible types for union field action.
}
Kolom
text

string

Teks yang ditampilkan dalam tindakan yang disarankan. Maksimum 25 karakter.

postbackData

string

Payload (dienkode base64) yang akan dikirim ke agen dalam peristiwa pengguna yang dihasilkan saat pengguna mengetuk tindakan yang disarankan. Maksimum 2.048 karakter.

fallbackUrl

string

(Opsional) URL pengganti yang akan digunakan jika klien tidak mendukung tindakan yang disarankan. URL penggantian akan terbuka di jendela browser baru. Harus berupa URI yang valid seperti yang ditentukan dalam RFC 3986. Maksimum 2.048 karakter.

Kolom union action. Tindakan native yang dimulai di perangkat saat pengguna mengetuk tindakan yang disarankan action hanya dapat berupa salah satu dari tindakan berikut:
dialAction

object (DialAction)

Membuka aplikasi telepon default pengguna dengan nomor telepon yang ditentukan agen terisi.

viewLocationAction

object (ViewLocationAction)

Membuka aplikasi peta default pengguna dan memilih lokasi yang ditentukan agen atau menelusuri di sekitar lokasi pengguna berdasarkan kueri yang ditentukan agen.

createCalendarEventAction

object (CreateCalendarEventAction)

Membuka aplikasi kalender default pengguna dan memulai alur acara kalender baru dengan data acara yang ditentukan agen yang telah diisi sebelumnya.

openUrlAction

object (OpenUrlAction)

Membuka aplikasi browser web default pengguna ke URL yang diberikan. Jika pengguna telah menginstal aplikasi yang terdaftar sebagai pengendali default untuk URL, aplikasi ini akan dibuka, dan ikonnya akan digunakan di UI tindakan yang disarankan.

shareLocationAction

object (ShareLocationAction)

Membuka pemilih lokasi aplikasi RCS sehingga pengguna dapat memilih lokasi untuk dikirim ke agen.

composeAction

object (ComposeAction)

Menulis dan mengirim pesan ke tujuan yang telah ditentukan oleh chatbot.

DialAction

Membuka aplikasi telepon default pengguna dengan nomor telepon yang ditentukan agen terisi.

Representasi JSON
{
  "phoneNumber": string
}
Kolom
phoneNumber

string

Nomor telepon dalam format E.164, misalnya, +12223334444.

ViewLocationAction

Membuka aplikasi peta default pengguna dan memilih lokasi yang ditentukan agen atau menelusuri di sekitar lokasi pengguna berdasarkan kueri yang ditentukan agen.

Representasi JSON
{
  "latLong": {
    object (LatLng)
  },
  "label": string,
  "query": string
}
Kolom
latLong

object (LatLng)

(Opsional) Lintang dan bujur lokasi yang ditentukan.

label

string

(Opsional) Label pin yang ditempatkan di latLong.

query

string

(Opsional, hanya didukung di klien Android Messages) Sebagai ganti menentukan latLong (dan secara opsional, label), agen dapat menentukan string kueri. Untuk aplikasi peta default yang mendukung fungsi penelusuran (termasuk Google Maps), mengetuk tindakan yang disarankan ini akan menghasilkan penelusuran lokasi yang berpusat di sekitar lokasi pengguna saat ini. Jika kueri cukup spesifik, agen dapat menggunakannya untuk memilih lokasi mana pun di dunia.

Misalnya, menetapkan string kueri ke "Growing Tree Bank" akan menampilkan semua lokasi Growing Tree Bank di sekitar pengguna. Menetapkan string kueri ke "1600 Amphitheater Parkway, Mountain View, CA 94043" akan memilih alamat spesifik tersebut, terlepas dari lokasi pengguna.

LatLng

Objek yang merepresentasikan pasangan garis lintang/bujur. Objek ini dinyatakan sebagai pasangan double untuk mewakili derajat lintang dan derajat bujur. Kecuali ditentukan lain, objek ini harus sesuai dengan standar WGS84. Nilai harus berada dalam rentang yang dinormalisasi.

Representasi JSON
{
  "latitude": number,
  "longitude": number
}
Kolom
latitude

number

Lintang dalam derajat. Harus dalam rentang [-90.0, +90.0].

longitude

number

Bujur dalam derajat. Harus dalam rentang [-180.0, +180.0].

CreateCalendarEventAction

Membuka aplikasi kalender default pengguna dan memulai alur acara kalender baru dengan data acara yang ditentukan agen yang telah diisi otomatis.

Representasi JSON
{
  "startTime": string,
  "endTime": string,
  "title": string,
  "description": string
}
Kolom
startTime

string (Timestamp format)

Waktu mulai acara.

Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

endTime

string (Timestamp format)

Waktu berakhir acara.

Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan maksimal sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

title

string

Judul acara. Maksimum 100 karakter.

description

string

Deskripsi peristiwa. Maksimum 500 karakter.

OpenUrlAction

Membuka aplikasi browser web default pengguna ke URL yang ditentukan. Jika pengguna telah menginstal aplikasi yang terdaftar sebagai pengendali default untuk URL, aplikasi ini akan dibuka, dan ikonnya akan digunakan di UI tindakan yang disarankan.

Representasi JSON
{
  "url": string,
  "application": enum (OpenUrlApplication),
  "webviewViewMode": enum (WebviewViewMode),
  "description": string
}
Kolom
url

string

URL. Harus berupa URI yang valid seperti yang ditentukan dalam RFC 3986. Maksimum 2.048 karakter.

application

enum (OpenUrlApplication)

URL membuka aplikasi, browser, atau webview. Untuk memeriksa apakah perangkat pengguna mendukung mode webview, jalankan pemeriksaan kemampuan terlebih dahulu. Lihat dokumentasi untuk mengetahui detailnya: https://developers.google.com/business-communications/rcs-business-messaging/guides/build/capabilities.

webviewViewMode

enum (WebviewViewMode)

Mode tampilan untuk webview

description

string

Deskripsi aksesibilitas untuk webview.

OpenUrlApplication

Jenis aplikasi buka URL

Enum
OPEN_URL_APPLICATION_UNSPECIFIED Tidak ditentukan, akan menggunakan browser untuk membuka.
BROWSER Gunakan browser untuk membuka URL.
WEBVIEW Membuka URL di jendela tampilan web terintegrasi

WebviewViewMode

Jenis mode tampilan webview.

Enum
WEBVIEW_VIEW_MODE_UNSPECIFIED Tidak ditentukan. Untuk menggunakan webview, mode tampilan harus ditentukan.
FULL Memerlukan overlay layar penuh dengan percakapan Chatbot yang diberi label dalam status bar.
HALF Memerlukan overlay setengah layar.
TALL Memerlukan overlay layar tiga perempat.

ShareLocationAction

Jenis ini tidak memiliki kolom.

Membuka pemilih lokasi aplikasi RCS sehingga pengguna dapat memilih lokasi untuk dikirim kembali ke agen.

ComposeAction

Menulis dan mengirim pesan ke tujuan yang telah ditentukan oleh chatbot. Untuk memeriksa apakah perangkat pengguna mendukung tindakan ini, jalankan pemeriksaan kemampuan terlebih dahulu. Lihat dokumentasi untuk mengetahui detailnya: https://developers.google.com/business-communications/rcs-business-messaging/guides/build/capabilities.

Representasi JSON
{

  // Union field action can be only one of the following:
  "composeTextMessage": {
    object (ComposeAction.ComposeTextMessage)
  },
  "composeRecordingMessage": {
    object (ComposeAction.ComposeRecordingMessage)
  }
  // End of list of possible types for union field action.
}
Kolom

Kolom union action.

action hanya dapat berupa salah satu dari yang berikut:

composeTextMessage

object (ComposeAction.ComposeTextMessage)

Menulis dan mengirim pesan teks.

composeRecordingMessage

object (ComposeAction.ComposeRecordingMessage)

Memulai perekaman dan pengiriman pesan audio atau video.

ComposeAction.ComposeTextMessage

Tulis dan kirim pesan teks.

Representasi JSON
{
  "phoneNumber": string,
  "text": string
}
Kolom
phoneNumber

string

Nomor telepon tujuan yang diisi otomatis oleh chatbot.

text

string

Draf untuk masuk ke kolom teks pesan kirim.

ComposeAction.ComposeRecordingMessage

Memulai perekaman dan pengiriman pesan audio atau video.

Representasi JSON
{
  "phoneNumber": string,
  "type": enum (ComposeRecordingActionType)
}
Kolom
phoneNumber

string

Nomor telepon tujuan yang diisi otomatis oleh chatbot.

type

enum (ComposeRecordingActionType)

Jenis tindakan perekaman.

ComposeRecordingActionType

Jenis tindakan perekaman compose.

Enum
COMPOSE_RECORDING_ACTION_TYPE_UNSPECIFIED Tidak ditentukan.
ACTION_TYPE_AUDIO Jenis audio.
ACTION_TYPE_VIDEO Jenis video.

StandaloneCard

Kartu mandiri

Representasi JSON
{
  "cardOrientation": enum (StandaloneCard.CardOrientation),
  "thumbnailImageAlignment": enum (StandaloneCard.ThumbnailImageAlignment),
  "cardContent": {
    object (CardContent)
  }
}
Kolom
cardOrientation

enum (StandaloneCard.CardOrientation)

Orientasi kartu.

thumbnailImageAlignment

enum (StandaloneCard.ThumbnailImageAlignment)

Penyelarasan pratinjau gambar untuk kartu mandiri dengan tata letak horizontal.

cardContent

object (CardContent)

Konten kartu.

StandaloneCard.CardOrientation

Orientasi kartu.

Enum
CARD_ORIENTATION_UNSPECIFIED Tidak ditentukan.
HORIZONTAL

Tata letak horizontal.

Jika object(CardContent) kartu informasi horizontal berisi kolom media, kolom tersebut juga harus menyertakan minimal kolom title, description, atau suggestions[].

VERTICAL Tata letak vertikal.

StandaloneCard.ThumbnailImageAlignment

Penyelarasan pratinjau gambar untuk kartu mandiri dengan tata letak horizontal.

Enum
THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED Tidak ditentukan.
LEFT Pratinjau file disejajarkan ke kiri.
RIGHT Pratinjau file disejajarkan ke kanan.

Metode

create

Mengirim pesan dari agen ke pengguna.

delete

Membatalkan pesan agen yang telah dikirim, tetapi belum diterima.