REST Resource: phones.agentMessages

Recurso: AgentMessage

Uma mensagem enviada do agente para um usuário.

Representação 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.
}
Campos
name

string

Esse campo é definido pela plataforma RBM. Não o inclua ao criar uma mensagem para o agente. O campo resolve "phones/{E.164}/agentMessages/{messageId}", em que {E.164} é o número de telefone do usuário no formato E.164 e {messageId} é o ID da mensagem do agente atribuído pelo agente.

sendTime

string (Timestamp format)

Esse campo é definido pela plataforma RBM. Não o inclua ao criar uma mensagem para o agente. Esse campo define o horário em que a mensagem é enviada ao usuário.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

contentMessage

object (AgentContentMessage)

O conteúdo da mensagem do agente.

Campo de união expiration.

expiration pode ser apenas de um dos tipos a seguir:

expireTime

string (Timestamp format)

Opcional. Carimbo de data/hora em UTC de quando o recurso será considerado expirado. Esse valor será fornecido na saída se estiver definido ou se o campo TTL estiver definido.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

ttl

string (Duration format)

Opcional. Apenas entrada. Por quanto tempo a mensagem vai permanecer ativa antes de ser revogada automaticamente.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

AgentContentMessage

O conteúdo de uma mensagem enviada do agente para um usuário.

Representação 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.
}
Campos
suggestions[]

object (Suggestion)

Uma lista de respostas e ações sugeridas que aparecem como uma lista de ícones de sugestão após a mensagem do agente associado. Máximo de 11 sugestões.

Os ícones só aparecem quando a mensagem do agente associada é a mais recente na conversa, incluindo as mensagens do agente e do usuário. O usuário pode tocar em uma resposta sugerida para enviar a resposta de texto ao agente ou em uma ação sugerida para iniciar uma ação nativa no dispositivo.

Campo de união content. O conteúdo da mensagem do agente content pode ser apenas uma das seguintes opções:
text

string

Texto codificado em UTF-8.

fileName
(deprecated)

string

O nome exclusivo de um arquivo. A plataforma RBM retorna um nome de arquivo quando um agente faz o upload de um arquivo. Obsoleto e substituído por UploadRbmFile abaixo

uploadedRbmFile

object (UploadedRbmFile)

Contém identificadores de um arquivo e uma miniatura que foram enviados e veiculados pelo servidor do RBM

richCard

object (RichCard)

Um Rich Card autônomo.

contentInfo

object (ContentInfo)

Informações sobre um arquivo, incluindo o URL e a miniatura.

A plataforma RBM exibe o conteúdo de um cache, mas um agente pode forçar a plataforma RBM a buscar uma nova versão do conteúdo e atualizar o cache.

UploadedRbmFile

Mensagem com informações sobre o arquivo e a miniatura

Representação JSON
{
  "fileName": string,
  "thumbnailName": string
}
Campos
fileName

string

O nome do arquivo, retornado pela plataforma RBM quando o arquivo foi enviado.

thumbnailName

string

O nome da miniatura, retornado pela plataforma RBM quando a miniatura foi enviada.

RichCard

Um rich card autônomo ou um carrossel de rich cards enviado do agente para o usuário.

Representação 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.
}
Campos
Campo de união card. Cartão ou carrossel de cards independente. card só pode ser de um dos seguintes tipos:
carouselCard

object (CarouselCard)

Carrossel de cards.

standaloneCard

object (StandaloneCard)

Cartão independente.

CarouselCard

Carrossel de cards.

Representação JSON
{
  "cardWidth": enum (CarouselCard.CardWidth),
  "cardContents": [
    {
      object (CardContent)
    }
  ]
}
Campos
cardWidth

enum (CarouselCard.CardWidth)

A largura dos cards no carrossel.

cardContents[]

object (CardContent)

A lista de conteúdo de cada card no carrossel. Um carrossel pode ter no mínimo 2 e no máximo 10 cards.

CarouselCard.CardWidth

A largura dos cards no carrossel.

Tipos enumerados
CARD_WIDTH_UNSPECIFIED Não especificado.
SMALL 120 DP. Mídia alta não pode ser usada.
MEDIUM 232 DP.

CardContent

Conteúdo do card

Representação JSON
{
  "title": string,
  "description": string,
  "media": {
    object (Media)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ]
}
Campos
title

string

(Opcional) Título do card. Máximo de 200 caracteres.

description

string

(Opcional) Descrição do card. Máximo de 2.000 caracteres.

media

object (Media)

(Opcional) Mídia (imagem, GIF, vídeo) a ser incluída no card.

suggestions[]

object (Suggestion)

(Opcional) Lista de sugestões a serem incluídas no card. Máximo de 4 sugestões.

Mídia

Arquivo de mídia em um rich card.

Representação 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.
}
Campos
height

enum (Media.Height)

A altura da mídia em um rich card com um layout vertical. Para um card independente com layout horizontal, a altura não pode ser personalizada, e esse campo é ignorado.

Campo de união content. O conteúdo de mídia content só pode ser de um dos seguintes tipos:
fileName
(deprecated)

string

O nome exclusivo do arquivo, retornado pela plataforma RBM quando ele foi enviado. Obsoleto e substituído por UploadRbmFile abaixo

uploadedRbmFile

object (UploadedRbmFile)

Contém identificadores de um arquivo e uma miniatura que foram enviados e veiculados pelo servidor do RBM

contentInfo

object (ContentInfo)

Informações sobre um arquivo, incluindo o URL e a miniatura.

A plataforma RBM exibe o conteúdo de um cache, mas um agente pode forçar a plataforma RBM a buscar uma nova versão do conteúdo e atualizar o cache.

ContentInfo

Mensagem com informações de conteúdo.

Representação JSON
{
  "fileUrl": string,
  "thumbnailUrl": string,
  "forceRefresh": boolean
}
Campos
fileUrl

string

URL do arquivo acessível publicamente. A plataforma RBM determina o tipo MIME do arquivo no campo content-type nos cabeçalhos HTTP quando a plataforma busca o arquivo. O campo content-type deve estar presente e preciso na resposta HTTP do URL. O tamanho máximo recomendado para o arquivo é de 100 MB.

thumbnailUrl

string

(Opcional, somente para arquivos de imagem e vídeo) URL da miniatura acessível publicamente. Tamanho máximo de 100 KB.

Se você não fornecer um URL de miniatura, a plataforma RBM vai mostrar uma miniatura de marcador de posição em branco até que o dispositivo do usuário faça o download do arquivo. Dependendo da configuração do usuário, o download do arquivo pode não ser automático e o usuário pode precisar tocar em um botão de download.

forceRefresh

boolean

Se definido, a plataforma RBM vai buscar o arquivo e a miniatura dos URLs especificados, mesmo que a plataforma tenha cópias armazenadas em cache do arquivo (e/ou da miniatura).

Media.Height

Altura da mídia

Tipos enumerados
HEIGHT_UNSPECIFIED Não especificado.
SHORT 112 DP.
MEDIUM 168 DP.
TALL 264 DP. Indisponível para carrosséis com rich card quando a largura do card está definida como pequena.

Sugestão

É uma resposta sugerida ou uma ação sugerida incluída em um rich card ou em uma lista de ícones de sugestão.

Representação 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.
}
Campos
Campo de união option. Uma resposta sugerida ou uma ação sugerida option pode ser apenas uma das seguintes opções:
reply

object (SuggestedReply)

Os usuários podem tocar em uma resposta sugerida para enviar a resposta de texto ao agente.

action

object (SuggestedAction)

Os usuários podem tocar em uma ação sugerida para iniciar a ação nativa correspondente no dispositivo.

SuggestedReply

Quando tocado, envia a resposta de texto para o agente.

Representação JSON
{
  "text": string,
  "postbackData": string
}
Campos
text

string

Texto mostrado na resposta sugerida e enviado de volta ao agente quando o usuário tocar nele. Máximo de 25 caracteres.

postbackData

string

O payload codificado em base64 que o agente recebe em um evento de usuário quando o usuário toca na resposta sugerida.

SuggestedAction

Quando tocado, inicia a ação nativa correspondente no dispositivo.

Representação 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.
}
Campos
text

string

Texto mostrado na ação sugerida. Máximo de 25 caracteres.

postbackData

string

Payload (codificado em base64) que será enviado ao agente no evento do usuário resultante quando o usuário tocar na ação sugerida

fallbackUrl

string

(Opcional) URL substituto a ser usado se um cliente não oferecer suporte a uma ação sugerida. Os URLs substitutos são abertos em novas janelas do navegador.

Campo de união action. A ação nativa iniciada no dispositivo quando o usuário toca na ação sugerida action pode ser apenas uma das seguintes opções:
dialAction

object (DialAction)

Abre o app discador padrão do usuário com o número de telefone especificado do agente preenchido.

viewLocationAction

object (ViewLocationAction)

Abre o app de mapas padrão do usuário e seleciona o local especificado pelo agente ou faz pesquisas perto dele com base em uma consulta especificada pelo agente.

createCalendarEventAction

object (CreateCalendarEventAction)

Abre o app de agenda padrão do usuário e inicia o novo fluxo de eventos da agenda com os dados de eventos especificados pelo agente pré-preenchidos.

openUrlAction

object (OpenUrlAction)

Abre o app de navegação da Web padrão do usuário no URL fornecido. Se o usuário tiver um app instalado que esteja registrado como o gerenciador padrão do URL, esse app será aberto e o ícone será usado na interface de ações sugeridas.

shareLocationAction

object (ShareLocationAction)

Abre o seletor de local do app RCS para que o usuário escolha um local para enviar ao agente.

DialAction

Abre o app discador padrão do usuário com o número de telefone especificado do agente preenchido.

Representação JSON
{
  "phoneNumber": string
}
Campos
phoneNumber

string

O número de telefone no formato E.164, por exemplo, +12223334444.

ViewLocationAction

Abre o app de mapas padrão do usuário e seleciona o local especificado pelo agente ou faz pesquisas perto dele com base em uma consulta especificada pelo agente.

Representação JSON
{
  "latLong": {
    object (LatLng)
  },
  "label": string,
  "query": string
}
Campos
latLong

object (LatLng)

(Opcional) A latitude e a longitude do local especificado.

label

string

(Opcional) O rótulo do alfinete inserido no latLong.

query

string

(Opcional, aceito apenas em clientes do Android Mensagens) Em vez de especificar um latLong (e, opcionalmente, um marcador), o agente pode especificar uma string de consulta. Em apps de mapa padrão compatíveis com a funcionalidade de pesquisa (incluindo o Google Maps), tocar nessa ação sugerida resulta em uma pesquisa de local centralizada no local atual do usuário. Se a consulta for específica o suficiente, os agentes poderão usá-la para selecionar qualquer local do mundo.

Por exemplo, definir a string de consulta como "Growing Tree Bank" mostrará todos os locais do Growing Tree Bank nas proximidades do usuário. Definir a string de consulta como "1600 Amphitheatre Parkway, Mountain View, CA 94043" selecionará esse endereço específico, independentemente da localização do usuário.

LatLng

Um objeto que representa um par de latitude/longitude. Ele é expresso como um par de valores duplos para representar graus de latitude e longitude. A menos que especificado de outra forma, esse objeto precisa estar em conformidade com o padrão WGS84. Os valores precisam estar dentro de intervalos normalizados.

Representação JSON
{
  "latitude": number,
  "longitude": number
}
Campos
latitude

number

A latitude em graus. Precisa estar no intervalo [-90,0, +90,0].

longitude

number

A longitude em graus. Precisa estar no intervalo [-180,0, +180,0].

CreateCalendarEventAction

Abre o app de agenda padrão do usuário e inicia o novo fluxo de eventos da agenda com os dados de eventos especificados pelo agente pré-preenchidos.

Representação JSON
{
  "startTime": string,
  "endTime": string,
  "title": string,
  "description": string
}
Campos
startTime

string (Timestamp format)

Horário de início do evento.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

endTime

string (Timestamp format)

Horário de término do evento.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

title

string

Título do evento.

description

string

Descrição do evento

OpenUrlAction

Abre o app de navegação da Web padrão do usuário no URL especificado. Se o usuário tiver um app instalado que esteja registrado como o gerenciador padrão do URL, esse app será aberto e o ícone será usado na interface de ações sugeridas.

Representação JSON
{
  "url": string
}
Campos
url

string

URL

ShareLocationAction

Esse tipo não tem campos.

Abre o seletor de local do app RCS para que o usuário escolha um local para enviar de volta ao agente.

StandaloneCard

Cartão independente

Representação JSON
{
  "cardOrientation": enum (StandaloneCard.CardOrientation),
  "thumbnailImageAlignment": enum (StandaloneCard.ThumbnailImageAlignment),
  "cardContent": {
    object (CardContent)
  }
}
Campos
cardOrientation

enum (StandaloneCard.CardOrientation)

É a orientação do cartão.

thumbnailImageAlignment

enum (StandaloneCard.ThumbnailImageAlignment)

Alinhamento da visualização de imagem para cards independentes com layout horizontal.

cardContent

object (CardContent)

Conteúdo do card.

StandaloneCard.CardOrientation

É a orientação do cartão.

Tipos enumerados
CARD_ORIENTATION_UNSPECIFIED Não especificado.
HORIZONTAL

Layout horizontal.

Se o object(CardContent) de um rich card horizontal contiver o campo media, ele também precisará incluir pelo menos um campo title, description ou suggestions[].

VERTICAL Layout vertical.

StandaloneCard.ThumbnailImageAlignment

Alinhamento da visualização de imagem para cards independentes com layout horizontal.

Tipos enumerados
THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED Não especificado.
LEFT A visualização do arquivo está alinhada à esquerda.
RIGHT A visualização do arquivo está alinhada à direita.

Métodos

create

Envia uma mensagem do agente para um usuário.

delete

Revoga uma mensagem do agente que foi enviada, mas ainda não foi entregue.