Adobe Experience Platform Launch已經過品牌重塑,現在是Adobe Experience Platform中的一套資料收集技術。 因此,所有產品文件中出現了幾項術語變更。 如需術語變更的彙整參考資料,請參閱以下文件。
在標籤規則中,動作是在規則條件通過評估後所執行的動作。 動作型別由擴充功能提供,其效果完全由擴充功能作者定義。
例如,擴充功能可提供「顯示支援聊天」動作類型,其中可顯示支援聊天對話方塊,協助可能在結帳時遇到問題的使用者。
本文介紹如何在Adobe Experience Platform中定義Edge擴充功能的動作型別。
如果您正在開發 Web 擴充功能,請改為參閱 Web 擴充功能的動作類型指南。
本檔案也假設您熟悉程式庫模組,以及如何將這些模組整合在Edge擴充功能中。 如果需要相關說明,請先參閱程式庫模組格式化的概述文章,再返回閱讀本指南。
動作型別通常包含下列專案:
例如,將部分資料轉送至協力廠商端點的模組可能如下所示。
module.exports = (context) {
const { arc, utils } = context;
const { fetch } = utils;
const { event: { xdm } } = arc;
return fetch('http://someendpoint.com', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(xdm)
})
};
如果您想要讓使用者能夠設定端點,並允許端點輸入和持續存在模組內的設定物件,則物件看起來會像這樣。
{
"endpoint": "http://someendpoint.com"
}
若要運用於使用者定義的端點,您的模組必須變更至以下範例。
module.exports = (context) {
const { arc, utils } = context;
const { fetch } = utils;
const { event: { xdm } } = arc;
const { endpoint } = settings;
return fetch(endpoint, {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(xdm)
})
};
動作模組傳回的結果可能是任何項目。如果動作必須執行非同步工作,您可以傳回 Promise,這會在解析後傳回所需結果。
動作結果會儲存在 ruleStash
索引鍵中,可透過 context
參數 (context.arc.ruleStash
) 供所有模組使用。如需深入了解 ruleStash
,請參閱此處。