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:
- Aceita apenas endereços dos países listados em Detalhes da cobertura da API Address Validation.
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.
- 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 em "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 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. | { |
| 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 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:
- Processa parâmetros capturados do Dialogflow CX, solicita formulários 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 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 do 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, incluindo 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 da API Maps. - Clique em Salvar.
Concluído
Seu agente e o webhook dele agora estão configurados e prontos para teste.