Skip to main content
Respondido

Catálogo de Produtos - Carrinho Indisponível

  • January 16, 2022
  • 3 comentários
  • 44 Visualizações

Pedro_Benevides

Pessoal,

Agora fiquei sem entender, o catálogo de produtos é configurado como Conteúdo Dinâmico, do tipo Json, até aí tudo bem, porém, o usuário que recebe esse catálogo, escolhe os produtos e nos envia de volta, e no Desk aparece como “Conteúdo Dinâmico”, com isso, não temos acesso aos produtos escolhidos pelo usuário. Vocês conhecem alguma maneira de visualizar essa informação?

Melhor resposta por Caiof

Olá @Pedro_Benevides, tudo bom?

Quando o contato fecha o carrinho é enviado um conteúdo JSON para o bot contendo todos os produtos escolhidos, veja um exemplo:

Você pode criar um script utilizando a ação de Executar Script para gerar uma mensagem que possui informações desses produtos adquiridos, algo com resultado mais ou menos assim:

Dessa forma, o atendente do Desk consegue visualizar as informações e você pode aplicar nesse script também customizações do seu negócio, por exemplo, taxa de entrega.

Este foi o script que eu utilizei para este exemplo:

function run(input) {

    try {
        let inputParsed = JSON.parse(input)

        let productsMessage = "";

        for (var i = 0; i < inputParsed.order.product_items.length; i++) {
            let product = inputParsed.order.product_items[i];

            productsMessage += `- ${product.product_retailer_id} (${product.quantity} un) - ` +
                subTotal(product.item_price, product.quantity, product.currency) +
                " \n";
        }

        return productsMessage;

    } catch (e) {
        return "Erro: "
    }

}

function subTotal(price, quantity, currency) {
  let value = price * quantity;

  return `${value} ${currency}`;
}

Conseguir te ajudar? :goodblip:

Este tópico foi fechado para respostas.

3 comentários

Caiof
  • Solver
  • Resposta
  • January 17, 2022

Olá @Pedro_Benevides, tudo bom?

Quando o contato fecha o carrinho é enviado um conteúdo JSON para o bot contendo todos os produtos escolhidos, veja um exemplo:

Você pode criar um script utilizando a ação de Executar Script para gerar uma mensagem que possui informações desses produtos adquiridos, algo com resultado mais ou menos assim:

Dessa forma, o atendente do Desk consegue visualizar as informações e você pode aplicar nesse script também customizações do seu negócio, por exemplo, taxa de entrega.

Este foi o script que eu utilizei para este exemplo:

function run(input) {

    try {
        let inputParsed = JSON.parse(input)

        let productsMessage = "";

        for (var i = 0; i < inputParsed.order.product_items.length; i++) {
            let product = inputParsed.order.product_items[i];

            productsMessage += `- ${product.product_retailer_id} (${product.quantity} un) - ` +
                subTotal(product.item_price, product.quantity, product.currency) +
                " \n";
        }

        return productsMessage;

    } catch (e) {
        return "Erro: "
    }

}

function subTotal(price, quantity, currency) {
  let value = price * quantity;

  return `${value} ${currency}`;
}

Conseguir te ajudar? :goodblip:


Pedro_Benevides

Bacana demais Caio, vou testar aqui e dou um retorno.


Bia
  • Inspiring
  • January 25, 2022

Opa @Pedro_Benevides, tem novidades?