REST Resource: phones.agentMessages

Risorsa: AgentMessage

Un messaggio inviato dall'agente a un utente.

Rappresentazione 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.
}
Campi
name

string

Questo campo è impostato dalla piattaforma RBM. Non includerlo quando crei un messaggio dell'agente. Il campo risolve "phones/{E.164}/agentMessages/{messageId}", dove {E.164} è il numero di telefono dell'utente in formato E.164 e {messageId} è l'ID del messaggio dell'agente assegnato dall'agente.

sendTime

string (Timestamp format)

Questo campo è impostato dalla piattaforma RBM. Non includerlo quando crei un messaggio dell'agente. Il campo risolve l'ora in cui il messaggio viene inviato all'utente.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

contentMessage

object (AgentContentMessage)

Il contenuto del messaggio dell'agente.

messageTrafficType

enum (MessageTrafficType)

Il tipo di traffico dei messaggi.

Campo unione expiration.

expiration può essere solo uno dei seguenti:

expireTime

string (Timestamp format)

(Facoltativo) Timestamp in UTC di quando questa risorsa è considerata scaduta. Questo valore viene fornito nell'output se è impostato o se è impostato il campo TTL.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

ttl

string (Duration format)

(Facoltativo) Solo input. Per quanto tempo il messaggio sarà attivo prima di essere revocato automaticamente.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

AgentContentMessage

I contenuti di un messaggio inviato dall'agente a un utente.

Rappresentazione 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.
}
Campi
suggestions[]

object (Suggestion)

Un elenco di risposte e azioni suggerite che vengono visualizzate come elenco di chip di suggerimenti dopo il messaggio dell'agente associato. Massimo 11 suggerimenti.

I chip vengono visualizzati solo quando il messaggio dell'agente associato è il più recente all'interno della conversazione (inclusi i messaggi dell'agente e dell'utente). L'utente può toccare una risposta suggerita per inviare la risposta di testo all'agente o toccare un'azione suggerita per avviare un'azione nativa sul dispositivo. Massimo 11 suggerimenti.

Campo unione content. Il contenuto del messaggio dell'agente content può essere solo uno dei seguenti:
text

string

Testo codificato in UTF-8. Massimo 3072 caratteri.

fileName
(deprecated)

string

Il nome univoco di un file. La piattaforma RBM restituisce un nome file quando un agente carica un file. Deprecata a favore di uploadedRbmFile di seguito

uploadedRbmFile

object (UploadedRbmFile)

Contiene gli identificatori di un file e di una miniatura caricati e pubblicati dal server RBM

richCard

object (RichCard)

Una scheda interattiva autonoma.

contentInfo

object (ContentInfo)

Informazioni su un file, inclusi l'URL del file e l'URL della miniatura del file.

La piattaforma RBM pubblica i contenuti da una cache, ma un agente può forzare la piattaforma RBM a recuperare una nuova versione dei contenuti e aggiornare la cache.

UploadedRbmFile

Messaggio contenente informazioni su file e miniature

Rappresentazione JSON
{
  "fileName": string,
  "thumbnailName": string
}
Campi
fileName

string

Il nome del file, restituito dalla piattaforma RBM al momento del caricamento.

thumbnailName

string

Il nome della miniatura, restituito dalla piattaforma RBM al momento del caricamento.

RichCard

Una scheda informativa autonoma o un carosello di schede informative inviate dall'agente all'utente.

Rappresentazione 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.
}
Campi
Campo unione card. Scheda autonoma o carosello di schede. card può essere solo uno dei seguenti:
carouselCard

object (CarouselCard)

Carosello di schede.

standaloneCard

object (StandaloneCard)

Scheda autonoma.

CarouselCard

Carosello di schede.

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

enum (CarouselCard.CardWidth)

La larghezza delle schede nel carosello.

cardContents[]

object (CardContent)

L'elenco dei contenuti per ogni scheda del carosello. Un carosello può contenere un minimo di 2 schede e un massimo di 10 schede.

CarouselCard.CardWidth

La larghezza delle schede nel carosello.

Enum
CARD_WIDTH_UNSPECIFIED Non specificato.
SMALL 120 DP. Tieni presente che non è possibile utilizzare contenuti multimediali verticali.
MEDIUM 232 DP.

CardContent

Contenuti della scheda

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

string

(Facoltativo) Titolo della scheda. Massimo 200 caratteri.

description

string

(Facoltativo) Descrizione della scheda. Massimo 2000 caratteri.

media

object (Media)

(Facoltativo) Elementi multimediali (immagine, GIF, video, PDF) da includere nella scheda.

suggestions[]

object (Suggestion)

(Facoltativo) Elenco di suggerimenti da includere nella scheda. Massimo 4 suggerimenti.

Media

Un file multimediale all'interno di una scheda interattiva.

Rappresentazione 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.
}
Campi
height

enum (Media.Height)

L'altezza dei contenuti multimediali all'interno di una scheda interattiva con layout verticale. Per una scheda autonoma con layout orizzontale, l'altezza non è personalizzabile e questo campo viene ignorato.

Campo unione content. I contenuti multimediali content possono essere solo uno dei seguenti:
fileName
(deprecated)

string

Il nome univoco del file, restituito dalla piattaforma RBM al momento del caricamento. Deprecata a favore di uploadedRbmFile di seguito

uploadedRbmFile

object (UploadedRbmFile)

Contiene gli identificatori di un file e di una miniatura caricati e pubblicati dal server RBM

contentInfo

object (ContentInfo)

Informazioni su un file, inclusi l'URL del file e l'URL della miniatura del file.

La piattaforma RBM pubblica i contenuti da una cache, ma un agente può forzare la piattaforma RBM a recuperare una nuova versione dei contenuti e aggiornare la cache.

ContentInfo

Messaggio contenente le informazioni sui contenuti.

Rappresentazione JSON
{
  "fileUrl": string,
  "thumbnailUrl": string,
  "forceRefresh": boolean
}
Campi
fileUrl

string

URL del file raggiungibile pubblicamente. La piattaforma RBM determina il tipo MIME del file dal campo Content-Type nelle intestazioni HTTP quando recupera il file. Il campo Content-Type deve essere presente e preciso nella risposta HTTP dell'URL. Dimensioni massime consigliate del file: 100 MB.

Nota: i reindirizzamenti negli URL dei file non sono supportati. Utilizza CreateFileRequest se è necessario il reindirizzamento.

thumbnailUrl

string

(Facoltativo, solo per file immagine, audio e video) URL raggiungibile pubblicamente della miniatura. Dimensioni massime di 100 kB.

Se non fornisci un URL miniatura, la piattaforma RBM visualizza una miniatura segnaposto vuota finché il dispositivo dell'utente non scarica il file. A seconda dell'impostazione dell'utente, il file potrebbe non essere scaricato automaticamente e potrebbe richiedere all'utente di toccare un pulsante di download.

Nota: i reindirizzamenti negli URL dei file non sono supportati. Utilizza CreateFileRequest se è necessario il reindirizzamento.

forceRefresh

boolean

Se impostata, la piattaforma RBM recupera il file e la miniatura dagli URL specificati, anche se la piattaforma ha copie memorizzate nella cache del file (e/o della miniatura).

Media.Height

Altezza media

Enum
HEIGHT_UNSPECIFIED Non specificato.
SHORT 112 DP.
MEDIUM 168 DP.
TALL 264 DP. Non disponibile per i caroselli di schede avanzate quando la larghezza della scheda è impostata su Piccola.

Suggerimento

Una risposta suggerita o un'azione suggerita inclusa in una scheda avanzata o in un elenco di chip di suggerimenti.

Rappresentazione 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.
}
Campi
Campo unione option. Una risposta o un'azione suggerita option può essere solo una delle seguenti:
reply

object (SuggestedReply)

Gli utenti possono toccare una risposta suggerita per inviare la risposta all'agente.

action

object (SuggestedAction)

Gli utenti possono toccare un'azione suggerita per avviare l'azione nativa corrispondente sul dispositivo.

SuggestedReply

Se toccata, invia la risposta di testo all'agente.

Rappresentazione JSON
{
  "text": string,
  "postbackData": string
}
Campi
text

string

Testo mostrato nella risposta suggerita e inviato all'agente quando l'utente lo tocca. Massimo 25 caratteri.

postbackData

string

Il payload codificato in base64 che l'agente riceve in un evento utente quando l'utente tocca la risposta suggerita.

SuggestedAction

Quando viene toccato, avvia l'azione nativa corrispondente sul dispositivo.

Rappresentazione 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.
}
Campi
text

string

Testo visualizzato nell'azione suggerita. Massimo 25 caratteri.

postbackData

string

Payload (codificato in base64) che verrà inviato all'agente nell'evento utente che si verifica quando l'utente tocca l'azione suggerita. Massimo 2048 caratteri.

fallbackUrl

string

(Facoltativo) URL di riserva da utilizzare se un client non supporta un'azione suggerita. Gli URL di riserva si aprono in nuove finestre del browser. Deve essere un URI valido come definito in RFC 3986. Massimo 2048 caratteri.

Campo unione action. L'azione nativa avviata sul dispositivo quando l'utente tocca l'azione suggerita action può essere solo una delle seguenti:
dialAction

object (DialAction)

Apre l'app per chiamate predefinita dell'utente con il numero di telefono specificato dall'agente compilato.

viewLocationAction

object (ViewLocationAction)

Apre l'app di mappe predefinita dell'utente e seleziona la posizione specificata dall'agente o esegue una ricerca nei dintorni della posizione dell'utente in base a una query specificata dall'agente.

createCalendarEventAction

object (CreateCalendarEventAction)

Apre l'app calendario predefinita dell'utente e avvia il nuovo flusso di eventi nel calendario con i dati dell'evento specificati dall'agente precompilati.

openUrlAction

object (OpenUrlAction)

Apre l'app del browser web predefinita dell'utente all'URL specificato. Se l'utente ha installato un'app registrata come gestore predefinito per l'URL, verrà aperta questa app e la sua icona verrà utilizzata nell'interfaccia utente dell'azione suggerita.

shareLocationAction

object (ShareLocationAction)

Apre il selettore della posizione dell'app RCS in modo che l'utente possa scegliere una posizione da inviare all'agente.

DialAction

Apre l'app per chiamate predefinita dell'utente con il numero di telefono specificato dall'agente compilato.

Rappresentazione JSON
{
  "phoneNumber": string
}
Campi
phoneNumber

string

Il numero di telefono in formato E.164, ad esempio +12223334444.

ViewLocationAction

Apre l'app di mappe predefinita dell'utente e seleziona la posizione specificata dall'agente o esegue una ricerca nei dintorni della posizione dell'utente in base a una query specificata dall'agente.

Rappresentazione JSON
{
  "latLong": {
    object (LatLng)
  },
  "label": string,
  "query": string
}
Campi
latLong

object (LatLng)

(Facoltativo) La latitudine e la longitudine della posizione specificata.

label

string

(Facoltativo) L'etichetta del segnaposto inserito in latLong.

query

string

(Facoltativo, supportato solo sui client Android Messages) Anziché specificare un valore latLong (e, facoltativamente, un'etichetta), l'agente può specificare una stringa di query. Per le app di mappe predefinite che supportano la funzionalità di ricerca (inclusa Google Maps), toccando questa azione suggerita viene eseguita una ricerca di località centrata sulla posizione attuale dell'utente. Se la query è sufficientemente specifica, gli agenti possono utilizzarla per selezionare qualsiasi località al mondo.

Ad esempio, se imposti la stringa di query su "Growing Tree Bank", verranno visualizzate tutte le sedi di Growing Tree Bank nelle vicinanze dell'utente. Se imposti la stringa di query su "1600 Amphitheater Parkway, Mountain View, CA 94043", verrà selezionato quell'indirizzo specifico, indipendentemente dalla posizione dell'utente.

LatLng

Un oggetto che rappresenta una coppia di coordinate di latitudine e longitudine. Questi valori sono espressi come una coppia di numeri double per rappresentare i gradi di latitudine e longitudine. Se non diversamente specificato, questo oggetto deve essere conforme allo standard WGS84. I valori devono rientrare negli intervalli normalizzati.

Rappresentazione JSON
{
  "latitude": number,
  "longitude": number
}
Campi
latitude

number

La latitudine in gradi. Deve essere compresa nell'intervallo [-90,0, +90,0].

longitude

number

La longitudine in gradi. Deve essere compreso nell'intervallo [-180.0, +180.0].

CreateCalendarEventAction

Apre l'app calendario predefinita dell'utente e avvia il nuovo flusso di eventi nel calendario con i dati dell'evento specificati dall'agente precompilati.

Rappresentazione JSON
{
  "startTime": string,
  "endTime": string,
  "title": string,
  "description": string
}
Campi
startTime

string (Timestamp format)

Ora di inizio dell'evento.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

Ora di fine dell'evento.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

title

string

Titolo dell'evento. Massimo 100 caratteri.

description

string

Descrizione dell'evento. Massimo 500 caratteri.

OpenUrlAction

Apre l'app del browser web predefinita dell'utente all'URL specificato. Se l'utente ha installato un'app registrata come gestore predefinito per l'URL, verrà aperta questa app e la sua icona verrà utilizzata nell'interfaccia utente dell'azione suggerita.

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

string

L'URL da aprire. A partire dal 1° novembre 2025, lo schema dell'URL deve essere https:// o http://. Le richieste API che utilizzano altri schemi (ad es. tel:, mailto:, sms:) verranno rifiutate con un errore 400 Bad Request dopo questa data. L'URL deve essere un URI valido come definito in RFC 3986. Massimo 2048 caratteri.

application

enum (OpenUrlApplication)

URL open application, browser or webview. Per verificare se il dispositivo di un utente supporta la modalità WebView, esegui prima un controllo delle funzionalità. Per maggiori dettagli, consulta la documentazione: https://developers.google.com/business-communications/rcs-business-messaging/guides/build/capabilities.

webviewViewMode

enum (WebviewViewMode)

Modalità di visualizzazione per WebView

description

string

Descrizione per l'accessibilità per la webview.

OpenUrlApplication

Tipo di applicazione di apertura dell'URL

Enum
OPEN_URL_APPLICATION_UNSPECIFIED Non specificato, verrà utilizzato il browser per l'apertura.
BROWSER Utilizza il browser per aprire l'URL.
WEBVIEW Apri l'URL in una finestra di visualizzazione web integrata

WebviewViewMode

Tipo di modalità di visualizzazione della webview.

Enum
WEBVIEW_VIEW_MODE_UNSPECIFIED Non specificato. Per utilizzare WebView, è necessario specificare una modalità di visualizzazione.
FULL Richiede una sovrapposizione a schermo intero con la conversazione con il chatbot etichettata nella barra di stato.
HALF Richiede una sovrapposizione a metà schermo.
TALL Richiede una sovrapposizione dello schermo di tre quarti.

ShareLocationAction

Questo tipo non contiene campi.

Apre il selettore di posizione dell'app RCS in modo che l'utente possa scegliere una posizione da inviare all'agente.

StandaloneCard

Scheda autonoma

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

enum (StandaloneCard.CardOrientation)

Orientamento della carta.

thumbnailImageAlignment

enum (StandaloneCard.ThumbnailImageAlignment)

Allineamento dell'anteprima dell'immagine per le schede autonome con layout orizzontale.

cardContent

object (CardContent)

Contenuti della scheda.

StandaloneCard.CardOrientation

Orientamento della carta.

Enum
CARD_ORIENTATION_UNSPECIFIED Non specificato.
HORIZONTAL

Layout orizzontale.

Se il object(CardContent) di una scheda avanzata orizzontale contiene il campo media, deve includere anche almeno un campo title, description o suggestions[].

VERTICAL Layout verticale.

StandaloneCard.ThumbnailImageAlignment

Allineamento dell'anteprima dell'immagine per le schede autonome con layout orizzontale.

Enum
THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED Non specificato.
LEFT L'anteprima del file è allineata a sinistra.
RIGHT L'anteprima del file è allineata a destra.

MessageTrafficType

Tipi di traffico dei messaggi supportati. L'enumerazione verrà estesa per supportare altri tipi di traffico.

Enum
MESSAGE_TRAFFIC_TYPE_UNSPECIFIED Comportamento predefinito: il tipo di traffico dei messaggi è determinato dal caso d'uso dell'agente. Aggiorna il tipo di traffico in base alle esigenze in base ai contenuti del messaggio. Per gli agenti multiuso, non viene fornito alcun valore predefinito. Il tipo di traffico deve essere impostato manualmente (ad es. TRANSACTION, PROMOTION).
AUTHENTICATION Per i messaggi di autenticazione nello scenario di utilizzo dell'agente OTP.
TRANSACTION Per i messaggi transazionali nei casi d'uso dell'agente transazionale o multiuso.
PROMOTION Per i messaggi promozionali nei casi d'uso dell'agente promozionale o multiuso.
SERVICEREQUEST Per i messaggi relativi ai servizi che l'utente ha acconsentito a ricevere. Utilizzato nei casi d'uso di agenti OTP, transazionali, promozionali o multiuso.
ACKNOWLEDGEMENT Per i messaggi che confermano la richiesta di annullamento dell'iscrizione dell'utente. Utilizzato nei casi d'uso di agenti OTP, transazionali, promozionali o multiuso.

Metodi

create

Invia un messaggio dall'agente a un utente.

delete

Revoca un messaggio dell'agente che è stato inviato, ma non ancora consegnato.