本頁說明如何從網頁 SDK 版本 2 升級至網頁 SDK 版本 3。如果是首次安裝網頁 SDK,請參閱 網頁 SDK 第 3 版指南。
升級至網頁 SDK 第 3 版
首先,請在原始碼中找出以下指令碼:
<script type="module" src="https://websdk.ujet.co/v2/loader.js"></script>
然後換成下列內容:
<script type="module" src="https://{your_ccaas_host}/web-sdk/v3/widget.js"></script>
重要差異
本節將說明網頁版 SDK 第 2 版和第 3 版的主要差異。
初始化
v2
const ccas = new UJET({
"companyId": "{companyId}",
"host": "https://{your_ccaas_host}",
"authenticate": getAuthToken
})
v3
var ccas = new UJET({
"companyId": "{companyId}",
"host": "https://{your_ccaas_host}",
"authenticate": getAuthToken
})
// v3 has a mount point
// ccaas.mount(HTMLElement | string)
ccaas.mount('#ccaas-widget')
選項
啟動網頁 SDK 時,請指定選項。本節說明網頁 SDK 第 2 版和第 3 版的差異。
v2
不適用於 v2。
v3
在第 3 版中,初始化選項與無標題 SDK 相同。
interface ClientOption {
companyId: string;
authenticate: () => Promise<TokenResponse>;
tenant?: string;
host?: string;
lang?: string;
bridge?: string;
cobrowse?: {
enabled: boolean;
template?: string;
messages?: CobrowseMessages;
api?: string;
license?: string;
trustedOrigins?: string[];
capabilities?: string[];
registration?: boolean;
redactedViews?: string[];
unredactedViews?: string[];
};
}
您可以使用 ccaas.config() 方法設定其他選項:
ccaas.config({
disableAttachment: true
})
可用的設定選項:
interface ConfigOptions {
accent?: AccentColor;
logo?: string;
menuKey?: string;
ticketId?: string;
preferredChannel?: string;
disableAttachment?: boolean;
customData?: string | Record<string, any>;
messages?: Record<string, unknown>;
reCaptchaSiteKey?: string;
}
方法
在第 2 版中,載入器提供幾種額外方法,例如:
ccaas.createCobrowseCode()
ccaas.fetchWaitTimes({id: 123})
在第 3 版中,小工具 UI 使用無標題用戶端,您可以呼叫 Headless SDK 支援的所有方法。
const client = ccaas.client
client.getCompany()
client.loadOngoingChat()
詳情請參閱無標題網頁 SDK 指南。
活動
在第 2 版中,您可以透過下列方式監聽事件:
ccaas.on('chat:update', (chat) => {
console.log(chat)
})
在第 3 版中,您可以使用無頭用戶端監聽事件:
const client = ccaas.client
client.on('chat.updated', (chat) => {
console.log(chat)
})
如要瞭解更多事件,請參閱無標題網頁 SDK 指南。
自訂主題
Web SDK v3 採用更新的主題自訂方式。詳情請參閱「主題自訂」。