Tipos de condição para extensões de borda
Em uma regra de tag, uma condição é avaliada após a ocorrência de um evento. Todas as condições devem retornar verdadeiro para que a regra continue a ser processada. Os tipos de condição são fornecidos por extensões e avaliam se algo é verdadeiro ou falso, retornando um valor booleano.
Como exemplo, uma extensão pode fornecer um tipo de condição "visor contém", na qual o usuário do poderia especificar um seletor de CSS. Quando a condição é avaliada no site do cliente, a extensão pode encontrar elementos que correspondam ao seletor de CSS e retornar se algum deles está contido no visor do usuário.
Este documento aborda como definir tipos de condição para uma extensão de borda no Adobe Experience Platform.
Os tipos de condição geralmente consistem no seguinte:
- Uma visualização mostrada na interface do usuário do Experience Platform e na interface da Coleção de dados que permite que os usuários modifiquem as configurações para a condição.
- Um módulo de biblioteca emitido na biblioteca de tempo de execução de tag para interpretar as configurações e avaliar uma condição.
Por exemplo, se você quiser avaliar se o usuário está no host example.com
, o módulo deverá ter a aparência a seguir.
module.exports = (context) => {
const URL = context.arc.event.xdm.web.webpageDetails.URL;
return URL.endsWith("adobelaunch.com");
};
Se você quiser que o nome de host seja configurável pelo usuário para permitir a entrada de um nome de host e o salvamento no objeto de configurações, o objeto poderá ser semelhante a este exemplo.
{
"hostname": "example.com"
}
Para operar no nome do host definido pelo usuário, seu módulo precisará ser alterado para:
module.exports = (context) => {
const URL = context.arc.event.xdm.web.webpageDetails.URL;
return URL.endsWith(settings.hostname);
};
Resultado da condição
O resultado retornado por um módulo de condição pode ser um dos seguintes:
- Um valor booliano (
true
oufalse
). - Uma promessa que retorna um valor booliano depois de resolvida.
Contexto do módulo da biblioteca
Todos os módulos de condição têm acesso a uma variável context
que é fornecida quando o módulo é chamado. Você pode saber mais aqui.