O RudderStack é uma plataforma de dados de clientes (CDP) de código aberto que permite às empresas coletar, unificar e encaminhar dados de clientes para diversos destinos. Ele fornece uma plataforma centralizada para gerenciar pipelines de dados de clientes, permitindo que as organizações coletem facilmente dados de várias fontes, como sites, aplicativos móveis, servidores e serviços em nuvem.
O Singular SDK oferece muitos recursos que não estão disponíveis por meio das opções de integração padrão "Device-Mode" ou "Cloud-Mode" .
A integração por meio de uma metodologia híbrida é recomendada ao usar o Rudderstack com o Singular para aproveitar todos os recursos e funcionalidades do Singular.
A abordagem híbrida consiste em:
- Implementar o Singular SDK de forma independente do Rudderstack, permitindo que o Singular SDK gerencie o rastreamento de sessões, suporte adicional para frameworks de SDK (React Native, Unity, etc.), SkAdNetwork, deep link e deferred deep links, e recursos avançados.
- Habilitar a opção "Cloud-Mode" no Rudderstack para um Singular Destination. Isso permite que todos os eventos track de dispositivos móveis do Rudderstack sejam enviados ao Destination do Singular.
As instruções abaixo mostram como configurar uma implementação híbrida do Singular com o Rudderstack.
| Guia para | Equipes de Engenharia |
| Pré-requisitos | Este artigo pressupõe que você já tem o Rudderstack Mobile SDK integrado ao seu aplicativo. |
Para usar esta integração, você deve estar utilizando os Mobile SDKs do Rudderstack.
O Singular SDK oferecerá suporte para:
- Atribuição de instalação
- Suporte a SkAdNetwork
- Suporte a Google Install Referrer
- Suporte a META Install Referrer
- Atribuição do Apple Search Ads
- Rastreamento de eventos in-app personalizados
- Rastreamento de receita
- Custom User ID
- Suporte a Global Properties
- Opções de privacidade
A integração "Cloud-Mode" do Rudderstack oferecerá suporte para:
- Rastreamento de eventos in-app personalizados
- Rastreamento de receita
- Custom User ID
Configuração híbrida
-
Integre o Singular SDK
Implemente o Singular SDK de forma independente do Rudderstack. Consulte as opções e frameworks do SDK AQUI .
-
Habilite o Rudderstack - Singular Destination (Cloud-Mode)
Siga o guia AQUI .
Evite eventos de sessão duplicados: Na abordagem híbrida, o Singular SDK já gerencia o rastreamento de sessões. Ao configurar o Rudderstack - Singular Destination (Cloud-Mode), não defina a configuração de conexão "Session Event Name" e não envie os eventos de ciclo de vida Application Installed , Application Opened ou Application Updated ao Singular via Rudderstack. Fazer isso faz com que o Rudderstack envie eventos de sessão em paralelo com o Singular SDK, resultando em eventos de sessão duplicados no Singular.
Configuração adicional recomendada
Ao usar uma metodologia híbrida, é recomendado passar o AnonymousId do Rudderstack e o User ID do Rudderstack para o SDK do Singular.
Preste atenção especial e cuidado ao implementar esses recursos opcionais da documentação do SDK. As etapas podem variar ligeiramente dependendo do framework que você está usando.
Implemente Global Properties
Passe o AnonymousId do Rudderstack para uma Global Property do Singular. Isso associará o AnonymousId do Rudderstack aos dados de nível de dispositivo do SDK.
Fornecer esse valor ao Singular no objeto Singular Config no momento da inicialização do Singular SDK também permitirá que o Singular envie um postback de instalação ao Rudderstack quando o UserId for desconhecido.O Singular pode fornecer as informações de atribuição ao Rudderstack APENAS a partir da instalação do aplicativo usando o valor do AnonymousId e/ou do UserId do Rudderstack. Consulte as Global Properties do Singular [ iOS ][ Android ] como exemplos de como isso é configurado.
A Global Property deve ser configurada ao inicializar o Singular SDK com a chave: rudderstack_anonymous_id e o valor do anonymousId do Rudderstack obtido do Rudderstack SDK. O AnonymousID do Rudderstack pode ser obtido do Rudderstack SDK usando este método [iOS] [Android] .[RSClient getInstance].anonymousId;
Exemplo de configuração do Singular SDK
- (SingularConfig *)getConfig {
// Get the 3rd-party identifiers to set in Global Properties:
// If 3rd-party SDKs are providing any identifiers to Singular, the
// respective SDK must be initialized before Singular.
NSString* thirdPartyKey = @"rudderstack_anonymous_id";
NSString* thirdPartyValue = [RSClient getInstance].anonymousId;
// Singular Config Options
SingularConfig* config = [[SingularConfig alloc]
initWithApiKey:APIKEY andSecret:SECRET];
...
// Using Singular Global Properties feature to capture 3rd-party identifiers
[config setGlobalProperty:thirdPartyKey
withValue:thirdPartyValue overrideExisting:YES];
...
return config;}
// (Optional) Get 3rd-party identifiers to set in Global Properties:
// If 3rd-party SDKs are providing any identifiers to Singular, the
// respective SDK must be initialized before Singular.
String thirdPartyKey = new String("rudderstack_anonymous_id");
String thirdPartyValue = new String(RudderClient.getInstance()?.anonymousId);
// Singular Config Options
SingularConfig config = new SingularConfig("SDK KEY", "SDK SECRET")
.withGlobalProperty(thirdPartyKey, thirdPartyValue, true);
Implemente o Custom User ID
Passe o UserId do Rudderstack para o método Custom User ID do Singular. Isso associará o UserId do Rudderstack aos dados de nível de dispositivo do SDK. Fornecer esse valor ao Singular no objeto Singular Config no momento da inicialização do Singular SDK também permitirá que o Singular envie o UserId no postback de instalação ao Rudderstack. Leia mais na documentação do framework de SDK que você está usando para a integração com o Singular. Exemplo de [ iOS ][ Android ]
Além disso, o UserID será associado a qualquer evento in-app acionado nativamente a partir do Singular SDK.
Para os eventos "Cloud-Mode" recebidos, o Singular mapeou o Custom User ID para o valor do User ID do Rudderstack.