O componente predefinido de coleta de endereços coleciona 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 predefinidos, este componente predefinido tem as seguintes limitações:
- Só oferece suporte a endereços de países listados em Detalhes da cobertura da API Address Validation.
Outras funcionalidades
Este componente pré-criado oferece as seguintes funcionalidades adicionais:
Exemplos de diálogos
As caixas de diálogo de exemplo a seguir demonstram cenários comuns processados por esse componente pré-criado. As caixas de diálogo 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 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 |
---|---|
Informe seu endereço completo para começar. | |
1600 Amphitheatre Parkway, Mountain View, CA 94043-1351, EUA | |
Coletei o endereço final: o número da rua é 1600, a rota é 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, coletei 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 o verifica após a confirmação do usuário final.
Entrada do usuário | Resposta do agente |
---|---|
Informe seu endereço completo para começar. | |
1600 Amphitheatre Parkway | |
Eu adivinhei parte do endereço: a cidade é Mountain View, o código postal é 94043, a área administrativa é CA, o país é EUA. Coletei o endereço final: o número da rua é 1600, a rota é Amphitheatre Parkway, a cidade é Mountain View, a área administrativa é CA, o código postal é 94043, o país é EUA. É isso mesmo? Diga sim ou não. |
|
Sim | |
Ótimo, coletei 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 |
---|---|
Informe seu endereço completo para começar. | |
1600 Amphitheatre Parkway | |
Eu adivinhei parte do endereço: a cidade é Mountain View, o código postal é 94043, a área administrativa é CA, o país é EUA. Coletei o endereço final: o número da rua é 1600, a rota é Amphitheatre Parkway, a cidade é Mountain View, a área administrativa é CA, o código postal é 94043, o país é EUA. É isso mesmo? Diga sim ou não. |
|
Não | |
Ok. Informe qual parte do endereço precisa ser alterada. | |
Código postal | |
Você pode informar o CEP? | |
94044 | |
Terminei a 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. Coletei o endereço final: o número da rua é 1600, a rota é 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, coletei 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 |
---|---|
Informe seu endereço completo para começar. | |
Não tem problema | |
Sinto muito. Não entendi. Informe seu endereço completo para começar. | |
legal | |
Não consegui fazer isso. Informe seu endereço completo para começar. | |
ótimo | |
Não estou conseguindo entender sua resposta. |
Endereço sem suporte
O componente sai do fluxo depois que o usuário final fornece um endereço que não tem suporte da API Address Validation.
Entrada do usuário | Resposta do agente |
---|---|
Informe seu endereço completo para começar. | |
Í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 endereços, consulte 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
- localidade
- postal_code
- route
- street_number
Você pode testar a demonstração de validação de endereço do Google com qualquer endereço de uma região com suporte.
Convenções de nomenclatura
Esse componente predefinido 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 vai 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 do componente.
É possível configurar quais elementos de endereço são necessários para esse componente modificando predefinições de parâmetros na página inicial do fluxo.
Esse componente predefinido 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 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 Address Validation do Maps | integer |
Para configurar os parâmetros de entrada desse componente, abra as instruções.
- Abra o console do Dialogflow CX.
- Escolha seu projeto do Google Cloud.
- Selecione seu agente.
- Selecione a guia Build.
- Clique no componente importado na seção Fluxos.
- Clique na página inicial na seção Páginas.
- Clique na rota true na página inicial.
- Na janela "Rota", edite os valores das configurações predefinidas de parâmetros conforme necessário.
- 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 a saída do componente. Esses parâmetros contêm informações importantes coletadas pelo componente. Esse componente predefinido 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. | { |
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:
- Importe o componente pré-criado.
- Ative a API Address Validation.
- Configure o webhook flexível fornecido com sua chave da API Maps. Consulte a configuração de webhook abaixo.
Configuração do webhook
Para usar a API Address Validation, você precisa configurar o webhook flexível fornecido com as credenciais corretas.
Webhook da Address Validation
Esse webhook realiza as seguintes ações:
- Processa os parâmetros dos agentes de conversação (Dialogflow CX) capturados, forma solicitações e verifica o endereço usando a API Address Validation.
- Extrai elementos de endereço confirmados, não confirmados, ausentes e inferidos da resposta da API Address Validation do Google.
Para configurar o webhook para esse componente, atualize as configurações do webhook com sua chave da API Maps.
- Para recuperar a chave de API, acesse o Console do Google Cloud Platform > APIs e serviços > Credenciais, selecione a chave da API Maps e copie o campo.
Para configurar o webhook:
- Abra o console do Dialogflow CX.
- Escolha seu projeto do Google Cloud.
- Selecione seu agente.
- Selecione a guia Gerenciar.
- Clique em Webhooks.
- Selecione o webhook prebuilt_components_address_collection:address_validation.
- Substitua o URL no campo Webhook URL dos agentes de conversação (Dialogflow CX) pelo URL que inclui sua chave da API Maps: https://addressvalidation.googleapis.com/v1:validateAddress?key=MAPS_API_KEY
- Nas configurações de Autenticação, defina o nome de usuário como
key
e defina a senha como a chave da API Maps. - Clique em Salvar.
Concluído
Seu agente e o webhook dele estão configurados e prontos para testes.