Fonctions intégrées

Les informations sur cette page d’aide concernent à 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 automatique qui s'affiche lorsque vous saisissez 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 deuxième 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 voulez accomplir, mais pas le nom de la fonction. Vous pouvez consulter des listes de fonctions qui vous permettent de :

Il existe également une liste 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 Les Fonctions.

Cette page ne fournit pas d'informations sur les fonctions intégrées destinées à être utilisées avec RestProxy, le service permettant de connecter vos Scripts à des API RESTful. Ces fonctions sont présentées sur la page d'aide RestProxy.

Réessayez

Téléchargez le script Exemples de Fonctions et importez-le dans Studio. Les exemples de cette page d'aide sont disponibles dans les actions Snippet du script d'exemple. Vous pouvez ouvrir la Snippet editor fenêtre et exécuter le débogueur pour voir le fonctionnement de 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 définissez les heures dans les scripts.

Un OLE Automation Date Icon of a square with an arrow point from the center through the top right corner. est une date écrite sous la forme d'un nombre à virgule flottante. La partie gauche du point décimal correspond au nombre de jours écoulés depuis minuit, le 30 Décembre 1899. La partie droite du point décimal correspond à l'heure de ce jour 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 à l'aide du format de date par défaut.
asdatedow() Retourne le jour de la semaine sous forme de valeur ordinale de 0 à 6, où 0 correspond à Dimanche.
asdatetime() Convertit la valeur d’une variable en une chaîne date/heure à l'aide du format de date/heure spécifié.
asgmt() et asutc() Convertit le contenu d’une variable en une chaîne date/heure convertie en GMC 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) ``` Renvoie une nouvelle date basée sur date plus value.
datebuild(year, month, day) Renvoie une chaîne de date/heure utilisant les Year, Month et 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 à l'aide du format spécifié.
datepart(unit)

 

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

now()

Retour de 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 des variables qui contiennent des valeurs numériques. D'autres fonctions que vous pouvez utiliser avec les nombres sont les fonctions pour les calculs mathématiques.

Fonction

Description

ceil(value

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

floor(value

Renvoie le plus grand nombre entier inférieur ou égal à la valeur value spécifiée.

format(format) Renvoie une chaîne contenant les caractères numérique formatés à l'aide du format spé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(value) Arrondit la value spécifiée à 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 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 automatique qui apparaît lors de l'utilisation d'une action SNIPPET, mais elles fonctionnent si vous les entrez manuellement.

Fonction

Description

abs(value)

Renvoie la valeur absolue de la value spécifiée.

acos(value)

Renvoie l'angle en radians dont le cosinus est la value spécifiée.

asin(valeur)

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

atan(value)

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

atan2(x, y)

Renvoie 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 en radians.

``` cosh(value) ```

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

exp(valeur)

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

ln(value)

Renvoie le logarithme naturel (base e) de la value. La value est spécifiée sous la forme d'un nombre en base 10.

``` log10(value) ```

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

log2(value, base)

Renvoie le logarithme en base 2 de la value spécifiée. La value est spécifiée sous la forme d'un nombre en base 10.

logn(value, base)

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

round(value)

Arrondit la value spécifiée à l'entier le plus proche.

sgn(value)

Renvoie une valeur indiquant le signe de la value spécifiée. Renvoie -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(value)

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

sinh(value)

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

sqrt(value)

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

tan(value)

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

tanh(value)

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

trunc(value)

Calcule la partie entière de l'élément 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 voulez modifier la valeur d'une variable en l'affectant à une autre variable.

Outre les fonctions de ce tableau, bon nombre des fonctions pour les dates et les heures vous permettent de modifier des valeurs. Par exemple, vous pouvez convertir une valeur de date dans un format différent.

Fonction

Description

append(text) Ajoute le contenu d'une première variable à une seconde variable
asjson() et asxml() Convertit le contenu d’une variable convertie en JSON ou XML.
``` dateadd(date, value) ```

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

``` datefmt(format) ```

Convertit le contenu de date en une chaîne date/heure à l'aide du format spécifié.

format(format) Renvoie une chaîne contenant les caractères numérique formatés à l'aide du format spécifié.
lower() et upper()

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

remplacer (ancien, nouveau) Remplace toutes les occurrences de old par new.
split(delimiter) 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 delimiter existant spécifié par un caractère barre verticale.
trim() , ltrim() , et rtrim() Renvoie une chaîne avec les caractères d'espacement de début supprimés. Vous pouvez faire supprimer tous les caractères d'espacement, ou seulement les caractères d'espacement de début ou de fin.
" et " 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

contient (valeur) Évaluer une variable pour la value spécifiée.
count() Renvoie le nombre d'éléments dans un tableau ou un objet.
index(indexValue) Renvoie l'élément du tableau à partir du contenu de la variable, selon le indexValue spécifié.
``` indexof(text) ``` Renvoie la position du 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érique (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 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 ces 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 dans un tableau.

Fonctions permettant d’extraire une partie d'une valeur

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

Fonction

```

Description

```
``` datepart(unit) ```

Renvoie une partie d'une date ou d'une heure en fonction de la unit spécifiée.

index(indexValue) Renvoie l'élément du tableau à partir du contenu de la variable, selon le 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 ces 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 depuis start jusqu'à end.

Fonctions à utiliser avec les tableaux

Les fonctions suivantes fonctionnent avec des tableaux.

Fonction

Description

count()

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

index(indexValue)

Renvoie l'élément du tableau à partir du contenu de la variable, selon le indexValue spécifié.

indexde(texte)

Renvoie la position du text spécifié dans le contenu d'une variable.

size()

Renvoie le nombre d'éléments dans un tableau.

diviser(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 delimiter existant spécifié par un caractère barre verticale.

Autre

Fonction

Description

caractère (code)

Renvoie un caractère à partir de la valeur de 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 l'objet données dynamiques objectName contient. 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(comparer, trueval, falseval)

Si en ligne pour les nombres. Évalue compare, puis renvoie soit trueval, soit falseval, selon les résultats de l'évaluation.

iifs(compare, trueval, falseval)

Chaîne inline-if. Évalue compare, puis renvoie soit trueval, soit falseval, selon les résultats de l'évaluation.

isnull()

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

savetodb(1or0) Vous permet d'enregistrer la valeur de la variable dans la base de données.
screenpop()

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

setscreenpop(1or0)

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 Use 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 de la value spécifiée.

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 value spécifiée.

ASSIGN angleRad3 = "{acos(cosNum)}"

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

append(string)

Ajoute le contenu d'une première variable à une seconde variable Ajoute la string à la fin du contenu existant dans la variable. Cette fonction fonctionne uniquement dans un Extrait ou une action 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 cet 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 à l'aide du format de date par défaut.

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

Lorsqu'il est utilisé avec une expression numérique : convertit le contenu de la variable en 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/jj/aaaa.

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

Le résultat de cet exemple dépend de la date locale 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()

Pour ce faire, Retourne le jour de la semaine sous forme de valeur ordinale de 0 à 6, où 0 correspond à Dimanche.il convertit le contenu de la variable en 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. 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 standard formats de date 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 d’une variable en une chaîne date/heure à l'aide du format de 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 standard, tels que MM/dd/aaaa HH:mm:ss.

Si vous transmettez une date sans heure, la fonction ajoute une heure.Il est défini par défaut sur 00:00.

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 cet exemple sont :

  • numericDateTime = 45110.3720486111 (lorsque l'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() et asutc()

Convertit le contenu d’une variable en une chaîne date/heure convertie en GMC 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'il s'agit d'une 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 sous forme de chaîne valide 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 avec le Timezone action.

Lorsqu'elle est 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 Octobre 2026 13:35:14 GMT ».

Lors de l'utilisation de ces fonctions, le format de l'heure contenu dans la variable ne peut inclure ni :

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

L'inclusion de l'un ou l'autre entraîne une erreur lorsque asgmt() ou asutc() tente de convertir les fuseaux horaires, car le fuseau horaire d'origine est considéré comme différent du fuseau horaire de l'unité commerciale. En outre, pour éviter l'erreur lors de l'utilisation du format de date/heure ISO 8601, incluez une action Timezone avant l'Extrait action et configurez-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é d’exploitation 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 où la fonction s'exécute. 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 le format date/heure ISO.

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 convertie.

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 cet exemple sont :

  • numericDateTime = 2023-07-03T09:43:06.000Z (lorsque la date/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() et asxml()

Il 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 issus 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). Convertit le contenu d’une variable convertie en JSON ou XML.

La fonction asjson() convertit tout le contenu de l'objet en chaîne de caractères avec des guillemets doubles autour, y compris les valeurs numériques ou booléennesClosed Un type de données qui a deux valeurs possibles : true et false.. Vous pouvez prendre cela en 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 de la valeur de la 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 JSON chaîne.

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 stocker le résultat JSON dans une variable de chaîne.Utilisez le Variable de chaîne dans les propriétés d'autres actions Studio lorsque vous devez transmettre les données JSON. Cette approche évite le risque d'erreurs de validation lors de l'enregistrement du script.

Les résultats de cet 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.

Lorsqu'il est utilisé avec un Valeur de chaîne : 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.

Lorsqu'elle est utilisée avec une valeur numérique : convertit le contenu de la variable en une chaîne de temps.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 les suivants :

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

Renvoie 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) et floor(value)

La fonction ceil renvoie 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 à la valeur value spécifiée.

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

ASSIGN newValue2 = ceil(value)

Les résultats de cet exemple sont :

  • newValue1 = 102
  • newValue2 = 103

contains(value)

Évaluer une variable pour la value spécifiée. Renvoie une valeur de 1 (true) si la variable contient une value spécifiée. Si la variable est un tableau, tous les éléments sont vérifiés pour l'value exacte.

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 cet exemple sont :

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

char(code)

Renvoie un caractère à partir de la valeur de 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 à la ligne, des tabulations et des caractères de saut de ligne.

Soyez prudent avec cette fonction. char(0) à char(7) sont réservés à un usage interne et peuvent provoquer un dysfonctionnement 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 cet 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 l'objet données dynamiques objectName contient. 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)

The copy() function uses more system resources than assigning a reference does. It performs a deep copy by converting the object into a textual representation, and then back into an object. If the object you're working with contains a large amount of data, this process could impact the functioning of the script.

cos(valeur)

Renvoie le cosinus de la value spécifiée. La value doit être 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 la value spécifiée. La value doit être en radians.

 ASSIGN hCosine = "{cosh(angleRad)}"

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

count() et size()

Renvoie le nombre d'éléments au sein d'un tableau. size() fonctionne uniquement avec des tableaux. count() fonctionne avec des tableaux au sein d'objets.

Si la valeur n'est pas un tableau mais n'est pas vide, la valeur 1 (vrai) est renvoyée. Si la valeur est vide, 0 (faux) 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 cet exemple sont :

  • exSize et ex1Count sont 7.
  • ex2Size et ex2Count sont égaux à 1.
  • ex3Size et ex3Count sont 0.
  • ex4Count est égal à 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 la forme du nombre de secondes autres que les secondes intercalaires qui se sont écoulées depuis 00:00:00 UTC le 1er Janvier 1970. Les secondes intercalaires sont des ajustements occasionnels d'une seconde apportés au temps universel coordonné (UTC) afin de 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ù celui-ci 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)

Renvoie une nouvelle date basée sur date plus value.. La nouvelle date est renvoyée sous la forme d'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.. L'interprétation de value est déterminée par unit. Si value est négatif, value est soustrait de date.

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

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

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

Pour utiliser cette fonction dans une chaîne, incluez commedateheure(), comme illustré dans 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 au 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)

Renvoie une chaîne de date/heure utilisant les Year, Month et Day spécifiés.

Lorsqu'elle est utilisée comme chaîne : renvoie une date/heure numérique formatée au format de date/heure Standard, qui inclut l'heure. L'heure est fixée par défaut à minuit. Si vous souhaitez 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'elle est utilisée comme expression numérique : renvoie 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 l'exemple sont les suivants :

  • 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érieure à 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. Placez unit entre guillemets doubles ou simples, ou transmettez une variable qui contient unit. Si vous transmettez une variable, ne la mettez pas entre guillemets ou entre accolades.

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

  • 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 toutes les deux semaines, 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 sur le moment où votre bureau est ouvert. Définissez la valeur de HOO dans l'instruction AUTRE sur le moment 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 lorsque la fonction s'exécute.

datefmt(date, format)

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

Lorsque vous définissez la sortie format, utilisez le spécificateurs de format pour définir l'apparence souhaitée de la date et de l'heure, ainsi que les informations qu'elles doivent contenir. 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 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 partie d'une date ou d'une heure. Renvoie une partie d'une date ou d'une heure en fonction de la unit spécifiée. La variable doit contenir un type de date/heure ou une chaîne qui est une date/heure correctement formatée ou unnombre 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.. unit spécifie la partie de la date à renvoyer. Cette fonction doit être appelée sur une variable date/heure. Si vous transmettez une valeur date/heure dans cette fonction, elle ne fonctionnera pas.

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

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

Si la fonction ne peut pas aboutir, attendu une saisie incorrecte ou inattendue, la sortie par défaut est le 30 Décembre 1899.

Lorsqu'il est utilisé en tant que chaîne de caractères :

Renvoie la représentation 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 sur quatre chiffres.
  • Heure renvoie l'heure au format 24 heures.
  • Dow signifie Day of Week (jour de la semaine) et renvoie la représentation complète et non abrégée sous forme de chaîne du nom du jour de la semaine. Par exemple, Jeudi.

Toutes les valeurs numériques sauf l'année sont précédées de 0 si elles comportent moins de deux chiffres.

Lorsqu'il est utilisé comme expression numérique :

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

  • Année renvoie l'année complète sur 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 cet 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 Year, Month, Day, Hour, Minute, Second spécifiés. Si la fonction ne peut pas aboutir, attendu une saisie incorrecte ou inattendue, la sortie par défaut est le 30 Décembre 1899.

Lorsqu'elle est utilisée comme expression de chaîne : Renvoie une date/heure formatée au format date/heure standard.

Lorsqu'elle est utilisée comme expression numérique : renvoie 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..

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 les suivants :

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

dow()

Renvoie 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 de date/heure ou une chaîne qui est une date/heure correctement formatée ou unnombre 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.. Si la fonction ne peut pas aboutir, attendu 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 renvoie 1 car le 7 Juillet 2025 était un Lundi.

format(specifiers)

Renvoie une chaîne contenant les caractères numérique formatés à l'aide du format spécifié.Le specifiers s'applique uniquement aux valeurs numériques contenues dans la variable. Pour 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 : Numéro

  • P ou P : Pour cent
  • R ou r : aller-retour
  • X ou x : hexadécimal
  • 0 : Zéro espace réservé

Vous pouvez en savoir plus sur ces formats numériques à utiliser avec cette fonction.

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, selon le indexValue spécifié. Ceci est identique à la lecture d'un tableau en utilisant des crochets. Par exemple, variable[3] équivaut à variable.index(3).

Les Tableaux dans Studio commencent à 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 sont que arrayPart1 contient Hrothgar.

indexof(string)

Renvoie la position du text spécifié dans le contenu d'une variable. La première position est 1. Si la variable ne contient pas string, la fonction renvoie 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 les suivants :

  • arrayLoc est 5

  • 5 vaut characterLoc

  • invalidLoc est 0

iif(compare, trueval, falseval)

Si en ligne pour les nombres. Évalue compare, puis renvoie soit trueval, soit falseval, selon les résultats de l'évaluation.

Si compare est différent de zéro (vrai), trueval est renvoyé.

Si compare est égal à zéro (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(comparer, truestr, falsestr)

Chaîne inline-if. Évalue compare, puis renvoie soit trueval, soit falseval, selon les résultats de l'évaluation.

Si compare est différent de zéro (vrai), truestr est renvoyé.

Si compare est égal à zéro (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 cet exemple sont :

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

isalpha()

La fonction isalpha() renvoie 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 renvoie 0. Une variable vide ou une valeur qui inclut des caractères spéciaux (tels que # ou $) ou des nombres renvoie 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 commençant 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() renvoie 1 (vrai) si tous les caractères de la variable sont des nombres. Si l'un des caractères n'est pas numérique, la fonction renvoie 0Une variable vide ou une valeur contenant des caractères spéciaux (tels que # ou $) ou des nombres renvoie 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, qui est en majuscule.

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

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

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

left(number) et right(number)

Renvoie les caractères les plus à gauche ou les plus à droite du number. Vous pouvez ajouter - # ou +# à l'argument lorsque vous appelez la fonction pour modifier la valeur renvoyée. Par exemple, si vous incluez -1, la fonction renvoie une valeur inférieure de un au nombre de caractères de la variable spécifiée.

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 cet 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 renvoyée est 7. Les espaces et les caractères spéciaux sont pris en compte dans 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 cet exemple sont :

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

ln(value)

Renvoie le logarithme naturel (base e) de la value. La value est spécifiée sous la forme d'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 de la value spécifiée. La value est spécifiée sous la forme d'un nombre en base 10.

ASSIGN log2Num = "{log2(434)}"

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

logn(value,base)

Renvoie le logarithme de la value spécifiée dans la base spécifiée. Les deux paramètres sont spécifiés en tant que nombres de 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 chaîne, les deux fonctions aboutissent toujours à la valeur 0.

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

ASSIGN resultMax = max(value1, value2)

Les résultats de cet 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(). Les fonctions mid() et substr() renvoient toutes deux un sous-ensemble de caractères. La différence est que, avec substr(), la fonction renvoie les caractères compris entre les points de début et de fin spécifiés. Avec mid(), la fonction renvoie 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()

Modifications à l'heure de l'unité commerciale, par exemple via l'Action Timezone, affectent la valeur renvoyée par cette fonction.

ASSIGN thisTime = now

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 renvoyé est supérieur ou égal à zéro et inférieur à la valeur maximale spécifiée. Si vous avez besoin d'une valeur comprise dans la plage de un à value, vous pouvez ajouter 1 à la sortie de la fonction Aléatoire :

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 exécution de la fonction.

replace(old,new)

Remplace toutes les occurrences de old par new. Cette fonction fonctionne avec toutes les variantes 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 les suivants :

  • 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 la value spécifiée à l'entier le plus proche. Cette fonction utilise la norme IEEE Standard 754, section 4 (également 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)

Vous permet d'enregistrer la valeur de la variable dans la base de données.Cette fonction enregistre 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 à l’exécution du script. Différents processus et actions peuvent modifier ou effacer la valeur d’une variable. Si cela se produit et que vous souhaitez enregistrer la valeur à partir d'un point spécifique du script, vous devrez peut-être créer une nouvelle variable, lui attribuer la valeur souhaitée, et l'utiliser avec savetodb().

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 dans des snippets. Vous pouvez également le définir lors de l'utilisation de l'action Assign Action. Vous pouvez accéder aux données stockées de deux manières :

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)

If using savetodb() in subscript spawned with a RUNSUB action, you must declare the variable as global. This ensures that the variable will persist after the subscript returns control to the calling script. If you don't declare the variable as global, it's a local variable, which only exists in the subscript. savetodb() only works with variables that exist in the calling script.

La déclaration de variables globales dans un sous-script est une manière d'accéder aux valeurs des variables qu'il contient. 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() : 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 Use Screen Pops activée.

screenpop() et setscreenpop() ne sont pas de véritables fonctions. Il s'agit des propriétés de variables dans Studio que vous pouvez définir lorsque vous utilisez des screen 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.. Vous pouvez les appliquer aux variables lorsque vous travaillez dans des snippets. Vous pouvez également les définir avec l'action Assign .

Add setscreenpop() à une variable avec 1 comme argument pour que la valeur de la variable soit transmise à la fenêtre contextuelle. Cette fonction ne fonctionne pas avec les scripts numériques. Si vous souhaitez utiliser des fenêtres contextuelles avec des scripts numériques, utilisez l'POPURL action ou l'RUNAPP action.

Ajoutez setscreenpop() à une variable avec 1 comme argument pour que la valeur de la variable soit transmise à la fenêtre contextuelle.

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 la valeur est vraie et 0 si elle est fausse.

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

sgn(value)

Renvoie une valeur indiquant le signe de la value spécifiée. Renvoie -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 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 la value spécifiée. La value doit être en radians.

ASSIGN hSine = "{sinh(angleRad)}"

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

split(delimiter)

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 delimiter existant spécifié par un caractère barre verticale. Le delimiter est converti en symbole barre verticale ( | ).

Lorsque les résultats sont attribué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 également être utilisé dans un extrait pour convertir une Variable en tableau. son utilisation de cette manière modifiera 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 cet 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 depuis start jusqu'à end. La position du premier 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(). Les fonctions mid() et substr() renvoient toutes deux un sous-ensemble de caractères. La différence est que, avec substr(), la fonction renvoie les caractères compris entre les points de début et de fin spécifiés. Avec mid(), la fonction renvoie 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 cet exemple sont :

  • areaCode = 801
  • totalAmount = $152.69

tan(value)

Renvoie la tangente de la value spécifiée. La 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 value spécifiée. La value doit être 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 trim() fonction renvoie une chaîne de caractères dont tous les caractères d'espace blanc en début et en fin ont été supprimés. Les espaces blancs incluent les espaces, les tabulations et les retours à la ligne.

La fonction ltrim() renvoie une chaîne dont tous les caractères d'espacement en début de chaîne ont été supprimés.

La fonction ritrim() renvoie une chaîne dont tous les caractères d'espacement en fin de chaîne ont été supprimés.

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

ASSIGN lTrimRes = varString.ltrim

ASSIGN rTrimRes = varString.rtrim

Les résultats de cet exemple sont :

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

trunc(value)

Calcule la partie entière de l'élément 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 fonction upper() renvoie le contenu de la variable avec toutes les lettres converties en majuscules.

La fonction lower() renvoie 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 urlencode() fonction renvoie le contenu de la variable codé selon la norme Internet de codage URL. Par exemple, certaines des données qui doivent être ajoutées à une URL pour les 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. doivent être encodées afin d’être envoyées correctement.

La fonction urldecode() renvoie le contenu de la variable décodé à partir du standard Internet pour l'encodage des 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 les suivants :

  • 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