Files

Wrapper para uma lista de arquivos.

Representação JSON
{

  // Union field file_type can be only one of the following:
  "configFiles": {
    object (ConfigFiles)
  },
  "dataFiles": {
    object (DataFiles)
  }
  // End of list of possible types for union field file_type.
}
Campos
Campo de união file_type. Somente um tipo de arquivo por vez pode ser enviado ao servidor: arquivos de configuração ou de dados. file_type pode ser apenas de um dos tipos a seguir:
configFiles

object (ConfigFiles)

Lista de arquivos de configuração. Isso inclui manifestos, configurações, pacotes de recursos de modelos de interação e muito mais.

dataFiles

object (DataFiles)

Lista de arquivos de dados. Isso inclui imagem, arquivo de áudio e código-fonte da função do Cloud.

ConfigFiles

Wrapper para arquivos de configuração repetidos. Não é possível haver campos repetidos em oneof.

Representação JSON
{
  "configFiles": [
    {
      object (ConfigFile)
    }
  ]
}
Campos
configFiles[]

object (ConfigFile)

Vários arquivos de configuração.

ConfigFile

Representa um único arquivo que contém dados estruturados. Os desenvolvedores podem definir a maior parte do projeto usando a configuração estruturada, incluindo ações, configurações e fulfillment.

Representação JSON
{
  "filePath": string,

  // Union field file can be only one of the following:
  "manifest": {
    object (Manifest)
  },
  "actions": {
    object (Actions)
  },
  "settings": {
    object (Settings)
  },
  "webhook": {
    object (Webhook)
  },
  "intent": {
    object (Intent)
  },
  "type": {
    object (Type)
  },
  "entitySet": {
    object (EntitySet)
  },
  "globalIntentEvent": {
    object (GlobalIntentEvent)
  },
  "scene": {
    object (Scene)
  },
  "staticPrompt": {
    object (StaticPrompt)
  },
  "accountLinkingSecret": {
    object (AccountLinkingSecret)
  },
  "resourceBundle": {
    object
  }
  // End of list of possible types for union field file.
}
Campos
filePath

string

O caminho relativo do arquivo de configuração da raiz do projeto na estrutura de arquivos do SDK. Cada tipo de arquivo abaixo tem um caminho permitido. Por exemplo: settings/settings.yaml

Campo de união file. Cada tipo de arquivo de configuração deve ter um campo correspondente no oneof. file pode ser apenas de um dos tipos a seguir:
manifest

object (Manifest)

Arquivo de manifesto único. Caminho de arquivo permitido: manifest.yaml

actions

object (Actions)

Arquivo de ações únicas com todas as ações definidas. Caminhos de arquivo permitidos: actions/{language}?/actions.yaml

settings

object (Settings)

Configuração única que inclui configurações e definições não localizáveis para a localidade padrão do projeto (se especificada). Para um arquivo de substituição de localidade, somente o campo localizedSettings será preenchido. Caminhos de arquivo permitidos: settings/{language}?/settings.yaml. O arquivo de configurações não localizado settings/settings.yaml precisa estar presente nas solicitações de fluxo de gravação.

webhook

object (Webhook)

Definição de webhook única. Caminho de arquivo permitido: webhooks/{WebhookName}.yaml

intent

object (Intent)

Definição de intent única. Caminhos de arquivo permitidos: custom/intents/{language}?/{IntentName}.yaml

type

object (Type)

Definição de tipo único. Caminhos de arquivo permitidos: custom/types/{language}?/{TypeName}.yaml

entitySet

object (EntitySet)

Definição de grupo de entidades única. Caminhos de arquivo permitidos: custom/entitySets/{language}?/{EntitySetName}.yaml

globalIntentEvent

object (GlobalIntentEvent)

Definição única de evento de intent global. Caminhos de arquivo permitidos: custom/global/{GlobalIntentEventName}.yaml o nome do arquivo (GlobalIntentEventName) precisa ser o nome da intent a que esse evento de intent global corresponde.

scene

object (Scene)

Definição de cena única. Caminhos de arquivo permitidos: custom/scenes/{SceneName}.yaml

staticPrompt

object (StaticPrompt)

Definição de prompt estático única. Caminhos de arquivo permitidos: custom/prompts/{language}?/{StaticPromptName}.yaml

accountLinkingSecret

object (AccountLinkingSecret)

Metadados correspondentes à chave secreta do cliente usada na vinculação da conta. Caminho de arquivo permitido: settings/accountLinkingSecret.yaml

resourceBundle

object (Struct format)

Pacote de recursos único, que é um mapa de uma string para uma string ou uma lista de strings. Os pacotes de recursos podem ser usados para localizar strings em prompts estáticos. Caminhos de arquivo permitidos: resources/strings/{language}?/{multiple directories}?/{BundleName}.yaml

Manifesto

Contém informações que são "transportáveis", ou seja, não específicas de um determinado projeto, e podem ser movidas entre projetos.

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

string

Versão do formato do arquivo. A versão atual do formato de arquivo é 1.0. Exemplo: "1.0"

Ações

Representa a lista de ações definidas em um projeto.

Representação JSON
{
  "custom": {
    string: {
      object (CustomAction)
    },
    ...
  }
}
Campos
custom

map (key: string, value: object (CustomAction))

Mapear de intents para ações personalizadas a fim de configurar a invocação do projeto. As intents de invocação podem ser intents do sistema ou personalizadas definidas no pacote "custom/intents/". Todas as intents definidas aqui (intents do sistema e personalizadas) precisam ter um arquivo de intent correspondente no pacote "custom/global/".

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

CustomAction

Detalhes sobre uma ação personalizada

Representação JSON
{
  "engagement": {
    object (Engagement)
  }
}
Campos
engagement

object (Engagement)

Mecanismos de engajamento associados à ação para ajudar os usuários finais a se inscreverem para receber notificações push e atualizações diárias. O nome da intent especificado na configuração do slot de notificações push/atualizações diárias precisa corresponder à intent correspondente a essa ação para que os usuários finais se inscrevam para receber essas atualizações.

Engajamento

Define os mecanismos de engajamento associados a essa ação. Isso permite que os usuários finais se inscrevam para receber notificações push e atualizações diárias.

Representação JSON
{
  "title": string,
  "pushNotification": {
    object (PushNotification)
  },
  "actionLink": {
    object (ActionLink)
  },
  "assistantLink": {
    object (AssistantLink)
  },
  "dailyUpdate": {
    object (DailyUpdate)
  }
}
Campos
title

string

O título do engajamento que será enviado aos usuários finais solicitando permissão para receber atualizações. A solicitação enviada aos usuários finais para atualizações diárias será parecida com "Que horas você quer que eu envie seu {title}" diariamente, e para notificações push será algo como "Tudo bem se eu enviar notificações push para {title}"? Este campo pode ser localizado.

pushNotification

object (PushNotification)

Configurações de notificação push compatíveis com este engajamento.

dailyUpdate

object (DailyUpdate)

Configurações de atualização diária compatíveis com esse engajamento.

PushNotification

Define as configurações de notificação push compatíveis com esse engajamento.

DailyUpdate

Define as configurações de atualização diária compatíveis com esse engajamento.

Configurações

Representa as configurações de um projeto do Actions que não são específicas da localidade. Próxima tag: 22

Representação JSON
{
  "projectId": string,
  "defaultLocale": string,
  "enabledRegions": [
    string
  ],
  "disabledRegions": [
    string
  ],
  "category": enum (Category),
  "usesTransactionsApi": boolean,
  "usesDigitalPurchaseApi": boolean,
  "usesInteractiveCanvas": boolean,
  "usesHomeStorage": boolean,
  "designedForFamily": boolean,
  "containsAlcoholOrTobaccoContent": boolean,
  "keepsMicOpen": boolean,
  "surfaceRequirements": {
    object (SurfaceRequirements)
  },
  "testingInstructions": string,
  "localizedSettings": {
    object (LocalizedSettings)
  },
  "accountLinking": {
    object (AccountLinking)
  },
  "selectedAndroidApps": [
    string
  ]
}
Campos
projectId

string

ID do projeto de ações.

defaultLocale

string

Localidade que é padrão para o projeto. Para todos os arquivos, exceto em resources/ e sem localidade no caminho, os dados localizados são atribuídos a esse defaultLocale. Para arquivos em resources/, nenhuma localidade significa que o recurso é aplicável a todas as localidades.

enabledRegions[]

string

Representa as regiões em que os usuários podem invocar suas ações, que têm como base o local de presença do usuário. Não será possível definir se disabledRegions estiver definido. Se enabledRegions e disabledRegions não forem especificados, os usuários poderão invocar suas ações em todas as regiões. Cada região é representada pelo nome canônico das segmentações geográficas do Google AdWords. Consulte https://developers.google.com/adwords/api/docs/appendix/geotargeting. Por exemplo: - "Alemanha" - "Gana" - "Grécia" - "Granada" - "Reino Unido" - "Estados Unidos" - "Ilhas Menores Distantes dos Estados Unidos" - "Uruguai"

disabledRegions[]

string

Representa as regiões em que as ações estão bloqueadas, com base no local de presença do usuário. Não será possível definir se enabledRegions estiver definido. Cada região é representada pelo nome canônico das segmentações geográficas do Google AdWords. Consulte https://developers.google.com/adwords/api/docs/appendix/geotargeting. Por exemplo: - "Alemanha" - "Gana" - "Grécia" - "Granada" - "Reino Unido" - "Estados Unidos" - "Ilhas Menores Distantes dos Estados Unidos" - "Uruguai"

category

enum (Category)

A categoria deste projeto do Actions.

usesTransactionsApi

boolean

Se as Ações podem usar transações (por exemplo, fazer reservas, receber pedidos etc.). Se for falso, as tentativas de usar as APIs Transações falharão.

usesDigitalPurchaseApi

boolean

Se as ações podem realizar transações para produtos e softwares digitais.

usesInteractiveCanvas

boolean

Define se as ações usam tela interativa.

usesHomeStorage

boolean

Define se as ações usam o recurso de armazenamento em casa.

designedForFamily

boolean

Se o conteúdo do Actions é projetado para a família (DFF, na sigla em inglês).

containsAlcoholOrTobaccoContent

boolean

Se as Ações incluem conteúdo relacionado a bebidas alcoólicas ou tabaco.

keepsMicOpen

boolean

Se o Actions pode deixar o microfone aberto sem um prompt explícito durante a conversa.

surfaceRequirements

object (SurfaceRequirements)

Os requisitos de plataforma que uma plataforma do cliente precisa atender para invocar ações neste projeto.

testingInstructions

string

Instruções de teste em formato livre para o revisor do Actions (por exemplo, instruções de vinculação de conta).

localizedSettings

object (LocalizedSettings)

Configurações localizadas para a localidade padrão do projeto. Cada localidade adicional precisa ter o próprio arquivo de configurações no próprio diretório.

accountLinking

object (AccountLinking)

Permita que os usuários criem ou vinculem contas pelo Login do Google e/ou pelo seu próprio serviço do OAuth.

selectedAndroidApps[]

string

Apps Android selecionados para acessar compras no Google Play para transações. Esta é uma seleção dos apps Android conectados ao projeto de ações para verificar a propriedade da marca e ativar outros recursos. Consulte https://developers.google.com/assistant/console/brand-verification para mais informações.

Categoria

Opções de categoria para um projeto do Actions.

Enums
CATEGORY_UNSPECIFIED Desconhecido / não especificado.
BUSINESS_AND_FINANCE Categoria "Negócios e finanças".
EDUCATION_AND_REFERENCE Categoria Educação e referência.
FOOD_AND_DRINK Categoria de alimentos e bebidas.
GAMES_AND_TRIVIA Categoria "Jogos e curiosidades".
HEALTH_AND_FITNESS Categoria de saúde e condicionamento físico.
KIDS_AND_FAMILY Categoria "Crianças e família".
LIFESTYLE Categoria de estilo de vida.
LOCAL Categoria local.
MOVIES_AND_TV Categoria "Filmes e TV".
MUSIC_AND_AUDIO Música e áudio.
NEWS Categoria de notícias,
NOVELTY_AND_HUMOR na categoria Inovação e humor.
PRODUCTIVITY Categoria de produtividade.
SHOPPING Shopping.
SOCIAL Categoria social.
SPORTS Categoria Esportes.
TRAVEL_AND_TRANSPORTATION Categoria de viagem e transporte.
UTILITIES Categoria de utilitários.
WEATHER Categoria "Clima".
HOME_CONTROL Categoria da automação residencial.

SurfaceRequirements

Contém um conjunto de requisitos que a plataforma do cliente precisa aceitar para invocar ações no projeto.

Representação JSON
{
  "minimumRequirements": [
    {
      object (CapabilityRequirement)
    }
  ]
}
Campos
minimumRequirements[]

object (CapabilityRequirement)

O conjunto mínimo de recursos necessários para invocar as ações no projeto. Se faltar algum desses elementos na plataforma, a ação não será acionada.

CapabilityRequirement

Representa um requisito sobre a disponibilidade de uma determinada capacidade.

Representação JSON
{
  "capability": enum (SurfaceCapability)
}
Campos
capability

enum (SurfaceCapability)

O tipo de capability.

SurfaceCapability

Possível conjunto de recursos de superfície.

Enums
SURFACE_CAPABILITY_UNSPECIFIED Desconhecido / não especificado.
AUDIO_OUTPUT A plataforma aceita saída de áudio.
SCREEN_OUTPUT A superfície é compatível com a saída de tela/visual.
MEDIA_RESPONSE_AUDIO A superfície é compatível com áudio de resposta de mídia.
WEB_BROWSER O Surface é compatível com navegadores da Web.
ACCOUNT_LINKING O Surface é compatível com a vinculação de contas.
INTERACTIVE_CANVAS A plataforma é compatível com a tela interativa.
HOME_STORAGE O Surface é compatível com o armazenamento doméstico.

LocalizedSettings

Representa as configurações de um projeto do Actions específicas de uma localidade do usuário. Nesse caso, o usuário é o usuário final que invoca as ações. Esta mensagem pode ser localizada.

Representação JSON
{
  "displayName": string,
  "pronunciation": string,
  "shortDescription": string,
  "fullDescription": string,
  "smallLogoImage": string,
  "largeBannerImage": string,
  "developerName": string,
  "developerEmail": string,
  "termsOfServiceUrl": string,
  "voice": string,
  "voiceLocale": string,
  "privacyPolicyUrl": string,
  "sampleInvocations": [
    string
  ],
  "themeCustomization": {
    object (ThemeCustomization)
  }
}
Campos
displayName

string

Obrigatório. O nome de exibição padrão para este projeto do Actions (se não houver tradução disponível)

pronunciation

string

Obrigatório. A pronúncia do nome de exibição para invocá-lo em um contexto de voz (falado).

shortDescription

string

Obrigatório. A breve descrição padrão do projeto do Actions (se não houver tradução disponível). Limite de 80 caracteres.

fullDescription

string

Obrigatório. A descrição longa padrão do projeto do Actions (se não houver tradução disponível). Limite de 4.000 caracteres.

smallLogoImage

string

Obrigatório. Imagem quadrada pequena, 192 x 192 px. Precisa ser especificado como uma referência à imagem correspondente no diretório resources/images/. Por exemplo, $resources.images.foo (sem a extensão) para a imagem em resources/images/foo.jpg. Ao trabalhar em um projeto extraído do console, é possível usar o URL gerenciado pelo Google. URLs de fontes externas não são permitidos.

largeBannerImage

string

Opcional. Imagem grande em modo paisagem, 1920 x 1080 px. Precisa ser especificado como uma referência à imagem correspondente no diretório resources/images/. Por exemplo, $resources.images.foo (sem a extensão) para a imagem em resources/images/foo.jpg. Ao trabalhar em um projeto extraído do console, é possível usar o URL gerenciado pelo Google. URLs de fontes externas não são permitidos.

developerName

string

Obrigatório. É o nome do desenvolvedor que será exibido aos usuários.

developerEmail

string

Obrigatório. O endereço de e-mail de contato do desenvolvedor.

termsOfServiceUrl

string

Opcional. URL dos Termos de Serviço.

voice

string

Obrigatório. O tipo de voz do Google Assistente que os usuários ouvem quando interagem com suas ações. Os valores aceitos são "male_1", "male_2", "female_1" e "female_2".

voiceLocale

string

Opcional. A localidade da voz especificada. Se não for especificada, a definição será usada na localidade do Google Assistente do usuário. Se especificado, a localidade da voz precisa ter o mesmo idioma raiz que a localidade especificada em LocalizedSettings.

privacyPolicyUrl

string

Obrigatório. É o URL da Política de Privacidade.

sampleInvocations[]

string

Opcional. Exemplos de frases de invocação mostradas como parte da descrição do seu projeto do Actions no diretório do Google Assistente. Isso ajudará os usuários a aprender como usá-lo.

themeCustomization

object (ThemeCustomization)

Opcional. Personalizações de tema para componentes visuais das ações.

ThemeCustomization

Estilos aplicados aos cards apresentados aos usuários

Representação JSON
{
  "backgroundColor": string,
  "primaryColor": string,
  "fontFamily": string,
  "imageCornerStyle": enum (ImageCornerStyle),
  "landscapeBackgroundImage": string,
  "portraitBackgroundImage": string
}
Campos
backgroundColor

string

Cor do plano de fundo dos cards. Ele funciona como um substituto se o background_image não for fornecido pelos desenvolvedores ou se o background_image não se encaixar em determinadas plataformas. Exemplo de uso: #FAFAFA

primaryColor

string

A cor do tema principal da ação vai ser usada para definir a cor do texto do título e a cor do plano de fundo do item de ação para os cards do Actions on Google. Exemplo de uso: #FAFAFA

fontFamily

string

A família de fontes que será usada para os títulos dos cards. Fontes compatíveis: - Sans Serif - Sans Serif Medium - Sans Serif Bold - Sans Serif Black - Sans Serif Condensed - Sans Serif Condensed Medium - Serif - Seif Bold - Monospace - Cursivo - Sans Serif Smallcaps

imageCornerStyle

enum (ImageCornerStyle)

Estilo de borda da imagem de primeiro plano de cards. Por exemplo, pode ser aplicado à imagem de primeiro plano de um card básico ou de carrossel.

landscapeBackgroundImage

string

Modo paisagem (mínimo de 1.920 x 1.200 pixels). Precisa ser especificado como uma referência à imagem correspondente no diretório resources/images/. Por exemplo: $resources.images.foo (sem a extensão) para a imagem em resources/images/foo.jpg. Ao trabalhar em um projeto extraído do console, é possível usar o URL gerenciado pelo Google.

portraitBackgroundImage

string

Modo retrato (mínimo de 1.200 x 1.920 pixels). Precisa ser especificado como uma referência à imagem correspondente no diretório resources/images/. Por exemplo: $resources.images.foo (sem a extensão) para a imagem em resources/images/foo.jpg. Ao trabalhar em um projeto extraído do console, é possível usar o URL gerenciado pelo Google.

ImageCornerStyle

Descreve como renderizar as bordas das imagens.

Enums
IMAGE_CORNER_STYLE_UNSPECIFIED Indefinido / não especificado.
CURVED Canto arredondado para a imagem.
ANGLED Canto retangular da imagem.

AccountLinking

O AccountLinking permite que o Google oriente o usuário a fazer login nos serviços da Web do app.

Para os tipos de vinculação do Login do Google e do OAuth + Login do Google, o Google gera um ID de cliente que identifica seu app para o Google ("ID do cliente emitido pelo Google para suas Ações" na interface do Console). Este campo é somente leitura e pode ser verificado na página "Vinculação de contas" da interface do Console. Acesse: https://developers.google.com/assistant/identity/google-sign-in

Observação: para todos os tipos de configuração de vinculação de contas (exceto para o Login do Google), é necessário informar um nome de usuário e uma senha de uma conta de teste em Settings.testing_instructions para que a equipe de análise analise o app. Esses dados não ficam visíveis para os usuários.

Representação JSON
{
  "enableAccountCreation": boolean,
  "linkingType": enum (LinkingType),
  "authGrantType": enum (AuthGrantType),
  "appClientId": string,
  "authorizationUrl": string,
  "tokenUrl": string,
  "scopes": [
    string
  ],
  "learnMoreUrl": string,
  "useBasicAuthHeader": boolean
}
Campos
enableAccountCreation

boolean

Obrigatório. Se for true, os usuários poderão se inscrever em novas contas usando a voz. Se o valor for false, a criação de contas só será permitida no seu site. Selecione esta opção se você quiser exibir seus Termos de Serviço ou receber o consentimento dos usuários durante a inscrição. O LinkingType não pode ser GOOGLE_SIGN_IN quando o nome é false. O linkType não pode ser OAUTH quando este for true.

linkingType

enum (LinkingType)

Obrigatório. O tipo de vinculação a ser usada. Consulte https://developers.google.com/assistant/identity para mais detalhes sobre os tipos de vinculação.

authGrantType

enum (AuthGrantType)

Opcional. Indica o tipo de autenticação para OAUTH LinkingType.

appClientId

string

Opcional. ID do cliente emitido pelo seu app para o Google. Esse é o ID do cliente OAuth2 que identifica o Google para seu serviço. Definido apenas ao usar o OAuth.

authorizationUrl

string

Opcional. Endpoint da sua página da Web de login que oferece suporte ao código OAuth2 ou a fluxos implícitos. O URL precisa usar HTTPS. Definido apenas ao usar o OAuth.

tokenUrl

string

Opcional. Endpoint do OAuth2 para troca de tokens. O URL precisa usar HTTPS. Isso não é definido ao usar apenas o OAuth com concessão IMPLICIT como o tipo de vinculação. Definido apenas ao usar o OAuth.

scopes[]

string

Opcional. Lista de permissões com as quais o usuário precisa consentir para usar seu serviço. Definido apenas ao usar o OAuth. Se você especificar esse campo, inclua os Termos de Serviço nas informações do diretório na seção LocalizedSettings.terms_of_service_url.

learnMoreUrl

string

Opcional. Essa é a página da Web do serviço que descreve as permissões que o usuário está concedendo ao Google. Definido apenas se estiver usando o OAuth e o Login do Google. Se você especificar esse campo, inclua os Termos de Serviço nas informações do diretório na seção LocalizedSettings.terms_of_service_url.

useBasicAuthHeader

boolean

Opcional. Se verdadeiro, permite que o Google transmita o ID e o segredo do cliente por meio do cabeçalho de autenticação HTTP básico. Caso contrário, o Google usará o ID do cliente e a chave secreta no corpo da postagem. Definido apenas ao usar o OAuth. Se você especificar esse campo, inclua os Termos de Serviço nas informações do diretório na seção LocalizedSettings.terms_of_service_url.

LinkingType

O tipo de vinculação de contas a ser realizada.

Enums
LINKING_TYPE_UNSPECIFIED Não especificado.
GOOGLE_SIGN_IN Tipo de vinculação do Login do Google. Se você usar esse tipo de vinculação, nenhum campo relacionado a OAuth precisará ser definido abaixo.
OAUTH_AND_GOOGLE_SIGN_IN Tipo de vinculação OAuth e Login do Google.
OAUTH Tipo de vinculação do OAuth.

AuthGrantType

O tipo de concessão OAuth2 usado pelo Google para orientar o usuário a fazer login no serviço da Web do seu app.

Enums
AUTH_GRANT_TYPE_UNSPECIFIED Não especificado.
AUTH_CODE Concessão do código de autorização. Exige que você forneça o URL de autenticação e o URL do token de acesso.
IMPLICIT Concessão de código implícito. Exige apenas que você forneça o URL de autenticação.

Webhook

Metadados para diferentes tipos de webhooks. Se você estiver usando inlineCloudFunction, seu código-fonte precisará estar em um diretório com o mesmo nome do valor da chave executeFunction. Por exemplo, um valor de my_webhook para a chave executeFunction teria uma estrutura de código como esta: - /webhooks/my_webhook.yaml - /webhooks/my_webhook/index.js - /webhooks/my_webhook/package.json

Representação JSON
{
  "handlers": [
    {
      object (Handler)
    }
  ],

  // Union field webhook_type can be only one of the following:
  "httpsEndpoint": {
    object (HttpsEndpoint)
  },
  "inlineCloudFunction": {
    object (InlineCloudFunction)
  }
  // End of list of possible types for union field webhook_type.
}
Campos
handlers[]

object (Handler)

Lista de gerenciadores deste webhook.

Campo de união webhook_type. Há suporte para apenas um tipo de webhook. webhook_type pode ser apenas de um dos tipos a seguir:
httpsEndpoint

object (HttpsEndpoint)

Endpoint HTTPS de webhook personalizado.

inlineCloudFunction

object (InlineCloudFunction)

Metadados da função do Cloud implantada a partir do código na pasta de webhooks.

Handler

Declara o nome do gerenciador webhoook. Um webhook pode ter vários gerenciadores registrados. Esses gerenciadores podem ser chamados de vários locais no projeto do Actions.

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

string

Obrigatório. Nome do gerenciador. Precisa ser exclusivo em todos os gerenciadores do projeto de ações. É possível verificar o nome desse gerenciador para invocar a função correta no código-fonte do fulfillment.

HttpsEndpoint

Endpoint REST para notificar se você não estiver usando o editor in-line.

Representação JSON
{
  "baseUrl": string,
  "httpHeaders": {
    string: string,
    ...
  },
  "endpointApiVersion": integer
}
Campos
baseUrl

string

O URL base de HTTPS para o endpoint de fulfillment (HTTP não é compatível). Os nomes de manipulador são anexados ao caminho do URL base após dois-pontos (seguindo o guia de estilo em https://cloud.google.com/apis/design/custom_methods). Por exemplo, um URL base de "https://gactions.service.com/api" receberia solicitações com o URL "https://gactions.service.com/api:{method}".

httpHeaders

map (key: string, value: string)

Mapa de parâmetros HTTP a serem incluídos na solicitação POST.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

endpointApiVersion

integer

Versão do protocolo usado pelo endpoint. Esse é o protocolo compartilhado por todos os tipos de fulfillment e não específico do tipo de fulfillment do Google.

InlineCloudFunction

Mantém os metadados de uma Função do Cloud inline implantada da pasta de webhooks.

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

string

O nome do ponto de entrada da função do Cloud. O valor desse campo precisa corresponder ao nome do método exportado do código-fonte.

Intent

As intents mapeiam a entrada aberta do usuário para objetos estruturados. As frases faladas são associadas a intents com o processamento de linguagem natural (PLN) do Google. As correspondências de intent podem acionar eventos no design da conversa para progredir. O nome da intent é especificado no nome do arquivo.

Representação JSON
{
  "parameters": [
    {
      object (IntentParameter)
    }
  ],
  "trainingPhrases": [
    string
  ]
}
Campos
parameters[]

object (IntentParameter)

A lista de parâmetros nas frases de treinamento. Todos os parâmetros precisam ser definidos aqui para serem usados na frase de treinamento.

trainingPhrases[]

string

As frases de treinamento permitem que o PLN do Google associe automaticamente as intents à entrada do usuário. Quanto mais frases exclusivas forem fornecidas, maior será a chance de correspondência com essa intent. Confira abaixo o formato da parte da frase de treinamento com a anotação. O campo auto é opcional, e o comportamento padrão quando auto não é especificado é equivalente a auto=false. ($<paramName> '<sample text>' auto=<true or false>) auto = true significa que a parte foi anotada automaticamente por PLN. auto = false significa que a parte foi anotada pelo usuário. Esse é o padrão quando a opção "auto" não está especificada. Exemplo: "Reservar um voo de ($source 'São Francisco' auto=false) para ($dest 'Vancouver')"

IntentParameter

Definição de um parâmetro que pode ser usado dentro de frases de treinamento.

Representação JSON
{
  "name": string,

  // Union field parameter_type can be only one of the following:
  "type": {
    object (ClassReference)
  },
  "entitySetReferences": {
    object (EntitySetReferences)
  }
  // End of list of possible types for union field parameter_type.
}
Campos
name

string

Obrigatório. Nome exclusivo do parâmetro da intent. Pode ser usado em condições e respostas para referenciar parâmetros de intent extraídos pelo PLN com $intent.params.[name].resolved

Campo de união parameter_type. O tipo do parâmetro da intent. parameter_type pode ser apenas de um dos tipos a seguir:
type

object (ClassReference)

Opcional. Declara o tipo de dados desse parâmetro. Não defina isso para intents integradas.

entitySetReferences

object (EntitySetReferences)

Opcional. Referências aos conjuntos de entidades permitidas para esse parâmetro da intent. Válido apenas para parâmetros de uma intent integrada. Essas referências apontam para grupos de entidades no diretório "custom/entitySets".

ClassReference

Uma referência a uma classe usada para declarar o tipo de um campo ou valor de retorno. Enums também são um tipo de classe que pode ser referenciado usando ClassReference.

Representação JSON
{
  "name": string,
  "list": boolean
}
Campos
name

string

Obrigatório. Nome de um tipo integrado ou personalizado do parâmetro. Por exemplo: PizzaToppings, actions.type.Number

list

boolean

Opcional. Indica se o tipo de dados representa uma lista de valores.

EntitySetReferences

Referências de grupo de entidades para um parâmetro de intent.

Representação JSON
{
  "entitySetReferences": [
    {
      object (EntitySetReference)
    }
  ]
}
Campos
entitySetReferences[]

object (EntitySetReference)

Obrigatório. Referências de grupo de entidades para um parâmetro de intent.

EntitySetReference

Uma referência ao conjunto de entidades permitidas para esse parâmetro de intent.

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

string

Obrigatório. Identifica a coleção específica de entidades a serem consideradas para determinado parâmetro. A definição do grupo de entidades correspondente precisa estar no diretório custom/entitySets/.

Tipo

Declaração de um tipo personalizado, em vez de tipos integrados. Os tipos podem ser atribuídos a slots em uma cena ou parâmetros de frases de treinamento de uma intent. Na prática, os tipos podem ser considerados tipos enumerados. O nome do tipo é especificado no nome do arquivo.

Representação JSON
{
  "exclusions": [
    string
  ],

  // Union field sub_type can be only one of the following:
  "synonym": {
    object (SynonymType)
  },
  "regularExpression": {
    object (RegularExpressionType)
  },
  "freeText": {
    object (FreeTextType)
  }
  // End of list of possible types for union field sub_type.
}
Campos
exclusions[]

string

Conjunto de palavras/frases excepcionais que não devem ser correspondidas por tipo. Observação: se a palavra/frase for correspondida pelo tipo, mas listada como uma exclusão, ela não será retornada no resultado da extração do parâmetro. Este campo pode ser localizado.

Campo de união sub_type. Seleção do subtipo com base no tipo de correspondência a ser feita. sub_type pode ser apenas de um dos tipos a seguir:
synonym

object (SynonymType)

Tipo de sinônimo, que é essencialmente uma enumeração.

regularExpression

object (RegularExpressionType)

O tipo de regex permite a correspondência de expressões regulares.

freeText

object (FreeTextType)

Tipo FreeText.

SynonymType

Tipo correspondente ao texto por conjunto de sinônimos.

Representação JSON
{
  "matchType": enum (MatchType),
  "acceptUnknownValues": boolean,
  "entities": {
    string: {
      object (Entity)
    },
    ...
  }
}
Campos
matchType

enum (MatchType)

Opcional. O tipo de correspondência do sinônimo.

acceptUnknownValues

boolean

Opcional. Se a política for definida como verdadeira, as palavras ou frases desconhecidas serão associadas com base nos dados de treinamento de entrada e intent ao redor, como itens que podem ser adicionados a uma lista de compras.

entities

map (key: string, value: object (Entity))

Obrigatório. Mapa nomeado de entidades sinônimos.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

MatchType

O tipo de correspondência usado pelas entradas nesse tipo. Isso garante que todos os tipos usem o mesmo método e permite a variação da correspondência de sinônimos (ou seja, difusa x exata). Se o valor for UNSPECIFIED, o padrão será EXACT_MATCH.

Enums
UNSPECIFIED O valor padrão é EXACT_MATCH.
EXACT_MATCH Procura uma correspondência exata do sinônimo ou nome.
FUZZY_MATCH Mais baixo que EXACT_MATCH. Procura correspondências semelhantes e exatas.

Entidade

Representa um campo de entidade de sinônimo que contém os detalhes de uma única entrada dentro do tipo.

Representação JSON
{
  "display": {
    object (EntityDisplay)
  },
  "synonyms": [
    string
  ]
}
Campos
display

object (EntityDisplay)

Opcional. Os detalhes de exibição da entidade.

synonyms[]

string

Opcional. A lista de sinônimos da entidade. Este campo pode ser localizado.

EntityDisplay

Elementos que serão exibidos na tela assim que uma entidade de determinado tipo for extraída de uma consulta. Relevante apenas para apps ativados para telas. Esta mensagem pode ser localizada.

Representação JSON
{
  "iconTitle": string,
  "iconUrl": string
}
Campos
iconTitle

string

Opcional. Título do ícone.

iconUrl

string

Obrigatório. URL do ícone.

RegularExpressionType

Tipo que corresponde ao texto por expressões regulares. Esta mensagem pode ser localizada.

Representação JSON
{
  "entities": {
    string: {
      object (Entity)
    },
    ...
  }
}
Campos
entities

map (key: string, value: object (Entity))

Obrigatório. Mapa nomeado de entidades, cada uma contendo strings Regex.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Entidade

Representa um objeto de entidade que contém a expressão regular usada para comparação.

Representação JSON
{
  "display": {
    object (EntityDisplay)
  },
  "regularExpressions": [
    string
  ]
}
Campos
display

object (EntityDisplay)

Opcional. Elementos que serão exibidos na tela quando uma entidade for extraída de uma consulta. Relevante apenas para apps ativados para telas.

regularExpressions[]

string

Obrigatório. Usa a sintaxe regex RE2. Consulte https://github.com/google/re2/wiki/Syntax para mais detalhes

FreeTextType

Tipo que corresponde a qualquer texto se o contexto das palavras ao redor estiver próximo aos exemplos de treinamento fornecidos.

Representação JSON
{
  "display": {
    object (EntityDisplay)
  }
}
Campos
display

object (EntityDisplay)

Opcional. Elementos que serão exibidos na tela quando uma entidade for extraída de uma consulta. Relevante apenas para apps ativados para telas.

EntitySet

Os grupos descrevem o conjunto predefinido de entidades de onde podem vir os valores dos parâmetros de intent integrados. Os grupos de entidades podem ser referenciados no entitySet em parâmetros de intent integrados.

Representação JSON
{
  "entities": [
    {
      object (Entity)
    }
  ]
}
Campos
entities[]

object (Entity)

Obrigatório. A lista de entidades aceitas por este grupo.

Entidade

Uma entidade de onde pode vir um valor de parâmetro de intent integrada.

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

string

Obrigatório. ID da entidade. Para conferir uma lista dos parâmetros de intent integrada e as entidades compatíveis, consulte https://developers.google.com/assistant/conversational/build/built-in-intents

GlobalIntentEvent

Define um gerenciador de intents global. Eventos de intent globais têm escopo para todo o projeto do Actions e podem ser substituídos por gerenciadores de intent em um cenário. Os nomes das intents precisam ser exclusivos em um projeto do Actions.

As intents globais podem ser correspondidas a qualquer momento durante uma sessão, permitindo que os usuários acessem fluxos comuns, como “receber ajuda” ou “voltar para a página inicial”. Eles também podem ser usados para vincular usuários a fluxos específicos quando eles invocam uma ação.

O nome da intent é especificado no nome do arquivo.

Representação JSON
{
  "transitionToScene": string,
  "handler": {
    object (EventHandler)
  }
}
Campos
transitionToScene

string

Opcional. Cena de destino para a qual a conversa deve pular. O estado da cena atual é destruído na transição.

handler

object (EventHandler)

Opcional. manipulador de eventos que é acionado quando há correspondência com a intent. Precisa ser executado antes da transição para a cena de destino. Útil para gerar comandos em resposta a eventos.

EventHandler

Define um manipulador a ser executado após um evento. Exemplos de eventos são os eventos baseados em intent e condição em um cenário.

Representação JSON
{
  "webhookHandler": string,

  // Union field prompt can be only one of the following:
  "staticPrompt": {
    object (StaticPrompt)
  },
  "staticPromptName": string
  // End of list of possible types for union field prompt.
}
Campos
webhookHandler

string

Nome do gerenciador de webhook a ser chamado.

Campo de união prompt. Os comandos podem ser inline ou referenciados por nome. prompt pode ser apenas de um dos tipos a seguir:
staticPrompt

object (StaticPrompt)

Comando estático inline. Pode conter referências a recursos de string em pacotes.

staticPromptName

string

Nome do prompt estático a ser invocado.

StaticPrompt

Representa uma lista de candidatos a prompts, sendo que um deles será selecionado como o comando a ser mostrado na resposta ao usuário. Esta mensagem pode ser localizada.

Representação JSON
{
  "candidates": [
    {
      object (StaticPromptCandidate)
    }
  ]
}
Campos
candidates[]

object (StaticPromptCandidate)

A lista de solicitações candidatas a serem enviadas ao cliente. Cada comando tem um seletor para determinar quando pode ser usado. O primeiro seletor que corresponde a uma solicitação é enviado e o restante é ignorado.

StaticPromptCandidate

Representa um candidato a comando estático.

Representação JSON
{
  "selector": {
    object (Selector)
  },
  "promptResponse": {
    object (StaticPromptResponse)
  }
}
Campos
selector

object (Selector)

Opcional. Os critérios que determinam se esse comando corresponde a uma solicitação. Se o seletor estiver vazio, essa solicitação sempre será acionada.

promptResponse

object (StaticPromptResponse)

A resposta de solicitação associada ao seletor.

Seletor

Define os critérios que determinam se um comando corresponde a uma solicitação.

Representação JSON
{
  "surfaceCapabilities": {
    object (SurfaceCapabilities)
  }
}
Campos
surfaceCapabilities

object (SurfaceCapabilities)

O conjunto de recursos de superfície necessários.

SurfaceCapabilities

Representa a superfície que o usuário está usando para fazer uma solicitação para a ação.

Representação JSON
{
  "capabilities": [
    enum (Capability)
  ]
}
Campos
capabilities[]

enum (Capability)

Obrigatório. Os recursos da superfície que fazem uma solicitação à ação.

Capacidade

Recursos que a superfície do dispositivo aceita no momento da solicitação.

Enums
UNSPECIFIED Capacidade de superfície não especificada.
SPEECH O dispositivo pode falar com o usuário por conversão de texto em voz ou SSML.
RICH_RESPONSE O dispositivo pode mostrar respostas avançadas, como cards, listas e tabelas.
LONG_FORM_AUDIO O dispositivo pode tocar mídias de áudio mais longas, como músicas e podcasts.
INTERACTIVE_CANVAS O dispositivo pode mostrar uma resposta de tela interativa.
HOME_STORAGE O dispositivo oferece suporte ao salvamento e à busca de armazenamento doméstico.

StaticPromptResponse

Representa respostas estruturadas a serem enviadas ao usuário, como texto, fala, cartões, dados de tela, ícones de sugestão etc.

Representação JSON
{
  "firstSimple": {
    object (StaticSimplePrompt)
  },
  "content": {
    object (StaticContentPrompt)
  },
  "lastSimple": {
    object (StaticSimplePrompt)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ],
  "link": {
    object (StaticLinkPrompt)
  },
  "override": boolean,
  "canvas": {
    object (StaticCanvasPrompt)
  }
}
Campos
firstSimple

object (StaticSimplePrompt)

Opcional. A primeira resposta de voz e somente texto.

content

object (StaticContentPrompt)

Opcional. Um conteúdo como um card, lista ou mídia que será exibido ao usuário.

lastSimple

object (StaticSimplePrompt)

Opcional. A última resposta de voz e somente texto.

suggestions[]

object (Suggestion)

Opcional. Sugestões a serem exibidas ao usuário que sempre aparecerão no final da resposta. Se o campo append no comando for true, os títulos definidos nele serão adicionados aos títulos definidos nas sugestões definidas anteriormente, e os valores duplicados serão removidos.

override

boolean

Opcional. Modo de como estas mensagens devem ser mescladas com mensagens definidas anteriormente. O true vai apagar todas as mensagens definidas anteriormente (primeira e última simples, conteúdo, link e tela de sugestões) e adicionar mensagens definidas neste comando. O false vai adicionar as mensagens definidas neste comando às mensagens definidas nas respostas anteriores. Definir este campo como false também ativa a anexação a alguns campos dentro de prompts simples, de Sugestões e do Canvas (parte do prompt de conteúdo). As mensagens de conteúdo e link sempre serão substituídas, se definidas no prompt. O valor padrão é false.

canvas

object (StaticCanvasPrompt)

Uma resposta a ser usada para a experiência de tela interativa.

StaticSimplePrompt

Representa um prompt simples a ser enviado a um usuário.

Representação JSON
{
  "variants": [
    {
      object (Variant)
    }
  ]
}
Campos
variants[]

object (Variant)

Lista de variantes possíveis.

Variante

Representa uma variante que faz parte do comando simples.

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

string

Opcional. Representa a fala a ser falada para o usuário. Pode ser SSML ou conversão de texto em voz. Por padrão, a fala será anexada à fala do comando Simples anterior. Se o campo override no comando que contém o comando for true, a fala definida nesse campo vai substituir a fala da solicitação Simples anterior.

text

string

Opcional. Texto a ser exibido no balão do chat. Se não for fornecido, será usada uma renderização de exibição do campo de fala acima. Limitado a 640 caracteres. Por padrão, o texto será anexado ao texto do comando Simples anterior. Se o campo override no prompt for true, o texto definido nesse campo vai substituir o texto do prompt simples anterior.

StaticContentPrompt

Um marcador para a parte Content de um StaticPrompt.

Representação JSON
{

  // Union field content can be only one of the following:
  "card": {
    object (StaticCardPrompt)
  },
  "image": {
    object (StaticImagePrompt)
  },
  "table": {
    object (StaticTablePrompt)
  },
  "media": {
    object (StaticMediaPrompt)
  },
  "list": {
    object (StaticListPrompt)
  },
  "collection": {
    object (StaticCollectionPrompt)
  },
  "collectionBrowse": {
    object (StaticCollectionBrowsePrompt)
  }
  // End of list of possible types for union field content.
}
Campos
Campo de união content. Somente um tipo de conteúdo pode estar presente em um comando. content pode ser apenas de um dos tipos a seguir:
card

object (StaticCardPrompt)

Um cartão básico.

image

object (StaticImagePrompt)

Uma imagem.

table

object (StaticTablePrompt)

Card de tabela.

media

object (StaticMediaPrompt)

Resposta indicando um conjunto de mídias a serem reproduzidas.

list

object (StaticListPrompt)

Um card para apresentar uma lista de opções disponíveis.

collection

object (StaticCollectionPrompt)

Um card com uma lista de opções disponíveis.

collectionBrowse

object (StaticCollectionBrowsePrompt)

Um card que mostra uma coleção de páginas da Web a serem abertas.

StaticCardPrompt

Um card básico para exibir algumas informações, por exemplo, uma imagem e/ou texto.

Representação JSON
{
  "title": string,
  "subtitle": string,
  "text": string,
  "image": {
    object (StaticImagePrompt)
  },
  "imageFill": enum (ImageFill),
  "button": {
    object (StaticLinkPrompt)
  }
}
Campos
title

string

Opcional. Título geral do card.

subtitle

string

Opcional. Subtítulo do cartão.

text

string

Obrigatório. Corpo de texto do cartão que é necessário, a menos que imagem esteja presente. Oferece suporte a um conjunto limitado de sintaxe markdown para formatação.

image

object (StaticImagePrompt)

Opcional. Uma imagem principal para o cartão. A altura é fixa em 192 dp.

imageFill

enum (ImageFill)

Opcional. Como o plano de fundo da imagem será preenchido.

button

object (StaticLinkPrompt)

Opcional. Um botão clicável a ser exibido no card.

StaticImagePrompt

Uma imagem exibida no card.

Representação JSON
{
  "url": string,
  "alt": string,
  "height": integer,
  "width": integer
}
Campos
url

string

Obrigatório. O URL de origem da imagem. As imagens podem ser JPG, PNG e GIF (animadas e não animadas). Por exemplo,https://www.agentx.com/logo.png.

alt

string

Obrigatório. Uma descrição de texto da imagem a ser usada para acessibilidade, por exemplo, leitores de tela.

height

integer

Opcional. A altura da imagem, em pixels.

width

integer

Opcional. A largura da imagem, em pixels.

ImageFill

Possíveis opções de exibição de imagens para afetar a apresentação da imagem. Use quando a proporção da imagem não corresponder à do contêiner.

Enums
UNSPECIFIED ImageFill não especificado.
GRAY Preencha as lacunas entre a imagem e o contêiner da imagem com barras cinza.
WHITE Preencha as lacunas entre a imagem e o contêiner da imagem com barras brancas.
CROPPED A imagem é dimensionada de modo que a largura e a altura da imagem correspondam ou excedam as dimensões do contêiner. Isso poderá cortar as partes de cima e de baixo da imagem se a altura da imagem dimensionada for maior que a altura do contêiner ou cortar a esquerda e a direita da imagem se a largura da imagem dimensionada for maior que a largura do contêiner. É semelhante ao "Modo de zoom" em uma TV widescreen ao reproduzir um vídeo de 4:3.

StaticLinkPrompt

Define um link que será exibido como um ícone de sugestão e poderá ser aberto pelo usuário.

Representação JSON
{
  "name": string,
  "open": {
    object (OpenUrl)
  }
}
Campos
name

string

Nome do link

open

object (OpenUrl)

Define o comportamento quando o usuário abre o link.

OpenUrl

Define o comportamento quando o usuário abre o link.

Representação JSON
{
  "url": string,
  "hint": enum (UrlHint)
}
Campos
url

string

O campo de URL, que pode ser qualquer uma das seguintes opções: - URLs http/https para abrir um app vinculado ao app ou uma página da Web

hint

enum (UrlHint)

Indica uma dica para o tipo de URL.

UrlHint

Diferentes tipos de dicas de URL.

Enums
HINT_UNSPECIFIED Não especificado
AMP É o URL que aponta diretamente para o conteúdo AMP ou para um URL canônico que se refere a esse conteúdo via <link rel="amphtml">.

StaticTablePrompt

Um card de tabela para exibir uma tabela de texto.

Representação JSON
{
  "title": string,
  "subtitle": string,
  "image": {
    object (StaticImagePrompt)
  },
  "columns": [
    {
      object (TableColumn)
    }
  ],
  "rows": [
    {
      object (TableRow)
    }
  ],
  "button": {
    object (StaticLinkPrompt)
  }
}
Campos
title

string

Opcional. Título geral da tabela. Precisa ser definido se o subtítulo estiver definido.

subtitle

string

Opcional. Subtítulo da tabela.

image

object (StaticImagePrompt)

Opcional. Imagem associada à tabela.

columns[]

object (TableColumn)

Opcional. Cabeçalhos e alinhamento de colunas.

rows[]

object (TableRow)

Opcional. Dados de linha da tabela. As três primeiras linhas certamente serão mostradas, mas as outras podem ser cortadas em determinadas superfícies. Teste com o simulador para saber quais linhas vão ser mostradas para uma determinada superfície. Em plataformas com suporte ao recurso WEB_BROWSER, é possível direcionar o usuário para uma página da Web com mais dados.

button

object (StaticLinkPrompt)

Opcional. Botão.

TableColumn

Descreve uma coluna na tabela.

Representação JSON
{
  "header": string,
  "align": enum (HorizontalAlignment)
}
Campos
header

string

Texto do cabeçalho da coluna.

align

enum (HorizontalAlignment)

Alinhamento horizontal da coluna de conteúdo. Se não for especificado, o conteúdo será alinhado à borda inicial.

HorizontalAlignment

O alinhamento do conteúdo dentro da célula.

Enums
UNSPECIFIED HorizontalAlignment não especificado.
LEADING Borda superior da célula. Esse é o padrão.
CENTER O conteúdo está alinhado ao centro da coluna.
TRAILING O conteúdo está alinhado à borda final da coluna.

TableRow

Descreve uma linha na tabela.

Representação JSON
{
  "cells": [
    {
      object (TableCell)
    }
  ],
  "divider": boolean
}
Campos
cells[]

object (TableCell)

Células nesta linha. As três primeiras células vão aparecer, mas as outras podem ser cortadas em determinadas superfícies. Teste com o simulador para ver quais células vão ser mostradas para uma determinada superfície.

divider

boolean

Indica se deve haver um divisor após cada linha.

TableCell

Descreve uma célula em uma linha.

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

string

Conteúdo do texto da célula.

StaticMediaPrompt

Contém informações sobre a mídia, como nome, descrição, URL etc. Próximo ID: 11

Representação JSON
{
  "mediaType": enum (MediaType),
  "startOffset": string,
  "optionalMediaControls": [
    enum (OptionalMediaControls)
  ],
  "mediaObjects": [
    {
      object (MediaObject)
    }
  ],
  "repeatMode": enum (RepeatMode)
}
Campos
mediaType

enum (MediaType)

Tipo de mídia dessa resposta.

startOffset

string (Duration format)

Deslocamento inicial do primeiro objeto de mídia.

Uma duração em segundos com até nove dígitos fracionários, encerrada por "s". Exemplo: "3.5s".

optionalMediaControls[]

enum (OptionalMediaControls)

Tipos de controle de mídia opcionais compatíveis com a sessão de resposta de mídia. Se definido, a solicitação será feita para 3p quando um determinado evento de mídia acontecer. Se não definido, 3p ainda precisa lidar com dois tipos de controle padrão, FINISHED e FAILED.

mediaObjects[]

object (MediaObject)

Lista de objetos de mídia.

repeatMode

enum (RepeatMode)

Modo de repetição para a lista de objetos de mídia.

MediaType

Tipo de mídia dessa resposta.

Enums
MEDIA_TYPE_UNSPECIFIED Valor UNSPECIFIED
AUDIO Arquivo de áudio.
MEDIA_STATUS_ACK Resposta para confirmar um relatório de status de mídia.

OptionalMediaControls

Tipos de controle de mídia compatíveis com a resposta de mídia

Enums
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED Valor não especificado
PAUSED Evento pausado. Acionado quando o usuário pausa a mídia.
STOPPED Evento interrompido. Acionado quando o usuário sai da sessão de terceiros durante a reprodução de mídia.

MediaObject

Representa um único objeto de mídia.

Representação JSON
{
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object (MediaImage)
  }
}
Campos
name

string

Nome desse objeto de mídia.

description

string

Descrição desse objeto de mídia.

url

string

O URL que aponta para o conteúdo de mídia.

image

object (MediaImage)

Imagem a ser exibida com o card de mídia.

MediaImage

Imagem a ser mostrada dentro de um MediaPrompt.

Representação JSON
{

  // Union field image can be only one of the following:
  "large": {
    object (StaticImagePrompt)
  },
  "icon": {
    object (StaticImagePrompt)
  }
  // End of list of possible types for union field image.
}
Campos
Campo de união image. Somente um tipo de MediaImage é permitido. image pode ser apenas de um dos tipos a seguir:
large

object (StaticImagePrompt)

Uma imagem grande, como a capa do álbum etc.

icon

object (StaticImagePrompt)

Um pequeno ícone de imagem exibido à direita do título. Ele é redimensionado para 36 x 36 dp.

RepeatMode

Os tipos de modo de repetição para uma lista de objetos de mídia.

Enums
REPEAT_MODE_UNSPECIFIED Equivalente a OFF.
OFF Encerra a sessão de mídia no final do último objeto de mídia.
ALL Circule para o início do primeiro objeto de mídia quando o fim do último objeto de mídia for alcançado.

StaticListPrompt

Um card para apresentar uma lista de opções disponíveis.

Representação JSON
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (ListItem)
    }
  ]
}
Campos
title

string

Opcional. Título da lista.

subtitle

string

Opcional. Subtítulo da lista.

items[]

object (ListItem)

Obrigatório. Itens de lista.

ListItem

Um item na lista.

Representação JSON
{
  "key": string,
  "title": string,
  "description": string,
  "image": {
    object (StaticImagePrompt)
  }
}
Campos
key

string

Obrigatório. A chave PLN que corresponde ao nome da chave de entrada no tipo associado. Quando o item é tocado, essa chave é postada novamente como um parâmetro de opção selecionada.

title

string

Obrigatório. Título do item. Quando tocado, esse texto será postado de volta na conversa literalmente, como se o usuário o tivesse digitado. Cada título precisa ser único entre o conjunto de itens.

description

string

Opcional. Texto do corpo do item.

image

object (StaticImagePrompt)

Opcional. Imagem do item.

StaticCollectionPrompt

Um card que apresenta uma coleção de opções disponíveis.

Representação JSON
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (CollectionItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
Campos
title

string

Opcional. Título da coleção.

subtitle

string

Opcional. Subtítulo da coleção.

items[]

object (CollectionItem)

Obrigatório. Itens da coleção.

imageFill

enum (ImageFill)

Opcional. Tipo de opção de exibição de imagem.

CollectionItem

Um item na coleção.

Representação JSON
{
  "key": string,
  "title": string,
  "description": string,
  "image": {
    object (StaticImagePrompt)
  }
}
Campos
key

string

Obrigatório. A chave PLN que corresponde ao nome da chave de entrada no Tipo associado. Quando o item é tocado, essa chave é postada novamente como um parâmetro de opção selecionada.

title

string

Obrigatório. Título do item. Quando tocado, esse texto será postado de volta na conversa literalmente, como se o usuário o tivesse digitado. Cada título precisa ser único entre o conjunto de itens.

description

string

Opcional. Texto do corpo do item.

image

object (StaticImagePrompt)

Opcional. Imagem do item.

StaticCollectionBrowsePrompt

Apresenta um conjunto de documentos da Web como uma coleção de itens de blocos grandes. Os itens podem ser selecionados para iniciar o documento da Web associado em um visualizador da Web.

Representação JSON
{
  "items": [
    {
      object (CollectionBrowseItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
Campos
items[]

object (CollectionBrowseItem)

Itens na coleção Procurar. O tamanho da lista precisa estar no intervalo [2, 10].

imageFill

enum (ImageFill)

Opção de exibição de imagens para as imagens da coleção.

CollectionBrowseItem

Item na coleção.

Representação JSON
{
  "title": string,
  "description": string,
  "footer": string,
  "image": {
    object (StaticImagePrompt)
  },
  "openUriAction": {
    object (OpenUrl)
  }
}
Campos
title

string

Obrigatório. Título do item da coleção.

description

string

Descrição do item da coleção.

footer

string

Texto do rodapé do item da coleção, exibido abaixo da descrição. Linha de texto única, truncada com reticências.

image

object (StaticImagePrompt)

Imagem do item da coleção.

openUriAction

object (OpenUrl)

Obrigatório. URI a ser aberto se o item for selecionado.

Sugestão

Representa um chip de sugestão, um elemento de interface mostrado ao usuário por conveniência.

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

string

Obrigatório. O texto mostrado no ícone de sugestão. Quando tocado, esse texto será postado de volta na conversa literalmente, como se o usuário o tivesse digitado. Cada título precisa ser único no conjunto de ícones de sugestão. Até 25 caracteres

StaticCanvasPrompt

Representa uma resposta de tela interativa a ser enviada ao usuário. Isso pode ser usado em conjunto com o campo firstSimple na solicitação que contém o comando para falar com o usuário, além de exibir uma resposta de tela interativa.

Representação JSON
{
  "url": string,
  "data": [
    value
  ],
  "suppressMic": boolean,
  "sendStateDataToCanvasApp": boolean,
  "enableFullScreen": boolean
}
Campos
url

string

Obrigatório. URL da visualização da Web a ser carregada.

data[]

value (Value format)

Opcional. Dados JSON a serem transmitidos para a página da Web da experiência imersiva como um evento. Se o campo override no comando que o contém for false, os valores de dados definidos neste comando do Canvas serão adicionados após os valores de dados definidos nas solicitações anteriores do Canvas.

suppressMic

boolean

Opcional. Um valor verdadeiro significa que o microfone não será aberto para capturar a entrada depois que essa resposta imersiva for apresentada ao usuário.

sendStateDataToCanvasApp

boolean

Opcional. Se definido como true, os metadados relacionados à conversa serão incluídos e enviados de volta ao aplicativo de tela.

enableFullScreen

boolean

Opcional. Se true, o aplicativo de tela ocupa a tela cheia e não tem um cabeçalho na parte de cima. Uma mensagem de aviso também vai ser mostrada na tela de carregamento com o nome de exibição, o nome do desenvolvedor e as instruções para sair da ação. Valor padrão: false

Cenário

A cena é a unidade básica do fluxo de controle ao projetar uma conversa. Eles podem ser encadeados com outras cenas, gerar prompts para o usuário final e definir slots. O nome da cena é especificado no nome do arquivo.

Representação JSON
{
  "onEnter": {
    object (EventHandler)
  },
  "intentEvents": [
    {
      object (IntentEvent)
    }
  ],
  "conditionalEvents": [
    {
      object (ConditionalEvent)
    }
  ],
  "slots": [
    {
      object (Slot)
    }
  ],
  "onSlotUpdated": {
    object (EventHandler)
  }
}
Campos
onEnter

object (EventHandler)

Gerenciador para invocar durante a transição para esta cena.

intentEvents[]

object (IntentEvent)

A lista de eventos acionados com base em intents. Esses eventos podem ser acionados a qualquer momento após a chamada do Manipulador on_load. Importante: esses eventos definem o conjunto de intents com escopo definido no cenário e terão precedência sobre qualquer evento definido globalmente que tenha as mesmas intents ou frases de acionamento. Os nomes das intents precisam ser exclusivos em um cenário.

conditionalEvents[]

object (ConditionalEvent)

A lista de eventos que serão acionados com base em instruções condicionais. Eles são avaliados após o preenchimento do formulário ou imediatamente após on_load se esse cenário não tiver um formulário (a avaliação é feita apenas uma vez). Somente o primeiro evento correspondente será acionado.

slots[]

object (Slot)

Lista ordenada de espaços. Cada slot define o tipo de dados que será resolvido e a configuração para personalizar a experiência dessa resolução (por exemplo, prompts).

onSlotUpdated

object (EventHandler)

Handler chamado quando há uma mudança no estado de um slot que não foi causada por atualizações em outro gerenciador. Isso permite que os slots sejam invalidados, a cena seja invalidada ou outras mudanças no estado da cena.

IntentEvent

Registra eventos acionados como resultado de uma correspondência de intent.

Representação JSON
{
  "intent": string,
  "transitionToScene": string,
  "handler": {
    object (EventHandler)
  }
}
Campos
intent

string

Obrigatório. Intenção que aciona o evento.

transitionToScene

string

Opcional. Cena de destino para a qual a conversa deve pular. O estado da cena atual é destruído na transição.

handler

object (EventHandler)

Opcional. manipulador de eventos que é acionado quando há correspondência com a intent. Precisa ser executado antes da transição para a cena de destino. Útil para gerar comandos em resposta a eventos.

ConditionalEvent

Registra eventos acionados como resultado de uma condição verdadeira.

Representação JSON
{
  "condition": string,
  "transitionToScene": string,
  "handler": {
    object (EventHandler)
  }
}
Campos
condition

string

Obrigatório. Condição de filtro desse evento a ser acionado. Se a condição for avaliada como verdadeira, o handler associado será acionado. As seguintes referências de variáveis são aceitas: $session: para fazer referência a dados no armazenamento de sessão. $user: para referenciar dados no armazenamento do usuário. Há suporte para os seguintes operadores booleanos (com exemplos): && - session.params.counter > 0 && session.params.counter < 100 || - session.params.foo == "John" || session.params.counter == "Adam" ! - !(session.params.counter == 5) As seguintes comparações têm suporte: ==, !=, <, >, <=, >= Os seguintes operadores de lista e string são aceitos (com exemplos): in - "Watermelon" em session.params.fruitList size - size(session.params.fruitList) > 2 substring - substring -session.params.fullName.contains("John")

transitionToScene

string

Opcional. Cena de destino para onde a conversa deve acessar quando a condição associada for avaliada como verdadeira. O estado da cena atual é destruído na transição.

handler

object (EventHandler)

Opcional. manipulador de eventos que é acionado quando a condição associada é avaliada como true. Precisa ser executado antes da transição para a cena de destino. Útil para gerar comandos em resposta a eventos.

Slot

Configuração para um slot. Os slots são unidades únicas de dados que podem ser preenchidas por linguagem natural (por exemplo, parâmetros de intent), parâmetros de sessão e outras fontes.

Representação JSON
{
  "name": string,
  "type": {
    object (ClassReference)
  },
  "required": boolean,
  "promptSettings": {
    object (PromptSettings)
  },
  "commitBehavior": {
    object (CommitBehavior)
  },
  "config": value,
  "defaultValue": {
    object (DefaultValue)
  }
}
Campos
name

string

Obrigatório. Nome do espaço.

type

object (ClassReference)

Obrigatório. Declara o tipo de dados deste slot.

required

boolean

Opcional. Indica se o espaço precisa ser preenchido antes de avançar. Quando os espaços obrigatórios não preenchidos, o usuário recebe uma solicitação personalizável.

promptSettings

object (PromptSettings)

Opcional. Registra as solicitações para diferentes estágios de preenchimento de slots.

commitBehavior

object (CommitBehavior)

Opcional. Comportamento de confirmação associado ao slot.

config

value (Value format)

Opcional. Configuração adicional associada ao slot que é usado para preenchê-lo. O formato da configuração é específico ao tipo de slot. As referências de recursos ao parâmetro do usuário ou da sessão podem ser adicionadas a esta configuração. Essa configuração é necessária para preencher slots relacionados a transações e engajamento do usuário.

Exemplo: para um slot do tipo actions.type.CompletePurchaseValue, a configuração a seguir propõe um pedido de mercadoria digital com referência a um parâmetro de sessão userSelectedSkuId definido pelo cliente:

{ "@type": "type.googleapis.com/ google.actions.transactions.v3.CompletePurchaseValueSpec", "skuId": { "skuType": "SKU_TYPE_IN_APP", "id": "$session.params.userSelectedSkuId", "packageName": "com.example.company" } }

defaultValue

object (DefaultValue)

Opcional. Configuração para preencher um valor padrão do slot.

PromptSettings

Um único local para definição de prompts de slot.

Representação JSON
{
  "initialPrompt": {
    object (EventHandler)
  },
  "noMatchPrompt1": {
    object (EventHandler)
  },
  "noMatchPrompt2": {
    object (EventHandler)
  },
  "noMatchFinalPrompt": {
    object (EventHandler)
  },
  "noInputPrompt1": {
    object (EventHandler)
  },
  "noInputPrompt2": {
    object (EventHandler)
  },
  "noInputFinalPrompt": {
    object (EventHandler)
  }
}
Campos
initialPrompt

object (EventHandler)

Solicite o valor do slot em si. Exemplo: "Que tamanho você quer?"

noMatchPrompt1

object (EventHandler)

Instrução exibida quando a entrada do usuário não corresponder ao tipo de valor esperado para o slot pela primeira vez. Exemplo: "Não entendi."

noMatchPrompt2

object (EventHandler)

Instrução para enviar quando a entrada do usuário não corresponder ao tipo de valor esperado para o slot pela segunda vez. Exemplo: "Não entendi."

noMatchFinalPrompt

object (EventHandler)

Instrução para enviar quando a entrada do usuário não corresponder ao tipo de valor esperado para o slot pela última vez. Exemplo: "Não entendi."

noInputPrompt1

object (EventHandler)

Instrução para enviar quando o usuário não fornecer uma entrada pela primeira vez. Exemplo: "Não entendi."

noInputPrompt2

object (EventHandler)

Instrução para enviar quando o usuário não fornecer uma entrada pela segunda vez. Exemplo: "Não entendi."

noInputFinalPrompt

object (EventHandler)

Instrução para enviar quando o usuário não fornecer uma entrada pela última vez. Exemplo: "Não entendi."

CommitBehavior

Mensagem que descreve o comportamento de confirmação associado ao slot após o preenchimento.

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

string

O parâmetro da sessão para gravar o valor do slot após o preenchimento. No momento, não é possível usar caminhos aninhados. "$$" é usado para gravar o valor do slot em um parâmetro de sessão com o mesmo nome do slot. Por exemplo: writeSessionParam = "fruit" corresponde a "$session.params.fruit". writeSessionParam = "ticket" corresponde a "$session.params.ticket".

DefaultValue

Configuração para preencher um valor padrão do slot.

Representação JSON
{
  "sessionParam": string,
  "constant": value
}
Campos
sessionParam

string

Opcional. O parâmetro de sessão a ser usado para inicializar o valor de slot, se ele tiver um valor não vazio. O tipo do valor precisa corresponder ao tipo do espaço. No momento, não é possível usar caminhos aninhados. Por exemplo: sessionParam = "fruit" corresponde a $session.params.fruit. sessionParam = "ticket" corresponde a $session.params.ticket.

constant

value (Value format)

Opcional. Valor padrão constante do slot. Só será usado se um valor para esse slot não tiver sido preenchido por sessionParam. O tipo desse valor precisa corresponder ao tipo do slot.

DataFiles

Wrapper para arquivo de dados repetido. Não é possível haver campos repetidos em oneof.

Representação JSON
{
  "dataFiles": [
    {
      object (DataFile)
    }
  ]
}
Campos
dataFiles[]

object (DataFile)

Vários arquivos de dados.

DataFile

Representa um único arquivo que contém dados não estruturados. Exemplos incluem arquivos de imagem, arquivos de áudio e código-fonte do Cloud Functions.

Representação JSON
{
  "filePath": string,
  "contentType": string,
  "payload": string
}
Campos
filePath

string

O caminho relativo do arquivo de dados da raiz do projeto na estrutura de arquivos do SDK. Caminhos de arquivo permitidos: - Imagens: resources/images/{multiple directories}?/{ImageName}.{extension} - Áudio: resources/audio/{multiple directories}?/{AudioFileName}.{extension} - Código de função do Cloud inline: webhooks/{WebhookName}.zip Extensões permitidas: - Imagens: png, jpg, jpeg - Áudio: mp3, mpeg - Cloud Functions inline: zip

contentType

string

Obrigatório. O tipo de conteúdo desse recurso. Exemplo: text/html. O tipo de conteúdo precisa estar em conformidade com a especificação (http://www.w3.org/Protocols/rfc1341/4_Content-Type.html). As funções do Cloud precisam estar no formato ZIP e o tipo de conteúdo precisa ser application/zip;zip_type=cloud_function. O parâmetro zip_type indica que ele é para uma função do Cloud.

payload

string (bytes format)

Conteúdo do arquivo de dados. Por exemplo, bytes brutos de imagens, arquivos de áudio ou formato ZIP do Cloud Functions. Há um limite de 10 MB no tamanho do payload.

Uma string codificada em base64.