O Adobe Experience Platform Launch foi reformulado como um conjunto de tecnologias de coleção de dados na Adobe Experience Platform. Como resultado, várias alterações de terminologia foram implementadas na documentação do produto. Consulte o seguinte documento para obter uma referência consolidada das alterações de terminologia.
Este documento serve como referência para o objeto _satellite
do lado do cliente e as várias funções que você pode executar com ele.
track
Código
_satellite.track(identifier: string [, detail: *] )
Exemplo
_satellite.track('contact_submit', { name: 'John Doe' });
track
aciona todas as regras usando o tipo de evento Chamada direta que foi configurado com o identificador especificado na extensão de tag principal. O exemplo acima aciona todas as regras usando um tipo de evento Chamada direta em que o identificador configurado é contact_submit
. Um objeto opcional contendo informações relacionadas também é transmitido. O objeto detalhado pode ser acessado digitando %event.detail%
em um campo de texto em uma condição ou ação ou event.detail
dentro do editor de códigos em uma condição ou ação de código personalizado.
getVar
Código
_satellite.getVar(name: string) => *
Exemplo
var product = _satellite.getVar('product');
No exemplo fornecido, se um elemento de dados existir com um nome correspondente, o valor do elemento de dados será retornado. Se não houver nenhum elemento de dados correspondente, ele verificará se uma variável personalizada com um nome correspondente foi definida anteriormente usando o _satellite.setVar()
. Se uma variável personalizada correspondente for encontrada, seu valor será retornado.
É possível usar a porcentagem (%
) para fazer referência a variáveis para muitos campos de formulário na implementação de tags, reduzindo a necessidade de chamar _satellite.getVar()
. Por exemplo, usando %product%
acessará o valor do elemento de dados do produto ou a variável personalizada.
Quando um evento aciona uma regra, você pode transmitir as informações correspondentes da regra event
objeto em _satellite.getVar()
assim:
// event refers to the calling rule's event
var rule = _satellite.getVar('return event rule', event);
setVar
Código
_satellite.setVar(name: string, value: *)
Exemplo
_satellite.setVar('product', 'Circuit Pro');
setVar()
define uma variável personalizada com determinado nome e valor. O valor da variável pode ser acessado posteriormente usando _satellite.getVar()
.
Como opção, é possível definir várias variáveis de uma vez transmitindo um objeto em que as chaves são nomes de variáveis e os valores são os respectivos valores de variáveis.
_satellite.setVar({ 'product': 'Circuit Pro', 'category': 'hobby' });
getVisitorId
Código
_satellite.getVisitorId() => Object
Exemplo
var visitorIdInstance = _satellite.getVisitorId();
Se a extensão Adobe Experience Cloud ID for instalada na propriedade, esse método retornará a instância da ID de visitante. Consulte a documentação do Experience Cloud ID Service para obter mais informações.
logger
Código
_satellite.logger.log(message: string)
_satellite.logger.info(message: string)
_satellite.logger.warn(message: string)
_satellite.logger.error(message: string)
Exemplo
_satellite.logger.error('No product ID found.');
O objeto logger
permite que uma mensagem seja registrada no console do navegador. A mensagem será exibida somente se a depuração de tag for habilitada pelo usuário (chamando _satellite.setDebug(true)
ou usando uma extensão apropriada no navegador).
_satellite.logger.deprecation(message: string)
Exemplo
_satellite.logger.deprecation('This method is no longer supported, please use [new example] instead.');
Isso registra um aviso no console do navegador. A mensagem é exibida independentemente de a depuração da tag ser ou não ativada pelo usuário.
cookie
_satellite.cookie
contém funções para ler e gravar cookies. Essa é uma cópia exposta do js-cookie de biblioteca de terceiros. Para obter detalhes sobre o uso mais avançado desta biblioteca, consulte a Documentação do js-cookie.
Para definir um cookie, use _satellite.cookie.set()
.
Código
_satellite.cookie.set(name: string, value: string[, attributes: Object])
No antigo setCookie
método de configuração de cookies, o terceiro argumento (opcional) para essa chamada de função era um número inteiro que indicava o tempo de expiração do cookie em dias. Neste novo método, um objeto "atributos" é aceito como um terceiro argumento. Para definir uma expiração para um cookie usando o novo método, você deve fornecer um expires
no objeto attributes e defina-o com o valor desejado. Isso é demonstrado no exemplo abaixo.
Exemplo
A chamada de função a seguir grava um cookie que expira em uma semana.
_satellite.cookie.set('product', 'Circuit Pro', { expires: 7 });
Para recuperar um cookie, use _satellite.cookie.get()
.
Código
_satellite.cookie.get(name: string) => string
Exemplo
A chamada de função a seguir lê um cookie definido anteriormente.
var product = _satellite.cookie.get('product');
Para remover um cookie, use _satellite.cookie.remove()
.
Código
_satellite.cookie.remove(name: string)
Exemplo
A chamada de função a seguir remove um cookie definido anteriormente.
_satellite.cookie.remove('product');
buildInfo
Código
_satellite.buildInfo
Esse objeto contém informações sobre o build da biblioteca de tempo de execução de tag atual. O objeto contém as seguintes propriedades:
turbineVersion
Isso fornece a versão Turbine usada na biblioteca atual.
turbineBuildDate
A data da ISO 8601 quando a versão de Turbine usada no container foi criada.
buildDate
A data da ISO 8601 quando a biblioteca atual foi criada.
Este exemplo demonstra os valores do objeto:
{
turbineVersion: "14.0.0",
turbineBuildDate: "2016-07-01T18:10:34Z",
buildDate: "2016-03-30T16:27:10Z"
}
environment
Esse objeto contém informações sobre o ambiente no qual a biblioteca de tempo de execução de tag atual está implantada.
Código
_satellite.environment
O objeto contém as seguintes propriedades:
{
id: "ENbe322acb4fc64dfdb603254ffe98b5d3",
stage: "development"
}
Propriedade | Descrição |
---|---|
id |
A ID do ambiente. |
stage |
O ambiente para o qual essa biblioteca foi criada. Os valores possíveis são development , staging , e production . |
notify
Esse método foi substituído. Em vez disso, use _satellite.logger.log()
.
Código
_satellite.notify(message: string[, level: number])
Exemplo
_satellite.notify('Hello world!');
notify
registra uma mensagem no console do navegador. A mensagem será exibida somente se a depuração de tag for habilitada pelo usuário (chamando _satellite.setDebug(true)
ou usando uma extensão de navegador apropriada).
Um nível de registro opcional poderá ser passado, o que afetará o estilo e a filtragem da mensagem que está sendo registrada. Os níveis suportados são os seguintes:
3 - Mensagens informativas.
4 - Mensagens de aviso.
5 - Mensagens de erro.
Se você não fornecer um nível de registro ou passar qualquer outro valor de nível, a mensagem será registrada como uma mensagem regular.
setCookie
Esse método foi substituído. Em vez disso, use _satellite.cookie.set()
.
Código
_satellite.setCookie(name: string, value: string, days: number)
Exemplo
_satellite.setCookie('product', 'Circuit Pro', 3);
Isso define um cookie no navegador do usuário. O cookie persistirá pelo número de dias especificados.
readCookie
Esse método foi substituído. Em vez disso, use _satellite.cookie.get()
.
Código
_satellite.readCookie(name: string) => string
Exemplo
var product = _satellite.readCookie('product');
Isso lê um cookie do navegador do usuário.
removeCookie
Esse método foi substituído. Em vez disso, use _satellite.cookie.remove()
.
Código
_satellite.removeCookie(name: string)
Exemplo
_satellite.removeCookie('product');
Isso remove um cookie do navegador do usuário.
As funções a seguir não devem ser acessadas do código de produção. Elas são destinados apenas à depuração e serão alteradas ao longo do tempo, conforme necessário.
container
Código
_satellite._container
Exemplo
Essa função não deve ser acessada do código de produção. Ela é destinada apenas à depuração e será alterada ao longo do tempo, conforme necessário.
monitor
Código
_satellite._monitors
Exemplo
Essa função não deve ser acessada do código de produção. Ela é destinada apenas à depuração e será alterada ao longo do tempo, conforme necessário.
Amostra
Na página da Web que está executando uma biblioteca de tags, adicione um trecho de código ao HTML. Normalmente, o código é inserido no elemento <head>
antes do elemento <script>
que carrega a biblioteca de tags. Isso permite que o monitor capture os primeiros eventos do sistema que ocorrerem na biblioteca de tags. Por exemplo:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
window._satellite = window._satellite || {};
window._satellite._monitors = window._satellite._monitors || [];
window._satellite._monitors.push({
ruleTriggered: function (event) {
console.log(
'rule triggered',
event.rule
);
},
ruleCompleted: function (event) {
console.log(
'rule completed',
event.rule
);
},
ruleConditionFailed: function (event) {
console.log(
'rule condition failed',
event.rule,
event.condition
);
}
});
</script>
<script src="//assets.adobedtm.com/launch-EN5bfa516febde4b22b3e7c6f96f6b439f.min.js"
async></script>
</head>
<body>
<h1>Click me!</h1>
</body>
</html>
No elemento do primeiro script, como a biblioteca de tags ainda não foi carregada, o objeto _satellite
é criado e uma matriz é inicializada em _satellite._monitors
. O script então adiciona um objeto de monitor a essa matriz. O objeto do monitor pode especificar os seguintes métodos que serão chamados posteriormente pela biblioteca de tags:
ruleTriggered
Essa função é chamada depois que um evento aciona uma regra, mas antes de as condições e ações da regra terem sido processadas. O objeto do evento transmitido para ruleTriggered
contém informações sobre a regra que foi acionada.
ruleCompleted
Essa função é chamada depois que uma regra é totalmente processada. Em outras palavras, o evento ocorreu, todas as condições foram passadas e todas as ações foram executadas. O objeto do evento passado para ruleCompleted
contém informações sobre a regra que foi concluída.
ruleConditionFailed
Essa função é chamada depois que uma regra é acionada e uma de suas condições falha. O objeto do evento transmitido para ruleConditionFailed
contém informações sobre a regra que foi acionada e a condição que falhou.
Se ruleTriggered
for chamado, ruleCompleted
ou ruleConditionFailed
será chamado logo depois disso.
Um monitor não precisa especificar todos os três métodos (ruleTriggered
, ruleCompleted
e ruleConditionFailed
). As tags no Adobe Experience Platform funcionam com quaisquer métodos compatíveis que o monitor tenha fornecido.
O exemplo acima especifica todos os três métodos no monitor. Quando são chamados, o monitor faz logout de informações relevantes. Para testar isso, configure duas regras na biblioteca de tags:
Se você abrir a página em Chrome, abrir o console do navegador e selecionar a página, você verá o seguinte no console:
É possível adicionar trechos ou informações suplementares a esses manipuladores, conforme necessário.