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 dele. O usuário pode cancelar um pedido inteiro ou itens específicos de um pedido. Esse componente usa o componente Autenticação de varejo pré-criado para autenticar usuários. O componente também usa geradores para gerar um resumo após a chamada.
Limitações
Além das limitações comuns dos componentes pré-criados, este componente pré-criado tem as seguintes limitações:
- Esse componente não criptografa nenhum dado.
Diálogos de exemplo
As caixas de diálogo de exemplo 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 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, que termina com 12978 e 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 o produto que você quer cancelar. 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. |
|
| próxima | |
| Não encontramos outros itens nos nossos registros. Escolha na lista compartilhada. Produto 1: garrafa de água do Google, Produto 2: camiseta do Google. Diga ou insira o número do produto que você quer selecionar ou diga "próximo" para mostrar mais produtos. |
|
| 1 | |
| Para verificar, você tem interesse em cancelar a garrafa de água do Google. É isso mesmo? | |
| sim | |
| 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. Você quer cancelar outro produto? |
|
| não | |
| Para compras feitas usando a carteira, os reembolsos são creditados na carteira ou na conta de crédito da loja. 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 manuseio. |
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 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 com final 12345, que contém uma camiseta e foi feito em 10/11/2023 às 18h? | |
| não | |
| Quer cancelar outro pedido? | |
| sim | |
| Você pode informar os últimos cinco dígitos do ID do pedido que quer rastrear? | |
| 12346 | |
| Os últimos cinco dígitos do ID do pedido que recebemos são 12346. Isso está correto? | |
| sim | |
| Ótimo, já coletamos o ID 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. Seu pedido de cancelamento foi gerado. |
Convenções de nomenclatura
Esse componente pré-criado usa as seguintes convenções de nomenclatura:
| Recurso | Formato | Exemplo |
|---|---|---|
| Fluxo | [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 no escopo do 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 IDs de pedidos associados ao usuário autenticado, classificados pela data de inclusã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) O nome do usuário, usado para cumprimentar e confirmar a propriedade da conta. | string |
Esse componente pré-criado permite os seguintes parâmetros opcionais para configurar o comportamento do componente, incluindo novas tentativas.
| Nome do parâmetro | Descrição | Formato |
|---|---|---|
| $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 novas 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 novas tentativas permitidas ao fornecer o número completo do pedido em 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 a serem 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 cancelamento. 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 produto a ser cancelada. O valor padrão é 2. |
integer |
| $flow.order_product_cancel_reason_others | Especifica o valor da entidade prebuilt_components_product_cancel_reason, indicando que o usuário selecionou o motivo de cancelamento "outros". O valor padrão é "others". |
string |
| $flow.max_retry_cancel_reason | Especifica o número de novas 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, indicando uma forma de pagamento em dinheiro 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, indicando uma forma de pagamento com crédito da loja. O valor padrão é "store_credit". |
string |
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 |
|---|---|---|
| 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 IDs de pedidos associados ao usuário autenticado, classificados pela data de inclusã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 | O 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, caso ele não tenha sido concluído. O valor retornado é um destes: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 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 de não correspondência.webhook_error: ocorreu um erro de webhook. Consulte evento integrado webhook.error. webhook_not_found: um URL de webhook estava inacessível. Consulte 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 criar 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 uma configuração que descreve seus serviços externos. Consulte a configuração de webhook.
Configuração do webhook
Para usar esse componente, configure 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 tiver configurado os serviços externos necessários para autenticação, faça isso para ativar a autenticação de usuários para esse componente. Consulte Configuração do webhook de autenticação do varejo para instruções detalhadas.
Confira detalhes dos pedidos
O webhook prebuilt_components_cancel_order:get_order_details é usado
pelo componente para recuperar 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 | ID do pedido para recuperar detalhes. | 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 | O 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 "Get order details" (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 que você quer integrar. Selecione o Método adequado no menu suspenso.
- Revise e atualize o corpo da solicitação para formar o formato 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 dos campos retornados.
- Revise e atualize as configurações de Autenticação conforme necessário.
- Clique em Salvar.
Receber detalhes de pedidos duplicados
O webhook prebuilt_components_retail_services:get_duplicate_order_details é usado
pelo componente para recuperar informações detalhadas e distinguir entre
pedidos quando vários números têm os mesmos cinco últimos 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 cinco últimos dígitos dos números de pedido 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 cinco últimos 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 "Get duplicate order details" (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 que você quer integrar. Selecione o Método adequado no menu suspenso.
- Revise e atualize o corpo da solicitação para formar o formato 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 dos campos retornados.
- Revise e atualize as configurações de Autenticação conforme necessário.
- Clique em Salvar.
Detalhes após o cancelamento
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 | ID 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 para o 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 que você quer integrar. Selecione o Método adequado no menu suspenso.
- Revise e atualize o corpo da solicitação para formar o formato 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 dos campos 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 estão configurados e prontos para teste.