Usar várias instâncias do SDK da Web
Há casos em que você pode querer interagir com duas propriedades diferentes na mesma página. Esses casos incluem:
- Empresas que foram adquiridas e estão trabalhando na integração de seus sites
- Relacionamentos de compartilhamento de dados entre várias empresas
- Clientes que estão testando novas soluções de Adobe e não desejam interromper sua implementação existente
O SDK permite criar uma instância separada para cada propriedade adicionando outro nome à matriz no código base. O exemplo a seguir fornece dois nomes, titanium
e copper
.
<script>
!function(n,o){o.forEach(function(o){n[o]||((n.__alloyNS=n.__alloyNS||
[]).push(o),n[o]=function(){var u=arguments;return new Promise(
function(i,l){n[o].q.push([i,l,u])})},n[o].q=[])})}
(window,["titanium", "copper"]);
</script>
<script src="alloy.js" async></script>
Como resultado, o script cria duas instâncias do SDK. A função global para interagir com a primeira instância é nomeada titanium
e a função global para interagir com a segunda instância é nomeada copper
.
Ao criar duas instâncias separadas, cada uma pode ser configurada para uma propriedade diferente. Qualquer comunicação ou persistência de dados que ocorra devido à interação com titanium
é mantida isolada de copper
.
Seguindo o exemplo acima, você pode executar comandos usando cada instância:
titanium("configure", {
datastreamId: "ebebf826-a01f-4458-8cec-ef61de241c93",
orgId: "ADB3LETTERSANDNUMBERS@AdobeOrg"
});
titanium("sendEvent", {
data: {
key: "value"
}
});
copper("configure", {
datastreamId: "f46e981f-fd03-4bdd-a9d9-73ce4447f870",
orgId: "ADB3NUMBERSANDLETTERS2@AdobeOrg"
});
copper("sendEvent", {
data: {
key: "value"
}
});
Certifique-se de executar o comando configure
para cada instância antes de executar outros comandos na mesma instância.
datastreamId
exclusiva e sua própria orgId
exclusiva.