Componente pré-criado de recolha de moradas

O componente pré-criado de recolha de moradas recolhe uma morada do utilizador final e usa a API Google Address Validation para validar moradas.

Limitações

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

Funcionalidades adicionais

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

Exemplos de caixas de diálogo

Os exemplos de caixas de diálogo seguintes demonstram cenários comuns processados por este componente pré-criado. Os diálogos de exemplo demonstram o comportamento quando o componente é chamado através da telefonia, o que aciona a intenção de boas-vindas predefinida e a primeira resposta do agente no início da conversa.

Morada válida completa

O utilizador final fornece uma morada completa e o componente de recolha de moradas valida-a com êxito.

Introdução do utilizador Resposta do agente
Para começar, diga-me a sua morada completa.
1600 Amphitheatre Parkway, Mountain View, CA 94043-1351, EUA
Recolhi a morada 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. Está correto? Diga sim ou não.
sim
Fantástico, recolhi a morada.

Morada parcialmente válida com elementos inferidos

O utilizador final indica uma morada parcial; o agente adivinha a parte em falta e valida-a com êxito após a confirmação do utilizador final.

Introdução do utilizador Resposta do agente
Para começar, diga-me a sua morada completa.
1600 Amphitheatre Parkway
Adivinhei uma parte da morada. A cidade é Mountain View, o código postal é 94043, a área administrativa é CA e o país é EUA.

Recolhi a morada final. O número da rua é 1600, a rua é Amphitheatre Parkway, a cidade é Mountain View, a área administrativa é CA, o código postal é 94043 e o país é EUA. Está correto? Diga sim ou não.
Sim
Fantástico, recolhi a morada.

Morada parcialmente válida com elementos fornecidos pelo utilizador

O utilizador final fornece uma morada parcial; o agente adivinha a parte em falta, mas o utilizador final fornece a sua própria entrada depois de dizer "não", e o agente aceita a morada com êxito.

Introdução do utilizador Resposta do agente
Para começar, diga-me a sua morada completa.
1600 Amphitheatre Parkway
Adivinhei uma parte da morada. A cidade é Mountain View, o código postal é 94043, a área administrativa é CA e o país é EUA.

Recolhi a morada final. O número da rua é 1600, a rua é Amphitheatre Parkway, a cidade é Mountain View, a área administrativa é CA, o código postal é 94043 e o país é EUA. Está correto? Diga sim ou não.
Não
OK. Diga-me que parte da morada tem de ser alterada.
Código postal
Pode partilhar o código postal?
94044
Terminei esta atualização. Há mais alguma coisa a alterar? Diga sim ou não.
não
Após a validação, substitui o código postal por 94043.

Recolhi a morada 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. Está correto? Diga sim ou não.
sim
Fantástico, recolhi a morada.

Entrada não reconhecida

O componente sai do fluxo depois de o utilizador final fornecer uma entrada não reconhecida três vezes.

Introdução do utilizador Resposta do agente
Para começar, diga-me a sua morada completa.
Está tudo bem
Desculpe, mas não entendi. Para começar, diga-me a sua morada completa.
nice
Hum, ainda não consegui compreender. Para começar, diga-me a sua morada completa.
ótimo
Desculpe, mas estou com dificuldade em compreender a sua resposta.

Morada não suportada

O componente sai do fluxo depois de o utilizador final fornecer uma morada atualmente não suportada pela API Address Validation.

Introdução do utilizador Resposta do agente
Para começar, diga-me a sua morada completa.
Índia
Lamento, mas, de momento, não consigo validar moradas nessa região.

Validação de morada

Para compreender como o componente de recolha de moradas valida as moradas, consulte o artigo Vista geral da API Address Validation.

O componente de recolha de moradas capta a entrada do utilizador final através da entidade do sistema@sys.address e envia a morada captada para a API Address Validation para extrair elementos da morada para processamento adicional.

Os seguintes elementos de endereço são devolvidos pela API Address Validation e são usados pelo componente para recolher e validar uma morada completa:

  • administrative_area_level_1
  • archipelago
  • country
  • localidade
  • postal_code
  • rota
  • street_number

Pode experimentar a demonstração da validação de moradas da Google com qualquer morada de uma região suportada.

Convenções de nomenclatura

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

Funcionalidade Formato Exemplo
Flow [Component Name] Recolha de moradas
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 parâmetros usados para configurar determinados comportamentos do componente. Os parâmetros vão ser usados por uma ou mais condições no fluxo para determinar o comportamento do componente. Os parâmetros ao nível do fluxo têm de ser definidos na página inicial do componente, conforme descrito abaixo. Os parâmetros ao nível da sessão podem ser definidos por um fluxo de chamadas ou na página de início deste componente.

Pode configurar os elementos de endereço necessários para este componente modificando as predefinições de parâmetros na página inicial do fluxo.

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

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

Para configurar os parâmetros de entrada deste componente, expanda para ver as instruções.

  1. Abra a consola do Dialogflow CX.
  2. Escolha o seu projeto do Google Cloud.
  3. Selecione o seu agente.
  4. Selecione o separador Criar.
  5. Clique no componente importado na secção Fluxos.
  6. Clique na página inicial na secção Páginas.
  7. Clique no percurso verdadeiro na página inicial.
  8. Na janela Route, edite os valores de Predefinições de parâmetros conforme necessário.
  9. Clique em Guardar.

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. Estes parâmetros contêm informações importantes recolhidas pelo componente. Este componente pré-criado fornece valores para os seguintes parâmetros de saída:

Nome do parâmetro Descrição Formato de saída
address_collection_address Este parâmetro devolve o objeto de endereço se o componente tiver capturado um endereço
{
"admin-area": string,
"city": string,
"country": string,
"island": string,
"route": string,
"zip-code": string,
"street-number": string
}
address_collection_status Este parâmetro devolve o estado da morada recolhida. O valor devolvido é um dos seguintes:

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

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

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

COUNTRY_NOT_SUPPORTED: o endereço não foi recolhido porque a API Address Validation não suporta essa região.

NO_USER_CONFIRMATION: o endereço não foi confirmado porque o utilizador final não confirmou um endereço.
string

Configuração básica

Para configurar este componente pré-criado:

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

Configuração do webhook

Para usar a API Address Validation para validar moradas, tem de configurar o webhook flexível fornecido com as credenciais corretas.

Webhook da API Address Validation

Este webhook realiza as seguintes ações:

  1. Processa os parâmetros dos agentes conversacionais capturados (Dialogflow CX), os pedidos de formulários e valida a morada através da API Address Validation.
  2. Extrai elementos de morada confirmados, não confirmados, em falta e inferidos da resposta da API Google Address Validation.

Para configurar o webhook deste componente, tem de atualizar as definições do webhook com a sua chave da API Google Maps.

  1. Para obter a sua chave da API: aceda a Google Cloud Platform Console > APIs e serviços > Credenciais, selecione a sua chave da API Google Maps e copie o campo da chave da API.

Para configurar o webhook:

  1. Abra a consola do Dialogflow CX.
  2. Escolha o seu projeto do Google Cloud.
  3. Selecione o seu agente.
  4. Selecione o separador Gerir.
  5. Clique em Webhooks.
  6. Selecione o webhook prebuilt_components_address_collection:address_validation.
  7. Substitua o URL no campo URL do webhook dos agentes conversacionais (Dialogflow CX) pelo URL que inclui a sua chave da API Google Maps: https://addressvalidation.googleapis.com/v1:validateAddress?key=MAPS_API_KEY
  8. Nas definições de autenticação, configure o nome de utilizador como key e defina a palavra-passe como a sua chave da API Google Maps.
  9. Clique em Guardar.

Concluído

O seu agente e o respetivo webhook já devem estar configurados e prontos para teste.