REST Resource: conversations.messages

Recurso: mensagem

Mensagem de uma 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 Business Messages. Resolve para "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 correta 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 na conversa, incluindo as mensagens do agente e do usuário. O usuário pode tocar em uma resposta sugerida para enviar ao agente.

fallback

string

Opcional. Texto substituto 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. Se true, indica que a mensagem contém rich text. Se a mensagem tiver uma formatação inválida, o 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 dela e o URL da miniatura.

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: imagem/jpeg, imagem/jpg, imagem/png, imagem/webp

thumbnailUrl

string

Opcional. URL da miniatura acessível publicamente.

Se você não fornecer um URL de miniatura, a plataforma vai mostrar uma miniatura de marcador de posição 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: imagem/jpeg, imagem/jpg, imagem/png, imagem/webp

forceRefresh

boolean

Se definido, a plataforma 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).

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 ao 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)

Card autônomo.

carouselCard

object (CarouselCard)

Carrossel de cards.

StandaloneCard

Card autônomo.

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 cartão. Máximo de 2.000 caracteres.

media

object (Media)

Opcional. Mídia a ser incluída no cartão.

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 (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 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 em 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 atendente 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 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 app discador padrão do usuário.

OpenUrlAction

Abre o URL especificado.

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

string

URL

DialAction

Abre o app 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 da 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 solicita a autorização.

codeChallenge

string

Obrigatório. O desafio de 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 considerará 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 o comprovante de uma mensagem de um agente para um usuário.