Runsub

本帮助页面适用于 CXone Studio此信息也可用于Desktop Studio

调用一个子脚本,该子脚本运行然后使用 Return action 返回并继续运行主脚本。当子脚本运行时,它将一个值存储在 ReturnValue 操作的 Return 属性中,然后将该值传递回主脚本的 ReturnVariable 中的 Runsub 属性。

如果您有一个或多个较大的脚本想要分解为较小的脚本,那么这个操作尤其有用。

依赖关系

  • 主脚本和子脚本必须在同一个文件夹中。

  • 主脚本和子脚本必须为相同类型。例如,如果主脚本是电话脚本,则子脚本也必须是电话脚本。
  • 如果您在主脚本中放入一个 Runsub 操作,那么您的子脚本必须有一个 Return 操作。
  • Runsub 可以将多个变量从主脚本传递给子脚本,但是子脚本只能返回一个值(在 ReturnVariable 属性中)给主脚本。
  • 当子脚本终止时,子脚本中定义的任何变量将不再可用,除非您将它们声明为全局。您可以通过在变量名称前添加 global:SNIPPET 操作中执行此操作。例如,ASSIGN global:varName = value。访问子脚本中数据的另一个选项是使用 GET /contacts/{contactId}/custom-data 一个正方形图标,箭头从中心指向右上角。 API。
  • 要对 Runsub 子脚本中的变量使用 savetodb() 函数,该变量必须是全局变量。
  • RunScript SpawnRunsub 或类似脚本调用的所有脚本必须有效且处于活动状态。在保存过程中,Studio 会验证操作调用的所有脚本。如果其中任何一个无效或不活动,Studio 将显示错误,并且您将无法保存。

支持的脚本类型

其中一条分支线通向其他三个正方形的正方形。

通用

Email 聊天 电话 语音信箱 工作项目 短信 数字

类似操作比较

以下操作具有类似功能,但存在一些关键区别:

  • Runscript:当 Runscript 触发另一个脚本时,它不会从第二个脚本返回到第一个脚本。
  • Runsub:当 Runsub 触发子脚本时,只要该子脚本有 Return 操作,脚本就可以返回到第一个脚本。当子脚本完成时, Return 操作会将一个值返回给 Runsub 操作。
  • SPAWN:启动与第一个脚本并行运行的第二个脚本。衍生脚本无法将数据传递回第一个脚本,除非您在衍生脚本中包含 SIGNAL 操作

输入属性

这些属性定义操作在执行时使用的数据。

属性

说明

添加 说明文字

输入在脚本中唯一标识此操作的短语。标题显示在脚本画布上的操作图标下方。

Script Name

您希望生成的脚本。您可以单击位于操作属性框顶部的 Choose Script 链接,以便从您的业务单位选择一个脚本。

Return Variable

返回到主脚本的值存储在此属性中。要传递多个值,请使用数组作为变量。
Parameters

单击字段 中的省略号图标,并为的每个参数添加一个变量,以便将该脚本发送到派生脚本。在编辑器窗口中每行输入一个变量。使用有意义的变量名称。变量名称不必与派生脚本

传递到脚本中的参数显示在该脚本的Begin操作的追踪输出中。

结果分支条件

结果分支条件允许您在脚本中创建分支,以在执行操作时处理不同的结果。

条件

说明

Default

除了脚本满足条件要求其接受其他分支的情况之外,所要采用的路径。如果未定义操作的其他分支,也会执行此操作。

错误

操作无法正确执行时所采用的路径。例如,出现连接不良、语法错误等意外问题时。_ERR 变量以单个下划线字符填充,应包含对问题的简要解释。

脚本示例

这是一个示例,说明如何在脚本中使用此操作。它并不是一个完整的脚本。可能还需要编写其他脚本。

在下面的主脚本中(如顶部所示),当脚本被触发时,Runsub 操作会立即触发子脚本(如底部所示)。在子脚本中,Voiceparams 会设置“文本到语音转换”设置,而 Hours 操作会将“打开”、“关闭”和“休假”分支设置为三个不同的 Return 操作。当子脚本完成时,ReturnValues 属性(在 Return 操作中)中的值会存储在 ReturnVariable 字段中(主脚本中 Runsub 操作)。Case 操作然后会相应地设置打开、关闭和休假分支。

主脚本

一个示例脚本,显示 Studio 操作和连接它们的箭头。每个操作下面都有一个标签,指示该操作在脚本中的工作内容。

您想下载这个脚本吗?

子脚本

一个示例脚本,显示 Studio 操作和连接它们的箭头。每个操作下面都有一个标签,指示该操作在脚本中的工作内容。

这三个 Return 操作在 ReturnValue 属性中提供值,所以 Case 操作是主脚本,它可以决定遵循哪个分支。

您想下载这个脚本吗?