O componente pré-criado de cancelamento de pedido verifica o nível de autenticação de um usuário. Depois que o usuário é autenticado, o componente fornece informações sobre os pedidos mais recentes ou anteriores do usuário. O usuário pode cancelar um pedido inteiro ou itens específicos de um pedido. Esse componente usa o componente pré-criado de autenticação de varejo para autenticar usuários. O componente também usa geradores para o resumo pós-chamada.
Limitações
Além das limitações comuns de componentes pré-criados, este componente tem as seguintes limitações:
- Esse componente não criptografa dados.
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 exemplo demonstram o comportamento quando o componente é chamado usando telefonia, o que aciona a intent de boas-vindas padrão e a primeira resposta do agente no início da conversa.
Cancelar um único produto em um pedido recente
O usuário final já foi autenticado. O agente confirma quais itens do pedido mais recente devem ser cancelados. O agente verifica a forma de pagamento original e confirma os detalhes do cancelamento com o usuário.
| Entrada do usuário | Resposta do agente |
|---|---|
| Você está ligando sobre o pedido mais recente que termina com 12978, que contém 5 garrafas de água e 1 camiseta, feito em 09/11/2023 às 20h? | |
| sim | |
| Encontramos alguns produtos qualificados no seu pedido. Informe qual produto você quer cancelar. Produto 1: garrafa de água do Google, Produto 2: camiseta do Google. Diga ou digite o número do item que você quer selecionar ou diga "próximo" para mostrar mais produtos. |
|
| próxima | |
| Não encontramos outros itens nos nossos registros. Escolha uma opção da lista compartilhada. Produto 1: garrafa de água do Google, Produto 2: camiseta do Google. Diga ou digite o número do produto que você quer selecionar ou diga "próximo" para mostrar mais produtos. |
|
| 1 | |
| Para confirmar, você quer cancelar a garrafa de água do Google. É isso mesmo? | |
| sim | |
| Podemos ver que a quantidade disponível do produto selecionado é 5. Especifique a quantidade de produtos que você quer cancelar. | |
| 4 | |
| Especifique o motivo do cancelamento. Você pode dizer algo como: mudei de ideia, não preciso mais, quero comprar outro item, entrega atrasada, comprei por engano, quero mudar a forma de pagamento ou outras opções. | |
| Quero comprar outro item | |
| Agradecemos por nos informar sobre isso. Quer cancelar outro produto? |
|
| não | |
| Para compras feitas usando sua carteira, os reembolsos são creditados na carteira ou na conta de crédito da Google Store. O reembolso vai aparecer na sua conta em até 3 a 5 dias úteis. O valor do reembolso não inclui as taxas de frete e movimentação. |
Cancelar todo o pedido
O usuário final já foi autenticado. O agente confirma que o usuário quer cancelar um pedido específico e coleta o motivo do cancelamento. O representante verifica a forma de pagamento original e confirma os detalhes do cancelamento com o usuário.
| Entrada do usuário | Resposta do agente |
|---|---|
| Você está ligando sobre o pedido mais recente com final 12345, que contém 1 camiseta e foi feito em 10/11/2023 às 18h? | |
| não | |
| Quer cancelar outro pedido? | |
| sim | |
| Informe os últimos 5 dígitos do ID do pedido que você quer acompanhar. | |
| 12346 | |
| Os últimos cinco dígitos do ID do pedido que recebemos são 12346, correto? | |
| sim | |
| Ótimo, já temos o código do pedido. Você quer cancelar o pedido inteiro? |
|
| sim | |
| Especifique o motivo do cancelamento. Você pode dizer algo como: mudei de ideia, não preciso mais, quero comprar outro item, entrega atrasada, comprei por engano, quero mudar a forma de pagamento ou outras opções. | |
| não é mais necessário | |
| Agradecemos por nos informar sobre isso. Seu pedido de cancelamento foi gerado. |
Convenções de nomenclatura
Este componente pré-criado usa as seguintes convenções de nomenclatura:
| Recurso | Formatar | Exemplo |
|---|---|---|
| Flow | [Nome do componente] | Cancelar pedido |
| Tipo da entidade | prebuilt_components_[component_name]_[entity_type] | prebuilt_components_product_cancel_reason |
| Webhook | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_cancel_order:post_cancellation_details |
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. 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 local do usuário, sem o código do país, usado para identificar o usuário. | string |
| $session.params.all_recent_order_id | (Opcional) Esse parâmetro lista os códigos de pedido associados ao usuário autenticado, classificados pela data de realização do pedido em ordem decrescente. O primeiro elemento da matriz representa o pedido mais recente. Se um usuário não tiver pedidos, o valor desse parâmetro será null. |
Lista (string) |
| $session.params.email | (Opcional) O e-mail registrado na conta. | string |
| $session.params.user_first_name | (Opcional) Nome do usuário, usado para cumprimentar e confirmar a propriedade da conta. | string |
Esse componente pré-criado permite que os seguintes parâmetros opcionais configurem o comportamento do componente, incluindo novas tentativas.
| Nome do parâmetro | Descrição | Formatar |
|---|---|---|
| $flow.max_retry_another_account_counter | Especifica o número de novas tentativas permitidas ao selecionar se quer continuar com uma conta alternativa. O valor padrão é 2. |
integer |
| $flow.max_retry_order_number | Especifica o número de tentativas permitidas ao fornecer os últimos cinco dígitos de um número de pedido. O valor padrão é 2. |
integer |
| $flow.max_retry_another_order | Especifica o número de novas tentativas permitidas ao selecionar outro pedido nos casos em que o ID do pedido não é encontrado ou o pedido não está qualificado para cancelamento. O valor padrão é 2. |
integer |
| $flow.max_retry_select_order_number | Especifica o número de tentativas permitidas ao fornecer o número completo do pedido nos casos em que vários pedidos compartilham os mesmos cinco últimos dígitos. O valor padrão é 2. |
integer |
| $flow.max_product_display_counter | Especifica o número máximo de produtos a serem apresentados em uma única vez. O valor padrão é 2. |
integer |
| $flow.max_product_display | Especifica o número máximo de produtos que podem ser apresentados durante toda a conversa. O valor padrão é 9. |
integer |
| $flow.max_retry_product_number_counter | Especifica o número máximo de novas tentativas permitidas ao selecionar um produto para cancelar. O valor padrão é 2. |
integer |
| $flow.max_product_cancel_confirm_counter | Especifica o número máximo de novas tentativas permitidas ao confirmar o produto selecionado. O valor padrão é 2. |
integer |
| $flow.max_retry_select_quantity | Especifica o número máximo de novas tentativas permitidas ao selecionar a quantidade de produtos a serem cancelados. O valor padrão é 2. |
integer |
| $flow.order_product_cancel_reason_others | Especifica o valor da entidade prebuilt_components_product_cancel_reason que indica que o usuário selecionou o motivo do cancelamento "outros". O valor padrão é "others". |
string |
| $flow.max_retry_cancel_reason | Especifica o número de tentativas permitidas ao confirmar o motivo do cancelamento. O valor padrão é 2. |
integer |
| $flow.order_payment_mode_COD | Especifica o valor do campo order_payment_mode retornado pelo webhook get_order_details que indica uma forma de pagamento na entrega (COD, na sigla em inglês). O valor padrão é "COD". |
string |
| $flow.order_payment_mode_store_credit | Especifica o valor do campo order_payment_mode retornado pelo webhook get_order_details que indica uma forma de pagamento com crédito da Google Store. O valor padrão é "store_credit". |
string |
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 |
|---|---|---|
| phone_number | Número de telefone local do usuário, sem o código do país, usado para identificar o usuário. | string |
| all_recent_order_id | Esse parâmetro lista os códigos de pedido associados ao usuário autenticado, classificados pela data de realização do pedido em ordem decrescente. O primeiro elemento da matriz representa o pedido mais recente. Se um usuário não tiver pedidos, o valor desse parâmetro será null. |
Lista (string) |
| O e-mail registrado na conta. | string | |
| user_first_name | Nome do usuário, usado para cumprimentar e confirmar a propriedade da conta. | string |
| transfer_reason | Esse parâmetro indica o motivo da saída do fluxo, 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 da 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 novas tentativas para eventos sem entrada. Consulte eventos integrados sem entrada.max_no_match: a conversa atingiu o número máximo de novas 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: um URL do webhook estava inacessível. Consulte o evento integrado webhook.error.not-found. |
string |
Geradores
Esse componente usa geradores para ativar partes específicas da conversa.
Resumo
O gerador Summarization é usado para gerar um resumo pós-chamada que descreve
a conversa processada pelo componente.
Configuração básica
Para configurar esse componente pré-criado:
- Importe o componente pré-criado.
- Configure os webhooks flexíveis fornecidos com a configuração que descreve seus serviços externos. Consulte a configuração do webhook.
Configuração do webhook
Para usar esse componente, você precisa configurar os webhooks flexíveis incluídos para recuperar as informações necessárias dos seus serviços externos.
Autenticação
Se você ainda não configurou os serviços externos necessários para autenticação, será preciso configurá-los para ativar a autenticação de usuários para esse componente. Consulte Configuração do webhook de autenticação do Retail para instruções detalhadas.
Confira detalhes dos pedidos
O webhook prebuilt_components_cancel_order:get_order_details é usado
pelo componente para recuperar os detalhes de um pedido específico.
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.order_id | Código do pedido que terá os detalhes recuperados. | string |
Parâmetros de resposta da API
Os parâmetros a seguir são extraídos da resposta da API para serem usados pelo componente.
| Nome do parâmetro | Descrição | Formato da saída |
|---|---|---|
| order_date | Data em que o pedido foi feito, no formato YYYY-MM-DD. |
string |
| order_time | Horário em que o pedido foi feito, no formato HH:MM. |
string |
| order_product_count | O número de produtos exclusivos em um pedido. | integer |
| order_payment_mode | Indica a forma de pagamento usada ao fazer o pedido. | string |
| cancelable_product_id | Lista de IDs de produtos canceláveis no pedido. | Lista (string) |
| cancelable_product_name | Lista de nomes de produtos canceláveis no pedido. | Lista (string) |
| cancelable_product_brand_name | Lista de nomes de marcas de produtos canceláveis no pedido. | Lista (string) |
| cancelable_product_quantity | Lista de quantidades de produtos canceláveis no pedido. | Lista (string) |
Para configurar o webhook "Receber detalhes do pedido" para esse componente, abra as instruções.
- 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_cancel_order:get_order_details.
- Substitua o URL no campo URL do webhook do Dialogflow CX pelo endpoint do serviço com que você quer fazer a integração. Selecione o Método adequado no menu suspenso.
- Revise e atualize o corpo da solicitação para criar o formato de solicitação adequado para seu webhook.
- 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 necessários para que o componente acesse os valores de campo retornados.
- Revise e atualize as configurações de Autenticação conforme necessário.
- Clique em Salvar.
Ver detalhes de pedidos duplicados
O webhook prebuilt_components_retail_services:get_duplicate_order_details é usado
pelo componente para recuperar informações detalhadas e distinguir
pedidos quando vários números de pedido têm os mesmos últimos cinco dígitos.
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.duplicate_order_id | Lista com os últimos cinco dígitos dos números de pedidos compartilhados entre um ou mais pedidos do usuário. | Lista (string) |
Parâmetros de resposta da API
Os parâmetros a seguir são extraídos da resposta da API para serem usados pelo componente.
| Nome do parâmetro | Descrição | Formato da saída |
|---|---|---|
| all_order_date | Lista de datas de pedidos duplicados com os últimos cinco dígitos especificados no formato YYYY-MM-DD. Cada elemento nessa matriz corresponde ao mesmo elemento na matriz all_order_time. |
Lista (string) |
| all_order_time | Lista de horários de pedidos duplicados com os últimos cinco dígitos especificados no formato HH:MM. Cada elemento nessa matriz corresponde ao mesmo elemento na matriz all_order_date. |
Lista (string) |
Para configurar o webhook "Receber detalhes de pedidos duplicados" para esse componente, abra as instruções.
- 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_retail_services:get_duplicate_order_details.
- Substitua o URL no campo URL do webhook do Dialogflow CX pelo endpoint do serviço com que você quer fazer a integração. Selecione o Método adequado no menu suspenso.
- Revise e atualize o corpo da solicitação para criar o formato de solicitação adequado para seu webhook.
- 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 necessários para que o componente acesse os valores de campo retornados.
- Revise e atualize as configurações de Autenticação conforme necessário.
- Clique em Salvar.
Detalhes do cancelamento da postagem
O webhook prebuilt_components_cancel_order:post_cancellation_details é usado
pelo componente para enviar uma solicitação de cancelamento.
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, usado para identificar o usuário. | string |
| $flow.order_id | Código do pedido para enviar um tíquete. | string |
| $flow.cancel_product_id_list | Lista de IDs de produtos que o usuário quer cancelar. | Lista (string) |
| $flow.cancel_product_quantity_list | Lista de quantidades de produtos que o usuário quer cancelar, correspondente a cada elemento em $flow.cancel_product_id_list. |
Lista (string) |
| $flow.cancel_reason_list | Lista de motivos de cancelamento para cada produto cancelado, correspondente a cada elemento em $flow.cancel_product_id_list. |
Lista (string) |
| $flow.order_refund_mode | A forma de pagamento do reembolso. Os valores válidos são definidos pela entidade prebuilt_components_cancel_mode_of_refund. |
string |
Parâmetros de resposta da API
Os parâmetros a seguir são extraídos da resposta da API para serem usados pelo componente.
| Nome do parâmetro | Descrição | Formato da saída |
|---|---|---|
| order_cancellation_ticket_id | ID do tíquete do cancelamento enviado. | string |
Para configurar o webhook de detalhes de cancelamento de postagem para esse componente, abra as instruções.
- 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_cancel_order:post_cancellation_details.
- Substitua o URL no campo URL do webhook do Dialogflow CX pelo endpoint do serviço com que você quer fazer a integração. Selecione o Método adequado no menu suspenso.
- Revise e atualize o corpo da solicitação para criar o formato de solicitação adequado para seu webhook.
- 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 necessários para que o componente acesse os valores de campo retornados.
- Revise e atualize as configurações de Autenticação conforme necessário.
- Clique em Salvar.
Concluído
Seu agente e os webhooks dele agora devem estar configurados e prontos para teste.