Variablen

Die Informationen auf dieser Hilfeseite gelten für CXone Studio und Desktop Studio.

Variablen sind Platzhalter, die Werte enthalten, die sich ändern können. Sie werden verwendet, wenn ein Wert bei jeder Ausführung des Skripts unterschiedlich ist. ANI ist zum Beispiel eine Variable, die die ANIGeschlossen Auch bekannt als Anrufer-ID. Gelistete Telefonnummer eines eingehenden Sprachanrufs. oder Telefonnummer des Anrufers enthält. Wenn ANI in einem Skript verwendet wird, enthält es die Anrufer-ID des Kontakts. Jedes Mal, wenn das Skript ausgeführt wird, behandelt es einen anderen Kontakt, daher ändert sich der Wert von ANI.

Sie können Ihre eigenen Variablen jederzeit, wenn Sie eine benötigen, erstellen. Variablen können einzelne Werte enthalten. Sie können auch dynamische Datenobjekte und Arrays enthalten.

Einige Variablen, die in Studio-Skripten verwendet werden, sind systemdefiniert. Das bedeutet, sie sind Teil des Codes in StudioAktionenGeschlossen Führt einen Prozess innerhalb eines Studio-Skripts durch, wie z. B. das Erfassen von Kundendaten, Abspielen einer Nachricht oder Musik oder die Weiterleitung eines Kontakts zu einem Agenten., daher müssen Sie sie nicht erstellen. Es gibt zwei Arten von systemdefinierten Variablen:

  • Reservierte Variablen: Dies sind schreibgeschützte Variablen, die Sie verwenden können, wenn Sie eine bestimmte Art von Information in Ihr Skript einbeziehen müssen.
  • Vordefinierte Variablen: Variablen, die bereits definiert sind. Sie sind schreibbar, das heißt, Sie können ihnen einen Wert zuweisen.

Testen

Laden Sie das Skript mit Variablenbeispielen herunter und importieren Sie es in Studio. Die auf dieser Hilfeseite genannten Beispiele sind in Snippet-Aktionen im Beispielskript enthalten. Sie können das Snippet Editor -Fenster öffnen und den Debugger ausführen, um zu sehen, wie die einzelnen Beispiele funktionieren.

Zusammenfassung der Variablen-Syntax

In der folgenden Liste wird die Syntax von Variablen zusammengefasst. Weitere Informationen dazu finden Sie in weiteren Abschnitten auf dieser Seite.

  • Verwenden Sie eine ASSIGN-Aktion oder eine Snippet-Aktion, um eine Variable zu erstellen und ihr einen Wert zuzuweisen. In einem Snippet können Sie das ASSIGN-Schlüsselwort beim Deklarieren einer Variablen verwenden. Es ist zwar optional, wird aber ausdrücklich empfohlen. Verwenden Sie diese Syntax in einem SnippetASSIGN <var name> = <var value> oder <var name> = <var value>. (Hilfeseiten zu Aktionen in CXone StudioASSIGN-Aktion oder eine Snippet-Aktion.)

  • Wenn Sie einer Variablen Werte zuweisen, beachten Sie die folgenden Regeln: 
    • String- und Datum/Uhrzeit-Werte müssen in einzelne oder doppelte Anführungszeichen eingeschlossen werden. Zum Beispiel: ASSIGN life = "forty-two".
    • Zum Zuweisen eines Datum/Uhrzeit-Wertes, der mit Datum/Uhrzeit-Funktionen verwendet wird, setzen Sie ein Rautezeichen ( # ) vor den Wert, aber außerhalb der doppelten Anführungszeichen. Zum Beispiel: ASSIGN var = #"02/09/2023". Wenn der Datum/Uhrzeit-Wert nicht mit Datum/Uhrzeit-Funktionen verwendet wird, ist das Rautezeichen nicht erforderlich. Ohne das Rautezeichen wird der Wert jedoch als String-Typ interpretiert, nicht als Typ "Datum/Uhrzeit".
    • Numerische Werte müssen nicht in Anführungszeichen eingeschlossen werden. Wenn Sie einen numerischen Wert in Anführungszeichen einschließen, wird er als String behandelt, es sei denn, er wird in einem mathematischen Ausdruck ausgewertet.
    • Numerische und boolescheGeschlossen Ein Datentyp, der zwei mögliche Werte hat: wahr und falsch. Ausdrücke können nicht in Anführungszeichen eingeschlossen werden. Wenn Sie diese Ausdrücke in Anführungszeichen einschließen, werden sie als String behandelt. Beispiel: ASSIGN myVar = var2 > 42 wird je nach dem Wert von var2 als "true" oder "false" ausgewertet. Bei ASSIGN myVar = "var2 > 42" wird der Wert von myVar als Literalwert var2 > 42 interpretiert.
    • Boolesche Werte sollten nicht in Anführungszeichen eingeschlossen werden.
    • Verwenden Sie Escape-Sequenzen, wenn Sie die folgenden Zeichen in einen Stringwert aufnehmen müssen: doppelte Anführungszeichen ("), einzelnes Anführungszeichen (' ), öffnende geschweifte Klammer ({), Tabulatorzeichen (ASCII 9), Wagenrücklauf (ASCII 13), Zeilenvorschub (ASCII 10), Rücktaste (ASCII 8), null.
  • Wenn Sie den Wert einer Variablen in einem String ersetzen, beachten Sie die folgenden Regeln: 
    • Schließen Sie Variablen in geschweifte Klammern ein. Zum Beispiel: ASSIGN myVar = "the meaning of life is {life}"
    • Wenn die Variable ein dynamisches Datenobjekt ist, müssen Sie auf eine Eigenschaft innerhalb des Objekts verweisen. Zum Beispiel: ASSIGN myVar = "the meaning of life is {anObj.thisProperty}". Wenn sich der Verweis nur auf das Objekt bezieht, tritt ein Fehler auf.
    • Wenn die Variable ein Array enthält, müssen Sie den Index des Wertes aufnehmen, den Sie zuweisen möchten. Zum Beispiel: ASSIGN myVar = myArray[4].
  • Wenn Sie den Wert einer Variablen einer anderen Variablen zuweisen, beachten Sie die folgenden Regeln:
    • Doppelte Anführungszeichen oder geschweifte Klammern sind nicht erforderlich. Zum Beispiel:  ASSIGN myVar = var2. Dadurch wird eine Kopie des Wertes der Variablen zu myVar zugewiesen.
    • Wenn eine Variable ein Array enthält, können Sie es einer anderen Variablen zuweisen.
    • Wenn es sich bei einer Variablen um ein Objekt handelt, kann es nur einem anderen Objekt zugewiesen werden.
  • Wenn Sie in Studio-Aktionseigenschaften auf Variablen verweisen, gelten im Allgemeinen die folgenden Richtlinien. Sehen Sie immer auf der Online-Hilfeseite der jeweiligen Aktion nach, da Ausnahmen zu beachten sind.

    • Eigenschaften erwarten entweder eine Variable oder Daten. Daten können aus Literalwerten oder Variablen bestehen. Wenn eine Eigenschaft Daten erwartet, kann sie meist einen Literalwert oder eine Variable akzeptieren. Es gelten jedoch bestimmte Ausnahmen. Lesen Sie daher immer in der Online-Hilfe für die jeweilige Aktion nach, wenn Sie nicht sicher sind, was eine Eigenschaft erwartet.
    • Wenn die Eigenschaft einen Variablennamen erwartet, geben Sie den Namen der Variablen ohne geschweifte Klammern ein.

    • Wenn die Eigenschaft Daten erwartet und Sie die Variablenersetzung verwenden möchten, schließen Sie den Namen der Variablen in geschweifte Klammern ein: {varName}.

Datentypen und implizite Angabe des Datentyps

Datentypen definieren, welche Art von Daten eine Variable enthält und wie sie im Programm verwendet werden sollte. In Studio können Variablen die folgenden Datentypen haben:

  • String: Der Wert der Variablen enthält alphanumerische und Sonderzeichen, wie Punkte, Kommas und Unterstriche. Stringwerte müssen in doppelte Anführungszeichen eingeschlossen werden.
  • Numerisch: Der Wert der Variablen ist eine Zahl. Für numerische Werte sind keine doppelten Anführungszeichen erforderlich.
  • Datum/Uhrzeit: Der Wert der Variablen ist ein Datum, eine Uhrzeit oder beides. Wenn ein Datum/Uhrzeit-Wert mit Datum/Uhrzeit-Funktionen in Studio verwendet wird, muss der Wert in Anführungszeichen eingeschlossen werden. Vor dem Wert außerhalb der Anführungszeichen muss das Rautezeichen stehen: var = #"11-23-2022".
  • Boolesch: Der Wert der Variablen ist entweder true oder 1 oder false oder 0. Boolesche Werte werden nicht in Anführungszeichen eingeschlossen.

In vielen Programmier- und Skriptsprachen müssen Sie einer Variablen bei der Erstellung explizit einen Datentyp zuweisen. In Studio wird der Typ von Variablen implizit angegeben. Der Studio-Compiler bestimmt den Typ einer jeden Variable, wenn das Skript kompiliert wird. Das bedeutet, Sie müssen den Datentyp für die von Ihnen verwendeten Variablen nicht definieren. Die einzige Ausnahme liegt vor, wenn eine Variable einen Datum/Uhrzeit-Wert enthält, den Sie mit Datum/Uhrzeit-Funktionen verwenden möchten.

Typenableitung

Die implizite Angabe des Datentyps wirkt sich darauf aus, wie Variablen ausgewertet werden. Beispielsweise führen Variablenvergleiche zu unterschiedlichen Ergebnissen, je nachdem, welchen Variablentyp Studio erkennt. Standardmäßig werden alle Angaben in Studio als String behandelt, bis mathematische Berechnungen erforderlich sind. Dann wird jede Angabe als Zahl ausgewertet, sofern möglich, selbst wenn sie in Anführungszeichen eingeschlossen ist. Dies wird als Typenableitung bezeichnet.

Der Studio-Compiler erkennt einen Wert als numerisch, auch wenn er in Anführungszeichen eingeschlossen ist. Anführungszeichen weisen darauf hin, dass der Wert ein String ist. Wenn ein numerischer Wert in Anführungszeichen eingeschlossen ist, behandelt Studio ihn als String, es sei denn, Sie verwenden ihn im Skript in mathematischen Berechnungen. Beispielsweise:


var1 = "42"
var2 = 42

var3 = var2 + var1	

Ergebnis des Beispiels ist var3 = 84. Studio leitet daraus ab, dass der Wert von var1 numerisch ist, und behandelt ihn als numerischen Wert, wenn der Ausdruck in var3 ausgewertet wird, obwohl er in doppelten Anführungszeichen eingeschlossen ist.

Variablen erstellen

Sie können Ihre eigenen Variablen für die Verwendung in Skripten erstellen. Dazu können Sie entweder eine Assign-Aktion oder eine Snippet-Aktion im Skript verwenden.

Assign-Aktion

Mit der Assign-Aktion können Sie eine einzelne Variable erstellen und ihr einen Wert zuweisen. Dazu verwenden Sie die Eigenschaften Variable und Value der Aktion. Assign bietet Ihnen eine einfache und konfigurierbare Möglichkeit zum Erstellen von Variablen. (Hilfeseite in CXone StudioAssign-Aktion.)

Diese Aktion verfügt über weitere Eigenschaften, mit denen Sie festlegen können, wie die Variable verwendet wird. Sie haben folgende Möglichkeiten:

Sie können einen Wert für ein Bildschirm-Popup auch in der Reqagent-Aktion festlegen (in CXone StudioAktion).

Snippet-Aktion

Die Snippet-Aktion ermöglicht das Erstellen von Variablen mithilfe von Code (Hilfeseite in CXone StudioAktion). Mit einer einzelnen Aktion können Sie eine oder mehrere Variablen erstellen, zusätzlich zu jedem anderen benutzerdefinierten Code, den Sie benötigen. Snippet ist praktisch, denn wenn Sie Ihrem Skript später weitere Variablen hinzufügen möchten, können Sie sie derselben Aktion hinzufügen. Sie müssen keine weiteren Aktionen hinzufügen und die Konnektoren im Skript nicht neu einrichten. Dies wäre erforderlich, wenn Sie ursprünglich eine Assign-Aktion verwendet hätten.

Verwenden Sie eines der beiden folgenden Syntaxformate:

ASSIGN varName = valueoder varName = value

Sie können der Variablen Eigenschaften hinzufügen, die den Eigenschaften in der Assign-Aktion entsprechen:

  • Wenn der Wert der Variablen in einem Bildschirm-Popup enthalten sein soll, fügen Sie setscreenpop(1) zum Namen der Variablen hinzu.
  • Wen der Wert der Variablen in der Datenbank gespeichert werden soll, fügen Sie savetodb(1) zum Namen der Variablen hinzu.

Beispielsweise:

ASSIGN epicPoem = "Beowulf"
epicPoem.setscreenpop(1)
epicPoem.savetodb(1)

Bei beiden Eigenschaften ist die Zahl 1 ein boolescherGeschlossen Ein Datentyp, der zwei mögliche Werte hat: wahr und falsch. Wert, der die Eigenschaft auf true setzt.

Wichtige Fakten zum Erstellen von Variablen in Snippet -Aktionen:

  • Beim Deklarieren einer Variablen müssen Sie den Typ nicht deklarieren, es sei denn, es handelt sich um Datum/Uhrzeit-Variablen.
  • Die Einbeziehung des Schlüsselworts ASSIGN ist optional. Es wird jedoch empfohlen, dieses Schlüsselwort beim Erstellen einer Variablen immer zu verwenden. Wenn Sie erweiterte Suche verwenden, können Sie schnell sehen, wo eine Variable erstellt wird, wenn sie dieses Schlüsselwort enthält.
  • Wenn Sie eine Variable in einem Subskript definieren und sie zum ursprünglichen Skript zurückgeben möchten, fügen Sie global: am Anfang des Variablennamens hinzu. Dadurch wird ihr Umfang als global festgelegt.

Einzelne Anführungszeichen, doppelte Anführungszeichen, keine Anführungszeichen

Wenn Sie den Wert einer Variablen einer anderen Variablen zuweisen, müssen einige Werte in Anführungszeichen eingeschlossen werden. Für andere Werte sind keine Anführungszeichen erforderlich. Befolgen Sie diese Richtlinien:

  • Stringwerte müssen in einzelne oder doppelte Anführungszeichen eingeschlossen werden. Dies gilt auch, wenn der Variablenname mit einem Dollarzeichen endet. Wenn ein String nicht in Anführungszeichen eingeschlossen ist, geht das Skript davon aus, dass es sich beim Wert um eine Variable handelt. Im folgenden Beispiel werden a1, a2 und a1$ alle als Literalwert Example ausgewertet. Die Werte von a3 und a3$ hängen davon ab, ob Example als Variable deklariert wurde. Wenn eine Variable namens Example im Skript vorhanden ist, werden a3 und a3$ mit dem Wert von Example ausgewertet. Wenn Example nicht vorhanden ist, entstehen für a3 und a3$ leere Werte.

    ASSIGN a1 = "Example"
    ASSIGN a2 = 'Example'
    ASSIGN a1$ = "Example"
    ASSIGN a3 = Example
    ASSIGN a3$ = Example
  • Für numerische Werte sind keine Anführungszeichen erforderlich. Wahlweise können sie jedoch verwendet werden. Im folgenden Beispiel werden b1, b2 und b3 als 123 ausgewertet.

    ASSIGN b1 = "123" 
    ASSIGN b2 = '123' 
    ASSIGN b3 = 123
  • Numerische Ausdrücke können nicht in Anführungszeichen eingeschlossen werden. Das gilt auch für mathematische und boolescheGeschlossen Ein Datentyp, der zwei mögliche Werte hat: wahr und falsch. Ausdrücke. Wenn Sie einen numerischen Ausdruck in Anführungszeichen einschließen, wird er wie Text behandelt. Beispiel: c1 = 123 + 456 wird als 579 ausgewertet, aber c2 = "123 + 456" hat das Ergebnis 123 + 456.
  • Datum/Uhrzeit-Werte müssen in Anführungszeichen eingeschlossen werden, wenn Sie sie als Datum/Uhrzeit-Typ deklarieren.
  • Boolesche Werte sollten nicht in Anführungszeichen eingeschlossen werden.
  • Wenn Sie einer Variablen ein Array oder den Wert des Mitglieds eines dynamischen Objekts zuweisen, verwenden Sie keine Anführungszeichen oder geschweifte Klammern im Namen des Arrays oder des Objektmitglieds.

Erstellen von Variablen mit Datum/Uhrzeit-Werten

In Studio wird der Typ von Datum/Uhrzeit-Angaben nicht implizit bestimmt. Sie können jedoch eine Kennung vor einem Variablenwert hinzufügen, um den Wert mit diesem Typ zu deklarieren. Dies ist nur erforderlich, wenn der Wert in Funktionen für Datum/Uhrzeit verwendet wird oder wenn Sie Operationen für den Wert ausführen möchten.

Wenn Sie den Variablenwert als Datum/Uhrzeit deklarieren möchten, verwenden Sie die Syntax ASSIGN <varName> = #"<datetime>". Dabei ist <datetime> der Datum/Uhrzeit-Wert, der in der Variablen gespeichert werden soll. Zum Beispiel date1 = #"7/15/2050 5:00pm". Wenn die Variable nicht als Datum/Uhrzeit deklariert ist, können Sie die Funktionasdatetime() verwenden, um den Wert entsprechend zu konvertieren.

Bei einigen Funktionen, die Datum und Uhrzeit ändern, müssen die Variablen als Datum/Uhrzeit deklariert werden. Auch wenn das Datum/Uhrzeit-Format korrekt ist, funktioniert die Funktion nicht, wenn die Variable nicht ordnungsgemäß deklariert ist.Mithilfe dieser Syntax können Sie auch Operationen für Datum/Uhrzeit-Angaben durchführen, die andernfalls nicht möglich wären. Sie können sie zum Beispiel vergleichen:

date1 = #"7/15/2050 5:00pm" 
date2 = #"7/15/2050 4pm"
x = date1 > date2 

Das Ergebnis ist 1 (true), weil der Literalwert von date1 größer als der Literalwert von date2 ist.

Variablenbenennung

Benennen Sie Variablen nach diesen Richtlinien:

  • Verwenden Sie alphanumerische Zeichen (a-z, A-Z, 0-9).

  • Das erste Zeichen des Namens muss ein Buchstabe sein.
  • Verwenden Sie den Unterstrich ( _ ) und das Dollarzeichen ( $ ) an einer beliebigen Stelle im Namen.
  • Wenn das letzte Zeichen in einem Variablennamen ein Dollarzeichen ist, wird der Wert als Text behandelt.
  • Verwenden Sie weder die Namen von vordefinierten Variablen noch reservierte Wörter.

Variablenersetzung

Wenn Sie den Wert einer Variablen in Ihrem Skript verwenden müssen, geben Sie den Namen der Variablen im Snippet-Code oder im Feld für die Eigenschaft der Aktion an.

Wenn Sie den Wert der Variablen für die Verwendung als String ersetzen, schließen Sie den Namen der Variablen in geschweifte Klammern ein. Der gesamte Inhalt in einem String wird als reiner Text behandelt, sofern er nicht als Variable formatiert ist. Beispielsweise:

ASSIGN foeName = "Grendel"
ASSIGN numberFoes = "3"
ASSIGN x = numberFoes
ASSIGN y = "One of Beowulf's foes is {foeName}. He faced {numberFoes} foes in all." 
ASSIGN z = "One of Beowulf's foes is foeName. He faced numberFoes in all." 

Ergebnisse des Beispiels sind

  • x=3.
  • y=One of Beowulf's foes is Grendel. He faced 3 foes in all.
  • z=One of Beowulf's foes is foeName. He faced numberFoes in all.

Wenn Sie den Wert einer Variablen in eine andere Variable kopieren, sind keine geschweiften Klammern erforderlich. Dies gilt für Text und numerische Werte. Im folgenden Beispiel lautet das Ergebnis:x=3 und z=Grendel:

ASSIGN numberFoes = "3"
ASSIGN name = "Grendel"
ASSIGN x = numberFoes 
ASSIGN y = name 

Wenn Sie mathematische Operationen mit Variablen durchführen, müssen Sie sie nicht in geschweifte Klammern einschließen. Im folgenden Beispiel lautet das Ergebnis y=200.

ASSIGN a1 = "100"
ASSIGN a2 = "100.00"
ASSIGN y = (a1 + a2) 

Variablenersetzung in Aktionseigenschaften

In vielen Aktionseigenschaften können Variablen anstelle von Literalwerten verwendet werden. Dies gilt auch dann, wenn die Hilfeseite der Aktion nicht angibt, dass Sie eine Variable zum Konfigurieren einer Eigenschaft verwenden können.

Die Verwendung von Variablen in Aktionseigenschaften ermöglicht Ihnen die Wiederverwendung von Skripten. Angenommen, Ihre Organisation hat drei Geschäftsbereiche. Wenn Sie Literalwerte verwenden, benötigen Sie drei Warteschleifenskripte zur Definition von ACD-SkillGeschlossen Wird verwendet, um die Bereitstellung von Interaktionen basierend auf den Kompetenzen, Fertigkeiten und Kenntnissen der Agenten zu automatisieren, Prioritätsmanagement und anderen Einstellungen für jeden Geschäftsbereich. Stattdessen können Sie Variablen verwenden, um die Eigenschaften zu konfigurieren, deren Werte sich je nach Geschäftsbereich unterscheiden. Sie benötigen dann nur ein Skript anstelle von drei Skripten.

Wenn Sie in Studio-Aktionseigenschaften auf Variablen verweisen, gelten im Allgemeinen die folgenden Richtlinien:

  • Eigenschaften erwarten entweder eine Variable oder Daten. Daten können aus Literalwerten oder Variablen bestehen. Wenn eine Eigenschaft Daten erwartet, kann sie meist einen Literalwert oder eine Variable akzeptieren. Es gelten jedoch bestimmte Ausnahmen. Lesen Sie daher immer in der Online-Hilfe für die jeweilige Aktion nach, wenn Sie nicht sicher sind, was eine Eigenschaft erwartet.
  • Wenn die Eigenschaft einen Variablennamen erwartet, geben Sie den Namen der Variablen ohne geschweifte Klammern ein.

  • Wenn die Eigenschaft Daten erwartet und Sie die Variablenersetzung verwenden möchten, schließen Sie den Namen der Variablen in geschweifte Klammern ein: {varName}.

Variablenwerte von Skript zu Skript weitergeben

Variablenwerte können von Skript zu Skript weitergegeben werden. Sie können folgendermaßen weitergegeben werden:

  • Vom ursprünglichen Skript zum Subskript: Alle Variablen im ursprünglichen Skript sind auch in Subskripten vorhanden und zur Verwendung verfügbar. Sie befinden sich jedoch im globalen Umfang. Wenn Sie sie in Subskripten verwenden möchten, müssen Sie dem Variablennamen das Präfix global: voranstellen. Zum Beispiel global:varName. Das betrifft sowohl vordefinierte Systemvariablen als auch Variablen, die Sie erstellen.
  • Subskript zum ursprünglichen Skript: Variablen, die Sie in einem Subskript deklarieren, werden nicht automatisch an das ursprüngliche Skript zurückgegeben. Wenn Sie eine benutzerdefinierte Variable von einem Subskript an das ursprüngliche Skript zurückgeben möchten, müssen Sie sie als global deklarieren. Auch wenn Sie Variablen in einem Subskript deklarieren, müssen Sie sie als global deklarieren und im Subskript sowie im ursprünglichen Skript der obersten Ebene als global referenzieren.

Sie können globale Variablen in Skript-Traces anzeigen. Möglicherweise müssen Sie diese Option im Fenster für die Trace-Ausgabe aktivieren, wenn Sie einen Trace anzeigen.

Einige Daten stammen möglicherweise aus externen Quellen, die nicht zu Ihren Skripten gehören, wie ein CRMGeschlossen Systeme von Drittanbietern, die z. B. Kontakte, Vertriebsinformationen, Supportdetails und Fallgeschichten verwalten.-System oder ein APIGeschlossen APIs ermöglichen Ihnen die Automatisierung bestimmter Funktionen durch das Verbinden Ihres CXone Systems mit anderer Software, die Ihr Unternehmen verwendet.-Aufruf. Sie können diese Werte mithilfe der Eigenschaft Parameters in der RunSub -Aktion oder der Spawn-Aktion an Subskripte oder erzeugte Skripte übergeben. Die Begin-Aktion verfügt auch über die Eigenschaft Parameters. Konfigurieren Sie die Begin-Aktion im Subskript mit den Namen der Variablen, die die Werte erhalten sollen, die über RunSub oder Spawn übergeben werden. (Hilfeseiten zu Aktionen in CXone StudioRunSub-Aktion; Spawn-Aktion; Begin-Aktion.)

Wenn die Daten, die Sie übergeben möchten, in einem Objekt enthalten sind, muss das Objekt zunächst in das JSON- oder XML-Format konvertiert werden. Sie können die Variable übergeben, die den JSON- oder XML-String enthält. Im zweiten Skript können Sie die Daten ggf. wieder in ein Objekt umwandeln.

Vergleichen und Auswerten von Variablen

Studio legt den Typ von Variablen implizit fest, und dies wirkt sich darauf aus, wie die Variablen in Ausdrücken und booleschenGeschlossen Ein Datentyp, der zwei mögliche Werte hat: wahr und falsch. Vergleichen ausgewertet werden.

Beispielsweise:

ASSIGN a1 = "100"
ASSIGN a2 = "100"
ASSIGN y = (a1 = a2)

In diesem Beispiel wird der Ausdruck y = (a1 = a2) als y = 1 (true) ausgewertet.

Vergleich als Text erzwingen

Sie können erzwingen, dass eine Variable als Text ausgewertet wird, auch wenn ihr Wert numerisch ist. Sie können dies auf zwei Arten tun:

  • Fügen Sie am Ende des Variablennamens ein Dollarzeichen hinzu. Zum Beispiel: varName$ = 42. Bei einem Vergleich muss das Dollarzeichen nur an eine der beiden Variablen angefügt werden.
  • Schließen Sie die Namen der Variablen in geschweifte Klammern und doppelte Anführungszeichen ein. Zum Beispiel y = ("{a1}" = "{a2}").

Wenn der Name einer Variablen mit einem Dollarzeichen endet, behandeln alle booleschenGeschlossen Ein Informationsattribut, das definiert, wie es in einem Programm verwendet wird, z. B. integer (Zahlen, die manipuliert werden können) oder boolean (wahr/falsch). Operationen (=, >, <, >=, <=), die diese Variable verwenden, den Wert als Text. Beispielsweise:

ASSIGN a$ = 20
ASSIGN b = 100
ASSIGN x = a$ > b

In diesem Beispiel ist die Variable x 1 (true). Da die Variable a$ mit einem Dollarzeichen endet, wird der Wert 20 als Text behandelt. Deshalb ist a$ > b ein Vergleich von 20 und 100 als Strings aus Text und nicht Ganzzahlen. Beim Vergleich als Text ist 20 größer als 100, weil 20 mit einer 2 und 100 mit einer 1beginnt. Ohne das Dollarzeichen im Variablennamen wird x = a > b als 0 (false) ausgewertet, da die Werte als Ganzzahlen verglichen werden. Die Ganzzahl 20 ist nicht größer als die Ganzzahl 100.

Reservierte und vordefinierte Variablen

Studio umfasst bereits vorhandene Variablen. Dies sind:

  • Reservierte Variablen: Diese Variablen geben eine bestimmte Art von Informationen zurück, wie beispielsweise die aktuelle Uhrzeit oder die Kennung der geltenden Zeitzone. Reservierte Variablen sind schreibgeschützt, was bedeutet, dass ein Skript keine Werte in ihnen speichern kann. Sie haben nur den Zweck, Informationen zurückzugeben. Sie können sie in Ihrem Skript verwenden, um die Informationen einzugeben, die von ihnen zurückgegeben werden. Studio enthält 10 reservierte Variablen.
  • Vordefinierte Variablen: Dies sind Systemvariablen. Da sie in Studio bereits definiert sind, können Sie sie in Ihren Skripten verwenden, ohne dass Sie sie erstellen müssen. Verwenden Sie Systemvariablen in Ihren Skripten immer dann, wenn Sie die enthaltenen Informationen benötigen. Setzen Sie vordefinierte Systemvariablen nur außer Kraft, wenn Sie in der Online-Hilfe oder von einem CXone Account Representative dazu angewiesen werden. Weitere Informationen über vordefinierte Variablen finden Sie auf der Seite "Vordefinierte Variablen".

Globale Variablen

Mit globalen Variablen können Sie eine Variable in einem Subskript deklarieren, die dann nach der Return-Aktion automatisch an das ursprüngliche Skript zurückgegeben werden kann (in CXone StudioAktion). Wenn Sie eine globale Variable in einem Subskript deklarieren, müssen Sie sie nicht mit der Return-Aktion zum ursprünglichen Skript zurückgeben.

Sie können eine globale Variable mithilfe der Snippet-Aktion oder der Assign-Aktion erstellen (in CXone StudioSnippet-Aktion oder Assign-Aktion). Verwenden Sie die folgende Syntax beim Erstellen einer globalen Variablen mit Snippet:

ASSIGN global:<variable name>

ASSIGN global:<variable name>="{firstname} {lastname}"

Zwischen dem Doppelpunkt und dem Variablennamen darf sich kein Leerzeichen befinden.

Wenn Sie die Assign-Aktion verwenden, dürfen Sie das Schlüsselwort ASSIGN nicht einschließen.

Sie müssen Variablen im ursprünglichen Skript nicht als global deklarieren. Indem Sie globale Variablen nur in Subskripten deklarieren, erhalten Sie einen visuellen Hinweis zu dem Skript, mit dem Sie arbeiten. Wenn Sie die Angabe global:var sehen, wissen Sie, dass Sie mit einem Subskript arbeiten.

Beispiel globaler Variablen

Das folgende Beispiel zeigt, wie Sie globale Variablen verwenden.

Alle Variablen in einem Skript anzeigen

Es gibt zwei Möglichkeiten, alle Variablen in Ihrem Skript zu sehen:

  • Die Registerkarte "Variablen" in Studio zeigt Ihnen alle in einem Skript verwendeten Variablen. Wenn diese Registerkarte geschlossen ist, öffnen Sie sie durch Klicken auf Validation > Windows > Variables.
  • Sie können die in einem Skript verwendeten Variablen auch sehen, wenn Sie einen Trace ausführen. Wenn Sie die einzelnen Zeilen in der Trace-Ausgabe auswählen, werden die Variablen, die an dieser Stelle im Skript stehen, im Bereich "Variablen" angezeigt. Sie können nacheinander auf die Zeilen im Trace klicken, um zu sehen, wie sich der Inhalt der Variablen ändert, während das Skript ausgeführt wird.

Variablen-Redaktion

Variablen-Redaktion eliminiert Variablenwerte aus Traces und Protokollen, die von einem Skript generiert wurden. Sie können Variablen und Objekte bearbeiten.

Die Schwärzung wird auf Skriptebene im Feld VariableRedaction in den Eigenschaften eines Skripts konfiguriert. Die geschwärzten Werte werden durch einen String aus X-Zeichen ersetzt. Die Länge des Variablenwertes bestimmt, wie viele X verwendet werden. Für ein geschwärztes Wort mit fünf Buchstaben würden fünf X verwendet. Eine teilweise variable Redaktion, z. B. ein Teil einer Kreditkartennummer, wird nicht unterstützt.

Variablen-Redaktion erfolgt auf Skriptebene. Es ist keine vererbbare Eigenschaft. Wenn eine geschwärzte Variable an andere Skripts übergeben wird, z. B. mit einer RunScript- oder RunSub-Aktion, wird diese Variable in den nachfolgenden Skripts nicht automatisch geschwärzt. Wenn Sie möchten, dass eine Variable immer geschwärzt wird, müssen Sie die Schwärzung der Variablen in allen Skripten konfigurieren, an die sie weitergegeben werden könnte.

Variablen, die in andere Skripte weitergegeben werden, haben einen globalen Umfang. Zum Schwärzen müssen Sie vor dem Namen der Variablen global: in das Feld VariableRedaction einfügen.

Sensible Daten sollten nie länger als nötig in einem Skript beibehalten werden. Zusätzlich zum Schwärzen der Variablenwerte können Sie die Daten auch aus der Variablen löschen. Bei den Schritten in der folgenden Aufgabe werden die Daten gelöscht.

  1. Klicken Sie in Studioauf die Skript-Leinwand, um sicherzustellen, dass nichts ausgewählt ist.
  2. Klicken Sie auf die Registerkarte Properties.
  3. Klicken Sie auf die Schaltfläche Ellipsis neben dem Feld VariableRedaction, um den String Collection Editor zu öffnen.
  4. Geben Sie die Namen der Variablen ein, die Sie unkenntlich machen wollen. Platzieren Sie eine Variable pro Zeile.
  5. Klicken Sie auf OK.
  6. Wenn Sie Daten aus der Variablen löschen möchten, platzieren Sie eine Snippet-Aktion im Skript, nachdem die sensiblen Daten verwendet wurden und nicht mehr benötigt werden.
  7. Doppelklicken Sie auf die Snippet-Aktion und fügen Sie den folgenden Code auf der Registerkarte "Textansicht" im Snippet-Editor-Fenster hinzu: 
    • Für ein dynamisches Datenobjekt: DYNAMIC <object name>
    • Für eine reguläre Variable: ASSIGN <var name> = ""
  8. Klicken Sie auf OK, um Ihre Änderungen zu speichern.