Componente pré-criado de coleta de endereços

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

Limitações

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

Outras funcionalidades

Este componente pré-criado oferece as seguintes funcionalidades extras:

Diálogos de exemplo

As caixas de diálogo de exemplo a seguir demonstram cenários comuns processados por esse componente pré-criado. Os diálogos de exemplo 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 e válido

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

Entrada do usuário Resposta do agente
Para começar, diga seu endereço completo.
1600 Amphitheatre Parkway, Mountain View, CA 94043-1351, EUA
Coletamos o endereço final: o número da rua é 1600, a via é Amphitheatre Parkway, a cidade é Mountain View, a área 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, diga seu endereço completo.
1600 Amphitheatre Parkway
Adivinhei parte do endereço, a cidade é Mountain View, o código postal é 94043, a área administrativa é CA e o país é EUA.

Coletamos o endereço final: o número da rua é 1600, a via é Amphitheatre Parkway, a cidade é Mountain View, a área 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, diga seu endereço completo.
1600 Amphitheatre Parkway
Adivinhei parte do endereço, a cidade é Mountain View, o código postal é 94043, a área administrativa é CA e o país é EUA.

Coletamos o endereço final: o número da rua é 1600, a via é Amphitheatre Parkway, a cidade é Mountain View, a área administrativa é CA, o código postal é 94043 e o país é EUA. É isso mesmo? Diga sim ou não.
Não
Ok. Informe qual parte do endereço precisa ser mudada.
Código postal
Você pode compartilhar o CEP?
94044
Já concluí esta atualização. Há mais alguma coisa a ser mudada? Diga sim ou não.
não
Após a validação, substituí o código postal por 94043.

Coletamos o endereço final: o número da rua é 1600, a via é Amphitheatre Parkway, a cidade é Mountain View, a área 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, diga seu endereço completo.
Está tudo bem
Sinto muito. Não entendi. Para começar, diga seu endereço completo.
legal
Ainda não entendi. Para começar, diga 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 é compatível com a API Address Validation.

Entrada do usuário Resposta do agente
Para começar, diga seu endereço completo.
Índia
No momento, não é possível validar endereços nessa região.

Validação de endereço

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

O componente de coleta de endereço captura a entrada do usuário final usando a entidade de 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
  • localidade
  • postal_code
  • route
  • street_number

Você pode testar a demonstração da validação de endereço do Google com qualquer endereço de uma região aceita.

Convenções de nomenclatura

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

Recurso Formato Exemplo
Fluxo [Nome do componente] Coleta de endereço
Intent 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 no escopo do 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 obrigatórios para esse componente modificando os presets de parâmetros 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, false. booleano
$flow.admin_area Se o elemento de endereço da área 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, false. booleano
$flow.country Se o elemento de endereço do país for obrigatório, defina como true. Caso contrário, false. booleano
$flow.island Se o elemento de endereço da ilha for obrigatório, defina como true. Caso contrário, 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, expanda para 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 em "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 depois de 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 destes:

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 oferece suporte a 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 do Maps. Consulte a configuração do webhook abaixo.

Configuração do webhook

Para usar a API Address Validation e validar endereços, configure o webhook flexível fornecido com as credenciais corretas.

Webhook da Address Validation

Esse webhook executa as seguintes ações:

  1. Processa parâmetros capturados do Dialogflow CX, solicita formulários 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 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 do 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, incluindo 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 da API Maps.
  9. Clique em Salvar.

Concluído

Seu agente e o webhook dele agora estão configurados e prontos para teste.