Skip to main content

Funcionamento do Mantis

  • Descrição: O cookie ledger, que contém informações do usuário em formato JSON, é transformado em um objeto JavaScript para ser utilizado no restante do código.

  • A função JSON.parse converte a string JSON do cookie em um objeto.

  • Estrutura esperada do ledger: Deve conter, no mínimo, um atributo chamado email.

2. Extração do e-mail do objeto Ledger

  • Descrição: A propriedade email é extraída do objeto ledger. Esse dado será usado como identificador do usuário nas próximas etapas.

  • Importância do e-mail: Ele é o ponto central para buscar informações personalizadas sobre o usuário nos sistemas de dados (como o RDSM e Billing).

3. Instanciação do serviço RDSM

  • Descrição: O serviço RDSM do Mantis é instanciado usando o contexto atual.

  • A função createRDSMService configura e retorna um objeto que permite acessar métodos para buscar e processar dados do usuário no RDSM.

4. Busca de dados brutos no RDSM

  • Descrição: O método find do serviço RDSM é chamado para buscar informações relacionadas ao usuário no banco de dados, utilizando o e-mail como identificador.

  • O que são os dados brutos?: Esses dados podem incluir informações como pontuações de perfil, tags associadas ao usuário, histórico de interações e preferências.

5. Formatação dos dados RDSM

  • Descrição: Após buscar os dados brutos, o método mountData do serviço RDSM é usado para transformá-los em um formato padronizado e mais fácil de manipular.

  • Por que formatar?: Dados brutos geralmente precisam ser processados para:

    • Remover campos desnecessários.
    • Reorganizar a estrutura.
    • Preencher dados padrão para campos ausentes.
  • Resultado esperado: O objeto formattedDataRDSM deve conter informações como:

    • score: Pontuação de relevância do usuário.
    • tags: Categorias ou etiquetas associadas ao perfil.

6. Instanciação do serviço Billing

  • Descrição: Um serviço específico para acessar informações de cobrança e assinaturas do usuário é criado. O createBillingService configura e retorna uma instância do serviço.

  • Uso do Billing: Este serviço é responsável por acessar dados relacionados a pagamentos e planos de assinatura aos produtos RD Station do usuário.

7. Busca de dados brutos no Billing

  • Descrição: O método find do serviço Billing busca dados relacionados ao e-mail do usuário, como informações de assinatura ou histórico de cobrança.

  • Exemplos de dados retornados:

    • Tipos de planos ativos (gratuito, premium, etc.).
    • Status de pagamento (em dia, bloqueado).
    • Datas de início e término da assinatura.

8. Formatação dos dados Billing

  • Descrição: Os dados brutos do Billing são processados e formatados em uma objeto estruturado, semelhante ao processo do RDSM.

  • Razão para formatar: Assim como no caso do RDSM, a formatação organiza os dados em um modelo padronizado, simplificando a manipulação e comparação no restante do código.

10. Criação do objeto Mantis_Data

  • Descrição: Um novo objeto userDataObject é criado para consolidar as informações formatadas obtidas do RDSM e do Billing.

  • Estrutura do objeto:

    • tags: Etiquetas ou categorias associadas ao usuário (obtidas do RDSM).
    • subscriptions: Informações de planos de assinatura e status de pagamento (obtidas do Billing).
    • score: Representa a relevância ou engajamento do usuário (obtido do RDSM).
     {
tags: [...],
score: { icp: "b" },
subscriptions: {
rdsm: { status: "current", plan: "plano-pro", ... },
rdscrm: { status: "ex", plan: "crm-basic", ... }
}
}
  • Por que criar esse objeto?: Ele serve como entrada para processos futuros, como o match com públicos-alvo definidos para a personalização.

Resumo

O Mantis tem o objetivo de:

  • Identificar o usuário a partir de um e-mail presente no cookie ledger.
  • Buscar dados complementares sobre o usuário nos serviços RDSM e Billing.
  • Processar e consolidar as informações em um único objeto userDataObject, que será usado para determinar como o conteúdo do site será personalizado para o visitante.

Este processo garante que o sistema trabalhe com dados organizados e padronizados, facilitando a personalização da experiência do usuário.