Configure o Amazon Pinpoint para transmitir dados de eventos de aplicativos por meio do Amazon Kinesis ou do Amazon Data Firehose - Amazon Pinpoint

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configure o Amazon Pinpoint para transmitir dados de eventos de aplicativos por meio do Amazon Kinesis ou do Amazon Data Firehose

Você pode configurar o Amazon Pinpoint para enviar dados de eventos para um stream do Amazon Kinesis ou para um stream de entrega do Amazon Data Firehose. O Amazon Pinpoint pode enviar dados de eventos para campanhas, viagens e e-mails e mensagens transacionais. SMS

Esta seção inclui informações sobre como configurar os eventos de streaming de forma programática. Também é possível usar o console do Amazon Pinpoint para configurar a transmissão de eventos. Para obter informações sobre como configurar a transmissão de eventos usando o console do Amazon Pinpoint, consulte Configurações de transmissão de eventos no Guia do usuário do Amazon Pinpoint.

Pré-requisitos

Os exemplos nesta seção exigem a seguinte entrada:

AWS CLI

O AWS CLI exemplo a seguir usa o put-event-streamcomando. Este comando configura o Amazon Pinpoint para enviar eventos para um fluxo do Kinesis:

aws pinpoint put-event-stream \ --application-id projectId \ --write-event-stream DestinationStreamArn=streamArn,RoleArn=roleArn

AWS SDK for Java

O exemplo de Java a seguir configura o Amazon Pinpoint para enviar eventos para um fluxo do Kinesis:

public PutEventStreamResult createEventStream(AmazonPinpoint pinClient, String appId, String streamArn, String roleArn) { WriteEventStream stream = new WriteEventStream() .withDestinationStreamArn(streamArn) .withRoleArn(roleArn); PutEventStreamRequest request = new PutEventStreamRequest() .withApplicationId(appId) .withWriteEventStream(stream); return pinClient.putEventStream(request); }

Este exemplo constrói um WriteEventStream objeto que armazena o stream ARNs do Kinesis e IAM a função. O objeto WriteEventStream é passado para um objeto PutEventStreamRequest para configurar o Amazon Pinpoint para enviar fluxos de eventos a um aplicativo específico. O objeto PutEventStreamRequest é passado para o método putEventStream do cliente Amazon Pinpoint.

Um fluxo do Kinesis pode ser atribuído a vários aplicativos. Se você fizer isso, o Amazon Pinpoint enviará dados de eventos codificados em base64 de cada aplicativo para o fluxo, o que permite analisar os dados como uma coleção. O método de exemplo a seguir aceita uma lista de aplicativos (app) IDs e usa o método de exemplo anterior,createEventStream, para atribuir um stream a cada aplicativo:

public List<PutEventStreamResult> createEventStreamFromAppList( AmazonPinpoint pinClient, List<String> appIDs, String streamArn, String roleArn) { return appIDs.stream() .map(appId -> createEventStream(pinClient, appId, streamArn, roleArn)) .collect(Collectors.toList()); }

Apesar ser possível atribuir um fluxo a vários aplicativos, não é possível atribuir vários fluxos a um mesmo aplicativo.