Funcionamento do Mantis
1. Parse do Cookie ledger
-
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.parseconverte a stringJSONdo 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
createRDSMServiceconfigura 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
finddo 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
mountDatado 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
formattedDataRDSMdeve 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
createBillingServiceconfigura 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
finddo 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.