REST Resource: conversations.messages

Recurso: mensagem

Mensagem na conversa entre um agente e um usuário.

Representação JSON
{
  "name": string,
  "messageId": string,
  "representative": {
    object (Representative)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ],
  "fallback": string,
  "containsRichText": boolean,

  // Union field content can be only one of the following:
  "text": string,
  "image": {
    object (Image)
  },
  "richCard": {
    object (RichCard)
  }
  // End of list of possible types for union field content.
}
Campos
name

string

O nome da mensagem, conforme definido pelo recurso Business Messages. Se refere a "conversations/{conversationId}/messages/{messageId}", em que {conversationId} é o ID exclusivo da conversa e {messageId} é o ID exclusivo da mensagem.

messageId

string

Obrigatório. O identificador exclusivo da mensagem, atribuído pelo agente. Se uma mensagem tentar usar o mesmo messageId de uma mensagem anterior, a entrega adequada da mensagem poderá ser afetada.

representative

object (Representative)

Detalhes sobre o representante (humano ou bot de bate-papo) que enviou a mensagem.

suggestions[]

object (Suggestion)

Uma lista de respostas sugeridas que aparece como uma lista de ícones de sugestão após a mensagem associada. Máximo de 13 sugestões.

Os ícones só aparecem quando a mensagem associada é a mais recente da conversa (incluindo as do agente e do usuário). O usuário pode tocar em uma resposta sugerida para enviar a mensagem de texto ao agente.

fallback

string

Opcional. Texto de substituição que é exibido se o dispositivo do usuário não oferecer suporte ao tipo de mensagem ou ao conteúdo. Máximo de 3.072 caracteres.

containsRichText

boolean

Opcional. O valor true indica que a mensagem contém rich text. Se a mensagem tiver formatação inválida, o recurso Business Messages retornará um erro.

Campo de união content. O conteúdo de uma mensagem. content pode ser apenas de um dos tipos a seguir:
text

string

Mensagem de texto. Máximo de 3.072 caracteres.

image

object (Image)

Mensagem com imagem.

richCard

object (RichCard)

Mensagem do Rich Card.

Imagem

Uma imagem.

Representação JSON
{

  // Union field content can be only one of the following:
  "contentInfo": {
    object (ContentInfo)
  }
  // End of list of possible types for union field content.
}
Campos
Campo de união content. Conteúdo da imagem. content pode ser apenas de um dos tipos a seguir:
contentInfo

object (ContentInfo)

Informações sobre uma imagem, incluindo o URL da imagem e o URL da miniatura da imagem.

ContentInfo

Mensagem com as informações do conteúdo.

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

string

URL do arquivo acessível publicamente. A plataforma determina o tipo MIME do arquivo no campo content-type nos cabeçalhos HTTP quando a plataforma busca o arquivo. O campo content-type precisa estar presente e preciso na resposta HTTP do URL.

Máximo de 5 MB.

Tipos de conteúdo compatíveis: image/jpeg, image/jpg, image/png, image/webp

thumbnailUrl

string

Opcional. URL acessível publicamente da miniatura.

Se você não fornecer um URL de miniatura, a plataforma exibirá uma miniatura de marcador em branco até que o dispositivo do usuário faça o download do arquivo.

Máximo de 25 KB.

Tipos de conteúdo compatíveis: image/jpeg, image/jpg, image/png, image/webp

forceRefresh

boolean

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

altText

string

Texto que descreve os detalhes sobre a mídia para fins de acessibilidade.

RichCard

Um Rich Card independente 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:
  "standaloneCard": {
    object (StandaloneCard)
  },
  "carouselCard": {
    object (CarouselCard)
  }
  // End of list of possible types for union field card.
}
Campos
Campo de união card. Tipos possíveis de rich cards. card pode ser apenas de um dos tipos a seguir:
standaloneCard

object (StandaloneCard)

Cartão independente.

carouselCard

object (CarouselCard)

Carrossel de cards.

StandaloneCard

Cartão independente.

Representação JSON
{
  "cardContent": {
    object (CardContent)
  }
}
Campos
cardContent

object (CardContent)

Conteúdo do card.

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 a ser incluída no card.

suggestions[]

object (Suggestion)

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

Mídia

Um arquivo de mídia em um rich card.

Representação JSON
{
  "height": enum (Height),

  // Union field content can be only one of the following:
  "contentInfo": {
    object (ContentInfo)
  }
  // End of list of possible types for union field content.
}
Campos
height

enum (Height)

A altura da mídia em um rich card.

Campo de união content. Conteúdo de mídia. content pode ser apenas de um dos tipos a seguir:
contentInfo

object (ContentInfo)

Informações sobre um arquivo, incluindo o URL do arquivo e o URL da miniatura dele.

Altura

Altura da mídia

Enums
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 SMALL.

Sugestão

Uma sugestão dentro de uma lista de ícones.

Representação JSON
{

  // Union field option can be only one of the following:
  "reply": {
    object (SuggestedReply)
  },
  "action": {
    object (SuggestedAction)
  },
  "liveAgentRequest": {
    object (LiveAgentRequest)
  },
  "authenticationRequest": {
    object (AuthenticationRequest)
  }
  // End of list of possible types for union field option.
}
Campos
Campo de união option. Uma resposta sugerida. option pode ser apenas de um dos tipos a seguir:
reply

object (SuggestedReply)

Uma sugestão para o usuário responder com um texto especificado.

action

object (SuggestedAction)

Uma ação sugerida que inicia uma ação nativa no dispositivo.

liveAgentRequest

object (LiveAgentRequest)

Uma solicitação para que um agente em tempo real participe da conversa.

authenticationRequest

object (AuthenticationRequest)

Uma solicitação para iniciar o fluxo de autenticação.

SuggestedReply

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

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

string

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

postbackData

string

A string que o agente recebe quando um usuário toca na resposta sugerida. Máximo de 2.048 caracteres.

SuggestedAction

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

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

  // Union field action can be only one of the following:
  "openUrlAction": {
    object (OpenUrlAction)
  },
  "dialAction": {
    object (DialAction)
  }
  // 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

A string que o agente recebe quando um usuário toca na ação sugerida. Máximo de 2.048 caracteres.

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 de um dos tipos a seguir:
openUrlAction

object (OpenUrlAction)

Abre o URL especificado.

dialAction

object (DialAction)

Abre o aplicativo discador padrão do usuário.

OpenUrlAction

Abre o URL especificado.

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

string

URL

DialAction

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

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

string

Obrigatório. O número de telefone especificado, no formato RFC 3966. Por exemplo, "+1-201-555-0123".

LiveAgentRequest

Esse tipo não tem campos.

Quando tocado, envia uma solicitação para que um atendente participe da conversa.

AuthenticationRequest

Solicitação para autenticar uma conversa.

Representação JSON
{

  // Union field authentication_type can be only one of the following:
  "oauth": {
    object (Oauth)
  }
  // End of list of possible types for union field authentication_type.
}
Campos
Campo de união authentication_type. O tipo de autenticação. authentication_type pode ser apenas de um dos tipos a seguir:
oauth

object (Oauth)

Detalhes para autenticação via OAuth.

Oauth

Detalhes da autenticação via OAuth.

Representação JSON
{
  "clientId": string,
  "codeChallenge": string,
  "scopes": [
    string
  ],
  "codeChallengeMethod": string
}
Campos
clientId

string

Obrigatório. O ID do aplicativo que pede autorização.

codeChallenge

string

Obrigatório. O desafio do código usado para trocar tokens de acesso.

scopes[]

string

Obrigatório. Uma matriz que especifica os escopos da solicitação.

codeChallengeMethod

string

Opcional. O método de desafio de código usado para gerar o desafio de código. Se esse parâmetro for omitido, o servidor assumirá plain.

CarouselCard

Carrossel de cards.

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

enum (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.

CardWidth

A largura dos cards no carrossel.

Enums
CARD_WIDTH_UNSPECIFIED Não especificado
SMALL 136 DP. Não é possível incluir mídia alta.
MEDIUM 280 DP.

Métodos

create

Envia uma mensagem de um agente para um usuário.

updateReceipt

Envia uma confirmação de uma mensagem de um agente para um usuário.