Organizar componente pré-criado de agendamento

Com o componente pré-criado de agendamento de horários, clientes novos e atuais podem agendar horários. Esse componente usa uma versão personalizada do componente pré-criado Coleta de data de nascimento para coletar datas de horários e usa os componentes pré-criados Coleta de números de telefone e CEP para coletar informações sobre o usuário e o local do agendamento.

Motivos e tipos de agendamento

Esse componente é compatível com várias categorias de motivos de agendamento e oferece diferentes tipos de consultas, dependendo do motivo selecionado pelo usuário.

Motivo do agendamento Tipos de agendamento disponíveis
Empréstimos Presencial, virtual, por telefone
Hipotecas Presencial, virtual, por telefone
Gestão de fortunas Presencial, virtual, por telefone
cartões de crédito; Virtual, smartphone
Outros Telefone

As categorias de horários podem ser personalizadas modificando a entidade personalizada prebuilt_components_arrange_appt_reason. Para configurar os tipos de agendamento disponíveis para cada categoria, modifique os parâmetros de entrada de cada um.

Limitações

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

  • Este componente não criptografa nenhum dado.

Exemplos de diálogos

As caixas de diálogo de exemplo abaixo 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.

O usuário agenda um horário presencial

O agente identifica que o usuário foi autenticado anteriormente como um usuário atual. O usuário informa o motivo do horário e seleciona para agendar um horário presencial. O agente confirma que o usuário quer ir para a filial mais próxima do endereço registrado e confirma que a data e a hora preferidas do usuário estão disponíveis. O agente confirma o horário e o local e agenda o horário.

Entrada do usuário Resposta do agente
Antes de agendar um horário, vamos fazer algumas perguntas. Pode nos dizer o motivo do seu agendamento?
Quero conversar com alguém sobre gestão de patrimônio
Você está procurando por telefone, videochamada ou atendimento presencial em uma de nossas agências?
Quero ir pessoalmente
Tudo bem. Você quer agendar um horário na filial localizada em 1600 Amphitheatre Pkwy, Mountain View, CA 94043?
Sim
Informe a data de sua preferência. Diga o mês de sua preferência, seguido pelo dia e pelo ano. Nossas filiais estão abertas de segunda a sexta-feira, das 9h às 17h, e aos sábados das 9h às 13h.
O agente coleta o horário preferido do usuário usando o componente pré-criado Data de nascimento
Ótimo! Já concluímos a coleta da sua data preferida.

Informe o horário da sua preferência.
10h
Você selecionou 10h. Para continuar com o horário disponível selecionado, diga "Sim".
Sim
Vamos agendar um horário no banco 1600 Amphitheatre Pkwy, Mountain View, CA 94043 em 23-09-2023 às 10h. Correto?
Sim
Certo, agendamos o compromisso. Seu número de confirmação é 818452. Quer agendar outro horário?
Não, isso é tudo
Agradecemos seu contato. Tenha um ótimo dia.

O novo cliente agenda vários horários

O agente identifica que o usuário não foi autenticado anteriormente e coleta o número de telefone dele. O usuário solicita uma consulta virtual para conversar sobre empréstimos. A primeira preferência do usuário por data e hora não está disponível, portanto, o agente oferece horários disponíveis para o usuário. O usuário seleciona um horário disponível e o horário é agendado com sucesso. O usuário confirma que quer reservar um segundo horário, e o agente consegue um segundo horário.

Entrada do usuário Resposta do agente
O agente coleta o número de telefone do usuário usando o componente pré-criado Coleta de números de telefone
Ótimo, terminamos de coletar o número de telefone.

Antes de agendar um horário, vamos fazer algumas perguntas. Pode nos dizer o motivo do seu agendamento?
Quero conseguir um empréstimo
Você está procurando por telefone, videochamada ou atendimento presencial em uma de nossas agências?
Agendamento virtual
Informe a data de sua preferência. Diga o mês de sua preferência, seguido pelo dia e pelo ano. Nossas filiais estão abertas de segunda a sexta-feira, das 9h às 17h, e aos sábados das 9h às 13h.
O agente coleta o horário preferido do usuário usando o componente pré-criado Data de nascimento
Ótimo! Já concluímos a coleta da sua data preferida.

Informe o horário da sua preferência.
3h seria bom para mim
Você selecionou 15h. Para prosseguir com o horário agendado selecionado, diga "Sim".
Sim
Vamos agendar um horário com nosso consultor em 03/10/2023 às 15h. É isso mesmo?
Sim
Certo, agendamos o compromisso. Seu número de confirmação é 754731.

Quer agendar outro horário?
Isso aí
Antes de agendar um horário, vamos fazer algumas perguntas. Pode nos dizer o motivo do seu agendamento?
Preciso de um agendamento para meu cartão de crédito
Você quer agendar uma ligação ou videochamada com um dos nossos representantes?
Telefone
Informe a data de sua preferência. Diga o mês de sua preferência, seguido pelo dia e pelo ano. Nossas filiais estão abertas de segunda a sexta-feira, das 9h às 17h, e aos sábados das 9h às 13h.
O agente coleta o horário preferido do usuário usando o componente pré-criado Data de nascimento
Ótimo! Já concluímos a coleta da sua data preferida.

Informe o horário da sua preferência.
Pode ser até 8h?
Você selecionou 8h. Para continuar com o horário disponível selecionado, diga "Sim".
Sim
O horário selecionado não está disponível. Estamos disponíveis para 11h30, 12h30, 13h30 e 15h em 06/10/2023. Você quer mudar o horário ou agendar um horário em uma data diferente?
Vamos começar às 1:30 depois
Você selecionou 13h30. Para prosseguir com o horário agendado selecionado, diga "Sim".
Sim
Vamos agendar um horário com nosso consultor em 06/10/2023 às 13h30. É isso mesmo?
Sim
Certo, agendamos o compromisso. Seu número de confirmação é 714637.

Quer agendar outro horário?
Não, é isso
Agradecemos seu contato. Tenha um ótimo dia.

Convenções de nomeação

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

Recurso Formato Exemplo
Fluxo [Nome do componente] Agendar horário
Intent específica do componente prebuilt_components_[component_name]_[intent_name] prebuilt_components_arrange_appt_change_date_slot
Tipo da entidade prebuilt_components_[component_name]_[entity_type] prebuilt_components_arrange_appt_reason
Webhook prebuilt_components_[component_name]:[webhook_action] prebuilt_components_arrange_appointment:submit_appointment

Parâmetros de entrada

Os parâmetros de entrada são usados para configurar determinados comportamentos do componente. Os parâmetros são usados por uma ou mais condições no fluxo para determinar como o componente vai 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.

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

Nome do parâmetro Descrição Formato da entrada
$session.params.phone_number (Opcional) Número de telefone registrado do cliente usado para autenticação. string
$session.params.auth_level (opcional) Indica o nível de autenticação do autor da chamada. integer
$flow.all_appointment_type Especifica a lista de motivos de agendamento que podem ter todos os tipos de horário disponíveis. O valor padrão é ["loans", "wealth"]. Lista (string)
$flow.video_phone_appointment_type Especifica a lista de motivos de agendamento que podem ter todos os tipos de horário disponíveis. O valor padrão é ["cards"]. Lista (string)
$flow.appointment_services Especifica a lista de tipos de horários em que a filial não é obrigatória e não é coletada do usuário. O valor padrão é ["video", "phone"]. Lista (string)
$flow.working_hours Especifica o horário de funcionamento da filial, por exemplo, "Monday to Friday: 9 AM to 5 PM, Saturday: 9 AM to 1 PM". string
$session.params.arrange_appointment_max_days Especifica o número máximo de dias após a data atual permitido para um agendamento de horários. Por padrão, esse valor é 90, indicando que as datas de agendamento podem ser agendadas no máximo 90 dias após a data atual. Esse parâmetro é definido no trajeto true da página inicial. integer
flow.max_retry_count Especifica o número de tentativas permitidas ao coletar informações do usuário. O valor padrão é 3. integer

Para configurar os parâmetros de entrada desse componente, abra para conferir as 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 na 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 Save.

Parâmetros de saída

Os parâmetros de saída são parâmetros de sessão que permanecerão ativos após a saída 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
phone_number Número de telefone local do usuário, sem o código do país, utilizado para identificar o usuário. string
transfer_reason Esse parâmetro indica o motivo pelo qual o fluxo saiu, se não tiver sido bem-sucedido. O valor retornado é um dos seguintes:

agent: o usuário final solicitou um agente humano em algum momento durante a conversa.

denial_of_information: o usuário final se recusou a compartilhar as informações solicitadas pelo componente.

max_no_input: a conversa atingiu o número máximo de tentativas para eventos sem entrada. Veja os eventos integrados sem entrada.

max_no_match: a conversa atingiu o número máximo de tentativas para eventos sem correspondência. Consulte eventos integrados sem correspondência.

webhook_error: ocorreu um erro de webhook. Consulte o evento integrado webhook.error.

webhook_not_found: não foi possível acessar um URL do webhook. Consulte o evento integrado webhook.error.not-found.
string

Configuração básica

Para configurar esse componente pré-criado:

  1. Importe o componente pré-criado.
  2. Configure os webhooks flexíveis fornecidos com a configuração que descreve os serviços externos do Dialogflow. Consulte "Configuração do webhook" abaixo.

Configuração do webhook

Para usar esse componente, é preciso configurar os webhooks flexíveis incluídos para recuperar as informações necessárias dos serviços externos.

Acessar conta

O webhook prebuilt_components_arrange_appointment:get_account é usado pelo componente para coletar detalhes da conta de um número de telefone fornecido, se houver uma conta registrada.

Parâmetros de solicitação de API

Os parâmetros a seguir são fornecidos pelo componente como entradas para a solicitação de API.

Nome do parâmetro Descrição Formato da entrada
$session.params.phone_number Número de telefone local do usuário, sem o código do país, utilizado para identificar o usuário. string

Parâmetros de resposta da API

Os parâmetros a seguir são extraídos da resposta da API a ser usado pelo componente.

Nome do parâmetro Descrição Formato da saída
account_count Número de contas associadas ao número de telefone registrado. integer
cards_count Número de cartões associados ao número de telefone registrado. integer
loans_count Número de empréstimos associados ao número de telefone registrado. integer
mortgage_count Número de hipotecas associadas ao número de telefone registrado. integer
branch_code Código da agência associado ao número de telefone registrado, usado para identificar um local exclusivo da filial. string

Para configurar o webhook de acessar a conta para este componente, abra as instruções.

  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_arrange_appointment:get_account.
  7. Substitua o URL no campo Webhook URL do Dialogflow pelo endpoint do serviço que você quer integrar. Selecione o Método adequado no menu suspenso.
  8. Revise e atualize o Corpo da solicitação para formar o formato de solicitação adequado para o webhook.
  9. Revise e atualize a Configuração de resposta para extrair campos específicos da resposta do webhook. Não modifique os nomes dos parâmetros, porque eles são exigidos pelo componente para acessar os valores de campo retornados.
  10. Analise e atualize as configurações da Autenticação conforme necessário.
  11. Clique em Save.

Acessar ramificação

O webhook prebuilt_components_arrange_appointment:get_branch é usado pelo componente para recuperar informações sobre um local de ramificação com um código de ramificação.

Parâmetros de solicitação de API

Os parâmetros a seguir são fornecidos pelo componente como entradas para a solicitação de API.

Nome do parâmetro Descrição Formato da entrada
$flow.branch_code Código da filial que identifica um local exclusivo da filial. string

Parâmetros de resposta da API

Os parâmetros a seguir são extraídos da resposta da API a ser usado pelo componente.

Nome do parâmetro Descrição Formato da saída
branch_address Endereço da agência. string

Para configurar o webhook de recebimento de ramificação para este componente, expanda para ver instruções.

  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_arrange_appointment:get_branch.
  7. Substitua o URL no campo Webhook URL do Dialogflow pelo endpoint do serviço que você quer integrar. Selecione o Método adequado no menu suspenso.
  8. Revise e atualize o Corpo da solicitação para formar o formato de solicitação adequado para o webhook.
  9. Revise e atualize a Configuração de resposta para extrair campos específicos da resposta do webhook. Não modifique os nomes dos parâmetros, porque eles são exigidos pelo componente para acessar os valores de campo retornados.
  10. Analise e atualize as configurações da Autenticação conforme necessário.
  11. Clique em Save.

Ramificação disponível

O webhook prebuilt_components_arrange_appointment:available_branch é usado pelo componente para conseguir a localização da filial mais próxima com um CEP.

Parâmetros de solicitação de API

Os parâmetros a seguir são fornecidos pelo componente como entradas para a solicitação de API.

Nome do parâmetro Descrição Formato da entrada
$flow.zip_code CEP informado pelo usuário final. string

Parâmetros de resposta da API

Os parâmetros a seguir são extraídos da resposta da API a ser usado pelo componente.

Nome do parâmetro Descrição Formato da saída
branch_address Endereço da agência. string

Para configurar o webhook de ramificação disponível para este componente, expanda para ver instruções.

  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_arrange_appointment:available_branch.
  7. Substitua o URL no campo Webhook URL do Dialogflow pelo endpoint do serviço que você quer integrar. Selecione o Método adequado no menu suspenso.
  8. Revise e atualize o Corpo da solicitação para formar o formato de solicitação adequado para o webhook.
  9. Revise e atualize a Configuração de resposta para extrair campos específicos da resposta do webhook. Não modifique os nomes dos parâmetros, porque eles são exigidos pelo componente para acessar os valores de campo retornados.
  10. Analise e atualize as configurações da Autenticação conforme necessário.
  11. Clique em Save.

Obter slots disponíveis

O webhook prebuilt_components_arrange_appointment:get_available_slots é usado pelo componente para verificar os horários disponíveis para a data e o tipo de agendamento preferidos de um usuário.

Parâmetros de solicitação de API

Os parâmetros a seguir são fornecidos pelo componente como entradas para a solicitação de API.

Nome do parâmetro Descrição Formato da entrada
$flow.preferred_date Data preferida para o agendamento fornecido pelo usuário final no formato "AAAA-MM-DD". string
$flow.appointment_type O tipo de horário do horário. string
$flow.branch_code Código da agência que identifica o local exclusivo da agência selecionado pelo usuário final. string

Parâmetros de resposta da API

Os parâmetros a seguir são extraídos da resposta da API a ser usado pelo componente.

Nome do parâmetro Descrição Formato da saída
available_slots Lista de horários disponíveis para a data especificada, no formato "HH:MM XM", por exemplo, ["09:00 AM", "2:30 PM"]. Se não houver slots disponíveis, esse parâmetro será uma lista vazia []. Lista (string)

Para configurar o webhook de "Receber slots de slots disponíveis" para este componente, expanda para ver instruções.

  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_arrange_appointment:get_available_slots.
  7. Substitua o URL no campo Webhook URL do Dialogflow pelo endpoint do serviço que você quer integrar. Selecione o Método adequado no menu suspenso.
  8. Revise e atualize o Corpo da solicitação para formar o formato de solicitação adequado para o webhook.
  9. Revise e atualize a Configuração de resposta para extrair campos específicos da resposta do webhook. Não modifique os nomes dos parâmetros, porque eles são exigidos pelo componente para acessar os valores de campo retornados.
  10. Analise e atualize as configurações da Autenticação conforme necessário.
  11. Clique em Save.

Enviar horário

O webhook prebuilt_components_arrange_appointment:submit_appointment é usado pelo componente para agendar um horário na data, hora, ramificação, motivo e tipo de agendamento selecionados pelo usuário.

Parâmetros de solicitação de API

Os parâmetros a seguir são fornecidos pelo componente como entradas para a solicitação de API.

Nome do parâmetro Descrição Formato da entrada
$session.params.phone_number Número de telefone local do usuário, sem o código do país, utilizado para identificar o usuário. string
$flow.preferred_date Data preferida para o agendamento fornecido pelo usuário final no formato "AAAA-MM-DD". string
$flow.preferred_slot Horário preferencial para o agendamento fornecido pelo usuário final no formato "HH:MM XM". string
$flow.appointment_reason O motivo do agendamento. string
$flow.appointment_type O tipo de horário do horário. string
$flow.branch_code Código da agência que identifica o local exclusivo da agência selecionado pelo usuário final. string

Parâmetros de resposta da API

Os parâmetros a seguir são extraídos da resposta da API a ser usado pelo componente.

Nome do parâmetro Descrição Formato da saída
request_number O número da solicitação do horário agendado. integer

Para configurar o webhook "Enviar agendamento de horário" para este componente, abra as instruções.

  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_arrange_appointment:submit_appointment.
  7. Substitua o URL no campo Webhook URL do Dialogflow pelo endpoint do serviço que você quer integrar. Selecione o Método adequado no menu suspenso.
  8. Revise e atualize o Corpo da solicitação para formar o formato de solicitação adequado para o webhook.
  9. Revise e atualize a Configuração de resposta para extrair campos específicos da resposta do webhook. Não modifique os nomes dos parâmetros, porque eles são exigidos pelo componente para acessar os valores de campo retornados.
  10. Analise e atualize as configurações da Autenticação conforme necessário.
  11. Clique em Save.

Concluído

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