Integrierte Funktionen

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

Studio verfügt über integrierte Funktionen, die Sie in Ihren Skripten verwenden können. Einige integrierte Funktionen sind in der Liste mit automatisch vervollständigten Einträgen enthalten, die eingeblendet wird, wenn Sie Text in das Snippet editor-Fenster eingeben. Andere integrierte Funktionen sind nicht in dieser Liste enthalten, Sie können sie aber trotzdem verwenden. Ausführliche Informationen über alle verfügbaren integrierten Funktionen finden Sie in der zweiten Hälfte dieser Seite.

Diese Seite enthält auch Listen der integrierten Funktionen nach Kategorien. Damit können Sie eine Funktion einfacher finden, wenn Sie wissen, mit welchen Daten Sie arbeiten und was Sie erreichen möchten, aber wenn Sie den Namen der Funktion nicht kennen. Sie können Listen mit Funktionen anzeigen, die folgende Zwecke haben:

Außerdem finden Sie eine Liste mit anderen Funktionen, die nicht in eine bestimmte Kategorie gehören.

Weitere Informationen zur Verwendung von Funktionen in Studio finden Sie auf der Hilfeseite "Funktionen". Dort wird auch beschrieben, wie Sie eigene Funktionen erstellen.

Diese Seite enthält keine Informationen zu den integrierten Funktionen, die mit RestProxy verwendet werden, dem Dienst, mit dem Sie Ihre Skripte mit RESTful-APIs verbinden können. Diese Funktionen werden auf der Hilfeseite RestProxy beschrieben.

Testen

Laden Sie das Skript mit Funktionsbeispielen 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.

Funktionen für Datum und Uhrzeit

Verwenden Sie die folgenden Funktionen mit Angaben für Datum und Uhrzeit in Ihren Skripten. Studio unterstützt das 24-Stunden-Zeitformat, nicht das 12-Stunden-Zeitformat. Dies ist bei der Arbeit mit Zeit in Skripts zu berücksichtigen.

Ein Datum mit OLE-Automation ist ein Datum, das als Gleitkommazahl geschrieben wird. Die linke Seite des Dezimalkommas ist die Anzahl der Tage seit Mitternacht, dem 30. Dezember 1899. Die rechte Seite des Dezimalkommas ist die Zeit an diesem Tag geteilt durch 24. Zum Beispiel ist 6:00 Uhr morgens am 31. Dezember 1899 1,25.

Funktion

Beschreibung

asdate() Konvertiert den Inhalt einer Variablen in einen Datum/Uhrzeit-String im standardmäßigen Datumsformat.
asdatedow() Gibt den Wochentag als Ordnungswert von 0 bis 6 zurück. 0 ist Sonntag.
asdatetime() Konvertiert den Wert der Variablen in einen Datum/Uhrzeit-String im angegebenen Datum/Uhrzeit-Format.
asgmt() und asutc() Konvertiert den Inhalt einer Variablen in einen Datum/Uhrzeit-String, der in GMT oder UTC umgewandelt wurde.
asisodatetime()

Konvertiert den Wert einer Variablen in das ISO 8601-Format für Datum/Uhrzeit: jjjj-MM-ttTHH:mm:ss.SSSXXX.

astime() Konvertiert den Inhalt einer Variablen in einen Uhrzeit-Wert.
dateadd(date, value) Gibt ein neues Datum zurück, das auf date plus value basiert.
datebuild(year, month, day) Gibt einen Datum/Uhrzeit-String mit den Angaben für Jahr, Monat und Tag zurück.
datediff(unit,date1, date2) Gibt den Unterschied zwischen zwei Datumsangaben zurück.
datefmt(format) Konvertiert den Inhalt einer Variablen in einen Datum/Uhrzeit-String im angegebenen format.
datepart(unit)

 

Gibt einen Teil eines Datums oder einer Uhrzeit gemäß der angegebenen unit zurück.
datetimebuild(year, month, day, hour, minute, second) Gibt einen Datum/Uhrzeit-String auf Basis der folgenden Angaben zurück: Year, Month, Day, Hour, Minute, Second.
dow() Gibt den aktuellen Wochentag als Ordnungswert von 0 bis 6 zurück. 0 ist Sonntag.

Funktionen für Zahlen

Verwenden Sie die folgenden Funktionen mit Variablen, die numerische Werte enthalten. Weitere Funktionen, die Sie mit Zahlen verwenden können, sind die Funktionen für mathematische Berechnungen.

Funktion

Beschreibung

ceil(value

G ibt die kleinste ganze Zahl zurück, die gleich oder größer als der angegebene value ist.

floor(value

G ibt die größte ganze Zahl zurück, die gleich oder kleiner als der angegebene value ist.

format(format) Gibt einen String zurück, dessen numerische Zeichen im angegebenen format formatiert sind.
isdigit() Wertet den Inhalt einer Variablen aus, um festzustellen, ob das erste Zeichen numerisch ist (0–9).
isnumeric() Wertet den Inhalt einer Variablen aus, um festzustellen, ob alle Zeichen alphabetisch sind (A–Z oder a–z).
max(value1, value2) und min(value1, value2) Gibt den größeren oder kleineren Wert von zwei angegebenen Werten zurück.
random() Gibt eine ganzzahlige, nicht negative Zufallszahl zurück.
round(value) Rundet den angegebenen value auf die nächste Ganzzahl.

Funktionen für Buchstaben

Verwenden Sie die folgenden Funktionen mit Variablen, die Buchstaben enthalten.

Funktion

Beschreibung

isalpha() Wertet den Inhalt einer Variablen aus, um festzustellen, ob alle Zeichen alphabetisch sind (A–Z oder a–z).
isletter()

Wertet den Inhalt einer Variablen aus, um festzustellen, ob das erste Zeichen alphabetisch ist (a–z oder A–Z).

islower() und isupper() Wertet den Inhalt einer Variablen aus, um festzustellen, ob das erste Zeichen ein Kleinbuchstabe (a–z) oder ein Großbuchstabe (A–Z) ist.
lower() und upper()

Konvertiert alle Buchstaben im Wert in Kleinbuchstaben (a–z) oder Großbuchstaben (A–Z).

Funktionen für Berechnungen

Verwenden Sie diese Funktionen für mathematische Berechnungen. Diese Funktionen sind nicht in der Liste mit automatisch vervollständigten Einträgen enthalten, die eingeblendet wird, wenn Sie eine SNIPPET-Aktion verwenden. Sie funktionieren aber, wenn Sie sie manuell eingeben.

Funktion

Beschreibung

abs(value)

Gibt den absoluten Wert für den angegebenen value zurück.

acos(value)

Gibt den Winkel im Bogenmaß zurück, dessen Cosinus der angegebene value ist.

asin(value)

Gibt den Winkel im Bogenmaß zurück, dessen Sinus der angegebene value ist.

atan(value)

Gibt den Winkel im Bogenmaß zurück, dessen Tangens der angegebene value ist.

atan2(x, y)

Gibt den Winkel im Bogenmaß zurück, dessen Tangens der Quotient der beiden angegebenen Zahlen (x, y) ist.

cos(value)

Gibt den Cosinus für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

cosh(value)

Gibt den Hyperbelkosinus für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

exp(value)

Gibt die Zahl hoch der in value angegebenen Potenz zurück.

ln(value)

Gibt den natürlichen Logarithmus (base e) für den value zurück. value wird als Zahl mit der Basis 10 angegeben.

log10(value)

Gibt den Logarithmus auf Basis 10 für den angegebenen value zurück.

log2(value, base)

Gibt den Logarithmus auf Basis 2 für den angegebenen value zurück. value wird als Zahl mit der Basis 10 angegeben.

logn(value, base)

Gibt den Logarithmus für den angegebenen value in der angegebenen base zurück. Beide Parameter werden als Basis 10 Zahlen angegeben.

round(value)

Rundet den angegebenen value auf die nächste Ganzzahl.

sgn(value)

Gibt einen Wert zurück, der das Vorzeichen für den angegebenen value angibt. Gibt Folgendes zurück: -1, wenn value kleiner als null ist; 0, wenn value gleich null ist; 1, wenn value größer als null ist.

sin(value)

Gibt den Sinus für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

sinh(value)

Gibt den Hyperbelsinus für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

sqrt(value)

Gibt die Quadratwurzel für den angegebenen value zurück.

tan(value)

Gibt den Tangens für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

tanh(value)

Gibt den Hyperbeltangens für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

trunc(value)

Berechnet den ganzzahligen Teil für den angegebenen value. trunc() rundet value auf die nächste Ganzzahl Richtung Null.

Funktionen zum Ändern von Werten

Verwenden Sie die folgenden Funktionen, falls Sie den Wert einer Variablen ändern möchten, wenn Sie ihn einer anderen Variablen zuweisen.

Sie können Werte nicht nur bei den Funktionen ändern, die in dieser Tabelle enthalten sind, sondern auch bei zahlreichen Funktionen für Datum und Uhrzeit. Beispielsweise können Sie einen Datumswert in ein anderes Datumsformat konvertieren.

Funktion

Beschreibung

append(text) Fügt den Inhalt der ersten Variablen einer zweiten Variablen hinzu.
asjson() und asxml() Konvertiert den Inhalt einer Variablen in JSON oder XML.
dateadd(date, value)

Gibt ein neues Datum zurück, das auf date plus value basiert.

datefmt(format)

Konvertiert den Inhalt einer Variablen in einen Datum/Uhrzeit-String im angegebenen format.

format(format) Gibt einen String zurück, dessen numerische Zeichen im angegebenen format formatiert sind.
lower() und upper()

Konvertiert alle Buchstaben im Wert in Kleinbuchstaben (a–z) oder Großbuchstaben (A–Z).

replace(old, new) Ersetzt alle Vorkommen von old durch new.
split(delimiter) Konvertiert den Inhalt einer Variablen in einen String, der durch den Senkrechtstrich getrennt ist und als Array verarbeitet werden kann. Ersetzt das vorhandene delimiter-Trennzeichen durch einen Senkrechtstrich.
trim() , ltrim() und rtrim() Gibt einen String zurück, aus dem die Leerzeichen entfernt wurden. Sie können entweder alle Leerzeichen oder nur die führenden oder nachfolgenden Leerzeichen entfernen.
urlencode() und urldecode() Kodiert oder dekodiert eine URL gemäß Internetstandard für die URL-Kodierung.

Funktionen zum Bestimmen des Inhalts eines Wertes

Verwenden Sie diese Funktionen, um den Inhalt einer Variablen zu bestimmen:

Funktion

Beschreibung

contains(value) Wertet eine Variable für den angegebenen value aus.
count() Gibt die Anzahl der Elemente in einem Array oder einem Objekt zurück.
index(indexValue) Gibt das Array-Element vom Inhalt der Variablen gemäß der Angabe für indexValue zurück.
indexof(text) Gibt die Zeichenposition für den angegebenen text im Inhalt einer Variablen zurück.
isalpha () Wertet den Inhalt einer Variablen aus, um festzustellen, ob alle Zeichen alphabetisch sind (A–Z oder a–z).
isdigit() Wertet den Inhalt einer Variablen aus, um festzustellen, ob das erste Zeichen numerisch ist (0–9).
isletter()

Wertet den Inhalt einer Variablen aus, um festzustellen, ob alle Zeichen alphabetisch sind (A–Z oder a–z).

isnumeric()

Wertet den Inhalt einer Variablen aus, um festzustellen, ob alle Zeichen numerisch sind (0–9).

isupper() und islower() Wertet den Inhalt einer Variablen aus, um festzustellen, ob das erste Zeichen ein Kleinbuchstabe (a–z) oder ein Großbuchstabe (A–Z) ist.
length() Gibt die Anzahl der Zeichen im Wert der Variablen zurück.
left() und right() Gibt die Zeichen zurück, die sich am weitesten links oder rechts vom Variableninhalt befinden, wenn es sich bei den Zeichen um Zahlen handelt. Die Anzahl der zurückgegebenen Zeichen basiert auf dem Wert, der für count angegeben ist.
size()

Gibt die Anzahl der Elemente in einem Array zurück.

Funktionen zum Extrahieren von Teilen eines Wertes

Verwenden Sie diese Funktionen, wenn Sie Teil eines Wertes aus einer Variablen extrahieren möchten, um ihn in einer anderen Variablen zu verwenden:

Funktion

Beschreibung

datepart(unit)

Gibt einen Teil eines Datums oder einer Uhrzeit gemäß der angegebenen unit zurück.

index(indexValue) Gibt das Array-Element vom Inhalt der Variablen gemäß der Angabe für indexValue zurück.
left(count) und right(count) Gibt die Zeichen zurück, die sich am weitesten links oder rechts vom Variableninhalt befinden, wenn es sich bei den Zeichen um Zahlen handelt. Die Anzahl der zurückgegebenen Zeichen basiert auf dem Wert, der für count angegeben ist.
mid(start, length) Gibt die Zeichen von start bis start+length zurück.
substr(start, end) Gibt die Zeichen von start bis end zurück.

Funktionen für Arrays

Die folgenden Funktionen können mit Arrays verwendet werden.

Funktion

Beschreibung

count()

Gibt die Anzahl der Elemente in einem Array oder einem Objekt zurück.

index(indexValue)

Gibt das Array-Element vom Inhalt der Variablen gemäß der Angabe für indexValue zurück.

indexof(text)

Gibt die Zeichenposition für den angegebenen text im Inhalt einer Variablen zurück.

size()

Gibt die Anzahl der Elemente in einem Array zurück.

split(delimiter)

Konvertiert den Inhalt einer Variablen in einen String, der durch den Senkrechtstrich getrennt ist und als Array verarbeitet werden kann. Ersetzt das vorhandene delimiter-Trennzeichen durch einen Senkrechtstrich.

Andere

Funktion

Beschreibung

char(code)

Gibt ein Zeichen vom ASCII-Wert code zurück, mit dem ein Skript programmgesteuert Zeichen zu einem String hinzufügen kann.

copy(objectName)

Erstellt eine Kopie der Daten, die das dynamische Datenobjekt objectName enthält. Kopie und Original sind separat. Sie können also einen Wert in einer Version ändern, ohne dass sich dies auf denselben Wert in der anderen Version auswirkt.

iif(compare, trueval, falseval)

Inline-If für Zahlen. Wertet compare aus und gibt dann je nach dem Ergebnis der Auswertung entweder trueval oder falseval zurück.

iifs(compare, trueval, falseval)

String inline-if. Wertet compare aus und gibt dann je nach dem Ergebnis der Auswertung entweder trueval oder falseval zurück.

isnull()

Bestimmt, ob ein dynamisches Datenobjekt oder die Eigenschaft eines Objekts null ist (nicht definiert oder 0).

savetodb(1or0) Hiermit können Sie festlegen, dass der Wert einer Variablen in der Datenbank gespeichert wird.
screenpop()

Gibt einen Wert zurück, der angibt, ob das ScreenPop-Flag für die Variable gesetzt ist.

setscreenpop(1or0)

Hiermit können Sie festlegen, dass der Wert einer Variablen im Bildschirm-PopupGeschlossen Ein konfigurierbares Pop-up-Fenster mit Informationen zum Kontakt. Es wird nach einem bestimmten Ereignis auf dem Bildschirm des Agenten angezeigt, im Allgemeinen dann, wenn der Agent mit einem Kontakt verbunden wird. verwendet wird, wenn für den aktuellen ACD-SkillGeschlossen Wird verwendet, um die Bereitstellung von Interaktionen basierend auf den Kompetenzen, Fertigkeiten und Kenntnissen der Agenten zu automatisieren die Option Bildschirm-Popups verwenden aktiviert ist. Diese Funktion kann nicht mit digitalen Skripten verwendet werden. Wenn Sie Bildschirm-Popups mit digitalen Skripten nutzen möchten, verwenden Sie die POPURL-Aktion oder die RUNAPP-Aktion (Hilfeseiten in CXone StudioPOPURL-Aktion oder die RUNAPP-Aktion)

setscreenpop() ist keine echte Funktion. Es handelt sich um eine Eigenschaft von Variablen in Studio, die Sie bei der Arbeit mit Bildschirm-PopupsGeschlossen Ein konfigurierbares Pop-up-Fenster mit Informationen zum Kontakt. Es wird nach einem bestimmten Ereignis auf dem Bildschirm des Agenten angezeigt, im Allgemeinen dann, wenn der Agent mit einem Kontakt verbunden wird. festlegen können. Sie können sie bei der Arbeit in Snippets auf Variablen anwenden. Sie können sie auch festlegen, wenn Sie mithilfe der Assign-Aktion Variablen erstellen.

Fügen Sie setscreenpop() zu einer Variablen mit dem Argument 1 hinzu, damit der Wert der Variablen an das Bildschirm-Popup übergeben wird.

ASSIGN val1 = "name"
ASSIGN popthis = val1.setscreenpop(1)

 

Alle verfügbaren Funktionen

In diesem Abschnitt finden Sie ausführliche Informationen zur Verwendung jeder integrierten Funktion. Sofern nicht anders angegeben, können Sie diese Funktionen überall dort aufrufen, wo Sie eine Variable oder einen Ausdruck verwenden würden.

abs(value)

Gibt den absoluten Wert für den angegebenen value zurück.

ASSIGN abVal = "{abs(-42)}"

Ergebnis des Beispiels ist abVal = 42

acos(value)

Gibt den Winkel im Bogenmaß zurück, dessen Cosinus der angegebene value ist.

ASSIGN angleRad3 = "{acos(cosNum)}"

Ergebnis des Beispiels ist angleRad3 = 0.394791119699762

append(string)

Fügt string an das Ende des vorhandenen Inhalts der Variablen an. Diese Funktion kann nur in einer Snippet- oder einer ASSIGN-Aktion verwendet werden.

IF TEST = 1
{
  ASSIGN originalString = "My name"
  ASSIGN originalString2 = "Whose pajamas are these? "
  ASSIGN appendWithEscape = $"They're the cat's pajamas."			
}
originalString.append(" is Inigo Montoya.")
originalString2.append(AppendWithEscape)

Ergebnisse des Beispiels sind:

  • originalString = My name is Inigo Montoya.
  • originalString2 = Whose pajamas are these? They're the cat's pajamas.

asdate()

Konvertiert den Inhalt einer Variablen in einen Datum/Uhrzeit-String im standardmäßigen Datumsformat.

Bei Verwendung als String-Ausdruck: Konvertiert den Inhalt der Variablen in einen Datum/Uhrzeit-String.

Bei Verwendung als numerischer Ausdruck: Konvertiert den Inhalt der Variablen in einen Datum/Uhrzeit-Wert der OLE-Automation, indem der String-Inhalt geparst wird. Der String-Inhalt muss mit einem standardmäßigen Datumsformat von Windows übereinstimmen, wie mm/dd/yyyy.

IF TEST = 1
{
  ASSIGN myDate = "{date}"
}

//This example converts a date string into its OLE numeric equivalent
ASSIGN numericDate = myDate.asdate()

//This example converts an OLE numeric date to its string equivalent
ASSIGN stringDate = "{numericDate.asdate()}" 

Das Ergebnisse dieses Beispiels richten sich danach, an welchem Datum (Ortszeit) die Funktion ausgeführt wird. Wenn das lokale Datum der 07.03.2023 ist, lauten die Ergebnisse:

  • numericDate = 45110
  • stringDate = 07/03/2023

asdatedow()

Konvertiert den Inhalt der Variablen durch Parsen des String-Inhalts in eine OLE-Automatisierung für Datum/Uhrzeit. Dann wird der Wochentag als Ordnungswert von 0 bis 6 zurückgegeben, wobei 0 Sonntag ist. Der String-Inhalt muss mit einem der standardmäßigen Windows-Datumsformate übereinstimmen, wie MM/dd/yyyy.

IF TEST = 1
{
  ASSIGN MyDate = "07/03/2023"
}
ASSIGN MyDow = MyDate.asdatedow()
SWITCH MyDow
{
  CASE 0   { ASSIGN newToday = "Sunday" }
  CASE 1   { ASSIGN newToday = "Monday" }
  CASE 2   { ASSIGN newToday = "Tuesday" }
  CASE 3   { ASSIGN newToday = "Wednesday" }
  CASE 4   { ASSIGN newToday = "Thursday" }
  CASE 5   { ASSIGN newToday = "Friday" }
  CASE 6   { ASSIGN newToday = "Saturday" }
}

Ergebnisse des Beispiels sind

  • myDow = 1
  • newToday = Monday

asdatetime()

Konvertiert den Wert der Variablen in einen Datum/Uhrzeit-String im angegebenen Datum/Uhrzeit-Format.

Bei Verwendung als String: Konvertiert den Inhalt der Variablen in einen Datum/Uhrzeit-String.

Bei Verwendung als numerischer Wert: Konvertiert den Inhalt der Variablen in einen Datum/Uhrzeit-Wert der OLE-Automation, indem der String-Inhalt geparst wird. Der String-Inhalt muss mit einem standardmäßigen Datum/Uhrzeit-Format von Windows übereinstimmen, wie MM/dd/yyyy HH:mm:ss.

Wenn Sie ein Datum ohne Angabe der Uhrzeit übergeben, fügt die Funktion eine Uhrzeit hinzu. Der Standardwert ist 12:00 AM.

IF TEST = 1
{
  ASSIGN MyDateTime = "{now}"
  ASSIGN anotherDateTime = "04/03/23 11:34:09 PM"
}
ASSIGN numericDateTime = myDateTime.asdatetime()
ASSIGN numericDateTime2 = anotherDateTime.asdatetime()

ASSIGN stringDateTime = "{numericDateTime.asdatetime()}"
ASSIGN stringDateTime2 = "{numericDateTime2.asdatetime()}"
		

Ergebnisse des Beispiels sind:

  • numericDateTime = 45110.3720486111 (wenn das aktuelle Datum und die aktuelle Uhrzeit in Ortszeit 7.3.2023 8:55:45 AM lauten)
  • numericDateTime2 = 45019.9820486111
  • stringDateTime = 7/3/2023 8:55:45 AM
  • stringDateTime2 = 4/3/2023 11:34:09 PM

asgmt() und asutc()

Die Funktion asgmt() konvertiert die Zeit in GMT und die Funktion asutc() konvertiert die Zeit in UTC. Das Format des Datums richtet sich nach dem ursprünglichen Inhalt der Variablen.

Bei Verwendung mit einem String-Ausdruck: Die Funktionen konvertieren den Wert in einen Datum/Uhrzeit-Wert der OLE-Automation, der in GMT oder UTC umgewandelt wurde. Die Variable muss eine gültige String-Darstellung eines Datums/einer Zeit enthalten. Die Quellzeit basiert auf der Zeitzone der MandantGeschlossen Eine übergeordnete organisatorische Gruppierung, die Sie für die technische Unterstützung und Abrechnung und außerdem zur Bearbeitung von globalen Einstellungen in Ihrer CXone Umgebung einsetzen können.en oder auf der Zeitzone, die mit der Timezone-Aktion festgelegt wurde (Hilfeseite in CXone StudioTimezone-Aktion).

Bei Verwendung mit einem numerischen Ausdruck: Die Funktionen konvertieren den Wert in einen Datum/Uhrzeit-String, der in GMT oder UTC umgewandelt wurde. Beispiel: "Mo, 3. Okt. 2022 13:35:14 GMT".

Bei der Verwendung dieser Funktionen darf das Format der in der Variablen enthaltenen Zeit keine der beiden Angaben enthalten:

  • Ein Offset von UTC.
  • Ein Z-Zeichen wie 2022-03-04 18:54:39.000Z. Das Z gibt an, dass die Uhrzeit eine Abweichung von null (engl. für zero) von GMT/UTC hat.

Ist eine dieser Angaben vorhanden, tritt ein Fehler auf, wenn asgmt() oder asutc() versucht, die Zeitzonen zu konvertieren, da davon ausgegangen wird, dass die ursprüngliche Zeitzone sich von der Zeitzone der Geschäftseinheit unterscheidet. Um diesen Fehler bei Verwendung des ISO 8601-Formats für Datum/Uhrzeit zu vermeiden, fügen Sie eine Timezone-Aktion vor der Snippet-Aktion ein und stellen Sie sie auf die Zeitzone Ihrer Geschäftseinheit ein. Dadurch wird die Zeitzone auf Skriptebene festgelegt, sodass das Skript und die Geschäftseinheit dieselbe Zeitzone haben.

IF TEST = 1
{
  ASSIGN MyDateTime = #"{now}" 
}

ASSIGN GMTDateTimeNumeric = MyDateTime.asgmt()
ASSIGN GMTDateTimeString = "{GMTDateTimeNumeric.asdatetime()}"

ASSIGN UTCDateTimeNumeric = MyDateTime.asutc()
ASSIGN UTCDateTimeString = "{UTCDateTimeNumeric.asdatetime()}"

asin(value)

Gibt den Winkel im Bogenmaß zurück, dessen Sinus der angegebene value ist.

ASSIGN angleRad4 = "{asin(sinNum)}"

Ergebnis des Beispiels ist angleRad4 = 0.394791119699762

asisodatetime()

Konvertiert den Wert einer Variablen in das ISO 8601-Format für Datum/Uhrzeit: jjjj-MM-ttTHH:mm:ss.SSSXXX. Die Ausgabe dieser Funktion ist immer das ISO-Format für Datum/Uhrzeit.

In REST-API-Aufrufen werden ISO-Zeitstempel, für die eine Verschiebung von UTC angegeben ist und die in der Antwort erscheinen, in Mountain Time (MT) konvertiert. Wenn keine Verschiebung angegeben ist, wird der Zeitstempel nicht konvertiert.

IF TEST = 1
{
	ASSIGN myDateTime = "{now}"
	ASSIGN anotherDateTime = "04/03/23 11:34:09 PM"
}
ASSIGN numericDateTime = myDateTime.asisodatetime()
ASSIGN numericDateTime2 = anotherDateTime.asisodatetime()
ASSIGN stringDateTime = "{numericDateTime.asisodatetime()}"
ASSIGN stringDateTime2 = "{numericDateTime2.asisodatetime()}"

Ergebnisse des Beispiels sind:

  • numericDateTime = 2023-07-03T09:43:06.000Z (wenn das aktuelle Datum und die aktuelle Uhrzeit in Ortszeit 7.3.2023 9:43:06 AM lauten)
  • numericDateTime2 = 2023-04-03T23:34:09.000Z
  • stringDateTime = 2023-07-03T05:43:06.000Z
  • stringDateTime2 = 2023-04-03T19:34:09.000Z

asjson() und asxml()

Konvertiert ein JSON- oder XML-Objekt in einen String und weist es einer neuen Variablen zu. Im folgenden Beispiel wird ein dynamisches Datenobjekt verwendet, Sie können diese Funktionen aber auch mit Objekten verwenden, die von einem API-Aufruf zurückgegeben wurden oder die von den Aktionen eines virtuellen Agenten-BotsGeschlossen Eine Softwareanwendung, die Kundeninteraktionen anstelle eines Live-Mitarbeiters abwickelt. stammen).

Die Funktion asjson() konvertiert den gesamten Inhalt des Objekts als String, der in doppelte Anführungszeichen eingeschlossen ist, einschließlich numerischer oder boolescherGeschlossen Ein Datentyp, der zwei mögliche Werte hat: wahr und falsch. Werte. Sie können dies in Ihrem Skript berücksichtigen, wenn Ihr JSON-Code einen ordnungsgemäß formatierten numerischen oder booleschen Wert enthalten muss. Eine Lösung besteht darin, die Funktion replace() zu verwenden. Sie ermöglicht es Ihnen, die doppelten Anführungszeichen im Stringwert durch null zu ersetzen.

DYNAMIC object1
ASSIGN object1.value1 = "this"
ASSIGN object1.value2 = "that"
DYNAMIC object2				
ASSIGN object2.value1 = "first"
ASSIGN object2.value1 = "last"			

ASSIGN objectjson = "{object1.asjson()}"
ASSIGN objectxml = "{object2.asxml()}"		

Eine andere Lösung besteht darin, Platzhalter-Strings einzufügen, die manuell ersetzt werden, nachdem Sie das dynamische Objekt in einen JSON-String umgewandelt haben.

ASSIGN integerValue = 1234
ASSIGN trueValue = true
ASSIGN falseValue = false
DYNAMIC object
ASSIGN object.myIntegerValue = "INTEGERVALUE_PLACEHOLDER"
IF trueValue = true
  {
	ASSIGN object.myTrueValue = "TRUE_PLACEHOLDER"
  }
ELSE
  {
	ASSIGN object.myTrueValue = "FALSE_PLACEHOLDER"
  }
IF falseValue = true
  {
	ASSIGN object.myFalseValue = "TRUE_PLACEHOLDER"
  }
ELSE
  {
	ASSIGN object.myFalseValue = "FALSE_PLACEHOLDER"
  }
ASSIGN objectJSON = "{object.asjson()}"

ASSIGN objectJSON = objectJSON.replace("{char(34)}TRUE_PLACEHOLDER{char(34)}","true").replace("{char(34)}FALSE_PLACEHOLDER{char(34)}","false")
ASSIGN objectJSON = objectJSON.replace("{char(34)}INTEGERVALUE_PLACEHOLDER{char(34)}",integerValue)

Beste Vorgehensweise: Verwenden Sie die Funktion asjson() in einer Snippet-Aktion und speichern Sie den resultierenden JSON-Code in einer Stringvariablen. Verwenden Sie die Stringvariable in den Eigenschaften anderer Studio-Aktionen, wenn Sie die JSON-Daten weitergeben müssen. Diese Methode vermeidet die Möglichkeit von Validierungsfehlern beim Speichern des Skripts.

Ergebnisse des Beispiels sind:

  • objectjson={"value1":"this","value2":"that"}

  • objectxml=<?xml version="1.0" encoding="utf-16" standalone="yes"?><DynamicDataObject><value1>first</value1><value2>last</value2></DynamicDataObject>

astime()

Konvertiert den Inhalt einer Variablen in einen Uhrzeit-Wert.

Bei Verwendung mit einem Stringwert: Konvertiert den Inhalt der Variablen in einen Datum/Uhrzeit-Wert der OLE-AutomationGeschlossen Möglichkeit, Datumsangaben als Gleitkommazahlen zu schreiben. Gibt die Anzahl der Tage seit dem 30. Dezember 1899 an.. Beispiel: 0.353506944447872.

Bei Verwendung mit einem numerischen Wert: Konvertiert den Inhalt der Variablen in einen Uhrzeit-String. Die Variable muss einen Uhrzeit-Wert der OLE-Automation enthalten. Beispiel: 8:29:03 AM.

IF TEST = 1
{
  ASSIGN myTime = "{time}"
}

//This example converts a time string into its OLE numeric equivalent
ASSIGN numericTime = myTime.astime()

//This example converts a OLE numeric time to its string equivalent
ASSIGN stringTime = "{numericTime.astime()}" 

Die Ergebnisse dieses Beispiels richten sich nach der Ortszeit beim Testen der Funktion. Wenn time den Wert 8:37:42 AM hat, lauten die Ergebnisse:

  • numericTime = 0.359513888892252
  • stringTime = 8:37:42 AM

atan(value)

Gibt den Winkel im Bogenmaß zurück, dessen Tangens der angegebene value ist.

ASSIGN angleRad = "{atan(0.4166666666666667)}"		

Ergebnis des Beispiels ist angleRad=0.394791119699762

atan2(value)

Gibt den Winkel im Bogenmaß zurück, dessen Tangens der Quotient der beiden angegebenen Zahlen (x, y) ist.

ASSIGN angleRad2 = "{atan2(5,12)}"

Ergebnis des Beispiels ist angleRad2=0.394791119699761

ceil(value) und floor(value)

ceil gibt die kleinste ganze Zahl zurück, die gleich oder größer als der angegebene value ist.

floor gibt die größte ganze Zahl zurück, die gleich oder kleiner als der angegebene value ist.

IF TEST = 1
{
  ASSIGN value = 102.589
}
ASSIGN newValue1 = floor(value)

ASSIGN newValue2 = ceil(value)

Ergebnisse des Beispiels sind:

  • newValue1 ist 102.
  • newValue1 ist 103.

contains(value)

Gibt den Wert 1 (true) zurück, wenn die Variable einen bestimmten value enthält. Wenn es sich bei der Variablen um ein Array handelt, werden alle Elemente in Bezug auf den genauen value überprüft.

Bei contains() wird die Groß- und Kleinschreibung nicht berücksichtigt.

IF TEST = 1
{
  ASSIGN varString1 = "abc!123"
  ASSIGN varString2 = "8001234567|8881234567|8771234567"
  ASSIGN dnis = 8881234567
  ASSIGN dnis2 = 8887654321
}
ASSIGN stringFoundRes1 = varString1.contains('!') // true
ASSIGN stringFoundRes2 = varString1.contains('D') // false 

ASSIGN DNISFoundRes1 = varString2.contains(dnis) // true
ASSIGN DNISFoundRes2 = varString2.contains(dnis2) // false

Ergebnisse des Beispiels sind:

  • stringFoundRes1 ist 1 (true).
  • stringFoundRes2 ist 0 (false).
  • DNISFoundRes1 ist 1 (true).
  • DNISFoundRes2 ist 0 (false).

char(code)

Gibt ein Zeichen vom ASCII-Wert code zurück, mit dem ein Skript programmgesteuert Zeichen zu einem String hinzufügen kann. Sie können zum Beispiel Tabulatorzeichen sowie Zeichen für einen Wagenrücklauf oder eine neue Zeile hinzufügen.

Seien Sie mit dieser Funktion vorsichtig. char(0) bis char(7) sind für den internen Gebrauch reserviert und können dazu führen, dass das Skript nicht korrekt funktioniert.

IF TEST = 1
{
  ASSIGN textToSpeech = "John Doe"
  ASSIGN varWithCommas = "one,two,three,four"
}

ASSIGN character1 = "{char(34)}"
ASSIGN character2 = "{char(44)}"
ASSIGN character3 = "{char(39)}"

ASSIGN marqueeMessage = "Marquee {char(10) char(13)} Message on {char(10) char(13)} different lines."

ASSIGN promptListWithDoubleQuotes = "{char(34)}Prompts\File with space.wav{char(34)} {char(34)}{textToSpeech}{char(34)}"

ASSIGN varWithReplacedCommas = "{varWithCommas.replace(char(44),' ')}"

ASSIGN character4 = "{char(123)}"
ASSIGN character5 = "{char(125)}"
ASSIGN cssWithReplacedBrackets = "a {char(123)}text-decoration: none;{char(125)}"

Ergebnisse des Beispiels sind:

  • marqueeMessage = "Marquee

    Message on

    different lines."

  • promptListWithDoubleQuotes = "Prompts\File with space.wav" "John Doe"
  • varWithReplacedCommas = one two three four
  • cssWithReplacedBrackets = a {text-decoration: none;}

copy(objectName)

Erstellt eine Kopie der Daten, die das dynamische Datenobjekt objectName enthält. Kopie und Original sind separat. Sie können also einen Wert in einer Version ändern, ohne dass sich dies auf denselben Wert in der anderen Version auswirkt. Erfahren Sie mehr über das Kopieren von dynamischen Objekten.

Sie können die Funktion copy() mit Untereigenschaften verwenden. Zum Beispiel: currentContact.who = copy(beowulfCharacteristics.name).

DYNAMIC firstObject
DYNAMIC secondObject

secondObject = copy(firstObject)

Die Funktion copy() belegt mehr Systemressourcen als die Zuweisung einer Referenz. Sie führt eine Tiefenkopie durch, indem sie das Objekt in eine Textdarstellung und dann zurück in ein Objekt konvertiert. Wenn das Objekt, mit dem Sie arbeiten, große Datenmengen enthält, kann sich dieser Vorgang auf die Funktionsweise des Skripts auswirken.

cos(value)

Gibt den Cosinus für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

ASSIGN angleRad = 0.394791119699762 //in radians
ASSIGN cosNum = "{cos(angleRad)}"		

Ergebnis des Beispiels ist cosNum=0.923076923076923

cosh(value)

Gibt den Hyperbelkosinus für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

 ASSIGN hCosine = "{cosh(angleRad)}"

Ergebnis des Beispiels ist hCosine=1.07894746856059

count() und size()

Gibt die Anzahl der Elemente in einem Array zurück. size() funktioniert nur mit Arrays. count() funktioniert mit Arrays in Objekten.

Wenn der Wert kein Array ist, aber nicht leer ist, wird der Wert 1(true) zurückgegeben. Wenn der Wert leer ist, wird 0 (false) zurückgegeben.

IF TEST = 1
{
  ASSIGN example1 = "Beowulf|Grendel|Hrothgar|Wyrm|Breca|Scyld|Hrethel"
  ASSIGN example2 = "8015551234"
  ASSIGN example3 = ""
  DYNAMIC example4 
  ASSIGN example4[1].name = "Beowulf"
  ASSIGN example4[2].name = "Grendel"
}
ASSIGN ex1Size = example1.size()
ASSIGN ex2Size = example2.size()
ASSIGN ex3Size = example3.size()

ASSIGN ex1Count = example1.count()
ASSIGN ex2Count = example2.count()
ASSIGN ex3Count = example3.count()

ASSIGN ex4Count = count(example4)

Ergebnisse des Beispiels sind:

  • exSize und ex1Count sind 7.
  • ex2Size und ex2Count sind 1.
  • ex3Size und ex3Count sind 0.
  • ex4Count ist 2.

dateadd(unit, date, value)

Gibt ein neues Datum zurück, das auf date plus value basiert.. Das neue Datum wird als Datum/Uhrzeit der OLE-AutomationGeschlossen Möglichkeit, Datumsangaben als Gleitkommazahlen zu schreiben. Gibt die Anzahl der Tage seit dem 30. Dezember 1899 an. zurückgegeben. Die Interpretation von value wird von unit bestimmt. Wenn value negativ ist, wird value von date abgezogen.

Es empfiehlt sich, eine gültige Datum/Uhrzeit-Variable zu übergeben, wie im folgenden Beispiel gezeigt. Dabei steht vor dem Wert von myDateTime ein #-Zeichen. Dadurch entsteht eine Datum/Uhrzeit-Variable.

Mögliche Werte für unit sind: year, month, week, day, hour, minute und second.

Bei unit wird die Groß-/Kleinschreibung berücksichtigt. Schließen Sie unit in doppelte oder einfache Anführungszeichen ein oder übergeben Sie eine Variable, die unit enthält. Wenn Sie eine Variable übergeben, schließen Sie sie nicht in Anführungszeichen oder geschweifte Klammern ein.

Wenn Sie diese Funktion in einem String verwenden möchten, schließen Sie asdatetime() ein, wie im Beispiel unten gezeigt.

IF TEST = 1
{
  ASSIGN myDateTime = #"{now}"
}
//These are examples of adding to a datetime variable:

ASSIGN newDateYearNumeric = dateadd('year', myDateTime, 1) //add a single year
ASSIGN newDateYearString = "{newDateYearNumeric.asdatetime()}"

ASSIGN newDateMonthNumeric = dateadd('month', myDateTime, 1) //add a single month
ASSIGN newDateMonthString = "{newDateMonthNumeric.asdatetime()}"

ASSIGN newDateWeekNumeric = dateadd('week', myDateTime, 1) //add a single week
ASSIGN newDateWeekString = "{newDateWeekNumeric.asdatetime()}"

ASSIGN NewDateDayNumeric = dateadd('day', MyDateTime, 1) //add a single day
ASSIGN NewDateDayString = "{NewDateDayNumeric.asdatetime}"

ASSIGN newDateHourNumeric = dateadd('hour', myDateTime, 1) //add a single hour
ASSIGN newDateHourString = "{newDateHourNumeric.asdatetime()}"

ASSIGN NewDateMinuteNumeric = dateadd('minute', myDateTime, 1) //add a single minute
ASSIGN NewDateMinuteString = "{NewDateMinuteNumeric.asdatetime()}"

ASSIGN newDateSecondNumeric = dateadd('second', myDateTime, 1) //add a single second
ASSIGN newDateSecondString = "{newDateSecondNumeric.asdatetime()}"

//This is an example of subtracting from a date:
ASSIGN oldDateMonthNumeric = dateadd('month', myDateTime, -2) //remove 2 months
ASSIGN oldDateMonthString = "{0ldDateMonthNumeric.asdatetime()}"

Ergebnisse des Beispiels sind wie folgt, wobei der 3. März 2023 im Format 3/3/2023 10:42:44 AM als Wert von now verwendet wird:

newDateYearString = 3/3/2024 10:42:44 AM

newDateMonthString = 4/3/2023 10:42:44 AM

newDateWeekString = 3/10/2023 10:42:44 AM

newDateDayString = 3/4/2023 10:42:44 AM

newDateHourString = 3/3/2023 11:42:44 AM

newDateMinuteString = 3/3/2023 10:43:44 AM

newDateSecondString = 3/3/2023 10:42:45 AM

datebuild(year, month, day)

Gibt einen Datum/Uhrzeit-String mit den Angaben für Year, Month und Day zurück.

Bei Verwendung in einem String: Gibt ein numerisches Datum zurück, das im Standardformat für Datum/Uhrzeit formatiert ist, einschließlich der Uhrzeit. Die Uhrzeit ist standardmäßig Mitternacht. Wenn das Datum mit den Namen der Monate und Tage zurückgegeben werden soll, verwenden Sie die Funktionen asdate() oder asdatetime(), wie im Beispiel unten gezeigt.

Bei Verwendung in einem numerischen Ausdruck: Gibt ein Datum als Datum/Uhrzeit-String der OLE-AutomationGeschlossen Möglichkeit, Datumsangaben als Gleitkommazahlen zu schreiben. Gibt die Anzahl der Tage seit dem 30. Dezember 1899 an. zurück.

IF TEST = 1
{
  ASSIGN month = "1"
  ASSIGN day = "24"
  ASSIGN year = "1936"
}

ASSIGN stringDate1 = "{datebuild(Year,Month,Day).asdate}"
ASSIGN stringDate2 = "{datebuild(Year,Month,Day)}"

ASSIGN numericDate = datebuild(Year,Month,Day)

Ergebnisse des Beispiels sind:

  • stringDate1 = 1/24/1936
  • stringDate2 = 1/24/1936 12:00:00 AM
  • numericDate = 13173

datediff(unit, date2)

Gibt den Unterschied zwischen zwei Datumsangaben zurück: date1 und date2.

unit gibt den zu vergleichenden Teil des Datums an. date2 gibt das Datum an, das mit dem Wert der Variablen verglichen werden soll. Wenn date2 größer als der Wert innerhalb der Variablen ist, sind die Ergebnisse positiv.

Mögliche Werte für unit sind: week, day, hour, minute und second.

Bei unit wird die Groß-/Kleinschreibung berücksichtigt. Schließen Sie unit in doppelte oder einfache Anführungszeichen ein oder übergeben Sie eine Variable, die unit enthält. Wenn Sie eine Variable übergeben, schließen Sie sie nicht in Anführungszeichen oder geschweifte Klammern ein.

Ergibt die Differenz einen Bruch, ist auch der Rückgabewert ein Bruch. Wenn die Variable z. B. das Datum und die Uhrzeit 10/15/2022 6:00 AM enthält und date2 als 10/16/2022 6:00 PM ausgewertet wird, ist das Ergebnis für unit day gleich 1.5.

IF TEST = 1
{
  ASSIGN myDateTime = #"{now}"
  ASSIGN myBirthday = #"4/24/1936 10:42 PM"
}
ASSIGN weekDiff = datediff("week", myBirthday, myDateTime)
ASSIGN dayDiff = datediff("day", myBirthday, myDateTime)
ASSIGN hourDiff = datediff("hour", myBirthday, myDateTime)
ASSIGN minuteDiff = datediff("minute", myBirthday, myDateTime)
ASSIGN secondDiff = datediff("second", myBirthday, myDateTime)

Ergebnisse des Beispiels sind:

  • dayDiff = 1584.9546875
  • hourDiff = 38038.9125
  • minuteDiff = 2282334.75
  • secondDiff = 136940085
  • weekDiff = -368.850553902116

datefmt(date, format)

Gibt date mit dem angegebenen Formatstring aus. date muss einen der folgenden Werte haben:

Wenn Sie das Ausgabeformat definieren, verwenden Sie die Formatzeichen, um die Darstellungsweise von Datum und Uhrzeit zu bestimmen.

ASSIGN currentTime = now
ASSIGN formCurrentTime1 ="{datefmt(currentTime, 'yyyy-MM-dd HH:mm:ss')}"
ASSIGN formCurrentTime2 ="{datefmt(currentTime, 'MM/dd/yyyy hh:mm:ss')}"
ASSIGN formCurrentTime3 ="{datefmt(currentTime, 'HHmmssyyyyMMdd')}"
ASSIGN formCurrentTime4 ="{datefmt(currentTime, 'HH:mm:ss')}"

Ergebnisse des Beispiels sind

  • formCurrentTime1 = 2023-06-30 14:03:17
  • formCurrentTime2 = 06/30/2023 02:03:17
  • formCurrentTime3 = 14031720230630
  • formCurrentTime4 = 14:03:17

Mit der Funktion datefmt()  können Sie auch einen Teil des Datums aus einem vorhandenen Datum/Uhrzeit-Wert extrahieren. Verwenden Sie dazu diese Syntax:

ASSIGN <var> = "{<date var>.datefmt('<format>')}"

Beispiel:

ASSIGN myDate = #"{now}"
ASSIGN myYear2 = "{myDate.datefmt('yyyy')}"

Ergebnis des Beispiels ist myYear2 = 2023

datepart(unit)

Gibt einen Teil eines Datums oder einer Zeit zurück. Gibt einen Teil eines Datums oder einer Uhrzeit gemäß der angegebenen unit zurück. Die Variable muss einen Datum/Uhrzeit-Typ enthalten oder einen String, der ein ordnungsgemäß formatierter Datum/Uhrzeit-Wert oder eine Zahl der OLE-AutomationGeschlossen Möglichkeit, Datumsangaben als Gleitkommazahlen zu schreiben. Gibt die Anzahl der Tage seit dem 30. Dezember 1899 an. ist. unit gibt an, welcher Teil des Datums zurückgegeben werden soll. Diese Funktion muss für eine Datum/Uhrzeit-Variable aufgerufen werden. Der Code funktioniert nicht, wenn ein Datum/Uhrzeit-Wert an die Funktion übergeben wird.

Mögliche Werte für die Einheit (unit) sind: year, month, day, hour, minute, second und dow.

Bei unit wird die Groß-/Kleinschreibung berücksichtigt. Schließen Sie unit in doppelte oder einfache Anführungszeichen ein oder übergeben Sie eine Variable, die unit enthält. Wenn Sie eine Variable übergeben, schließen Sie sie nicht in Anführungszeichen oder geschweifte Klammern ein.

Wenn die Funktion wegen einer fehlerhaften oder unerwarteten Eingabe nicht ausgeführt werden kann, lautet die Standardausgabe 30. Dezember 1899.

Bei Verwendung in einem String:

Gibt die Stringdarstellung des angegebenen Teils für date zurück:

  • Month gibt drei Zeichen als Abkürzung für den Monat zurück.
  • Year gibt das ganze Jahr mit vier Stellen zurück.
  • Hour gibt die Stunde im 24-Stunden-Format zurück.
  • Dow steht für "Day of Week", also Wochentag, und gibt die vollständige, nicht abgekürzte Stringdarstellung des Wochentages zurück. Zum Beispiel Donnerstag.

Alle numerischen Werte mit Ausnahme des Jahres haben als Präfix eine 0, wenn sie aus weniger als zwei Ziffern bestehen.

Bei Verwendung in einem numerischen Ausdruck:

Gibt die numerische Darstellung des angegebenen Teils für date zurück:

  • Year gibt das ganze Jahr mit vier Stellen zurück.
  • Hour gibt die Stunde im 24-Stunden-Format zurück.
  • Dow (Day of Week) gibt den Ordnungswert (06) für den Wochentag zurück. Dabei ist Sonntag 0, Montag 1 usw.
IF TEST = 1
{
  ASSIGN myDateTime = now
}
ASSIGN myYear = myDateTime.datepart('year')
ASSIGN myHour = myDateTime.datepart('hour')				
ASSIGN myMinute = myDateTime.datepart('minute')
ASSIGN mySecond = myDateTime.datepart('second')
				
ASSIGN stringMyDay = "{myDateTime.datepart('day')}"
ASSIGN numericMyDay = myDateTime.datepart('day')
				
ASSIGN stringMyMonth = "{myDateTime.datepart('month')}"
ASSIGN numericMyMonth = myDateTime.datepart('month')
							
ASSIGN stringMyDow = "{myDateTime.datepart('dow')}"
ASSIGN numericMyDow = myDateTime.datepart('dow')

Ergebnisse des Beispiels sind:

  • myYear = 2023
  • myHour = 13
  • myMinute = 51
  • mySecond = 3
  • stringMyDay = 30
  • numericMyDOW = 5
  • stringMyDOW = Friday
  • numericMyMonth = 6
  • stringMyMonth = Jun

datetimebuild(year, month, day, hour, minute, second)

Gibt einen Datum/Uhrzeit-Wert zurück. Wenn die Funktion wegen einer fehlerhaften oder unerwarteten Eingabe nicht ausgeführt werden kann, lautet die Standardausgabe 30. Dezember 1899.

Bei Verwendung in einem String: Gibt Datum/Uhrzeit im standardmäßigen Format zurück.

Bei Verwendung als numerischer Ausdruck: Gibt Datum/Uhrzeit als OLE-AutomationGeschlossen Möglichkeit, Datumsangaben als Gleitkommazahlen zu schreiben. Gibt die Anzahl der Tage seit dem 30. Dezember 1899 an. zurück.

IF TEST = 1
{
  ASSIGN month = "1"
  ASSIGN day = "24"
  ASSIGN year = "1985"
  ASSIGN hour = "15"
  ASSIGN minute = "42"
  ASSIGN second = "13"
}
ASSIGN stringDate = "{datetimebuild(year,month,day,hour,minute,second)}"
ASSIGN numericDate = datetimebuild(year,month,day,hour,minute,second)

Ergebnisse des Beispiels sind:

  • numericDate = 31071.6543171296
  • stringDate = 1/24/1985 3:42:13 PM

dow()

Gibt den Wochentag als Ordnungswert von 0 bis 6 zurück. 0 ist Sonntag.

Die Variable muss einen Datum/Uhrzeit-Typ enthalten oder einen String, der ein ordnungsgemäß formatierter Datum/Uhrzeit-Wert oder eine Zahl der OLE-AutomationGeschlossen Möglichkeit, Datumsangaben als Gleitkommazahlen zu schreiben. Gibt die Anzahl der Tage seit dem 30. Dezember 1899 an. ist. Wenn die Funktion wegen einer fehlerhaften oder unerwarteten Eingabe nicht ausgeführt werden kann, lautet die Standardausgabe 30. Dezember 1899.

ASSIGN myNow = "{now}"
ASSIGN myDow = myNow.dow()

Die Ergebnisse der Funktion richten sich nach dem Wert von now , wenn dow ausgewertet wird.

format(specifiers)

Gibt einen String zurück, der im angegebenen specifiers formatiert ist. specifiers gilt nur für die in der Variablen enthaltenen numerischen Werte. Verwenden Sie für pscifiers die folgenden Formatzeichen:

  • C oder c: Währung
  • E oder e: wissenschaftlich/exponentiell
  • F oder f: Festkomma
  • N oder n: Zahl

  • P oder p: Prozent
  • R oder r: Round-Trip (Schleife)
  • X oder x: hexadezimal
  • 0: Null-Platzhalter

Erfahren Sie mehr über die numerischen Formate, die mit dieser Funktion verwendet werden können.

IF TEST = 1
{
  ASSIGN stringVal = "0013001.93912837"
  ASSIGN stringVal2 = 6002348902348890234.234432234
}
ASSIGN currencyResultBigC = "{stringVal.format('C3')}"
ASSIGN currencyResultLilC = "{stringVal.format('c')}"

ASSIGN scientificResult = "{stringVal.format('e')}"
ASSIGN scientificResult2 = "{stringVal.format('E2')}"

ASSIGN fixedPointResult = "{stringVal.format('F3')}"
ASSIGN fixedPointResult2 = "{stringVal.format('f')}"


ASSIGN numberResult = "{stringVal.format('N')}"
ASSIGN numberResult2 = "{stringVal.format('n4')}"

ASSIGN percentResult = "{stringVal.format('P')}"
ASSIGN percentResult2 = "{stringVal.format('P2')}"

ASSIGN roundTripResult = "{stringVal.format('R')}"

ASSIGN number1 = "1789789"
ASSIGN sectionSeparator1 = number1.format('###,###.##;0000.00;000.0000')

ASSIGN number2 = "0"
ASSIGN sectionSeparator2 = number2.format('0.00;0000.00;000.0000')

ASSIGN number3 = "-4321"
ASSIGN sectionSeparator3 = number3.format('0.00;0000.00;000.0000')

ASSIGN number6 = "2343.56"
ASSIGN digitPlaceholders1 = number6.format('###.###')

//Examples of the double ## and 00 placeholders

ASSIGN number4 = "456.47"
ASSIGN doubleZeroSpecifier = number4.format('00')

ASSIGN number7  = "456.47"
ASSIGN doubledigitSpecifier = number7.format('##')

//in the following example, notice the 0 in the hundredths place. 
//With the zero placeholder, it appears in the output. With the # placeholder
//it does not. 

ASSIGN number5 = "2343456.2043"
ASSIGN zeroPlaceholders = number5.format('000,000.00')

ASSIGN number8 = "2043456.2043"
ASSIGN digitPlaceholders2 = number8.format('###,###.##')

Ergebnisse des Beispiels sind:

  • currencyResultBigC = $13,001.939
  • currencyResultLilC = $13,001.94
  • fixedPointResult = 13001.939
  • fixedPointResult2 = 13001.94
  • numberResult = 13,001.94
  • numberResult2 = 13,001.9391
  • percentResult = 1,300,193.91%
  • percentResult2 = 1,300,193.91%
  • roundTripResult = 13001.93912837
  • scientificResult = 1.300194e+004
  • scientificResult2 = 1.30E+004

index(indexValue)

Gibt das Array-Element vom Inhalt der Variablen gemäß der Angabe für indexValue zurück. Dies ist mit dem Lesen eines Arrays mit eckigen Klammern identisch. Beispiel: variable[3] ist identisch mit variable.index(3).

Arrays in Studio beginnen mit 1, nicht mit 0.

IF TEST = 1
{
  ASSIGN example1 = "Beowulf|Grendel|Hrothgar|Wyrm|Breca|Scyld|Hrethel"
  ASSIGN indexValue = 3
}
ASSIGN arrayPart1 = "{example1.index(indexValue)}"

indexof(string)

Gibt die Zeichenposition für den angegebenen string zurück, wie in der Variablen enthalten. Die erste Position ist 1. Wenn die Variable nicht string enthält, gibt die Funktion den Wert 0 zurück. Bei dieser Funktion wird zwischen Groß- und Kleinschreibung unterschieden.

IF TEST = 1
{
  ASSIGN example1 = "Beowulf|Grendel|Hrothgar|Wyrm|Breca|Scyld|Hrethel"
  ASSIGN example2 = "The Epic Poem"
}
ASSIGN arrayLoc = example1.indexof('Breca')
ASSIGN characterLoc = example2.indexof('E')
ASSIGN invalidLoc = example2.indexof('e')

iif(compare, trueval, falseval)

Inline-If für Zahlen. Wertet compare aus und gibt dann je nach dem Ergebnis der Auswertung entweder trueval oder falseval zurück.

Wenn compare ungleich null (true) ist, wird trueval zurückgegeben.

Wenn compare null (false) ist, wird falseval zurückgegeben.

trueval und falseval müssen beide numerische Werte oder Ausdrücke sein. Strings können nicht verwendet werden. Diese Funktion ist mit der iifs()-Funktion identisch, abgesehen davon, dass sie numerische Werte erwartet.

ASSIGN val1 = 4 > 5
ASSIGN val2 = 4  < 5

ASSIGN test1 = val1 > val2
ASSIGN test2 = val1 < val2

ASSIGN trueS = "you win"
ASSIGN falseS = "try again"

ASSIGN varFalse = "{iif(test1,trueS,falseS)}"

ASSIGN varTrue = "{iif(test2,trueS,falseS)}"

Ergebnisse des Beispiels sind:

  • varFalse = "try again"
  • varTrue = "you win"

iifs(compare, truestr, falsestr)

String inline-if. Wertet compare aus und gibt dann je nach dem Ergebnis der Auswertung entweder trueval oder falseval zurück.

Wenn compare ungleich null (true) ist, wird truestr zurückgegeben.

Wenn compare null (false) ist, wird falsestr zurückgegeben.

Diese Funktion ist mit iif() identisch, abgesehen davon, dass sie Strings erwartet.

ASSIGN val1 = "grapes" 
ASSIGN val2 = "grapey"

ASSIGN test1 = val1 >  val2
ASSIGN test2 = val1 <  val2

ASSIGN trueS = "you win"
ASSIGN falseS = "try again"

ASSIGN varFalse = "{iifs(test1,trueS,falseS)}"

ASSIGN varTrue = "{iifs(test2,trueS,falseS)}"

Ergebnisse des Beispiels sind :

  • varFalse = "try again"
  • varTrue = "you win"

isalpha()

Die Funktion isalpha() gibt 1 (true) zurück, wenn alle Zeichen in der Variablen alphabetische Buchstaben sind (A–Z, a–z). Wenn alle Zeichen nicht alphabetisch sind, gibt die Funktion 0 zurück. Für eine leere Variable oder einen Wert, der Sonderzeichen (wie # oder $) oder Zahlen enthält, wird 0 zurückgegeben. Siehe auch: isletter().

IF TEST = 1
{
  ASSIGN varAlpha = "abcde"
  ASSIGN varNum = "12345"
}
ASSIGN alphaRes1 = varAlpha.isalpha() //true
ASSIGN alphaRes2 = varNum.isalpha() //false

isdigit()

Die Funktion isdigit() gibt 1 (true) zurück, wenn das erste Zeichen in der Variablen eine numerische Ziffer ist (0–9). Andernfalls gibt die Funktion 0 (false) zurück. Eine leere Variable oder ein Wert, der mit einem Sonderzeichen beginnt, gibt 0 zurück. Siehe auch: isletter().

IF TEST = 1
{
  ASSIGN example1 = "12Monkeys"
  ASSIGN example2 = "Oceans11"
}
ASSIGN result1 = example1.isdigit() //This is True
ASSIGN result2 = example2.isdigit() //This is False

isletter()

Die Funktion isletter() gibt 1 (true) zurück, wenn das erste Zeichen in der Variablen ein alphabetischer Buchstabe ist (A–Z, a–z). Andernfalls gibt die Funktion 0 (false) zurück. Eine leere Variable oder ein Wert, der mit einem Sonderzeichen beginnt, gibt 0 zurück. Siehe auch: isdigit().

IF TEST = 1
{
  ASSIGN example1 = "12Monkeys"
  ASSIGN example2 = "Oceans11"
}
ASSIGN result3 = example1.isletter() //This Is False
ASSIGN result4 = example2.isletter() //This Is True

isnumeric()

Die Funktion isnumeric() gibt 1 (true) zurück, wenn alle Zeichen in der Variablen Zahlen sind. Wenn eines der Zeichen nicht numerisch ist, gibt die Funktion 0 zurück. Für eine leere Variable oder einen Wert, der Sonderzeichen (wie # oder $) oder Zahlen enthält, wird 0 zurückgegeben. Siehe auch: isdigit().

IF TEST = 1
{
  ASSIGN varAlpha = "abcde"
  ASSIGN varNum = "12345"
}
ASSIGN numRes1 = varNum.isnumeric() //true
ASSIGN numRes2 = varAlpha.isnumeric() //false

islower() und isupper()

Die Funktion isupper() gibt 1 (true) zurück, wenn das erste Zeichen der Variablen ein Großbuchstabe ist. Andernfalls gibt die Funktion 0 (false) zurück.

Die Funktion islower() gibt 1 (true) zurück, wenn das erste Zeichen der Variablen ein Kleinbuchstabe ist. Andernfalls gibt die Funktion 0 (false) zurück.

IF TEST = 1
{
  ASSIGN example1 = "Beowulf"
  ASSIGN example2 = "monster fighter"
}
ASSIGN result1 = example1.isupper() //This is true
ASSIGN result2 = example2.isupper() //This is false
ASSIGN result3 = example1.islower() //This is false
ASSIGN result4 = example2.islower() //This is true

left(number) und right(number)

Gibt die number -Zeichen zurück, die sich am weitesten links oder rechts befinden.

IF TEST = 1
{
  ASSIGN example1 = "Abc.456"
  ASSIGN locationVar = 4
}
ASSIGN stringLeftVariable = "{example1.left(locationVar - 1)}"
ASSIGN numericLeftVariable = example1.left(locationVar - 1)
ASSIGN stringRightVariable = "{example1.right(locationVar + 1)}"
ASSIGN numericRightVariable = example1.right(locationVar + 1)

Ergebnisse des Beispiels sind

  • numericLeftVariable = Gre
  • numericRightVariable = 34567
  • stringLeftVariable = Gre
  • stringRightVariable = 34567

length()

Gibt die Länge der Textdarstellung des Variablen-Werts zurück. Wenn der Wert beispielsweise eine Zahl wie 1234.56 ist, wird die Länge als 7 zurückgegeben. Leerzeichen und Sonderzeichen werden bei der Länge eingerechnet.

IF TEST = 1
{
  ASSIGN example1 = "8015551234"
  ASSIGN example2 = 2357.984
  ASSIGN example3 = "Beowulf Herot"
}

ASSIGN ex1Len = example1.length()
ASSIGN ex2Len = example2.length()
ASSIGN ex3Len = example3.length()

Ergebnisse des Beispiels sind

  • ex1Len = 10
  • ex2Len = 8
  • ex3Len = 13

ln(value)

Gibt den natürlichen Logarithmus (base e) für den value zurück. value wird als Zahl mit der Basis 10 angegeben.

ASSIGN natLog = "{ln(434)}"

Ergebnis des Beispiels ist natLog=6.07304453410041

log10(value)

Gibt den Logarithmus auf Basis 10 für den angegebenen value zurück.

ASSIGN log10Num = "{log10(434)}"

Ergebnis des Beispiels ist log10Num=2.63748972951251

log2(value)

Gibt den Logarithmus auf Basis 2 für den angegebenen value zurück. value wird als Zahl mit der Basis 10 angegeben.

ASSIGN log2Num = "{log2(434)}"

Ergebnis des Beispiels ist log2Num=8.76155123244448

logn(value,base)

Gibt den Logarithmus für den angegebenen value in der angegebenen base zurück. Beide Parameter werden als Basis 10 Zahlen angegeben.

ASSIGN lognNum = "{logn(434,5)}"

Ergebnis des Beispiels ist lognNum=3.77339472817288

max(value1,value2) und min(value1,value2)

max() gibt den größeren der beiden angegebenen numerischen Werte zurück.

min() gibt den kleineren der beiden angegebenen numerischen Werte zurück.

Wenn Sie Stringwerte übergeben, werden beide Funktionen immer als 0 ausgewertet.

IF TEST = 1
{
  ASSIGN value1 = 10
  ASSIGN value2 = 12
}
ASSIGN resultMin = min(value1, value2)

ASSIGN resultMax = max(value1, value2)

Ergebnisse des Beispiels sind:

  • resultMin = 10
  • resultMax = 12

mid(start,length)

Gibt die Zeichen von start bis start+length zurück. Die erste Zeichenposition ist 1. Wenn start+length die Länge des Quelltextes überschreitet, wird das Ende des Quelltextes automatisch abgeschnitten.

Diese Funktion ähnelt substr(). mid() und substr() geben beide eine Teilmenge an Zeichen zurück. Es gibt jedoch einen Unterschied. Bei substr() gibt die Funktion die Zeichen zwischen den angegebenen Start- und Endpunkten zurück. Bei mid() gibt die Funktion eine festgelegte Anzahl von Zeichen zurück, definiert durch length, nach der Angabe für start.

IF TEST = 1
{
  ASSIGN phoneNum = "8015553549"
  ASSIGN fullName = "Hrothgar King"
}
ASSIGN localNumber = "{phoneNum.mid(4,7)}"

ASSIGN spaceLoc = fullName.indexof(' ')
ASSIGN fullNameLength = fullName.length
ASSIGN firstName = "{fullName.mid(1,SpaceLoc - 1)}"
ASSIGN lastName = "{fullName.mid(SpaceLoc + 1,fullNameLength - spaceLoc)}"

Ergebnisse des Beispiels sind:

  • firstName = Hrothgar
  • lastName = King
  • localNumber = 1234567

random(value)

Gibt eine ganzzahlige, nicht negative Zufallszahl zurück, die gleich oder größer als null und kleiner als der angegebene Maximalwert ist.

Wenn Sie einen Wert im Bereich von eins bis value benötigen, können Sie 1 zur Ausgabe der Funktion random addieren:

ASSIGN d20Result = random(20) + 1

IF TEST = 1
{
  ASSIGN value = 10
}
ASSIGN newValue1 = random(Value)
ASSIGN newValue2 = random(Value)
ASSIGN newValue3 = random(Value)
ASSIGN newValue4 = random(Value)

replace(old,new)

Ersetzt alle Vorkommen von old durch new. Diese Funktion kann mit allen der folgenden Formatierungsvarianten verwendet werden:

  • ASSIGN result = "{value.replace(char,'-')}"
  • ASSIGN result = value.replace(char,'-')
  • ASSIGN result = value.replace('{char}','-')
  • ASSIGN result = value.replace("{char}",'-')
IF TEST = 1
{
	ASSIGN replaceTest1 = "$1234.56"
	ASSIGN replaceTest2 = "Beowulf%Grendel^Hrothgar*@Grendel\'s mom"
	ASSIGN replaceTest3 = "It   was   a   hard   battle."
	ASSIGN replaceTest4 = "Beowulf%Grendel^Hrothgar*@Grendel\'s mom"
}

//The first example will replace the dollar sign in an amount with nothing

ASSIGN replaceTest1 = "{replaceTest1.replace('$','')}"

//The second example we are just replacing random charcters and replacing
//them with a space.  The final result is a space between each name

ASSIGN replaceTest2 = "{replaceTest2.replace('%',' ')}"
ASSIGN replaceTest2 = "{replaceTest2.replace('^',' ')}"
ASSIGN replaceTest2 = "{replaceTest2.replace('*',' ')}"
ASSIGN replaceTest2 = "{replaceTest2.replace('@','')}"

ASSIGN replaceTest3 = "{replaceTest3.replace('  ',' ')}"
ASSIGN replaceTest3 = "{replaceTest3.replace('  ',' ')}"

//The following example is the second example, but broken out so 
//each step is preserved in a separate variable that you can see
//in the Debugger panel on the right. 

ASSIGN replaceTest4a = "{replaceTest4.replace('%',' ')}"
ASSIGN replaceTest4b = "{replaceTest4a.replace('^',' ')}"
ASSIGN replaceTest4c = "{replaceTest4b.replace('*',' ')}"
ASSIGN replaceTest4d = "{replaceTest4c.replace('@','')}"

Ergebnisse des Beispiels sind:

  • replaceTest1 = 1234.56
  • replaceTest2 = Beowulf Grendel Hrothgar Grendel\'s mom
  • replaceTest3 = It was a hard battle.
  • replaceTest4 = Beowulf%Grendel^Hrothgar*@Grendel\'s mom
  • replaceTest4a = Beowulf Grendel^Hrothgar*@Grendel\'s mom
  • replaceTest4b = Beowulf Grendel Hrothgar*@Grendel\'s mom
  • replaceTest4c = Beowulf Grendel Hrothgar @Grendel\'s mom
  • replaceTest4d = Beowulf Grendel Hrothgar Grendel\'s mom

round(value)

Gibt den value zurück, der auf die nächste Ganzzahl gerundet ist, gemäß IEEE-Standard 754, Abschnitt 4 (auch kaufmännisches Runden genannt).

IF TEST = 1
{
  ASSIGN numEx = 102.5689
}
ASSIGN newValue = round(numEx)

Ergebnis des Beispiels ist numEx = 102.5689

savetodb(1or0)

Diese Funktion speichert den Wert einer Variablen am Ende der Interaktion in der Datenbank. Beachten Sie, dass sich der Wert einer Variablen während der Skriptausführung ändern kann. Der Wert einer Variablen kann durch verschiedene Aktionen und Prozesse geändert oder gelöscht werden. Wenn Sie in einem solchen Fall den Wert an einer bestimmten Stelle im Skript speichern möchten, müssen Sie möglicherweise eine neue Variable erstellen, ihr den gewünschten Wert zuweisen und savetodb() damit verwenden.

savetodb() ist keine echte Funktion. Es handelt sich um eine Eigenschaft von Variablen in Studio. Sie können sie bei der Arbeit in Snippets auf Variablen anwenden. Sie können sie auch festlegen, wenn Sie die Assignaction- verwenden. Sie können auf zwei Arten auf die gespeicherten Daten zugreifen:

Fügen Sie savetodb() zu einer Variablen mit dem Argument 1 hinzu, damit der Wert der Variablen in der Datenbank gespeichert wird, wie im folgenden Beispiel gezeigt.

ASSIGN variable='123123123'
variable.savetodb(1)

Wenn Sie savetodb() in einem Subskript verwenden, das mit einer RUNSUB-Aktion ausgelöst wurde, müssen Sie die Variable als global deklarieren. So wird gewährleistet, dass die Variable bestehen bleibt, wenn das Subskript die Kontrolle an das aufrufende Skript zurückgibt. Wenn Sie die Variable nicht als global deklarieren, handelt es sich um eine lokale Variable, die nur im Subskript existiert. savetodb() funktioniert nur mit Variablen, die im aufrufenden Skript existieren.

Eine Möglichkeit, auf die Werte von Variablen in einem Subskript zuzugreifen, besteht darin, die Variablen im Subskript als global zu deklarieren. Eine weitere Option ist die Verwendung der GET /contacts/{contactId}/custom-data Ein Quadrat mit einem Pfeil, der von der Mitte aus nach oben rechts weist.-API.

screenpop() and setscreenpop(1or0)

screenpop() und setscreenpop() sind keine echten Funktionen. Es handelt sich um Eigenschaften von Variablen in Studio, die Sie bei der Arbeit mit Bildschirm-PopupsGeschlossen Ein konfigurierbares Pop-up-Fenster mit Informationen zum Kontakt. Es wird nach einem bestimmten Ereignis auf dem Bildschirm des Agenten angezeigt, im Allgemeinen dann, wenn der Agent mit einem Kontakt verbunden wird. festlegen können. Sie können sie bei der Arbeit in Snippets auf Variablen anwenden. Sie können sie auch mit der Assign -Aktion festlegen.

Fügen Sie setscreenpop() zu einer Variablen mit dem Argument 1 hinzu, damit der Wert der Variablen an ein Bildschirm-Popup übergeben wird.

Fügen Sie screenpop() zu einer Variablen hinzu, um zu überprüfen, ob das ScreenPop-Flag gesetzt ist. Die Eigenschaft gibt 1 zurück, falls dies zutrifft; andernfalls gibt sie 0 zurück.

ASSIGN val1 = "name"
//ASSIGN popthis = val1.setscreenpop(1)
ASSIGN ispop = thispop.screenpop

sgn(value)

Gibt einen Wert zurück, der das Vorzeichen für den angegebenen value angibt. Gibt Folgendes zurück: -1, wenn value kleiner als null ist; 0, wenn value gleich null ist; 1, wenn value größer als null ist.

ASSIGN signOfNum = "{sgn(89)}, {sgn(0.00)}, {sgn(-89)}"

Ergebnis des Beispiels ist signOfNum = 1, 0, -1

sin(value)

Gibt den Sinus für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

ASSIGN angleRad = 0.394791119699762
ASSIGN sinNum = "{sin(angleRad)}"

Ergebnis des Beispiels ist sinNum = 0.384615384615385

sinh(value)

Gibt den Hyperbelsinus für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

ASSIGN hSine = "{sinh(angleRad)}"

Ergebnis des Beispiels ist hSine=0.405126696125173

split(delimiter)

Gibt den Inhalt der Variablen als String zurück, der durch den Senkrechtstrich getrennt ist und als Array verarbeitet werden kann. Das delimiter-Trennzeichen wird in den Senkrechtstrich ( | ) konvertiert.

Wenn die Ergebnisse einer neuen Variablen zugewiesen werden, verhält sich die neue Variable wie ein Array und unterstützt die Array-Index-Syntax, wie in variable[index].

"Split" kann auch innerhalb eines Snippets verwendet werden, um eine Variable in ein Array zu konvertieren. Bei dieser Verwendungsweise ändert sich der Inhalt der Variablen.

IF TEST = 1
{
  ASSIGN varString = "one,two,three,four"
}
//Example One using split to assign result to a new variable

ASSIGN varArray = "{varString.split(',')}"

//Example Two using split to change the value of an existing variable to an array

VvarString.split(',')

Ergebnisse des Beispiels sind:

  • varArray = one|two|three|four
  • varString = one|two|three|four

sqrt(value)

Gibt die Quadratwurzel für den angegebenen value zurück.

ASSIGN root = "{sqrt(25)}"

Ergebnis des Beispiels ist root = 5

substr(start,end)

Gibt die Zeichen von start bis end zurück. Die erste Zeichenposition ist 1. Wenn end die Länge des Quelltextes überschreitet, wird das Ende des Quelltextes automatisch abgeschnitten.

Diese Funktion ähnelt mid(). mid() und substr() geben beide eine Teilmenge an Zeichen zurück. Es gibt jedoch einen Unterschied. Bei substr() gibt die Funktion die Zeichen zwischen den angegebenen Start- und Endpunkten zurück. Bei mid() gibt die Funktion eine festgelegte Anzahl von Zeichen zurück, definiert durch length, nach der Angabe für start.

IF TEST = 1
{
  ASSIGN enteredAmount = 15269
  ASSIGN phoneNum = "8015553437"

}
ASSIGN areaCode = "{phoneNum.substr(1,3)}"

ASSIGN amountLength = enteredAmount.length()
ASSIGN dollars = enteredAmount.substr(1,amountLength - 2)
ASSIGN cents = enteredAmount.substr(amountLength - 1,amountLength)
ASSIGN totalAmount = "${dollars}.{cents}"

Ergebnisse des Beispiels sind:

  • areaCode = 801
  • totalAmount = $152.69

tan(value)

Gibt den Tangens für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

ASSIGN angleRad = 0.394791119699762
ASSIGN tanNum = "{tan(angleRad)}"

Ergebnis des Beispiels ist tanNum = 0.416666666666667

tanh(value)

Gibt den Hyperbeltangens für den angegebenen value zurück. Der value muss im Bogenmaß angegeben sein.

ASSIGN angleRad = 0.394791119699762
ASSIGN hTan = "{tanh(angleRad)}"

Ergebnis des Beispiels ist hTan = 0.375483244486081

trim(), ltrim() und rtrim()

Die Funktion trim() gibt einen String zurück, aus dem alle führenden und nachfolgenden Leerzeichen entfernt wurden. Der Leerraum enthält Leerzeichen, Tabulatoren- und Zeilenumbrüche.

Die Funktion ltrim() gibt einen String zurück, aus dem alle führenden Leerzeichen entfernt wurden.

Die Funktion ritrim() gibt einen String zurück, aus dem alle nachfolgenden Leerzeichen entfernt wurden.

IF TEST = 1
{
  ASSIGN varString = "      Beowulf      "
}
ASSIGN trimRes = varString.trim

ASSIGN lTrimRes = varString.ltrim

ASSIGN rTrimRes = varString.rtrim

Ergebnisse des Beispiels sind

  • trimRes = " Beowulf "
  • lTrimRes = "Beowulf      "
  • rTrimRes = "      Beowulf".

trunc(value)

Berechnet den ganzzahligen Teil für den angegebenen value. trunc() rundet value auf die nächste Ganzzahl Richtung Null.

ASSIGN truncNum = "{trunc(945.6)}, {trunc(946.9)}"

Ergebnis des Beispiels ist truncNum = 945, 946

upper() und lower()

Die Funktion upper() gibt den Inhalt der Variablen zurück, wobei alle Buchstaben in Großbuchstaben konvertiert wurden.

Die Funktion lower() gibt den Inhalt der Variablen zurück, wobei alle Buchstaben in Kleinbuchstaben konvertiert wurden.

IF TEST = 1
{
  ASSIGN variable1 = "Beowulf is a monster fighter"
  ASSIGN variable2 = "BEOWULF IS A MONSTER FIGHTER"
}
ASSIGN variable1  = "{variable1.upper()}"

ASSIGN variable2  = "{variable2.lower()}"

urlencode() und urldecode()

Die Funktion urlencode() gibt den Inhalt der Variablen in einer Form zurück, die mit dem Internetstandard für die URL-Kodierung kodiert wurde. Beispielsweise müssen einige Daten, die einer URL für Bildschirm-PopupsGeschlossen Ein konfigurierbares Pop-up-Fenster mit Informationen zum Kontakt. Es wird nach einem bestimmten Ereignis auf dem Bildschirm des Agenten angezeigt, im Allgemeinen dann, wenn der Agent mit einem Kontakt verbunden wird. hinzugefügt werden müssen, kodiert werden, damit sie korrekt gesendet werden.

Die Funktion urldecode() gibt den Inhalt der Variablen in einer Form zurück, die mit dem Internetstandard für die URL-Kodierung dekodiert wurde. Im folgenden Beispiel wird die Variablen-URL mit urldecode() dekodiert. Deshalb haben URL und newURL denselben Wert.

IF TEST = 1
{
  ASSIGN dnis= "5551234567"
  ASSIGN ani = "5550987654"
  ASSIGN waitTime = "2 02:39:42"
  ASSIGN callOriginationTime = "{datefmt(now, 'yyy-MM-dd HH:mm:ss')}"
}

ASSIGN URL = "?&sys_id=-1&sysparm_query=u_source_phone={DNIS}^u_caller_phone={ANI}^u_wait_time_string={waitTime}^opened_at={callOriginationTime}"
ASSIGN eURL = URL.urlencode()
ASSIGN popURL = "http://www.incontact.com{eURL}"

ASSIGN newURL = eURL.urldecode()