Fonctions intégrées

Les informations contenues dans cette page d’aide s’appliquent à la fois à Studio et à Desktop Studio.

Studio possède des fonctions intégrées que vous pouvez utiliser dans vos scripts. Certaines des fonctions intégrées sont disponibles dans la liste de saisie semi-automatique qui s'affiche lorsque vous tapez dans la fenêtre de l'éditeur Snippet. Il existe d’autres fonctions intégrées qui ne figurent pas dans cette liste, mais que vous pouvez tout de même utiliser. Des informations détaillées sur toutes les fonctions intégrées disponibles sont disponibles dans la seconde moitié de cette page.

Cette page fournit également des listes des fonctions intégrées regroupées par catégories. Cela facilite la localisation d’une fonction lorsque vous connaissez le type de données avec lesquelles vous travaillez et ce que vous souhaitez accomplir, mais pas le nom de la fonction. Vous pouvez consulter des listes de fonctions qui vous permettent de :

Il y a également une liste avec d’autres fonctions qui n’entrent pas dans une catégorie.

Vous pouvez en savoir plus sur l'utilisation des fonctions dans Studio, y compris la création de vos propres fonctions personnalisées, sur la page d'aide Fonctions.

Cette page ne fournit pas d'informations sur les fonctions intégrées à utiliser avec RestProxy, le service que vous pouvez utiliser pour connecter vos scripts aux API RESTful. Ces fonctions sont couvertes dans la page d'aide RestProxy.

Essayez-le

Téléchargez le script Function Examples et importez-le dans Studio. Les exemples de cette page d'aide sont disponibles dans des actions Snippet dans le script d'exemple. Vous pouvez ouvrir la fenêtre de l'éditeur Snippet et exécuter le débogueur pour voir comment fonctionne chaque exemple.

Fonctions à utiliser avec les dates et les heures

Utilisez les fonctions suivantes avec les dates et les heures dans vos scripts. Studio prend en charge le format 24 heures, et non le format 12 heures. Tenez-en compte lorsque vous travaillez avec le temps dans des Scripts.

Une date OLE Automation Icon of a square with an arrow point from the center through the top right corner. est une date écrite sous forme de nombre à virgule flottante. Le côté gauche du point décimal correspond au nombre de jours écoulés depuis minuit, le 30 Décembre 1899. Le côté droit du point décimal correspond à l'heure de cette journée divisée par 24. Par exemple, 6 h 00 le 31 Décembre 1899 correspond à 1,25.

Fonction

Description

asdate() Convertit le contenu d’une variable en une chaîne date/heure en utilisant le format de date par défaut.
asdatedow() Renvoie le jour de la semaine sous forme de valeur ordinale de 0 à 6, où 0 correspond à Dimanche.
asdatetime() Convertit la valeur de la variable en une chaîne date/heure en utilisant le format date/heure spécifié.
asgmt() et asutc() Convertit le contenu d’une variable en une chaîne date/heure convertie en GMT ou UTC.
asisodatetime()

Convertit la valeur d’une variable au format date/heure ISO 8601 : yyyy-MM-ddTHH:mm:ss.SSSXXX.

astime() Convertit le contenu d’une variable en une valeur d’heure.
currentUnixTimestamp()

Renvoie l'heure actuelle sous forme d'estampille temporelle Unix. Uniquement pour une utilisation avec getRESTProxy().

dateadd(date, value) Retourne une nouvelle date basée sur date plus value.
datebuild(year, month, day) Retourne une chaîne de date/heure en utilisant le Year, le Month et le Day spécifiés.
datediff(unit,date1, date2) Renvoie la différence entre deux dates.
datefmt(format) Convertit le contenu de date en une chaîne date/heure en utilisant le format spécifié.
datepart(unit)

 

Renvoie une partie de la date ou de l’heure en fonction de la valeur unit spécifiée.
datetimebuild(year, month, day, hour, minute, second) Renvoie une chaîne date/heure basée sur les valeurs Year, Month, Day, Hour, Minute et Second spécifiées.
dow() Retourne le jour de la semaine de la date spécifiée sous forme de valeur ordinale de 0 à 6, où 0 correspond à Dimanche.

now()

Retourne l'heure actuelle sur l'unité commercialeClosed Regroupement organisationnel de haut niveau utilisé pour gérer le soutien technique, la facturation et les paramètres globaux de votre système NiCE CXone..

Fonctions à utiliser avec les Nombres

Utilisez les fonctions suivantes avec les variables qui contiennent des valeurs numériques. Les autres fonctions que vous pouvez utiliser avec les nombres sont les fonctions pour calculs mathématiques.

Fonction

Description

ceil(value

Retourne le plus petit nombre entier supérieur ou égal au value spécifié.

floor(évaluer

Renvoie le plus grand nombre entier inférieur ou égal au value spécifié.

format(format) Renvoie une chaîne de caractères numériques formatés à l’aide du formatspécifié.
isdigit() Évalue le contenu d’une variable pour déterminer si le premier caractère est numérique (0-9).
isnumeric() Évalue le contenu d’une variable pour déterminer si tous les caractères sont alphabétiques (A-Z ou a-z).
max(valeur1, valeur2) et min(valeur1, valeur2) Renvoie la plus grande ou la plus petite des deux valeurs spécifiées.
random() Renvoie un nombre entier non négatif aléatoire.
round(valeur) Arrondit le value spécifié à l’entier le plus proche.

Fonctions à utiliser avec les Lettres

Utilisez les fonctions suivantes avec des variables contenant des lettres :

Fonction

Description

isalpha() Évalue le contenu d’une variable pour déterminer si tous les caractères sont alphabétiques (A-Z ou a-z).
isletter()

Évalue le contenu d’une variable pour déterminer si le premier caractère est alphabétique (a-z ou A-Z).

islower() et isupper() Évalue le contenu d’une variable pour déterminer si le premier caractère est une lettre minuscule (a-z) ou une lettre majuscule (A-Z).
lower() et upper()

Convertit toutes les lettres de la valeur en minuscules (a-z) ou en majuscules (A-Z).

Fonctions pour effectuer des calculs

Ces fonctions permettent d’effectuer des calculs mathématiques. Ces fonctions ne sont pas disponibles dans la liste de saisie semi-automatique qui apparaît lors de l’utilisation d’une action SNIPPET, mais elles fonctionnent si vous les entrez manuellement.

Fonction

Description

abs(valeur)

Renvoie la valeur absolue du value spécifié.

acos(valeur)

Renvoie l’angle en radians dont le cosinus est la valuespécifiée.

asin(valeur)

Renvoie l’angle en radians dont le sinus est la value spécifiée.

atan(valeur)

Renvoie l’angle en radians dont la tangente est la value spécifiée.

atan2(x, y)

Retourne l'angle en radians dont la tangente est le quotient des deux nombres spécifiés (x, y).

cos(valeur)

Renvoie le cosinus de la value spécifiée. La value doit être exprimée en radians.

cosh(valeur)

Renvoie le cosinus hyperbolique de value spécifié. value doit être en radians.

exp(valeur)

Renvoie le nombre élevé à la puissance spécifiée dans value.

ln(valeur)

Renvoie le logarithme naturel (base e) de value. value est spécifié comme un nombre en base 10.

log10(valeur)

Renvoie le logarithme en base 10 de la value spécifiée.

log2(valeur, base)

Renvoie le logarithme en base 2 du value spécifié. Le value est spécifié sous forme de nombre en base 10.

logn(valeur, base)

Retourne le logarithme du value spécifié dans la base spécifiée. Les deux paramètres sont spécifiés en tant que nombres en base 10.

round(valeur)

Arrondit le value spécifié à l’entier le plus proche.

sgn(valeur)

Retourne une valeur qui indique le signe du value spécifié. Retourne -1 si value est inférieur à zéro, 0 si value est égal à zéro, et 1 si value est supérieur à zéro.

sin(valeur)

Renvoie le sinus de la value spécifiée. La value doit être exprimée en radians.

sinh(valeur)

Renvoie le sinus hyperbolique de value spécifiée. value doit être exprimé en radians.

sqrt(valeur)

Renvoie la racine carrée de la value spécifiée.

tan(valeur)

Renvoie la tangente de la valeur value spécifiée. La valeur value doit être en radians.

tanh(valeur)

Renvoie la tangente hyperbolique de la valeur value spécifiée. La valeur value doit être exprimée en radians.

trunc(valeur)

Calcule la partie entière de value spécifié. trunc() arrondit value à l'entier le plus proche vers zéro.

Fonctions de modification des valeurs

Utilisez les fonctions suivantes lorsque vous souhaitez modifier la valeur d’une variable en l’affectant à une autre variable.

En plus des fonctions de ce tableau, un grand nombre de fonctions pour les dates et les heures vous permettent de modifier des valeurs. Par exemple, vous pouvez convertir une valeur de date en un autre format de date.

Fonction

Description

append(texte) Ajoute le contenu de la première variable à une deuxième variable.
asjson() et asxml() Convertit le contenu d’une variable en JSON ou XML.
dateadd(date, value)

Retourne une nouvelle date basée sur date plus value.

datefmt(format)

Convertit le contenu de date en une chaîne date/heure en utilisant le format spécifié.

format(format) Renvoie une chaîne de caractères numériques formatés à l’aide du formatspécifié.
lower() et upper()

Convertit toutes les lettres de la valeur en minuscules (a-z) ou en majuscules (A-Z).

replace(ancien, nouveau) Remplace toutes les occurrences de old par new.
split(délimiteur) Convertit le contenu d’une variable en une chaîne délimitée par des barres verticales qui peut être traitée comme un tableau. Remplace le caractère existant et spécifié delimiter par un caractère de barre verticale.
trim() , ltrim() et rtrim() Renvoie une chaîne dont les caractères d’espacement ont été supprimés. Vous pouvez supprimer tous les espaces vides, ou seulement les caractères d’espacement de début ou de fin.
urlencode() et urldecode() Encode ou décode une URL conformément à la norme Internet pour l’encodage des URL.

Fonctions permettant de déterminer le contenu d’une valeur

Ces fonctions permettent de connaître le contenu d’une variable :

Fonction

Description

contains(valeur) Évalue une variable pour la value spécifiée.
count() Renvoie le nombre d’éléments d’un tableau ou d’un objet.
index(indexValue) Renvoie l’élément du tableau à partir du contenu de la variable en fonction de indexValue spécifié.
indexof(text) Renvoie la position du caractère text spécifié dans le contenu d’une variable.
isalpha () Évalue le contenu d’une variable pour déterminer si tous les caractères sont alphabétiques (A-Z ou a-z).
isdigit() Évalue le contenu d’une variable pour déterminer si le premier caractère est numérique (0-9).
isletter()

Évalue le contenu d’une variable pour déterminer si tous les caractères sont alphabétiques (A-Z ou a-z).

isnumeric()

Évalue le contenu d’une variable pour déterminer si tous les caractères sont numériques (0-9).

isupper() et islower() Évalue le contenu d’une variable pour déterminer si le premier caractère est une lettre minuscule (a-z) ou une lettre majuscule (A-Z).
length() Renvoie le nombre de caractères de la valeur de la variable.
left() et right() Renvoie les caractères les plus à gauche ou les plus à droite du contenu de la variable, si les caractères sont des nombres. Le nombre de caractères renvoyés est basé sur le count spécifié.
size()

Renvoie le nombre d’éléments d’un tableau.

Fonctions pour extraire une partie d’une valeur

Utilisez ces fonctions lorsque vous souhaitez extraire une partie d’une valeur d’une variable pour l’utiliser dans une autre variable :

Fonction

Description

datepart(unit)

Renvoie une partie de la date ou de l’heure en fonction de la valeur unit spécifiée.

index(indexValue) Renvoie l’élément du tableau à partir du contenu de la variable en fonction de indexValue spécifié.
left(count) et right(count) Renvoie les caractères les plus à gauche ou les plus à droite du contenu de la variable, si les caractères sont des nombres. Le nombre de caractères renvoyés est basé sur le count spécifié.
mid(start, length) Renvoie les caractères de start à start+length.
substr(start, end) Renvoie les caractères de start à end.

Fonctions à utiliser avec les tableaux

Les fonctions suivantes fonctionnent avec les tableaux.

Fonction

Description

count()

Renvoie le nombre d’éléments d’un tableau ou d’un objet.

index(indexValue)

Renvoie l’élément du tableau à partir du contenu de la variable en fonction de indexValue spécifié.

indexof(texte)

Renvoie la position du caractère text spécifié dans le contenu d’une variable.

size()

Renvoie le nombre d’éléments d’un tableau.

split(délimiteur)

Convertit le contenu d’une variable en une chaîne délimitée par des barres verticales qui peut être traitée comme un tableau. Remplace le caractère existant et spécifié delimiter par un caractère de barre verticale.

Autre

Fonction

Description

char(code)

Retourne un caractère à partir de la valeur code ASCII, ce qui permet à un script d'ajouter de façon programmatique des caractères spéciaux à une chaîne.

copy(objectName)

Crée une copie des données que contient l’objet données dynamiques objectName. La copie est distincte de l’original, de sorte que vous pouvez modifier une valeur dans une version sans affecter la même valeur dans l’autre version.

iif(compare, trueval, falseval)

Inline-If pour les nombres. Évalue compare, puis retourne soit trueval, soit falseval, selon les résultats de l'évaluation.

iifs(compare, trueval, falseval)

Inline-if de chaîne. Évalue compare, puis retourne soit trueval, soit falseval, selon les résultats de l'évaluation.

isnull()

Détermine si un objet de données dynamiques ou une propriété d’un objet est nul (indéfini ou 0).

savetodb(1or0) Permet d’enregistrer la valeur d’une variable dans la base de données.
screenpop()

Renvoie une valeur indiquant si l’indicateur ScreenPop est activé sur la variable.

setscreenpop(1or0)

Vous permet d'utiliser la valeur d'une Variable dans le screen popClosed Fenêtre contextuelle contenant des informations sur le contact qui s’affiche sur l’écran d’un agent après un événement, comme la connexion à un contact., si la ACD compétence actuelleClosed Utilisé pour automatiser la livraison des interactions en fonction des compétences, des aptitudes et des connaissances de l’agent. a l'option Utiliser les Screen Pops activée.

Toutes les Fonctions disponibles

Cette section fournit des informations détaillées sur l'utilisation de chaque fonction intégrée. Sauf indication contraire, vous pouvez appeler ces fonctions partout où vous utiliseriez une variable ou une expression.

abs(value)

Renvoie la valeur absolue du value spécifié.

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

Le résultat de l'exemple est abVal = 42.

acos(value)

Renvoie l’angle en radians dont le cosinus est la valuespécifiée.

ASSIGN angleRad3 = "{acos(cosNum)}"

Le résultat de l'exemple est angleRad3 = 0.394791119699762.

append(string)

Ajoute le contenu de la première variable à une deuxième variable. Ajoute le string à la fin du contenu existant dans la variable. Cette fonction fonctionne uniquement dans une action Snippet ou ASSIGN.

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)

Les résultats de l'exemple sont :

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

asdate()

Convertit le contenu d’une variable en une chaîne date/heure en utilisant le format de date par défaut.

Lorsqu'elle est utilisée avec une expression de chaîne : Convertit le contenu de la variable en une chaîne de date/heure.

Lorsqu'elle est utilisée avec une expression numérique : Convertit le contenu de la variable en une date-heure d'automatisation OLE en analysant le contenu de la chaîne. Le contenu de la chaîne doit correspondre à l'un des Windows formats de date Standard, comme 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()}" 

Les résultats de cet exemple dépendent de la date locale actuelle au moment de l'exécution de la fonction. Si la date locale actuelle est le 07/03/2023, les résultats sont les suivants :

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

asdatedow()

Renvoie le jour de la semaine sous forme de valeur ordinale de 0 à 6, où 0 correspond à Dimanche.Pour ce faire, il convertit le contenu de la variable en date-heure d'automatisation OLEClosed Façon d'écrire des dates sous forme d'un nombre à virgule flottante. Indique le nombre de jours écoulés depuis le 30 Décembre 1899. en analysant le contenu de la chaîne, puis renvoie le jour de la semaine sous forme de valeur ordinale de 0 à 6, où 0 correspond à Dimanche. Le contenu de la chaîne doit correspondre à l'un des Windows formats de date Standard, comme 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" }
}

Les résultats de l'exemple sont :

  • myDow = 1
  • newToday = Monday

asdatetime()

Convertit la valeur de la variable en une chaîne date/heure en utilisant le format date/heure spécifié.

Lorsqu'elle est utilisée avec une chaîne : Convertit le contenu de la variable en une chaîne de date et d'heure.

Lorsqu'elle est utilisée avec une valeur numérique : Convertit le contenu de la variable en une date-heure d'automatisation OLE en analysant le contenu de la chaîne. Le contenu de la chaîne doit correspondre à l'un des Windows formats de date-heure standards, tels que MM/dd/yyyy HH:mm:ss.

Si vous transmettez une date sans heure, la fonction ajoute une heure. La valeur par défaut est 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()}"
		

Les résultats de l'exemple sont :

  • numericDateTime = 45110.3720486111 (lorsque la date/heure locale actuelle est 7/3/2023 8:55:45 AM)
  • numericDateTime2 = 45019.9820486111
  • stringDateTime = 7/3/2023 8:55:45 AM
  • stringDateTime2 = 4/3/2023 11:34:09 PM

asgmt() and asutc()

Convertit le contenu d’une variable en une chaîne date/heure convertie en GMT ou UTC. La fonction asgmt() convertit l'heure en GMT et la fonction asutc() convertit l'heure en UTC. Le format de la date dépend du contenu original de la variable.

Lorsqu'utilisée comme expression de chaîne : les fonctions convertissent la valeur en une date/heure OLE automationClosed état qui permet à un agent de remplir les exigences de travail après avoir terminé une interaction. traduite en GMT ou en UTC. La variable doit contenir une représentation valide de chaîne d'une date/heure. L'heure source est basée sur le Fuseau horaire de l'unité commercialeClosed Regroupement organisationnel de haut niveau utilisé pour gérer le soutien technique, la facturation et les paramètres globaux de votre système NiCE CXone. ou sur le Fuseau horaire défini par l'Timezone action.

Lorsqu'utilisée comme expression numérique : les fonctions convertissent la valeur en une chaîne de date/heure traduite en GMT ou en UTC. Par exemple : « Mon, 03 Oct 2026 13:35:14 GMT ».

Lors de l'utilisation de ces fonctions, le format de l'heure contenue dans la variable ne peut pas non plus inclure :

  • Un décalage par rapport à UTC.
  • Un caractère Z, comme 2026-03-04 18:54:39.000Z. L'inclusion d'un Z indique que l'heure a un décalage nul par rapport au GMT/UTC.

L'inclusion de l'un ou l'autre de ces éléments provoque une erreur lorsque asgmt() ou asutc() tente de convertir les fuseaux horaires, car le Fuseau horaire d'origine est considéré comme différent de celui de l'unité commerciale. De plus, pour éviter l'erreur lors de l'utilisation du format de date/heure ISO 8601, incluez une action Timezone avant l'action Snippet et définissez-la pour qu'elle utilise le fuseau horaire de votre unité commerciale. Cela définit le fuseau horaire au niveau du script afin que le script et votre unité commerciale aient le même fuseau horaire.

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

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

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

Les résultats de l'exemple dépendent de la valeur de now au moment de l'exécution de la fonction. Par exemple, si les fonctions s'exécutent à 19:14:36 le 4 Avril 2026, les résultats sont :

  • Résultats sous forme de chaîne : 04/01/2026 19:41:36
  • Résultats sous forme de nombre : 46113.820555555554

asin(valeur)

Renvoie l’angle en radians dont le sinus est la value spécifiée.

ASSIGN angleRad4 = "{asin(sinNum)}"

Le résultat de l'exemple est angleRad4 = 0.394791119699762.

asisodatetime()

Convertit la valeur d’une variable au format date/heure ISO 8601 : yyyy-MM-ddTHH:mm:ss.SSSXXX. La sortie de cette fonction est toujours au format ISO date/heure.

Dans les appels d'API REST, les estampilles temporelles ISO qui comportent un décalage par rapport à l'UTC spécifié et qui apparaissent dans la réponse sont converties en heure des Rocheuses (MT). Si aucun décalage n'est spécifié, l'estampille temporelle n'est pas converted.

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()}"

Les résultats de l'exemple sont :

  • numericDateTime = 2023-07-03T09:43:06.000Z (lorsque la date/l'heure locale actuelle est 7/3/2023 9:43:06 AM)
  • numericDateTime2 = 2023-04-03T23:34:09.000Z
  • stringDateTime = 2023-07-03T05:43:06.000Z
  • stringDateTime2 = 2023-04-03T19:34:09.000Z

asjson() and asxml()

Convertit le contenu d’une variable en JSON ou XML. Elle assigne ensuite la chaîne JSON ou XML à une nouvelle variable. L'exemple suivant utilise un objet de données dynamiques, mais vous pouvez utiliser ces fonctions avec des objets renvoyés par un Appel api ou les objets provenant des actions de l'agent virtuelClosed Une application logicielle qui traite les interactions avec les clients à la place d’un agent humain en direct. (VOICEBOT EXCHANGE ou TEXTBOT EXCHANGE).

La fonction asjson() convertit tout le contenu de l'objet en une chaîne entourée de guillemets doubles, y compris les valeurs numériques ou booléennesClosed Un type de données qui a deux valeurs possibles : true et false.. Vous pouvez en tenir compte dans votre script si vous avez besoin d'une valeur numérique ou booléenne correctement formatée dans votre JSON. Une solution consiste à utiliser la fonction replace(). Elle vous permet de remplacer les guillemets doubles dans la valeur de chaîne par une valeur nulle.

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()}"		

Une autre solution consiste à injecter des chaînes d'espace réservé qui sont remplacées manuellement après avoir converti l'objet dynamique en string JSON.

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)

Bonne pratique : Utilisez la fonction asjson() dans un Snippet actionet stockez le JSON résultant dans une Variable de type chaîne. Utilisez la Variable de type chaîne dans les propriétés d'autres actions Studio lorsque vous devez transmettre les données JSON. Cette approche évite la possibilité d'erreurs de validation lors de l'enregistrement du script.

Les résultats de l'exemple sont :

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

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

astime()

Convertit le contenu d’une variable en une valeur d’heure.

Utilisée avec une string valeur : Convertit le contenu de la Variable en une date-heure d'automatisation OLEClosed Façon d'écrire des dates sous forme d'un nombre à virgule flottante. Indique le nombre de jours écoulés depuis le 30 Décembre 1899.. Par exemple, 0.353506944447872.

Utilisée avec une valeur numérique : Convertit le contenu de la Variable en une chaîne d'heure. La Variable doit contenir une valeur d'heure d'automatisation OLE. Par exemple, 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()}" 

Les résultats de cet exemple dépendent de l'heure locale au moment des tests de la fonction. Si la valeur de time est 8:37:42 AM, les résultats sont :

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

atan(valeur)

Renvoie l’angle en radians dont la tangente est la value spécifiée.

ASSIGN angleRad = "{atan(0.4166666666666667)}"		

Le résultat de l'exemple est angleRad=0.394791119699762.

atan2(valeur)

Retourne l'angle en radians dont la tangente est le quotient des deux nombres spécifiés (x, y).

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

Le résultat de l'exemple est angleRad2=0.394791119699761.

ceil(value) and floor(value)

La ceil fonction retourne le plus petit nombre entier supérieur ou égal au value spécifié.

La fonction floor renvoie le plus grand nombre entier inférieur ou égal au value spécifié.

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

ASSIGN newValue2 = ceil(value)

Les résultats de l'exemple sont :

  • newValue1 = 102
  • newValue2 = 103

contains(value)

Évalue une variable pour la value spécifiée. Retourne une valeur de 1 (vrai) si la variable contient une value spécifiée. Si la variable est un tableau, tous les éléments sont vérifiés pour la value Exact.

contains() n’est pas sensible à la casse.

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

Les résultats de l'exemple sont :

  • stringFoundRes1 est 1 (vrai).
  • stringFoundRes2 est 0 (faux).
  • DNISFoundRes1 est 1 (vrai).
  • DNISFoundRes2 est 0 (faux).

char(code)

Retourne un caractère à partir de la valeur code ASCII, ce qui permet à un script d'ajouter de façon programmatique des caractères spéciaux à une chaîne. Par exemple, vous pouvez ajouter des retours chariot, des tabulations et des caractères de retour à la ligne.

Soyez prudent avec cette fonction. char(0) à char(7) sont réservés à un usage interne et peuvent causer un mauvais fonctionnement des Scripts.

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)}"

Les résultats de l'exemple sont :

  • 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)

Crée une copie des données que contient l’objet données dynamiques objectName. La copie est distincte de l’original, de sorte que vous pouvez modifier une valeur dans une version sans affecter la même valeur dans l’autre version. En savoir plus sur la copie d’objets dynamiques.

Vous pouvez utiliser la fonction copy() avec des sous-propriétés : Par exemple : currentContact.who = copy(beowulfCharacteristics.name).

DYNAMIC firstObject
DYNAMIC secondObject

secondObject = copy(firstObject)

La fonction copy() utilise plus de ressources système que l’attribution d’une référence. Elle effectue une copie complète en convertissant l’objet en une représentation textuelle, puis en un objet. Si l’objet avec lequel vous travaillez contient une grande quantité de données, ce processus pourrait avoir une incidence sur le fonctionnement du script.

cos(value)

Renvoie le cosinus de la value spécifiée. La value doit être exprimée en radians.

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

Le résultat de l'exemple est cosNum=0.923076923076923.

cosh(value)

Renvoie le cosinus hyperbolique de value spécifié. value doit être en radians.

 ASSIGN hCosine = "{cosh(angleRad)}"

Le résultat de l'exemple est hCosine=1.07894746856059.

count() and size()

Renvoie le nombre d’éléments d’un tableau. size() fonctionne uniquement avec les tableaux. count() fonctionne avec les tableaux dans les objets.

Si la valeur n’est pas un tableau, mais qu’elle n’est pas vide, la valeur 1 (true) est renvoyée. Si la valeur est vide, 0 (false) est renvoyée.

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)

Les résultats de l’exemple sont :

  • exSize et ex1Count sont 7.
  • ex2Size et ex2Count sont 1.
  • ex3Size et ex3Count sont 0.
  • ex4Count est 2.

currentUnixTimestamp()

Renvoie l'heure actuelle sous forme d'estampille temporelle Unix. Uniquement pour une utilisation avec getRESTProxy(). Cette estampille temporelle mesure le temps sous forme du nombre de secondes sans saut qui se sont écoulées depuis 00:00:00 UTC le 1 Janvier 1970. Les secondes intercalaires sont des ajustements occasionnels d'une seconde apportés au temps universel coordonné (UTC) pour tenir compte de la différence entre le temps solaire observé et le temps mesuré par les horloges atomiques.

ASSIGN myDateTime = "{now}"
ASSIGN restProxy = GetRESTProxy()
ASSIGN currentUnixTimestamp = restProxy.CurrentUnixTimestamp()

Les résultats de l'exemple dépendent du moment où l'exemple est exécuté. Si vous l'exécutez à 15:58:29 le 31 Mars 2026, la valeur de currentUnixTimestamp est 1774972709. Dans l'exemple, la Variable myDateTime fournit la date et l'heure actuelles pour que vous puissiez les comparer à l'estampille temporelle Unix.

dateadd(unit, date, value)

Retourne une nouvelle date basée sur date plus value.. La nouvelle date est retournée sous la forme d'une date/heure OLE automationClosed Façon d'écrire des dates sous forme d'un nombre à virgule flottante. Indique le nombre de jours écoulés depuis le 30 Décembre 1899.. L'interprétation de value est déterminée par unit. Si value est négatif, value est soustrait de date.

La bonne pratique consiste à transmettre une Variable de date/heure valide, comme le montre l'exemple ci-dessous, où la valeur de myDateTime est précédée d'un dièse ( # ). Cela en fait une Variable de date/heure.

choix possibles pour unit : année, mois, semaine, jour, heure, minute et seconde.

unit est sensible à la casse. Mettez unit entre guillemets doubles ou simples, ou passez une variable qui contient unit. Si vous passez une variable, ne la mettez pas entre guillemets ou entre accolades.

Pour utiliser cette fonction dans une chaîne, incluez asdatetime(), comme le montre l'exemple ci-dessous.

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()}"

Les résultats de l'exemple sont les suivants, en utilisant le 3 Mars 2023 dans le format 3/3/2023 10:42:44 AM comme valeur de now :

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)

Retourne une chaîne de date/heure en utilisant le Year, le Month et le Day spécifiés.

Lorsqu'utilisé comme chaîne : Retourne une date/heure numérique formatée selon le format de date/heure standard, qui inclut l'heure. L'heure par défaut est minuit. Si vous voulez la date en utilisant les noms des mois et des jours, utilisez les fonctions asdate() ou asdatetime(), comme illustré dans l'exemple ci-dessous.

Lorsqu'utilisé comme expression numérique : Retourne une date/heure sous forme de chaîne de date-heure d'Automatisation OLEClosed Façon d'écrire des dates sous forme d'un nombre à virgule flottante. Indique le nombre de jours écoulés depuis le 30 Décembre 1899..

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)

Les résultats de cet exemple sont :

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

datediff(unit, date2)

Renvoie la différence entre deux dates. Le paramètre date1 spécifie la première date, unit spécifie la partie de la date à comparer, et date2 spécifie la date à comparer avec la valeur de date1. Si date2 est supérieur à la valeur contenue dans la variable, les résultats sont positifs.

choix possibles pour unit : semaine, jour, heure, minute et seconde.

unit est sensible à la casse. Mettez unit entre guillemets doubles ou simples, ou passez une variable qui contient unit. Si vous passez une variable, ne la mettez pas entre guillemets ou entre accolades.

Si la différence est fractionnaire, la valeur de retour est également fractionnaire. Par exemple, si la variable contient la date-heure 10/15/2022 6:00 AM et que date2 est 10/16/2022 6:00 PM, le résultat pour unit jour est 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)

Les résultats de l'exemple sont les suivants :

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

Vous pouvez utiliser datediff() pour déterminer si une semaine est paire ou impaire. Cela est utile si les heures d'opération de votre organisation alternent une semaine sur deux, ou si elle est ouverte un Samedi sur deux.

Si vos heures d'opération alternent entre ouvert et fermé, définissez la valeur de la Variable HOO dans l'instruction IF pour la période où votre bureau est ouvert. Définissez la valeur de HOO dans l'instruction ELSE pour la période où votre bureau est fermé.

ASSIGN currentDateTime = #"{now}"
ASSIGN startingDateTime = #"6/04/2016 3:16:10 PM"
ASSIGN weekDiff = datediff("week", currentDateTime, startingDateTime)
ASSIGN numberOfWeek = ceil(weekDiff)

IF numberOfWeek % 2 = 0 {
HOO = 123
}
ELSE {
HOO = 124
}		

Les résultats de l'exemple dépendent de la valeur de now au moment où la fonction s'exécute.

datefmt(date, format)

Convertit le contenu de date en une chaîne date/heure en utilisant le format spécifié. La valeur de date doit être l'une des valeurs suivantes :

Lorsque vous définissez la sortie format, utilisez les spécificateurs de format pour définir l'apparence que vous voulez donner à la date et à l'heure, ainsi que les informations que vous voulez qu'elle contienne. Par exemple :

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

Les résultats de l'exemple sont :

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

La datefmt() fonction vous permet également d'extraire une partie de la date à partir d'une valeur de date/heure existante. Pour ce faire, utilisez la syntaxe suivante :

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

Par exemple :

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

Le résultat de l'exemple est myYear2 = 2023.

datepart(unit)

Renvoie une portion de date ou d’heure. Renvoie une partie de la date ou de l’heure en fonction de la valeur unit spécifiée. La variable doit contenir un type date/heure ou une chaîne qui est une date/heure correctement formatée ou un numéro OLE AutomationClosed Façon d'écrire des dates sous forme d'un nombre à virgule flottante. Indique le nombre de jours écoulés depuis le 30 Décembre 1899.. unit précise la partie de la date à renvoyer. Cette fonction doit être appelée sur une variable de date/heure. Elle ne fonctionnera pas si vous transmettez une valeur de date/heure à la fonction, elle ne fonctionnera pas.

Les choix possibles pour unit sont : year, month, day, hour, minute, second, et dow.

unit est sensible à la casse. Mettez unit entre guillemets doubles ou simples, ou passez une variable qui contient unit. Si vous passez une variable, ne la mettez pas entre guillemets ou entre accolades.

Si la fonction ne peut pas s'exécuter en raison d'une saisie incorrecte ou inattendue, la sortie par défaut est le 30 Décembre 1899.

Lorsqu’elle est utilisée comme string :

Renvoie la représentation sous forme de chaîne de la partie date spécifiée :

  • Mois renvoie l’abréviation du mois à trois caractères.
  • Année renvoie l’année complète à quatre chiffres.
  • Heure renvoie l’heure au format 24 heures.
  • Dow signifie « Day of Week » (jour de la Semaine) et renvoie la représentation sous forme de chaîne non abrégée complète du nom du jour de la semaine. Par exemple, Jeudi.

Toutes les valeurs numériques, à l’exception de l’année, sont précédées d’un 0 s’il y a moins de deux chiffres.

Lorsqu’elle est utilisée comme expression numérique :

Renvoie la représentation numérique de la partie date spécifiée :

  • Année renvoie l’année complète à quatre chiffres.
  • Heure renvoie l’heure au format 24 heures.
  • Dow signifie Day of Week (jour de la Semaine) et renvoie la valeur ordinale (0-6) du jour de la semaine, où Dimanche correspond à 0, Lundi à 1, et ainsi de suite.
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')

Les résultats de l’exemple sont :

  • 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)

Renvoie une chaîne date/heure basée sur les valeurs Year, Month, Day, Hour, Minute et Second spécifiées. Si la fonction ne peut pas s'exécuter en raison d'une saisie incorrecte ou inattendue, la sortie par défaut est le 30 Décembre 1899.

Lorsqu'utilisé comme expression de chaîne : Renvoie une date/heure mise en forme au format standard de date/heure.

Si utilisé comme expression numérique : Renvoie une date/heure OLE AutomationClosed Façon d'écrire des dates sous forme d'un nombre à virgule flottante. Indique le nombre de jours écoulés depuis le 30 Décembre 1899..

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)

Les résultats de cet exemple sont :

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

dow()

Retourne le jour de la semaine de la date spécifiée sous forme de valeur ordinale de 0 à 6, où 0 correspond à Dimanche.La variable doit contenir un type date/heure ou une chaîne qui est une date/heure correctement formatée ou un numéro OLE AutomationClosed Façon d'écrire des dates sous forme d'un nombre à virgule flottante. Indique le nombre de jours écoulés depuis le 30 Décembre 1899.. Si la fonction ne peut pas s'exécuter en raison d'une saisie incorrecte ou inattendue, la sortie par défaut est le 30 Décembre 1899.

ASSIGN myNow = "{July 7, 2025}"
ASSIGN myDow = myNow.dow()

La fonction retourne 1, car le 7 Juillet 2025 était un Lundi.

format(specifiers)

Renvoie une chaîne de caractères numériques formatés à l’aide du formatspécifié.Les specifiers s'appliquent uniquement aux valeurs numériques contenues dans la variable. Pour les specifiers, utilisez les caractères de format suivants :

  • C ou c : Monnaie
  • E ou e : Scientifique/exponentiel
  • F ou f : Point fixe
  • N ou n : Nombre

  • P ou p : Pour cent
  • R ou r : Aller-retour
  • X ou x : Hexadécimal
  • 0 : Espace réservé pour zéro

Vous pouvez en savoir plus sur ces formats Numériques à utiliser avec ce function.

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('###,###.##')

Les résultats de l'exemple sont :

  • 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)

Renvoie l’élément du tableau à partir du contenu de la variable en fonction de indexValue spécifié. C’est la même chose que de lire un tableau en utilisant des crochets. Par exemple, variable[3] équivaut à variable.index(3).

Les tableaux dans Studio démarrent à 1, et non à 0.

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

Les résultats de l’exemple font en sorte que arrayPart1 contient Hrothgar.

indexof(string)

Renvoie la position du caractère text spécifié dans le contenu d’une variable. La première position est 1. Si la variable ne contient pas string, la fonction retourne la valeur 0. Cette fonction est sensible à la casse.

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('r')

Les résultats de l'exemple sont :

  • arrayLoc est 5

  • characterLoc est 5

  • invalidLoc est 0

iif(compare, trueval, falseval)

Inline-If pour les nombres. Évalue compare, puis retourne soit trueval, soit falseval, selon les résultats de l'évaluation.

Si compare est non nul (vrai), trueval est renvoyé.

Si compare est nul (faux), falseval est renvoyé.

trueval et falseval doivent tous deux être des valeurs ou des expressions numériques. Les chaînes ne peuvent pas être utilisées. Cette fonction est identique à la fonction iifs(), sauf qu'elle attend des valeurs numériques.

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)}"

Les résultats de cet exemple sont :

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

iifs(compare, chvrai, chfaux)

Inline-if de chaîne. Évalue compare, puis retourne soit trueval, soit falseval, selon les résultats de l'évaluation.

Si compare est non nul (vrai), truestr est renvoyé.

Si compare est nul (faux), falsestr est renvoyé.

Cette fonction est identique à iif(), sauf qu’elle attend des chaînes.

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)}"

Les résultats de l'exemple sont :

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

isalpha()

La fonction isalpha() retourne 1 (vrai) si tous les caractères de la Variable sont des lettres de l'alphabet (A-Z, a-z). Si tous les caractères ne sont pas alphabétiques, la fonction retourne 0. Une Variable vide ou une valeur qui inclut des caractères spéciaux (comme # ou $) ou des chiffres retourne 0. Voir aussi : isletter().

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

isdigit()

La fonction isdigit() renvoie 1 (vrai) si le premier caractère de la Variable est un chiffre numérique (0-9). Sinon, la fonction renvoie 0 (faux). Une Variable vide ou une valeur qui commence par un caractère spécial renvoie 0. Voir aussi : 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()

La fonction isletter() renvoie 1 (vrai) si le premier caractère de la Variable est une lettre de l'alphabet (A-Z, a-z). Sinon, la fonction renvoie 0 (faux). Une Variable vide ou une valeur qui commence par un caractère spécial renvoie 0. Voir aussi : 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()

La fonction isnumeric() retourne 1 (vrai) si tous les caractères de la Variable sont des chiffres. Si l'un des caractères n'est pas numérique, la fonction retourne 0. Une Variable vide ou une valeur qui inclut des caractères spéciaux (comme # ou $) ou des chiffres retourne 0. Voir aussi : isdigit().

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

islower() et isupper()

La fonction isupper() renvoie 1 (vrai) si le premier caractère de la variable est une lettre majuscule. Sinon, la fonction renvoie 0 (faux).

La fonction islower() renvoie 1 (vrai) si le premier caractère de la variable est une lettre minuscule. Sinon, la fonction renvoie 0 (faux).

IF TEST = 1
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

Les résultats de l'exemple sont les suivants :

  • result1 = example1.isupper() est vrai, car le premier caractère de example1 est B, ce qui est une majuscule.

  • result2 = example2.isupper() est faux, car le premier caractère de example2 est m, ce qui n'est pas une majuscule.

  • result3 = example1.islower() est faux, car le premier caractère de example1 est B, ce qui n'est pas une minuscule.

  • result4 = example2.islower() est vrai, car le premier caractère de example2 est m, ce qui est une minuscule.

left(number) et right(number)

Retourne les caractères le plus à gauche ou le plus à droite du number. Vous pouvez ajouter - # ou +# à l'argument lorsque vous appelez la fonction pour modifier la valeur retournée. Par exemple, si vous incluez -1, la fonction retourne un nombre inférieur de un au nombre de caractères dans le Variable spécifié.

IF TEST = 1
{
  ASSIGN example1 = "Abcd456"
  ASSIGN locationVar = 4
}
ASSIGN leftVar = "{example1.left(locationVar)}"
ASSIGN rightVar = example1.right(locationVar)
	
ASSIGN leftVarMinus = example1.left(locationVar - 1)		
ASSIGN rightVarPlus = "{example1.right(locationVar + 1)}"

Les résultats de l'exemple sont :

  • leftVar = Abcd
  • rightVar = d456
  • leftVarMinus = Abc
  • rightVarPlus = cd456

length()

Renvoie le nombre de caractères de la valeur de la variable. Par exemple, si la valeur est 1234.56, la longueur retournée est 7. Les espaces et les caractères spéciaux sont pris en compte dans le calcul de la longueur.

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()

Les résultats de l'exemple sont :

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

ln(value)

Renvoie le logarithme naturel (base e) de value. value est spécifié comme un nombre en base 10.

ASSIGN natLog = "{ln(434)}"

Le résultat de l'exemple est natLog=6.07304453410041.

log10(value)

Renvoie le logarithme en base 10 de la value spécifiée.

ASSIGN log10Num = "{log10(434)}"

Le résultat de l'exemple est log10Num=2.63748972951251.

log2(value)

Renvoie le logarithme en base 2 du value spécifié. Le value est spécifié sous forme de nombre en base 10.

ASSIGN log2Num = "{log2(434)}"

Le résultat de l'exemple est log2Num=8.76155123244448.

logn(value,base)

Retourne le logarithme du value spécifié dans la base spécifiée. Les deux paramètres sont spécifiés en tant que nombres en base 10.

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

Le résultat de l'exemple est lognNum=3.77339472817288.

max(value1,value2) et min(value1,value2)

max() renvoie la plus grande des deux valeurs numériques spécifiées.

min() renvoie la plus petite des deux valeurs numériques spécifiées.

Si vous transmettez des valeurs de type chaîne, les deux fonctions évaluent toujours à 0.

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

ASSIGN resultMax = max(value1, value2)

Les résultats de l'exemple sont :

  • resultMin = 10
  • resultMax = 12

mid(start,length)

Renvoie les caractères de start à start+length. La première position de caractère est 1. Si start+length dépasse la longueur du texte source, celui-ci est automatiquement tronqué à la fin du texte source.

Cette fonction est similaire à substr(). mid() et substr() retournent tous les deux un sous-ensemble de caractères. La différence est qu'avec substr(), la fonction retourne les caractères entre les points de départ et de fin spécifiés. Avec mid(), la fonction retourne un nombre de caractères spécifié, défini par length, après le start spécifié.

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)}"

Les résultats de cet exemple sont :

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

now()

Retourne l'heure actuelle sur l'unité commercialeClosed Regroupement organisationnel de haut niveau utilisé pour gérer le soutien technique, la facturation et les paramètres globaux de votre système NiCE CXone.. Modifications à l'heure de l'unité commerciale, comme celles effectuées par l'entremise de l'Timezone Action, ont une incidence sur la valeur renvoyée par cette fonction.

ASSIGN thisTime = now

Les résultats sont que thisTime contient l'heure actuelle au moment où la fonction s'exécute.

random(value)

Renvoie un nombre entier non négatif aléatoire.Le nombre retourné est supérieur ou égal à zéro et inférieur à la valeur maximum spécifiée. Si vous avez besoin d'une valeur dans la plage de un à value, vous pouvez ajouter 1 à la Sortie de la fonction random :

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)

Les résultats de cet exemple sont différents chaque fois que la fonction s'exécute.

replace(old,new)

Remplace toutes les occurrences de old par new. Cette fonction fonctionne avec toutes les variations de formatage suivantes :

  • 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('@','')}"

Les résultats de l'exemple sont :

  • 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)

Arrondit le value spécifié à l’entier le plus proche. Cette fonction utilise la norme IEEE Standard 754, Section 4 (aussi appelée arrondi bancaire).

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

Le résultat de l’exemple est newValue = 103.

savetodb(1or0)

Permet d’enregistrer la valeur d’une variable dans la base de données.Cette fonction sauvegarde la valeur d'une variable dans la base de données à la fin de l'interaction. Sachez que la valeur d'une variable peut changer au fur et à mesure de l'exécution d'un script. Diverses actions et divers processus peuvent modifier ou effacer la valeur d'une variable. Si cela se produit et que vous souhaitez sauvegarder la valeur à partir d'un point précis du script, vous devrez peut-être créer une nouvelle variable, lui assigner la valeur souhaitée et utiliser savetodb() avec celle-ci.

savetodb() n'est pas une véritable fonction. Il s'agit d'une propriété des variables dans Studio. Vous pouvez l'appliquer aux variables lorsque vous travaillez avec des extraits de code. Vous pouvez également la définir lorsque vous utilisez l'Assign action. Vous pouvez accéder aux données stockées de deux façons :

Ajoutez savetodb() à une variable avec 1 comme argument pour que la valeur de la variable soit sauvegardée dans la base de données, comme illustré dans l'exemple suivant :

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

Si vous utilisez savetodb() dans un sous-script généré avec une RUNSUB action, vous devez déclarer la variable comme global. Cela garantit que la variable persistera après que le sous-script redonne le contrôle au script appelant. Si vous ne déclarez pas la variable comme global, il s'agit d'une variable locale, qui existe uniquement dans le sous-script. savetodb() fonctionne uniquement avec les variables qui existent dans le script appelant.

La déclaration de variables dans un sous-script en tant que global est une façon d'accéder aux valeurs des variables dans un sous-script. Une autre option consiste à utiliser l'GET /contacts/{contactId}/custom-data An icon of a square with an arrow  pointing from the center out to the upper right corner. API.

screenpop() and setscreenpop(1or0)

screenpop() : Renvoie une valeur indiquant si l’indicateur ScreenPop est activé sur la variable.

setscreenpop() : Vous permet d'utiliser la valeur d'une Variable dans le screen popClosed Fenêtre contextuelle contenant des informations sur le contact qui s’affiche sur l’écran d’un agent après un événement, comme la connexion à un contact., si la ACD compétence actuelleClosed Utilisé pour automatiser la livraison des interactions en fonction des compétences, des aptitudes et des connaissances de l’agent. a l'option Utiliser les Screen Pops activée.

screenpop() et setscreenpop() ne sont pas de véritables fonctions. Ce sont des propriétés de Variable dans Studio que vous pouvez définir lorsque vous travaillez avec des montées de fiche-clientClosed Fenêtre contextuelle contenant des informations sur le contact qui s’affiche sur l’écran d’un agent après un événement, comme la connexion à un contact.. Vous pouvez les appliquer aux Variable lorsque vous travaillez dans des extraits (snippets). Vous pouvez également les définir avec l'Action Assign .

Ajoutez setscreenpop() à une Variable avec 1 comme argument pour que la valeur de la Variable soit transmise à la montée de fiche-client. Cette fonction ne fonctionne pas avec les Scripts numériques. Si vous souhaitez utiliser les montées de fiche-client avec les Scripts numériques, utilisez l'Action PopURL action ou l'Runapp action.

Ajoutez setscreenpop() à une Variable avec 1 comme argument pour que la valeur de la Variable soit transmise à la montée de fiche-client.

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

Ajoutez screenpop() à une Variable pour vérifier si l'indicateur ScreenPop est défini. La propriété renvoie 1 si vrai et 0 si faux.

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

sgn(value)

Retourne une valeur qui indique le signe du value spécifié. Retourne -1 si value est inférieur à zéro, 0 si value est égal à zéro, et 1 si value est supérieur à zéro.

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

Le résultat de l'exemple est signOfNum = 1, 0, -1.

sin(value)

Renvoie le sinus de la value spécifiée. La value doit être exprimée en radians.

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

Le résultat de l'exemple est sinNum = 0.384615384615385.

sinh(value)

Renvoie le sinus hyperbolique de value spécifiée. value doit être exprimé en radians.

ASSIGN hSine = "{sinh(angleRad)}"

Le résultat de l'exemple est hSine=0.405126696125173.

split(délimiteur)

Convertit le contenu d’une variable en une chaîne délimitée par des barres verticales qui peut être traitée comme un tableau. Remplace le caractère existant et spécifié delimiter par un caractère de barre verticale. Le delimiter est converti au symbole de barre verticale ( | ).

Lorsque les résultats sont assignés à une nouvelle variable, la nouvelle variable se comporte comme un tableau et prend en charge la syntaxe d'indexation de tableau, comme dans variable[index].

Split peut aussi être utilisé dans un extrait pour convertir une variable en tableau. En l’utilisant de cette manière, vous modifiez le contenu de la variable.

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(',')

Les résultats de l'exemple sont :

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

sqrt(value)

Renvoie la racine carrée de la value spécifiée.

ASSIGN root = "{sqrt(25)}"

Le résultat de l'exemple est root = 5.

substr(start,end)

Renvoie les caractères de start à end. La première position de caractère est 1. Si end dépasse la longueur du texte source, il est automatiquement tronqué à la fin du texte source.

Cette fonction est similaire à mid(). mid() et substr() retournent tous les deux un sous-ensemble de caractères. La différence est qu'avec substr(), la fonction retourne les caractères entre les points de départ et de fin spécifiés. Avec mid(), la fonction retourne un nombre de caractères spécifié, défini par length, après le start spécifié.

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}"		

Les résultats de l'exemple sont :

  • areaCode = 801
  • totalAmount = $152.69

tan(value)

Renvoie la tangente de la valeur value spécifiée. La valeur value doit être en radians.

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

Le résultat de l'exemple est tanNum = 0.416666666666667.

tanh(value)

Renvoie la tangente hyperbolique de la valeur value spécifiée. La valeur value doit être exprimée en radians.

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

Le résultat de l'exemple est hTan = 0.375483244486081.

trim(), ltrim() et rtrim()

La fonction trim() retourne une chaîne dont tous les espaces blancs en début et en fin sont supprimés. Les espaces blancs comprennent les espaces, les tabulations et les sauts de ligne.

La fonction ltrim() retourne une chaîne dont tous les espaces blancs en début sont supprimés.

La fonction ritrim() retourne une chaîne dont tous les espaces blancs en fin sont supprimés.

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

ASSIGN lTrimRes = varString.ltrim

ASSIGN rTrimRes = varString.rtrim

Les résultats de l'exemple sont :

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

trunc(value)

Calcule la partie entière de value spécifié. trunc() arrondit value à l'entier le plus proche vers zéro.

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

Le résultat de l'exemple est truncNum = 945, 946.

upper() et lower()

La upper() fonction retourne le contenu de la variable avec toutes les lettres converties en majuscules.

La lower() fonction retourne le contenu de la variable avec toutes les lettres converties en minuscules.

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

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

Les résultats de cet exemple sont :

variable3 = "BEOWULF IS A MONSTER FIGHTER"

variable4 = "beowulf is a monster fighter"

urlencode() et urldecode()

Encode ou décode une URL conformément à la norme Internet pour l’encodage des URL. La fonction urlencode() retourne le contenu de la variable encodée selon la norme Internet pour l'encodage URL. Par exemple, certaines des données devant être ajoutées à une URL pour les sceen popsClosed Fenêtre contextuelle contenant des informations sur le contact qui s’affiche sur l’écran d’un agent après un événement, comme la connexion à un contact. doivent être encodées afin qu'elles soient envoyées correctement.

La fonction urldecode() retourne le contenu de la variable décodée à partir de la norme Internet pour l'encodage URL. Dans l'exemple suivant, urldecode() décode la variable URL, ce qui signifie que URL et newURL ont la même valeur.

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.nicecxone.com{eURL}"

ASSIGN newURL = eURL.urldecode()

Les résultats de cet exemple sont :

  • URL = ?&sys_id=-1&sysparm_query=u_source_phone=5551234567^u_caller_phone=5550987654^u_wait_time_string=2 02:39:42^opened_at=2025-07-08 14:59:39

  • eURL = %3f%26sys_id%3d-1%26sysparm_query%3du_source_phone%3d%5eu_caller_phone%3d%5eu_wait_time_string%3d%5eopened_at%3d

  • popURL = http://www.nicecxone.com%3f%26sys_id%3d-1%26sysparm_query%3du_source_phone%3d5551234567%5eu_caller_phone%3d5550987654%5eu_wait_time_string%3d2+02%3a39%3a42%5eopened_at%3d2025-07-08+14%3a59%3a39

  • newURL = ?&sys_id=-1&sysparm_query=u_source_phone=5551234567^u_caller_phone=5550987654^u_wait_time_string=2 02:39:42^opened_at=2025-07-08 14:59:39