設定 Amazon Pinpoint,透過 Amazon Kinesis 或 Amazon Data Firehose 串流應用程式事件資料 - Amazon Pinpoint

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定 Amazon Pinpoint,透過 Amazon Kinesis 或 Amazon Data Firehose 串流應用程式事件資料

您可以設定 Amazon Pinpoint 將事件資料傳送至 Amazon Kinesis 串流或 Amazon Data Firehose 交付串流。Amazon Pinpoint 可以傳送行銷活動、旅程和交易電子郵件和SMS訊息的事件資料。

本節包含透過編寫程式的方式設定事件串流的資訊。您也可以使用 Amazon Pinpoint 主控台設定事件串流。如需使用 Amazon Pinpoint 主控台設定事件串流的相關資訊,請參閱 Amazon Pinpoint 使用者指南中的事件串流設定

必要條件

本節中的範例需要以下輸入:

AWS CLI

下列 AWS CLI 範例使用 put-event-stream命令。此命令設定 Amazon Pinpoint 將傳送事件到 Kinesis 串流:

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

AWS SDK for Java

以下 Java 範例設定 Amazon Pinpoint 將事件傳送到 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); }

此範例會建構WriteEventStream物件,存放 Kinesis 串流和IAM角色ARNs的 。將 WriteEventStream 物件傳遞到 PutEventStreamRequest 物件,以設定 Amazon Pinpoint 為特定應用程式串流事件。將 PutEventStreamRequest 物件傳遞至 Amazon Pinpoint 用戶端的 putEventStream 方法。

您可以將 Kinesis 串流指派給多個應用程式。如果您執行此操作,Amazon Pinpoint 會將每個應用程式中,以 base64 編碼的事件資料傳送到串流,讓您將資料當成集合分析。下列範例方法接受應用程式 (應用程式) 的清單IDs,並使用先前的範例方法 createEventStream將串流指派給每個應用程式:

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()); }

雖然您可以將一個串流指派給多個應用程式,但您無法將多個串流指派給一個應用程式。