Componente pré-criado de coleta de endereços

O componente pré-criado de coleta de endereço coleta um endereço do usuário final e usa a API Address Validation do Google para validar endereços.

Limitações

Além das limitações comuns de componentes pré-criados, este componente tem as seguintes limitações:

Outras funcionalidades

As seguintes funcionalidades adicionais são fornecidas por esse componente pré-criado:

Diálogos de exemplo

Os exemplos de diálogos a seguir demonstram cenários comuns processados por esse componente pré-criado. As caixas de diálogo de amostra demonstram o comportamento quando o componente é chamado por telefonia, o que aciona a intent de boas-vindas padrão e a primeira resposta do agente no início da conversa.

Endereço completo válido

O usuário final fornece um endereço completo, e o componente de coleta de endereços o verifica.

Entrada do usuário Resposta do agente
Para começar, informe seu endereço completo.
1600 Amphitheatre Parkway, Mountain View, CA 94043-1351, EUA
Coletei o endereço final: o número é 1600, a rua é Amphitheatre Parkway, a cidade é Mountain View, a área político-administrativa é CA, o código postal é 94043 e o país é EUA. É isso mesmo? Diga "Sim" ou "Não".
sim
Ótimo, já tenho o endereço.

Endereço parcialmente válido com elementos inferidos

O usuário final fornece um endereço parcial. O agente adivinha a parte que falta e a verifica após a confirmação do usuário final.

Entrada do usuário Resposta do agente
Para começar, informe seu endereço completo.
1600 Amphitheatre Parkway
Adivinhei parte do endereço: a cidade é Mountain View, o código postal é 94043, a área político-administrativa é CA e o país é EUA.

Coletei o endereço final: o número é 1600, a rua é Amphitheatre Parkway, a cidade é Mountain View, a área político-administrativa é CA, o código postal é 94043 e o país é EUA. É isso mesmo? Diga "Sim" ou "Não".
Sim
Ótimo, já tenho o endereço.

Endereço parcialmente válido com elementos fornecidos pelo usuário

O usuário final fornece um endereço parcial. O agente adivinha a parte que falta, mas o usuário final fornece a própria entrada depois de dizer "não", e o agente aceita o endereço.

Entrada do usuário Resposta do agente
Para começar, informe seu endereço completo.
1600 Amphitheatre Parkway
Adivinhei parte do endereço: a cidade é Mountain View, o código postal é 94043, a área político-administrativa é CA e o país é EUA.

Coletei o endereço final: o número é 1600, a rua é Amphitheatre Parkway, a cidade é Mountain View, a área político-administrativa é CA, o código postal é 94043 e o país é EUA. É isso mesmo? Diga "Sim" ou "Não".
Não
Certo. Informe qual parte do endereço precisa ser alterada.
Código postal
Poderia informar o CEP?
94044
Já concluí esta atualização. Há mais alguma coisa que precisa ser alterada? Diga "Sim" ou "Não".
não
Após a validação, substituí o código postal por 94043.

Coletei o endereço final: o número é 1600, a via é Amphitheatre Parkway, a cidade é Mountain View, a área político-administrativa é CA, o código postal é 94043 e o país é EUA. É isso mesmo? Diga "Sim" ou "Não".
sim
Ótimo, já tenho o endereço.

Entrada não reconhecida

O componente sai do fluxo depois que o usuário final fornece uma entrada não reconhecida três vezes.

Entrada do usuário Resposta do agente
Para começar, informe seu endereço completo.
Está tudo bem
Sinto muito. Não entendi. Para começar, informe seu endereço completo.
bom
Ainda não entendi. Para começar, informe seu endereço completo.
ótimo
Não estou conseguindo entender sua resposta.

Endereço não aceito

O componente sai do fluxo depois que o usuário final fornece um endereço que não é aceito pela API Address Validation.

Entrada do usuário Resposta do agente
Para começar, informe seu endereço completo.
Índia
Não consigo validar endereços nessa região no momento.

Validação de endereço

Para entender como o componente de coleta de endereços valida endereços, consulte a Visão geral da API Address Validation.

O componente de coleta de endereços captura a entrada do usuário final usando a entidade do sistema@sys.address e envia o endereço capturado para a API Address Validation para extrair elementos de endereço para processamento posterior.

Os seguintes elementos de endereço são retornados pela API Address Validation e usados pelo componente para coletar e validar um endereço completo:

  • administrative_area_level_1
  • arquipélago
  • country
  • locality
  • postal_code
  • route
  • street_number

Você pode testar a demonstração da Address Validation do Google com qualquer endereço de uma região com disponibilidade.

Convenções de nomenclatura

Este componente pré-criado usa as seguintes convenções de nomenclatura:

Recurso Formatar Exemplo
Flow [Nome do componente] Coleta de endereços
Intenção específica do componente prebuilt_components_[component_name]_[intent_name] prebuilt_components_address_collection_locality
Parâmetro [param_name] user_provided_address
Webhook prebuilt_components_[component_name]:[webhook_action] prebuilt_components_address_collection:address_validation

Parâmetros de entrada

Os parâmetros de entrada são usados para configurar determinados comportamentos do componente. Os parâmetros serão usados por uma ou mais condições no fluxo para determinar como o componente deve se comportar. Os parâmetros com escopo de fluxo precisam ser definidos na página inicial do componente, conforme descrito abaixo. Os parâmetros no escopo da sessão podem ser definidos por um fluxo de chamada ou na página inicial desse componente.

É possível configurar quais elementos de endereço são necessários para esse componente modificando as predefinições de parâmetro na página inicial do fluxo.

Esse componente pré-criado aceita os seguintes parâmetros de entrada:

Nome do parâmetro Descrição Formato da entrada
$flow.zip_code Se o elemento de endereço do CEP for obrigatório, defina como true. Caso contrário, defina como false. booleano
$flow.city Se o elemento de endereço da cidade for obrigatório, defina como true. Caso contrário, defina como false. booleano
$flow.admin_area Se o elemento de endereço da área político-administrativa for obrigatório, defina como true. Caso contrário, defina como false. booleano
$flow.street_number Se o elemento de endereço do número da rua for obrigatório, defina como true. Caso contrário, defina como false. booleano
$flow.route Se o elemento de endereço da rota for obrigatório, defina como true. Caso contrário, defina como false. booleano
$flow.country Se o elemento de endereço do país for obrigatório, defina como true. Caso contrário, defina como false. booleano
$flow.island Se o elemento de endereço da ilha for obrigatório, defina como true. Caso contrário, defina como false. booleano
$flow.retry_num Define o limite máximo de novas tentativas para chamadas de webhook da API Maps Address Validation. integer

Para configurar os parâmetros de entrada desse componente, abra as instruções.

  1. Abra o console do Dialogflow CX.
  2. Escolha seu projeto do Google Cloud.
  3. Selecione seu agente.
  4. Selecione a guia Build.
  5. Clique no componente importado na seção Fluxos.
  6. Clique na página inicial na seção Páginas.
  7. Clique na rota true na página inicial.
  8. Na janela "Rota", edite os valores de Predefinições de parâmetros conforme necessário.
  9. Clique em Salvar.

Parâmetros de saída

Os parâmetros de saída são parâmetros de sessão que permanecem ativos após sair do componente. Esses parâmetros contêm informações importantes coletadas pelo componente. Esse componente pré-criado fornece valores para os seguintes parâmetros de saída:

Nome do parâmetro Descrição Formato da saída
address_collection_address Esse parâmetro retorna o objeto de endereço se um endereço foi capturado pelo componente.
{
"admin-area": string,
"city": string,
"country": string,
"island": string,
"route": string,
"zip-code": string,
"street-number": string
}
address_collection_status Esse parâmetro retorna o status do endereço coletado. O valor retornado é um dos seguintes:

VALID_ADDRESS: o endereço foi coletado e validado pela API Address Validation.

INVALID_ADDRESS: o endereço foi confirmado pelo usuário final, mas um ou mais elementos não foram validados ou marcados como UNCONFIRMED_BUT_PLAUSIBLE pela API Address Validation.

MAPS_API_ERROR: o endereço não foi coletado devido a um erro da API Address Validation.

COUNTRY_NOT_SUPPORTED: o endereço não foi coletado porque a API Address Validation não é compatível com essa região.

NO_USER_CONFIRMATION: o endereço não foi confirmado porque o usuário final não confirmou um endereço.
string

Configuração básica

Para configurar esse componente pré-criado:

  1. Importe o componente pré-criado.
  2. Ative a API Address Validation.
  3. Configure o webhook flexível fornecido com sua chave de API Maps. Consulte a configuração do webhook abaixo.

Configuração do webhook

Para usar a API Address Validation para validar endereços, você precisa configurar o webhook flexível fornecido com as credenciais corretas.

Webhook da Address Validation

Esse webhook realiza as seguintes ações:

  1. Processa os parâmetros capturados do Dialogflow CX, solicita o formulário e verifica o endereço usando a API Address Validation.
  2. Extrai elementos de endereço confirmados, não confirmados, ausentes e inferidos da resposta da API Address Validation do Google.

Para configurar o webhook desse componente, atualize as configurações dele com sua chave de API do Maps.

  1. Para recuperar sua chave de API, acesse Console do Google Cloud Platform > APIs e serviços > Credenciais, selecione sua chave de API Maps e copie o campo "Chave de API".

Para configurar o webhook:

  1. Abra o console do Dialogflow CX.
  2. Escolha seu projeto do Google Cloud.
  3. Selecione seu agente.
  4. Selecione a guia Gerenciar.
  5. Clique em Webhooks.
  6. Selecione o webhook prebuilt_components_address_collection:address_validation.
  7. Substitua o URL no campo URL do webhook do Dialogflow CX pelo URL que inclui sua chave de API Maps: https://addressvalidation.googleapis.com/v1:validateAddress?key=MAPS_API_KEY
  8. Nas configurações de Autenticação, configure o nome de usuário como key e defina a senha como sua chave de API Maps.
  9. Clique em Salvar.

Concluído

Seu agente e o webhook dele agora devem estar configurados e prontos para teste.