在 Web 會談中管理使用者身分資訊
您的 watsonx Assistant 費用是根據每月唯一作用中使用者 (MAU) 的數目。
如果您在會話開始時沒有傳遞使用者標識符,則網路聊天會為您建立一個標識符。 這會建立含有所產生匿名 ID 的第一方 Cookie。 Cookie 會保持作用 45 天。 如果相同使用者在當月稍後時間回到您的網站,並再次與您的助理會談,則 Web 會談整合可辨識該使用者。 相同的匿名使用者在一個月內多次與助理互動時,只會向您收取一次費用。
如果您想要執行需要知道提交輸入的使用者的任務,則必須將使用者 ID 傳遞給網路聊天整合。 選擇人類無法識別的 ID。 例如,請勿使用某人的電子郵件地址作為使用者 ID。
此外,刪除請求被遺忘的人創建的任何資料的能力需要 customer_id 與使用者輸入相關聯。 定義了 user_id 時,該產品可以將其重複使用於傳遞 customer_id 參數。 (如需刪除使用者資料的相關資訊,請參閱 標示及刪除資料。)
因為您提交的 user_id 值包含在每個訊息要求中新增至 customer_id 標頭的 X-Watson-Metadata 值內,所以 user_id 語法必須符合 RFC 7230 中所定義標頭欄位的需求。
若要支援這些基於使用者的功能,請新增 updateUserID() 方法,然後將其貼到網頁中。
如果啟用安全性,則可以在 JSON Web 令牌中設定使用者 ID。 如需相關資訊,請參閱 在 Web 會談中鑑別使用者。
在下列範例中,將使用者 ID L12345 新增至 Script。
<script>
window.watsonAssistantChatOptions = {
integrationID: 'YOUR_INTEGRATION_ID',
region: 'YOUR_REGION',
serviceInstanceID: 'YOUR_SERVICE_INSTANCE',
onLoad: function(instance) {
instance.updateUserID('L12345');
instance.render();
}
};
setTimeout(function(){
const t=document.createElement('script');
t.src='https://web-chat.global.assistant.dev.watson.appdomain.cloud/versions/' +
(window.watsonAssistantChatOptions.clientVersion || 'latest') +
'/WatsonAssistantChatEntry.js';
document.head.appendChild(t);
});
</script>
Apple 裝置
在 Apple 裝置上,Intelligent Tracking Prevention 特性會在 7 天之後自動刪除任何用戶端 Cookie。 這表示如果匿名客戶存取您的網站,然後在兩週後再次造訪,則會將這兩次造訪視為兩個不同的 MAU。
若要避免此問題,請在 Web 應用程式中使用伺服器端第一方 Cookie。 例如,當匿名使用者第一次造訪您的網站時,您可以產生唯一使用者 ID,並以您選擇的任何到期日將它儲存在伺服器端 Cookie 中。 然後,您的程式碼可以使用 updateUserID() 實例方法來設定使用者 ID。 然後,您可以使用相同的 Cookie 來設定此客戶在未來任何造訪時的相同使用者 ID,直到到期為止。
其他資訊
如需計費的相關資訊,請參閱 說明的使用者型方案。
如需每個方案的 MAU 限制相關資訊,請參閱 定價。
如需刪除使用者資料的相關資訊,請參閱 標示及刪除資料。