导入客户细分
使用 Amazon Pinpoint,您可以定义一个用户客户细分,方法是导入包含有关属于客户细分的用户的信息的文件。如果您在 Amazon Pinpoint 之外定义用户客户细分,但又想通过 Amazon Pinpoint 活动吸引用户,则导入客户细分非常有用。
与在控制台中使用客户细分生成器创建的动态客户细分不同,导入客户细分是一组不变的端点或用户 ID:
- 端点
-
可以向其发送消息的目的地,如电子邮件地址、移动设备标识符或移动电话号码。端点定义可以包括描述您向其发送消息的用户或设备的属性。也可以包括用户 ID。
可以通过导入端点定义列表来定义客户细分。Amazon Pinpoint 创建客户细分,并用新的信息来更新之前您添加到 Amazon Pinpoint 的任何端点。
- 用户 ID
-
代表受众中单个用户的 ID。此 ID 必须分配给一个或多个端点。例如,如果某个人员在多个设备上使用您的应用程序,则您的应用程序可将此人员的用户 ID 分配给每个设备的端点。
仅当您已将与用户 ID 关联的端点添加到 Amazon Pinpoint 中时,才可以通过导入用户 ID 来定义客户细分。
导入客户细分由端点、用户 ID 或这二者的组合组成。使用 Amazon Pinpoint 向客户细分发送消息时,可能的目的地包括:
-
导入文件中所列的每个端点。
-
与导入文件中所列的每个用户 ID 关联的每个端点。
创建新客户细分时,您可以使用一个导入客户细分作为基本客户细分。然后,您可以对该基本客户细分应用筛选条件,以根据您的需求对其进行优化。
导入客户细分注意事项
创建导入客户细分时,请考虑以下因素:
-
当您创建活动时,必须选择一个客户细分。当您选择动态客户细分时,Amazon Pinpoint 提供该客户细分大小的估计值。但是,当您选择导入的客户细分时,Amazon Pinpoint 无法提供估计值。
-
如果您创建一个当发生某些事件时发送消息的活动,您不能使用导入客户细分。基于事件的活动只能使用动态客户细分。有关创建动态客户细分的更多信息,请参阅构建客户细分。
客户细分文件
您可以在逗号分隔值 (CSV) 或 JSON 文件中定义属于您的客户细分的端点或用户 ID。然后,将此文件导入 Amazon Pinpoint 来创建客户细分。
导入客户细分时,请记住以下几点:
-
Amazon Pinpoint 无法导入压缩的文件。
-
您导入的文件必须使用 UTF-8 字符编码。
-
如果要导入新的端点,
Address
和ChannelType
属性是必需的。 -
如果要更新现有的端点,则
Id
属性对于要更新的每个端点都是必需的。 -
您的端点定义只能包含特定属性。有关列表,请参阅支持的属性。此外,属性名称必须为 50 个或更少的字符。属性值必须为 100 个或更少的字符。
示例客户细分文件
本节中的示例文件基于以下数据:
ChannelType | 地址 | Location.Country | Demographic.Platform | Demographic.Make | User.UserId |
---|---|---|---|---|---|
短信 | +16045550182 | CA | Android | LG | example-user-id-1 |
APNS | 1a2b3c4d5e6f7g8h9i0j1a2b3c4d5e6f | 美国 | iOS | Apple | example-user-id-2 |
john.stiles@example.com | 美国 | iOS | Apple | example-user-id-2 | |
GCM | 4d5e6f1a2b3c4d5e6f7g8h9i0j1a2b3c | CN | Android | example-user-id-3 | |
wang.xiulan@example.com | CN | Android | OnePlus | example-user-id-3 |
此表中的每一行代表一个端点。请注意,用户 ID example-user-id-2
和 example-user-id-3
将分别分配给两个端点。
例 包含端点定义的文件
导入客户细分
将客户细分导入 Amazon Pinpoint 有两种办法:一是直接从计算机上传文件,二是导入存储在 Amazon Simple Storage Service(Amazon S3)存储桶中的文件。
建议您从计算机上传文件,当计算机上已有客户数据时尤其要这样做。但是,您一次只能导入 10 个文件,并且只能上传小于 1 GB 的文件。
如果您需要一次导入 10 个以上的文件,或者需要上传大于 1 GB 的文件,则应从 Amazon S3 导入文件。如果您已经具有将客户数据文件发送到 Amazon S3 以进行存储的流程,则 Amazon S3 导入选项也很有用。
此部分包含使用这两种方法导入客户细分的过程。
您可以通过直接从计算机最多上传 10 个文件来创建客户细分。上传的文件可以采用 CSV 或 JSON 格式。您可以上传采用这两种格式的任意组合的文件。例如,您可以上传一个 JSON 文件和三个 CSV 文件。
导入客户细分
打开 Amazon Pinpoint 控制台,网址为:https://console.aws.amazon.com/pinpoint/
。 -
在所有项目页面上,选择要将客户细分添加到的项目。
-
在导航窗格中,选择客户细分。
-
选择创建客户细分。
-
在创建客户细分下,选择导入客户细分。
-
在导入方法下,选择从计算机上传文件。
-
在要导入的文件下,选择选择文件。选择要导入的一个或多个文件。
注意
您也可以直接将文件从计算机的文件资源管理器拖放到将文件拖放到此处区域。
-
当您将文件上传到 Amazon Pinpoint 时,必须为每个导入的文件提供一个客户细分名称。在客户细分名称下,输入要导入的每个文件的客户细分名称。
默认情况下,Amazon Pinpoint 提供一个客户细分名称,该名称就是导入的文件的名称,但不带文件扩展名。您可以将这些默认值更改为任何名称。
注意
您可以对多个客户细分使用相同名称。如果您这样做,Amazon Pinpoint 会为每个文件创建不同的客户细分,并为每个文件分配唯一 ID。对于导入的每个文件,创建日期也略有不同。您可以使用这些因素来区分同名的客户细分。
-
完成后,选择创建客户细分。
在使用此过程导入客户细分之前,您必须先创建一个 Amazon S3 存储桶并将您的文件上传到该存储桶。您可以将不同客户细分的文件组织在不同的文件夹中。当 Amazon Pinpoint 导入一个客户细分的端点或用户 ID 时,它将包括所有文件夹和子文件夹下属于您指定的 Amazon S3 位置的文件。
有关创建存储桶和上传对象的介绍,请参阅《Amazon Simple Storage Service 用户指南》中的什么是 Amazon S3?
Amazon Pinpoint 只能为每个客户细分导入一种文件格式(CSV 或 JSON),因此您指定的 Amazon S3 路径应只包含单一类型的文件。
导入客户细分
打开 Amazon Pinpoint 控制台,网址为:https://console.aws.amazon.com/pinpoint/
。 -
在所有项目页面上,选择要将客户细分添加到的项目。
-
在导航窗格中,选择客户细分。
-
选择创建客户细分。
-
在创建客户细分下,选择导入客户细分。
-
对于客户细分名称,输入客户细分的名称。
-
对于 Amazon S3 URL,输入包含您的客户细分文件的 Amazon S3 存储桶的位置。此存储桶的地址必须采用以下格式:
s3://
bucket-name
/folder-name
Amazon Pinpoint 从您指定的路径以及该路径中的任意子文件夹导入文件。
-
对于 IAM 角色,请完成下列步骤之一:
-
如果您想让 Amazon Pinpoint 创建一个角色,以允许它从 Amazon S3 存储桶读取,则选择自动创建角色。然后,对于 IAM 角色,为您创建的角色输入一个名称。
-
如果您已创建允许 Amazon Pinpoint 从 Amazon S3 存储桶读取的 IAM 角色,则选择选择现有角色。然后,对于 IAM 角色,请选择一个包含相应权限的角色。
如果您要自己创建 IAM 角色,请参阅《Amazon Pinpoint 开发者指南》中的用于导入端点或客户细分的 IAM 角色。创建角色之后,在 Amazon Pinpoint 控制台中指定它。
-
-
在您要导入哪种文件下,选择 JavaScript 对象表示法 (JSON) 或逗号分隔值 (CSV),具体取决于您上传到 Amazon S3 的文件的格式。
-
选择创建客户细分。
支持的属性
本节中的表列出并描述了您可以在导入到 Amazon Pinpoint 的端点定义中指定的属性。如果您通过使用 CSV 文件导入客户细分,则文件中的标头应该与属性列中显示的名称匹配。
对于 JSON 文件,属性名称中的句点指示句点后的名称是嵌套在父对象中的对象,而父对象的名称就是句点之前的值。例如,包含 Demographic.Make
和 Demographic.Model
属性的 JSON 文件具有以下结构:
{
...
"Demographic": {
...
"Make":"Apple",
"Model":"iPhone"
...
}
...
}
完整 JSON 结构非常类似于《Amazon Pinpoint API 参考》中的示例端点请求。但是,但您导入客户细分时,并非端点请求架构中的所有属性都受支持,包括 EndpointStatus
和 EffectiveDate
。
要使一个自定义字段包含 CSV 文件中的多个值,您必须复制标头并为每个标头保留一个值。例如:
...,User.UserId, User.UserAttributes.new_multi_field,User.UserAttributes.new_multi_field
...,example-user-id-2,test10,test20
您可以将显示为
的属性名称替换为任意值。例如,如果要将用户的名和姓存储在名为 custom_attribute
FirstName
和 LastName
的属性中,则可以分别创建名为 User.UserAttributes.FirstName
和 User.UserAttributes.LastName
的自定义属性。属性名称最多可包含 50 个字符。属性值最多可包含 100 个字符。属性名称区分大小写。
在 JSON 中,自定义属性必须采用 "Attributes":{"Ride":["Bus"]}
格式。
属性 | 描述 | ||||||
---|---|---|---|---|---|---|---|
Address |
您发送到端点的消息或推送通知的唯一目标地址,例如电子邮件地址、电话号码或设备令牌。 注意如果端点地址是一个电话号码,则必须以 E.164 格式指定。有关 E.164 格式的更多信息,请参阅维基百科上的 E.164 |
||||||
Attributes. |
描述端点的自定义属性。创建客户细分时,您可以使用此类属性作为选择标准。您可以使用任意值替换 。 |
||||||
ChannelType |
向端点发送消息或推送通知时使用的渠道。例如:
|
||||||
Demographic.AppVersion |
与端点关联的应用程序的版本号。 | ||||||
Demographic.Locale |
端点的区域设置,格式如下:ISO 639-1 alpha-2en_US 是美国英语区域设置。 |
||||||
Demographic.Make |
端点设备的制造商,例如 apple 或 samsung 。 |
||||||
Demographic.Model |
端点设备的产品名称或型号,例如 iPhone 或 SM-G900F。 |
||||||
Demographic.ModelVersion |
端点设备的型号版本。 | ||||||
Demographic.Platform |
端点设备上的操作系统,例如 ios 或 android 。 |
||||||
Demographic.PlatformVersion |
端点设备上的操作系统版本。 | ||||||
Demographic.Timezone |
端点的时区,采用 tz 数据库America/Los_Angeles 表示太平洋时间(北美)。注意以下时区不再受支持,并且会自动重新映射到支持的时区。
|
||||||
EffectiveDate |
上次更新端点的日期和时间,采用 ISO 8601 格式2019-08-23T10:54:35.220Z 表示 UTC 2019 年 8 月 23 日 10:54 AM。 |
||||||
Id |
端点的唯一标识符。 | ||||||
Location.City |
端点所在的城市。 | ||||||
Location.Country |
两个字符的代码,采用 ISO 3166-1 alpha-2 格式US 表示美国。 |
||||||
Location.Latitude |
端点位置的纬度坐标,舍入到一位小数。 | ||||||
Location.Longitude |
端点位置的经度坐标,舍入到一位小数。 | ||||||
Location.PostalCode |
端点所在区域的邮政编码。 | ||||||
Location.Region |
端点所在区域的名称,例如,省/市/自治区。 | ||||||
Metrics. |
您的应用程序向 Amazon Pinpoint 报告的有关端点的自定义数值指标(例如,会话次数或购物车中剩余的商品数量),用于客户细分目的。您可以使用任意值替换 。这些自定义值只能为数字。由于它们是数字,所以 Amazon Pinpoint 可以对其执行算术运算,例如求平均值或求和。 |
||||||
OptOut |
指示用户是否选择不接收您的消息和推送通知。可接受的值为:ALL ,用户选择退出,不希望接收任何消息或推送通知;或 NONE ,用户未选择退出,希望接收所有消息和推送通知。 |
||||||
RequestId |
最近更新端点请求的唯一标识符。 | ||||||
User.UserAttributes. |
描述用户的自定义属性。您可以使用任意值替换 ,例如 FirstName 或 Age 。 |
||||||
User.UserId |
用户的唯一标识符。 |
您可以为每个项目中的端点和用户创建多达 250 个自定义属性。有关更多信息,请参阅《Amazon Pinpoint 开发者指南》中的 Amazon Pinpoint 限额。