整合Platform Web SDK以處理客戶同意資料

Adobe Experience Platform Web SDK可讓您擷取同意管理平台(CMP)產生的客戶同意訊號,並在同意變更事件發生時傳送給Adobe Experience Platform。

SDK未與任何現成的CMP介面。 您可以自行決定如何將SDK整合至您的網站、接聽CMP中的同意變更,以及呼叫適當的命令。 本檔案提供如何將CMP與Platform Web SDK整合的一般指引。

先決條件 prerequisites

本教學課程假設您已決定如何在CMP中產生同意資料,並建立資料集,其中包含符合Adobe標準或IAB透明與同意架構(TCF) 2.0標準的同意欄位。 如果您尚未建立此資料集,請先參閱下列教學課程,再返回閱讀本指南:

本指南會遵循在UI中使用標籤擴充功能設定SDK的工作流程。 如果您不想使用擴充功能,且想要直接在網站上內嵌獨立SDK版本,請參閱下列檔案,而非本指南:

本指南中的安裝步驟需要您實際瞭解標籤擴充功能及其在Web應用程式中的安裝方式。 如需詳細資訊,請參閱下列檔案:

設定資料串流

為了讓SDK傳送資料給Experience Platform,您必須先設定資料流。 在資料收集UI或Experience Platform UI中,選取左側導覽中的​ 資料串流

建立新資料流或選取要編輯的現有資料流後,請選取​ Adobe Experience Platform ​旁的切換按鈕。 接下來,使用下列值完成表單。

資料流欄位
沙箱
平台沙箱的名稱,其中包含設定資料串流所需的串流連線和資料集。
事件資料集
您打算使用SDK將事件資料傳送至的XDM ExperienceEvent資料集。 雖然您需要提供事件資料集才能建立Platform資料流,但請注意,下游執行工作流程不會遵循透過事件傳送的同意資料。
輪廓資料集
已啟用Profile且含有您建立earter之客戶同意欄位的資料集。

完成時,選取畫面底部的​ 儲存,然後繼續依照其他提示完成設定。

安裝及設定平台Web SDK

依照上節所述建立資料流後,您必須設定Platform Web SDK擴充功能,才能最終在網站上部署。 如果您的標籤屬性上未安裝SDK擴充功能,請在左側導覽中選取​ 擴充功能,然後選取​ 目錄 ​索引標籤。 然後,在可用擴充功能清單中,選取Platform SDK擴充功能底下的​ 安裝

設定SDK時,在「Edge設定」下,選取您在上一步中建立的資料流。

選取​ 儲存 ​以安裝擴充功能。

建立資料元素以設定預設同意

安裝SDK擴充功能後,您就可以選擇建立資料元素,代表使用者的預設資料收集同意值(collect.val)。 如果您想要根據使用者有不同的預設值,例如pending適用於歐盟使用者,而in適用於北美使用者,則此功能相當實用。

在此使用案例中,您可以實作下列專案,以根據使用者地區設定預設同意:

  1. 判斷使用者在網頁伺服器上的區域。
  2. 在網頁上的script標籤(內嵌程式碼)之前,轉譯根據使用者地區設定adobeDefaultConsent變數的個別script標籤。
  3. 設定使用adobeDefaultConsent JavaScript變數的資料元素,並使用此資料元素作為使用者的預設同意值。

如果使用者的區域由CMP決定,您可以改用以下步驟:

  1. 處理頁面上的「CMP已載入」事件。
  2. 在事件處理常式中,根據使用者的地區設定adobeDefaultConsent變數,然後使用JavaScript載入標籤程式庫指令碼。
  3. 設定使用adobeDefaultConsent JavaScript變數的資料元素,並使用此資料元素作為使用者的預設同意值。

若要在UI中建立資料元素,請在左側導覽中選取​ 資料元素,然後選取​ 新增資料元素 ​以導覽至資料元素建立對話方塊。

您必須從此處,根據adobeDefaultConsent建立JavaScript變數資料元素。 完成時選取​ 儲存

建立資料元素後,導覽回Web SDK擴充功能設定頁面。 在隱私權區段下,選取​ 資料元素提供的,並使用提供的對話方塊來選取您先前建立的預設同意資料元素。

在您的網站上部署擴充功能

完成擴充功能設定後,即可將其整合至您的網站。 請參閱標籤檔案中的發佈指南,以取得有關如何部署已更新程式庫組建的詳細資訊。

發出同意變更命令 commands

將SDK擴充功能整合至您的網站後,您就可以開始使用Platform Web SDK setConsent命令將同意資料傳送至Platform。

setConsent命令會執行兩個動作:

  1. 直接在設定檔存放區中更新使用者的設定檔屬性。 這不會將任何資料傳送至Data Lake。
  2. 建立記錄同意變更事件之時間戳記帳戶的體驗事件。 此資料會直接傳送至Data Lake,並可用來追蹤同意偏好設定在一段時間內的變更。

何時呼叫setConsent

在兩種情況下,應該在您的網站上呼叫setConsent

  1. 同意載入頁面時(換言之,每次載入頁面時)
  2. 做為CMP連結或事件監聽器的一部分,可偵測同意設定中的變更

setConsent語法

setConsent命令需要包含單一陣列型別屬性的裝載物件: consentconsent陣列必須至少包含一個物件,提供Adobe標準所需的同意欄位。

下列範例setConsent呼叫中顯示Adobe標準的必要同意欄位:

alloy("setConsent", {
  consent: [{
    standard: "Adobe",
    version: "2.0",
    value: {
      collect: {
        val: "y"
      },
      share: {
        val: "y"
      },
      personalize: {
        content: {
          val: "y"
        }
      },
      metadata: {
        time: "YYYY-10-12T15:52:25+00:00"
      }
    }
  }]
});
裝載屬性
說明
standard
使用的同意標準。 對於Adobe標準,此值必須設定為Adobe
version
standard下表示的同意標準的版本號碼。 此值必須設定為2.0,以進行Adobe標準的同意處理。
value
客戶更新的同意資訊,此資訊會提供為XDM物件,且符合已啟用設定檔資料集同意欄位的結構。
NOTE
如果您使用其他同意標準搭配Adobe (例如IAB TCF),您可以為每個標準新增其他物件至consent陣列。 每個物件都必須針對它們所代表的同意標準,包含適當的standardversionvalue值。

以下JavaScript提供處理網站上同意偏好設定變更的函式範例,可在事件監聽器或CMP勾點中作為回呼:

var setConsent = function () {

  // Retrieve the current consent data.
  var categories = getConsentData();

  // If the script is running on a consent change, generate a new timestamp.
  // If the script is running on page load, set the timestamp to when the consent values last changed.
  var now = new Date();
  var collectedAt = consentChanged ? now.toISOString() : categories.collectedAt;

  //  Map the consent values and timestamp to XDM
  var consentXDM = {
    collect: {
      val: categories.collect !== -1 ? "y" : "n"
    },
    personalize: {
      content: {
        val: categories.personalizeContent !== -1 ? "y" : "n"
      }
    },
    share: {
      val: categories.share !== -1 ? "y" : "n"
    },
    metadata: {
      time: collectedAt
    }
  };

  // Pass the XDM object to the Platform Web SDK
  alloy("setConsent", {
    consent: [{
      standard: "Adobe",
      version: "2.0",
      value: consentXDM
    }]
  });
});

處理SDK回應

所有Platform SDK命令都會傳回表示呼叫成功或失敗的Promise。 然後,您可以將這些回應用於其他邏輯,例如向客戶顯示確認訊息。 如需詳細資訊,請參閱命令回應

當您成功使用SDK進行setConsent呼叫後,便可以在Platform UI中使用設定檔檢視器,驗證資料是否登入設定檔存放區。 如需詳細資訊,請參閱依身分瀏覽設定檔的相關章節。

後續步驟

依照本指南,您已設定Platform Web SDK擴充功能將同意資料傳送至Experience Platform。 如需測試實作的指引,請參閱您正在實作的同意標準檔案:

recommendation-more-help
5741548a-2e07-44b3-9157-9c181502d0c5