as

Settings
Sign out
Notifications
Alexa
亚马逊应用商店
AWS
文档
Support
Contact Us
My Cases
新手入门
设计和开发
应用发布
参考
支持

观看列表

观看列表

这些说明适用于在客户的观看列表中添加和删除内容。Fire TV可能会使用观看列表信息来更新客户的通用观看列表。

要发送的内容

对于每个触发器(参见“何时发送”),发送包含以下字段的事件。无需筛选您发送的数据或检查是否有重复数据。亚马逊会在必要时进行该操作。

字段名 必填项(是/否) 描述
Content ID(内容ID) 对应于通过目录集成提供给Fire TV的内容ID。
Date When Added(添加日期) 客户将条目添加到观看列表时的时间戳。
Internal Profile ID(内部个人资料ID) 经过混淆处理的Profile ID(个人资料ID),以便Fire TV将活动与正确的应用客户关联。

何时发送

  • 应用初次启动时和登录时。
  • 添加或删除客户观看列表中的项目时。此操作可以在设备外发生。
  • Fire TV的设备端服务要求刷新时。
  • 切换到新的个人资料时。

发送方式

要共享客户添加到观看列表的最新作品,请使用以下TypeScript代码:

已复制到剪贴板。

// 用户开始观看内容时生成的客户条目事件示例

const customerListEntry: ICustomerListEntry = new CustomerListEntryBuilder()
    .addedTimestampMs(Date.now())
    .contentId(
    new ContentIdBuilder()
        .id('string')
        .idNamespace(ContentIdNamespaces.NAMESPACE_CDF_ID)
        .build(),
    )
    .profileId(
    new ProfileIdBuilder()
        .id('myProfileId1')
        .idNamespace(ProfileIdNamespaces.NAMESPACE_APP_INTERNAL)
        .build(),
    )
    .build();

// 发送事件
ContentPersonalizationServer.reportNewCustomerListEntry(
    CustomerListType.WATCHLIST,
    customerListEntry,
);

发送客户的完整观看列表

以下TypeScript代码演示了如何在收到内容个性化数据服务的请求时发送客户的完整观看列表:

已复制到剪贴板。

const customerListEntriesHandler: ICustomerListEntriesHandler = {
    getAllCustomerListEntries: (
      listType: CustomerListType,
      customerListEntriesProvider: ICustomerListEntriesProvider,
    ) => {
        let listEntries: ICustomerListEntry[] = [];

        const customerListEntry1: ICustomerListEntry = new CustomerListEntryBuilder()
            .addedTimestampMs(Date.now())
            .contentId(
                new ContentIdBuilder()
                    .id('content1_CDF_ID')
                    .idNamespace(ContentIdNamespaces.NAMESPACE_CDF_ID)
                    .build(),
            )
            .profileId(
                new ProfileIdBuilder()
                .id('myProfileId')
                .idNamespace(ProfileIdNamespaces.NAMESPACE_APP_INTERNAL)
                .build(),
            )
            .build();
        listEntries.add(customerListEntry1);

        const customerListEntry2: ICustomerListEntry = new CustomerListEntryBuilder()
            .addedTimestampMs(Date.now())
            .contentId(
                new ContentIdBuilder()
                    .id('content2_CDF_ID')
                    .idNamespace(ContentIdNamespaces.NAMESPACE_CDF_ID)
                    .build(),
            )
            .profileId(
                new ProfileIdBuilder()
                .id('myProfileId')
                .idNamespace(ProfileIdNamespaces.NAMESPACE_APP_INTERNAL)
                .build(),
            )
            .build();
        listEntries.add(customerListEntry2);

        customerListEntriesProvider.addCustomerListChunk(listType,listEntries);
        customerListEntriesProvider.commit();
    }
};

// 务必要在HeadlessService的onStart函数中设置客户列表条目处理程序
ContentPersonalizationServer.setCustomerListEntriesHandler(
        customerListEntriesHandler,
);

Last updated: 2025年9月30日