Studio 基本概念

指令碼是 CXone 在聯絡中心工作的重要組成部分。它們定義了與您的組織聯絡的人如何接觸到可以幫助他們的客服專員。指令碼指定了在互動過程中和互動結束後資料的處理方式。這包括以螢幕彈出畫面Closed 可配置的彈出式視窗,包含有關聯絡人的資訊。它在某個事件後出現在客服專員的螢幕上,通常在客服專員連接到某個聯絡人時。的形式為客服專員顯示資料、從聯絡人處擷取資料以及將資料儲存到資料庫中。

您的聯絡中心可能有許多不同的指令碼,也可能只有幾個。您需要的指令碼的確切數量和種類取決於貴組織使用的應用程式和功能,以及您處理的互動類型。指令碼的範圍可以從非常簡單到相當複雜。簡單的指令碼不需要太多的指令碼或編碼知識。複雜的指令碼可能需要自訂指令碼代碼。

本頁概述了有關指令碼及其工作方式的基本資訊和概念。本頁還介紹了指令碼與聯絡中心全域中的 CXone 相適應的方式。

國際書商 Classics, Inc. 正在他們的聯絡中心建立 CXone。Classics, Inc. 的聯絡中心管理員 Christopher Robin 與 Classics Studio 的指令碼編寫者 Eeyore Thistleflower 合作規劃他們需要建立的指令碼。

Classics 聯絡中心從他們的網站接收呼入電話、電郵和聊天訊息。他們還撥打外呼電話並傳送電郵。此外,Christopher 了解到公司計劃開始向客戶傳送 SMS 訊息以通知客戶即將到來的銷售和促銷活動。基於此,Eeyore 確定他們需要呼入電話、電郵、聊天以及外呼電話、電郵和 SMS 的指令碼。

接下來,Christopher 和 Eeyore 要確定每個指令碼需要的資訊。傳入指令碼需要從聯絡人那裡收集某些資料。例如,對於聊天互動,指令碼可以提示聯絡人提供姓名和所需幫助類型等詳細資訊。這些資訊可以傳遞給客服專員。有些資訊,如聯絡人姓名、關注問題和解決方案,可以傳遞給 Classics 使用的 CRMClosed 管理聯絡人、銷售資訊、支援詳情和案例歷史的第三方系統。 系統。

規劃指令碼後,Eeyore 開始開發和測試指令碼。

CXone 術語

以下清單定義了編寫指令碼時必須了解的一些 CXone 術語:

  • ACD 技能ACD 技能用於自動將聯絡人路由至最有可能提供幫助的客服專員。他們可以使用任何標準建立,例如部門、團隊、專業或訓練有素的能力。他們還可以使用位置、語言等其他因素。ACD 技能將指派給客服專員。Studio 指令碼使用 ACD 技能執行自動路由。
  • 通道:通道是與聯絡人溝通的一種方式,如電話、電郵、SMS 或文本訊息、聊天、語音郵件等。在 Studio 中,每種通道都有自己的指令碼媒體類型。
  • 聯絡人:與貴組織互動的人稱為聯絡人。聯絡人有與之關聯的 ID 編號,用於跟蹤整個 平台 中的互動。在 Studio 線上說明中,聯絡也可以指 CXone 中引用互動相關資料的項目。
  • 互動:這是聯絡人和客服專員之間的完整對話。互動可以是一次電話通話,也可以是長達數小時的聊天對話,還可以是包含多條來回訊息的電郵執行緒。
  • 媒體類型媒體類型是指令碼工作的通道類型,如電話、聊天、電郵等。建立指令碼時,您需要為特定媒體類型建立指令碼。
  • 聯絡點:聯絡點 (POC) 是進入 CXone 平台 的入口點。建立 POC CXone,以定義通道的特定實例。為每個 POC 指派一個 ACD 技能和一個 Studio 指令碼。指派給 POC 的指令碼必須定義在該通道上開始互動後聯絡人的流程。

指令碼和 CXone

如果沒有指令碼,CXone 無法運行。貴組織使用 CXone 的每種溝通方法都需要一個指令碼。指令碼定義了貴組織的客服專員與他們交談的人之間互動期間和之後發生的事情。

下圖概述了 CXone 及其在組織大局中的位置。它還顯示了指令碼如何與 CXone 的每個部分以及 CXone 以外的應用程式和系統互動。

該圖有幾處值得注意:

CXoneStudio 中的聯絡人

術語聯絡代表 CXone 中的兩個重要概念:

  • 貴組織中的客服專員與哪些人有互動。例如,客戶、顧客、網站訪客等。
  • CXone 平台 中與互動相關的應用資料的項目。每個聯絡人都有一個與之關聯的 ID 編號。此 ID 可追蹤跨 平台 的互動。

Tigger Tigerson 對自己的訂單有疑問,於是致電 Classics, Inc.在 CXone 平台中,Tigger 是呼入聯絡人,因為他是以客戶身份致電公司的。他的呼叫進入 CXone 平台,聯絡 ID 為 7892349239。此聯絡 ID 引用了與交互相關的資料,如轉錄、錄音和聯絡人歷史記錄。

當聯絡人進入系統時,系統會運行指令碼實例,而 ACD 會為該實例指派一個聯絡 ID。傳入和傳出互動都會出現這種情況。在互動過程中收集資訊,如聯絡人姓名、帳號等。互動過程中可能會產生其他資訊,如通話轉錄和錄音。所有這些資訊都與互動過程中指令碼中的聯絡 ID 相關聯。互動結束後,與聯絡 ID 相關的大部分資訊都會被丟棄,除非指令碼設計為可以儲存這些資訊。某些資訊,如通話記錄和聯絡人歷史記錄,會保留在 平台 中用於其他用途。

聯絡 ID 用於識別互動的一個分段。一個完整的互動可能涉及多個分段。當來電轉接到另一個客服專員或指令碼產生另一個指令碼時,可能會出現新的分段。發生這些事件時,新的聯絡 ID 將會開始。在大多數情況下,兩個聯絡 ID 在整個互動過程中都處於活動狀態。新的聯絡 ID 有時稱為子聯絡人

為了跟蹤與單個互動相關的所有聯絡 ID,還為聯絡人指派了主 ID。指派給聯絡人的任何聯絡 ID 都歸入其主 ID 下。

要在指令碼中引用聯絡人時,需要在互動的適當部分使用聯絡 ID。聯絡 ID 和主 ID 儲存在 contactIdmasterId 變數中。它們是預定義變數,可以在指令碼中使用。預設變數會在指令碼中自動建立,因此使用前無需聲明。

指令碼元件

指令碼包括以下元件:

  • 動作:在 Studio 中,指令碼由稱為動作的連接塊組成。每個動作在指令碼中起到具體的作用。動作可以建立選項選單、播放音訊檔案或請求下一個可用的客服專員。大多數動作都有一組屬性,必須對這些屬性進行配置,以便在指令碼中定義每個動作個體的特定行為。屬性包括:選擇 ACD 技能Closed 用於基於客服專員技能、能力和知識的互動的自動化傳遞、設定變數以及選擇一個要播放的音訊檔案。

    您可以在動作基本概念說明頁面中了解更多有關動作的資訊。可在 Studio 動作部分獲取有關單個動作的線上說明。

  • 連接器:指令碼的流程由動作連接的方式定義。動作之間的連接用線條和箭頭表示。

  • 分支:您可以在您的指令碼中建立分支以涵蓋一個動作有多個可能的結果的情況。例如,這允許您定義當出現錯誤時會發生什麼。您也可以使用分支為聯絡人提供選擇,例如在 IVRClosed 自動電話選單,允許呼叫者透過語音命令或按鍵輸入或二者進行互動,以獲取資訊、路由至呼入語音通話或二者兼有。 選單中。多個分支可以源於單個動作。在這種情況下,您可以定義指令碼採用每個分支必須滿足的條件。您還可以在同一動作中包含多個分支端。

  • 提示提示是許多指令碼的常見組成部分。當向聯絡人提供選擇或給他們提供資訊時,其是指令碼可以播放的訊息。例如,IVR 選單使用提示可讓聯絡人了解他們繼續互動的選項。這可能是一些訊息,如「對於銷售,請按 1。對於支援,請按 2。」您也可以使用提示來提供聯絡人資訊,如組織的工作時間或聯絡人的目前帳戶餘額。提示可以是預先錄製的音訊檔案或由文字轉語音 (TTSClosed 允許使用者將錄音的提示輸入為文字形式,並使用電腦產生的語音來講述內容。) 服務讀取的文字。

  • 自訂代碼:有時需要在Studio指令碼中使用自訂指令碼。自訂代碼允許您擴展指令碼的功能範圍。使用某些產品時需要,例如虛擬客服專員Closed 代替真人客服專員處理客戶互動的軟體應用程式。。即使不需要,使用它也會有幫助,因為它可以簡化管理Studio指令碼的某些方面。

    自訂代碼必須用 Snippet 編寫,這是一種由 NICE CXone 開發的內部指令碼語言。線上說明的技術指南部分提供了Snippet的參考材料。

指令碼媒體類型

指令碼有一個名為媒體類型的屬性。媒體類型是聯絡人和客服專員用於通訊的一種 通道Closed 聯絡人與客服專員或機器人互動的方式。通道可以是語音、電郵、聊天、社交媒體等等。。指令碼的媒體類型必須與指派給它使用的通道類型相符合。

當您建立指令碼時,會提示您選擇媒體類型。如有必要,您可以稍後變更此設定。

下表列出了 Studio 中的媒體類型

The icon for a Generic script type - a rectangle with < and > symbols inside it.

The icon for the Email script type - a large @ symbol in a diamond.

The icon for the Chat script type - a chat bubble with an ellipsis inside (...), in a diamond shape.

The icon for the Phone script type - an old-style phone handset with curved lines indicating sound coming out of it.

The icon for the Voicemail script type - a symbol that looks like a cassette tape - two circles sitting on a horizontal line.

The icon for the Work Item script type-a piece of paper with one corner folded down and a bullet list on it.

The icon for the SMS script type - a smart phone with a chat bubble coming out of it.

The icon for the Digital script type - a computer monitor with a smartphone next to it.

一般

電郵 聊天 電話 語音郵件 工作項目 SMS 數位

媒體類型會影響指令碼中可使用的動作。大多數動作適用於任何類型,但有些動作僅適用於特定的媒體類型。例如,ASRClosed 允許聯絡人透過說話、點擊手機按鍵或兩者組合的方式來回應錄音的語音提示。 動作僅適用於電話指令碼。如果您正在處理電郵指令碼,則在該指令碼的「工具」標籤中看不到 ASR 動作。

「框架」標籤包含 Studio 中可用的所有動作。它不會隱藏您正在使用的與某類指令碼不相容的動作。如果您嘗試新增不相容動作,Studio 將顯示一條錯誤訊息。預設情況下,Studio 中「框架」標籤不可見。如果沒有看到,表明您的 業務單位Closed 用於管理 CXone 環境的技術支援、計費和全域設定的高級組織分組 沒有啟用。

指令碼範本和範例

StudioCXone 中的一些功能和應用程式提供指令碼範本,例如 Personal Connection 中的呼叫抑制。指令碼範本位於「建立新指令碼」視窗的「可用範本」部分。

線上說明包含其他指令碼,您可以在此基礎上編寫自己的指令碼。CXone 中的一些產品或功能需要指令碼才能工作。這些產品的線上說明提供關於這些指令碼的資訊。此外,許多Studio動作Closed 在 Studio 指令碼內執行一個流程,如收集客戶資料、播放訊息或音樂,或將聯絡人路由至客服專員。的線上說明頁面提供了指令碼範例。這些範例展示了如何在您的指令碼中使用一個特定的動作。範例指令碼並不完整,可能需要進行額外的修改才能在您的聯絡中心中運行。

本節中的資訊僅適用於 Desktop Studio指令碼範本目前在 CXone Studio 中不可用。

指令碼版本管理

您可以透過制定一個命名慣例來管理您的指令碼版本。常見的命名慣例是在指令碼檔案名稱的末尾加入 DEVPROD。這些新增內容可以幫助您識別指令碼屬於開發還是生產階段。如果符合您的組織的要求,您還可以加入其他資訊,如日期或版本號。

Studio 不允許在指令碼儲存後變更其名稱。需要變更指令碼名稱時,請使用另存為製作該指令碼的副本並為其提供一個新名稱。例如,將指令碼從開發階段轉入生產階段時需要這樣做。在您將指令碼投入生產後,您可以停用舊的生產和開發版本,以此保持指令碼資料架的整潔。如果您需要再次使用,您可以重新啟動

指令碼在 Studio 中有兩類歷史版本。包括:

  • 隨著指令碼在開發和生產過程中移入和移出而累積的單個檔案。
  • Studio 自動儲存和維護的以前版本。每次儲存指令碼檔案時,Studio 都會在該檔案的歷程記錄中新增一個新版本。如果需要,您可以將指令碼檔案還原為先前版本。由 Studio 保留的版本數量是可配置的

因為每次儲存指令碼時都會新增另一個版本,所以您可以在處理一個指令碼的過程中完全替換該指令碼的所有儲存版本。您可能想在開始工作之前匯出一個指令碼的副本,特別是當您要做重大修改時。這樣便可供您參考,或者在需要時完全還原。給匯出的副本命名可能會非常有用,這樣您就能知道它是哪個版本,以及為什麼要保留它。

切勿直接編輯生產指令碼。儲存立即生效的變更。若更改導致指令碼出現問題,可能會影響聯絡中心的功能。若需進行修改,請使用Save As建立指令碼的副本,並將其命名為表示其正在開發中。只有put it into production當它經過完全測試並準備就緒時,才將其投入生產。

開始和結束指令碼

指令碼有兩種啟動方式。可能是:

每個指令碼都以 Begin 動作開始。指令碼以終止動作結束。有幾個終止動作。您使用哪一個至關重要,並取決於指令碼媒體類型:

不要使用 Stop動作action來終止指令碼。它不會終止指令碼,而是讓聯絡人繼續運行。這對CXone伺服器有不利影響。

如果您使用 End 動作,則適用以下資訊:

  • 如果您在一個不支援媒體類型的指令碼中使用End,可能無法正確結束所有流程或聯絡。結束後台流程是終止動作的一個關鍵功能。由於此原因,使用最適合您的指令碼的媒體類型的動作非常重要
  • 如果您在子指令碼中使用End,它將同時終止子指令碼和源指令碼。如果您想終止子指令碼,但又想讓源指令碼繼續,請使用 Return 動作。
  • End 應用來終止一個活躍指令碼的邏輯流程,並叫用 OnRelease 事件動作。由於此原因,它不應在OnRelease事件邏輯之後使用。

使用 snippet 的自訂編碼

簡單的指令碼不需要自訂編碼。對於這些指令碼,使用可用的動作足以管理 CXone 中的基本路由功能。

自訂編碼需要更複雜的路由或 CXone 中的某些產品或功能。在某些情況下,Studio 動作或整個 CXone 應用程式需要 Snippet 代碼才能正常工作。透過 Snippet 動作,您可以在指令碼中需要新增自訂代碼的地方插入代碼。

Studio 使用一種名為Snippet的內部指令碼語言。該語言在伺服器端執行並編譯為 MSIL(Microsoft 中間語言),就像 C# 和 Visual Basic .NET 一樣。線上說明提供了關於 Snippet 的完整參考指南

指令碼中的注釋和注解

Studio 提供了幾種向指令碼新增注釋的方法。此關鍵步驟可以確保您以及任何在您之後從事指令碼工作的人,都能理解該指令碼。您可以:

  • 使用 Note ANnotation Studio 動作。
  • 變更指令碼中的動作在畫布工作區上顯示的標籤。
  • Snippet 動作代碼新增註釋。

使用 NOTE 和 ANNOTATION 動作

您可以在您的指令碼中加入 Studio 的兩個動作:Note和 Annotation。這些動作都不影響指令碼的工作方式。它們只是提供資訊。這些動作之間的區別在於:

  • Note 動作可以放在指令碼畫布的任何位置,不需要與其他動作連接。要新增或檢視使用此動作制定的備註,您必須點擊兩下。

  • Annotation動作在畫布上以灰色矩形直接顯示您的評論。如果您想直接指向注釋引用的指令碼部分,還可以將 Annotation 連接到另一個動作。

變更動作標籤

在指令碼中做注釋的另一個選項是變更指令碼中動作的標題。在每個動作的屬性中,有一個標題欄位,讓您變更畫布上出現的動作名稱。您可以用來命名每個動作,用一個詞或短語來提醒該動作在指令碼中的用途。

例如,您可以變更 Snippet 動作的名稱,以表明它所包含的代碼。或者,您可以在 IVRClosed 自動電話選單,允許呼叫者透過語音命令或按鍵輸入或二者進行互動,以獲取資訊、路由至呼入語音通話或二者兼有。 選單中用播放中的音訊檔案或提示的名稱命名每個 Play 動作。

目前,CXone Studio 不支援此選項。

在 SNIPPET 動作中新增註釋

您可以在 Snippet 動作中為自訂代碼新增註釋。註釋可以在單獨的連結上,也可以在一行代碼的末尾。Snippet 語言使用兩個正斜線表示注釋 ( // )。下面的範例顯示了 snippet 中的註釋:

//custom payload parameters are optional and
//customizable
DYNAMIC customPayload
customPayload.context.id="123"
customPayload.context.parameters.name="Beowulf"
CustomPayload.context.parameters.age=25
ASSIGN tokenjson = "{customPayload.asjson()}" //converts to JSON	

有關使用 Studio 的重要資訊

  • 指令碼錯誤標籤顯示與指令碼相關的任何警告和錯誤。您可以使用這些資訊來幫助對指令碼進行測試和偵錯。在 CXone Studio 中,警告和錯誤出現在畫布工作區的右側。
  • 您可以用 Studio 的某些指令碼 API 以程式設計方式打開和儲存指令碼。這需要進階指令碼技能。
  • 您可以將指令碼作為 XML 檔案匯入和匯出。
  • Studio 不允許指令碼在儲存後被重新命名。如果您需要變更指令碼的名稱,可使用另存為來建立一個新名稱的副本,然後停用舊的指令碼,或者將其移到一個單獨的資料夾,不再使用。

  • 您可以在兩個位置檢視指令碼的先前版本:
    • Studio 中,右鍵點擊瀏覽器標籤中的指令碼(檢視 > 瀏覽器),將滑鼠停留在歷程記錄選項。CXone Studio 中目前沒有此選項。
    • CXone 中,點擊 ACD > 指令碼。在此頁,您也可以將指令碼還原為先前版本。
  • 您可以使用 CXone 中的 ACD > 指令碼排程選項執行排程指令碼
  • CXone 中的 ACD > 指令碼頁面中,您可以用臨時自訂參數產生一個指令碼並作為變數使用。
  • 為了防止指令碼變得過於龐大和複雜,您可以將其分成多個較小的指令碼,並用 RunsubRunscript 動作進行連結。