Runsub

The Runsub action icon, a curled piece of paper with two arrows pointing to the right next to it at the top and bottom.

Appelle un sous-script, qui s’exécute et utilise ensuite Return action pour revenir au script principal et continuer à l’exécuter. Lorsque le sous-script s’exécute, il stocke une valeur dans la propriété ReturnValue de l’action Return, puis transmet cette valeur à la propriété ReturnVariable de l’action Runsub du script principal.

Cette action peut être particulièrement utile si vous avez un ou plusieurs scripts plus volumineux que vous préférez diviser en scripts plus petits.

Dependencies

  • Le script principal et le sous-script doivent être dans le même dossier.

  • Le type de script principal et le type de sous-script doivent être identiques. Par exemple, si le script principal est un script téléphonique, le sous-script doit également être un script téléphonique.
  • Si vous placez une action Runsub dans le script principal, votre script secondaire DOIT avoir une action Return.
  • Runsub peut transmettre plusieurs variables du script principal au sous-script, mais ce dernier ne peut renvoyer qu’une seule valeur (dans la propriété ReturnVariable) au script principal.
  • Toutes les variables définies dans le sous-script ne seront plus disponibles lorsque le sous-script s’achèvera, à moins que vous ne les déclariez comme globales. Vous pouvez le faire dans une action SNIPPET en ajoutant global: devant le nom de la variable. Par exemple, ASSIGN global:varName = value. Une autre option pour accéder aux données d’un sous-script est d’utiliser l’API GET /contacts/{contactId}/custom-data Une icône représentant un carré avec une flèche pointant du centre vers le coin supérieur droit..
  • Pour utiliser la fonction savetodb() sur une variable dans un sous-script Runsub, il doit s’agir d’une variable globale.
  • Tous les scripts appelés par RunScript , Spawn, Runsub ou des scripts similaires doivent être valides et actifs. Pendant le processus de sauvegarde, Studio valide tous les scripts appelés par les actions. Si l'un d'entre eux est invalide ou inactif, Studio affiche une erreur et vous ne pourrez pas enregistrer.

Supported Script Types

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

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

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

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

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

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

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

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

Générique

Courriel Clavardage Téléphone Messagerie vocale Élément de travail SMS Numérique

Comparison of Similar Actions

Les actions suivantes ont des fonctions semblables, mais avec quelques différences essentielles :

  • Runscript : Lorsque Runscript déclenche un autre script, il ne retourne pas au premier script à partir du second.
  • Runsub : Lorsque Runsub déclenche un sous-script, le script peut revenir au premier script, à condition que le sous-script ait une action Return. L’action Return renvoie une valeur à l’action Runsub lorsque le sous-script est terminé.
  • SPAWN : Lance un deuxième script qui s’exécute en parallèle au premier script. Les scripts créés ne peuvent pas renvoyer de données au premier script, à moins que vous n’incluiez une SIGNAL action dans le script créé.

Input Properties

Ces propriétés définissent les données que l’action utilise lors de son exécution.

Propriété

Description

Légende

Saisissez une courte phrase qui identifie de manière unique cette action dans le script. La légende apparaît dans le canevas de script sous l’icône d’action. The default is the action name.

ScriptName

Le script que vous souhaitez générer. Vous pouvez cliquer sur le lien Choose Script en haut de la boîte de propriétés de l’action pour sélectionner un script de votre unité commerciale.

ReturnVariable

La valeur qui est retournée au script principal est stockée dans cette propriété. Pour transmettre plusieurs valeurs, utilisez un tableau en tant que variable.
Parameters

Cliquez sur l'icône représentant des points de suspension dans le champ et ajoutez une variable pour chaque paramètre script que vous souhaitez envoyer au script généré. Entrez une variable par ligne dans la fenêtre de l'éditeur. Utilisez des noms de variables significatifs. Les noms de variable ne doivent pas nécessairement correspondre au nom de la variable correspondante utilisée dans le script généré.

Les paramètres transmis à un script apparaissent dans Tracer la sortie de ce script dans l’action Begin.

Conditions de la branche de résultat

Les conditions de branche de résultat vous permettent de créer des branches dans votre script afin de gérer différents résultats lors de l’exécution d’une action.

Condition

Description

Default

Chemin emprunté à moins que le script ne remplisse une condition exigeant qu’il prenne l’une des autres branches. Elle est également prise si les autres branches de l’action ne sont pas définies.

OnError

Chemin emprunté lorsque l’action ne s’exécute pas correctement. Par exemple, en cas de problème inattendu tel qu’une mauvaise connectivité, des erreurs de syntaxe, etc. La variable _ERR, avec un seul caractère de soulignement, doit être remplie avec une explication condensée du problème.

Script Example

Cet exemple montre comment cette action peut être utilisée dans les scripts. Il ne s’agit pas d’un texte complet. Des scripts supplémentaires peuvent être nécessaires.

In the main script below (shown top), when the script is triggered, the Runsub action immediately triggers the subscript (shown bottom). In the subscript, Voiceparams sets the Text-to-Speech settings, and the Hours action sets branches for open, closed, and holiday to three different Return actions. When the subscript is finished, the values in the ReturnValues property (in the Return action) are stored in the ReturnVariable field (Runsub action in the main script). The Case action then sets the open, closed, and holiday branches as appropriate.

Main Script

An example script, showing Studio actions with arrows connecting them. Each action has a label beneath it to indicate what the action does in the script.

Would you like to download this script?

Subscript

An example script, showing Studio actions with arrows connecting them. Each action has a label beneath it to indicate what the action does in the script.

The three Return actions provide values in the ReturnValue property so the Case action in the main script can determine which branch to follow.

Would you like to download this script?