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:
- Só aceita endereços de países listados em Detalhes de cobertura da API Address Validation.
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.
- 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 de Predefinições 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 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. | { |
| 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:
- Importe o componente pré-criado.
- Ative a API Address Validation.
- 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:
- Processa os parâmetros capturados do Dialogflow CX, solicita o formulário 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 desse componente, atualize as configurações dele com sua chave de API do Maps.
- 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:
- 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 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
- Nas configurações de Autenticação, configure o nome de usuário como
keye defina a senha como sua chave de API Maps. - Clique em Salvar.
Concluído
Seu agente e o webhook dele agora devem estar configurados e prontos para teste.