电子邮件一键取消订阅支持

小费

Google 已声明,在电子邮件中包含取消订阅链接的发件人必须在 2024 年 6 月 1 日之前在所有商业和促销电子邮件中实施一键取消订阅。

有关更多最新信息,请参阅 Google 的一键取消订阅常见问题

重要提示

从 2024 年 10 月 10 日开始,取消订阅链接将在创建链接六个月后过期,并且不再有效。

电子邮件提供商和基础协议支持让电子邮件收件人能够使用“一键”取消订阅电子邮件,而无需离开电子邮件应用程序。 例如,Google 会在电子邮件用户界面顶部显示取消订阅链接:

选择取消订阅链接

选择后,将显示一个要求用户确认取消订阅的对话。 如果选择取消订阅按钮,用户将在不访问网页的情况下取消订阅电子邮件:

显示您取消订阅但不打开网页的屏幕截图

为了支持此功能,电子邮件发件人在电子邮件标题中提供信息,告知电子邮件客户端如何自动取消订阅。 接收电子邮件客户端可以使用此信息来向用户显示取消订阅不需要的邮件的简易方法。

2023 年 10 月,GoogleYahoo 宣布将要求电子邮件发件人开始支持一键取消订阅,并在所有促销电子邮件的消息正文中包含可见的取消订阅链接。 Google 明确要求每天向 Gmail 帐户发送 5,000 封以上电子邮件的发件人遵守这一规定。

电子邮件提供商目前利用这些信息来确定电子邮件发件人的垃圾邮件和信誉分数,即使这不是一项严格要求。

在 Customer Insights - Journeys 中启用一键取消订阅

Customer Insights - Journeys 支持在所有商业电子邮件、出站营销和实时旅程中自动包含一键取消订阅标题,而无需更改任何现有电子邮件或旅程。

要启用一键取消订阅:

  1. 转到设置>其他设置>功能开关
  2. 一键取消订阅切换设置为
  3. 选择页面右上角的保存

重要提示

要利用一键取消订阅功能,您需要升级到 2023 年 12 月版本或更高版本。

功能切换在产品中生效最长可能需要 30 分钟时间。 在功能生效后发送的任何电子邮件都将自动包含支持一键取消订阅所需的标题。

一般功能

启用一键取消订阅功能后,产品将在电子邮件中自动包含两个附加标题:

  1. List-Unsubscribe
  2. List-Unsubscribe-Post

这些标题遵循 IETF RFC 中提供的一键取消订阅指南,并支持电子邮件客户端向用户提供轻松的取消订阅选项。

一键取消订阅如何工作?

同意管理的概念在产品的实时旅程和出站营销区域之间有所不同,因此,在系统中执行的一键取消订阅操作不同。 我们来了解一下如何在实时旅程和出站营销中处理一键取消订阅。

实时旅程中的一键取消订阅

备注

实时旅程具有多品牌同意功能,您必须启用此功能,然后才能使用一键取消订阅功能。 对于出站营销,多品牌同意功能是不相关的,不会产生任何影响。

在实时旅程中,同意在联系人级别(即电子邮件地址、电话号码或自定义渠道地址)收集、管理和强制执行。 每封电子邮件只能出于一个目的和针对一个(可选)主题发送。 从实时旅程发送的任何商业电子邮件都将包含一键取消订阅标题。

如果电子邮件只选择了商业目的,那么收件人在电子邮件客户端中选择了一键取消订阅链接后,应用即会将其标记为出于特定目的选择退出。 这样可确保将来不会向该用户发送同一目的的任何电子邮件。

如果电子邮件针对特定主题发送,那么收件人在电子邮件客户端中选择了一键取消订阅链接后,应用即会将其标记为针对特定主题选择退出。 这样可确保将来不会向该用户发送同一主题的任何电子邮件。

任何发送给主题父目的的电子邮件都会保持未阻止状态,从而确保仅选择了该目的或来自同一目的下的另一主题的其他电子邮件仍发送给该用户。

使用外部链接类型合规性配置文件的商业电子邮件也会自动包含一键取消订阅标题。 当收件人选择一键取消订阅链接时,他们将退出发送电子邮件出于的目的或针对的主题(如上所述)。

如果在通过 Customer Insights - Journeys 发送的电子邮件中使用了基于订阅中心的合规性配置文件,并且收件人选择一键取消订阅链接,将执行以下两项操作:

  1. 收件人的电子邮件地址设置为选择退出发送电子邮件的出于的目的或主题。
  2. 收件人的联系人记录的批量电子邮件属性设置为不允许(即以后不会向此联系人发送商业电子邮件)。

当由于收件人在电子邮件客户端选择一键取消订阅链接而更新联系点同意 (CPC) 记录时,系统会使用以下值说明更新的来源和原因:

  • 来源:“Email - list-unsubscribe”
  • 原因:“Opt-out - One-click unsubscribe”

出境市场营销

如果用户打开从出站营销旅程发送的商业电子邮件并在电子邮件客户端选择呈现给他们的一键取消订阅链接,他们的联系人记录的批量电子邮件字段将设置为不允许(即以后不会向此联系人发送商业电子邮件)。

重要提示

如果您在 Customer Insights – Journeys 之外维护同意数据存储,您还需要考虑如何同步从一键取消订阅到外部系统的同意更改。

重要提示

如果您针对多个业务线使用出站营销旅程和单独管理同意,可能需要更新实施,才能正确响应一键取消订阅请求。 请阅读下一节,了解如何使用自定义处理程序根据业务需要管理此流程。

在出站营销旅程中,一键取消订阅会将联系人的批量电子邮件字段设置为不允许,以阻止在将来向该联系人发送任何商业电子邮件。 一键取消订阅出站营销不会更新订阅列表或自定义同意字段。 可能需要执行其他工作来处理订阅列表或自定义内容字段。

解决出站营销中的一键取消订阅问题

出站营销中一键取消订阅功能的问题通常与同步联系人更新相关的自定义有关。

出站营销联系人更新流关系图。

要解决出站营销中的一键取消订阅问题:

  1. 临时启用插件跟踪日志。 启用插件跟踪日志可能会对性能产生负面影响,因此请确保在完成后禁用它们。
  2. 触发一键取消订阅流(在电子邮件中选择取消订阅按钮根据一键取消订阅标题创建 POST 请求)。
  3. 检查日志。 如果存在与插件相关的错误,应该有一个插件名称和插件崩溃的原因。 跟进插件提供商或禁用插件。 不要禁用 Microsoft 插件(以“Microsoft.Dynamics.Cxp.Forms”开头的任何插件名称。)。
  4. 如果在联系人更新过程中有日志指示权限失败,请确保 Marketing Service user extensible role 有权限执行此类操作。

创建自定义工作流来管理一键取消订阅流程

单独管理不同品牌的同意并希望更新联系人的不同属性(不是批量电子邮件属性)的出站营销用户,可以使用以下步骤创建和注册自定义工作流来自行管理此流程。

  1. 打开页面顶部的设置菜单 “设置”菜单图标。,选择高级设置

  2. 高级设置区域将在新的浏览器选项卡中打开。请注意,此区域使用页面顶部的水平导航器而不是侧边导航器。 导航到设置>流程中心>流程

  3. 要创建一个自定义取消订阅流程,选择 +新建图标。 添加流程名称。 对于类别,选择操作,对于实体,选择无(全局)

    创建取消订阅流程。

  4. 将打开一个新窗口以添加流程详细信息。 创建名为 contactid 的必需输入参数。 确保它是 EntityReference 类型,并指向联系人实体。

    以 contactid 类型创建必需的输入参数。

  5. 选择窗口底部的添加步骤下拉列表,然后选择更新记录。 输入取消订阅时联系人应该发生的更改的说明,然后选择设置属性。 将打开一个新窗口,您可以在其中设置联系人首选项,它会在客户使用一键取消订阅按钮时改变。 例如,在下图中,电话传真设置为一键取消订阅时不允许

    说明取消订阅功能时发生的更改。

  6. 选择保存并关闭。 然后,在主流程窗口中,选择保存,然后在顶部工具栏中选择激活开始流程。

  7. 转到 Maker Portal,选择适用的环境。

    选择环境。

  8. 选择设置定义实体,搜索出站营销一键取消订阅

    选择一键取消订阅的设置定义。

  9. 编辑此值,确保它指向您之前在步骤 2 中创建的自定义工作流的唯 一名称。 例如,在此例中,工作流的名称是 new_msdyncrm_custom_unsubscribe。 保存更改。

    添加属性值。

  10. 测试您的处理程序在执行一键取消订阅操作时是否执行。 要对此进行测试:

    1. 临时启用插件跟踪日志。 启用插件跟踪日志可能会对性能产生负面影响,因此请确保在完成后禁用它们。
    2. 打开任何 Dataverse 页面上的开发人员控制台 (Ctrl+Shift+I)。
    3. 将以下片段粘贴到控制台中(根据需要进行调整);它将执行取消订阅操作。
    4. 确保正确执行。 您应该知道,在实际场景中,市场营销服务将执行此操作,因此,如果您正在访问任何实体,请确保 Marketing Service user extensible role 具有此类权限。
var Sdk = window.Sdk || {};

Sdk.OneClickUnsubscribe = function(contactid) {
    this.contactid = contactid;
};

Sdk.OneClickUnsubscribe.prototype.getMetadata = function() {
    return {
        boundParameter: null,
        parameterTypes: {
            "contactid": {
                "typeName": "mscrm.crmbaseentity",
                "structuralProperty": 5
            }
        },
        operationType: 0, // This is an action. Use '1' for functions and '2' for CRUD
        operationName: "new_msdyncrm_custom_unsubscribe"
    };
};

// replace c60e0283-5bf2-e311-945f-6c3be5a8dd64 with actual valid contact id
var contactId = {
    "contactid@odata.bind": "/contacts(c60e0283-5bf2-e311-945f-6c3be5a8dd64)"
}

// Create variable calculateRollupFieldRequest and pass those variables created above
var request = new Sdk.OneClickUnsubscribe(contactId);

// Use the request object to execute the function
Xrm.WebApi.online.execute(request)
.then(function(response) {
    if (response.ok) { // If a response was received.
        console.log("Status: %s %s", response.status, response.statusText);

        // Use response.json() to access the content of the response body.
        return response.json();
    }
})
.then(function(responseBody) { 
    //Do something with the response
    console.log("The response is: %s", responseBody);
})

常见问题解答

系统会在哪些类型的电子邮件中包含一键取消订阅标题?

一键取消订阅标题会包含在具有商业消息意图(如果从出站营销旅程发送)或具有商业目的类型(如果从实时旅程发送)的电子邮件中。

事务电子邮件中不会包含一键取消订阅标题。

如果向其发送电子邮件的联系人被删除,并且收件人选择了一键取消订阅链接,会发生什么情况?

对于使用出站营销发送的电子邮件,系统不会执行任何操作,因为将无法找到联系人记录。

对于使用实时旅程发送的电子邮件,系统将从发送电子邮件所基于的目的或主题中选出收件人的电子邮件地址。

如果电子邮件在发送后更新,并且现在与新目的或主题相关联,会发生什么情况。 如果收件人选择一键取消订阅链接,系统将执行什么操作?

收件人的电子邮件地址将选择退出发送电子邮件时与电子邮件关联的目的或主题。

如果电子邮件设置了外部链接类型的合规性配置文件,一键取消订阅功能如何工作? 是否会要求客户将 POST 支持添加到外部首选项中心?

不包括。 对于所有合规性配置文件类型,产品已设计为包括系统生成的一键取消订阅 URL,该 URL 设计为处理 POST 请求。 目前您不需要修改自己的首选项中心。

如果是发送到订阅列表的出站营销电子邮件,系统如何管理一键取消订阅? 单击取消订阅链接是否会将收件人从订阅列表中删除?

不包括。 对于任何出站营销旅程,只有收件人的联系人记录上的批量电子邮件字段会设置为不允许

我打开了此功能切换。 我是否还需要在电子邮件中执行其他操作来启用一键取消订阅?

不包括。

一键取消订阅是否适用于已发送给我的客户且已进入他们收件箱的电子邮件?

不包括。 我们无法将一键标题逆向应用于已发送给客户的电子邮件。

为什么即使我打开了功能切换,Gmail 也不显示一键取消订阅链接? 我如何知道此功能是否在正常工作?

Gmail 在电子邮件客户端中显示一键取消订阅链接之前会考虑几个因素,即使电子邮件中存在一键取消订阅标题。 以下是来自 Google 的一个社区线索,对此问题进行了讨论:List-Unsubscribe 标题未提供取消订阅选项

如果您已打开功能切换,以后从系统发送的所有电子邮件均会包含一键取消订阅标题。 只要电子邮件包含符合规范的标题,您就可以确信已经按照 Google 的指南操作。 要对此进行验证,可以下载邮件,或在消息的菜单项中选择“显示原始内容”来验证标题是否显示。