
# 变量赋值图元
参考JSON数据调用图元使用，主要用于获取随路数据和赋值操作
#### 图元展示
![](https://support.huaweicloud.com/usermanual-cec/figure/zh-cn_image_0000002526230396.png)
#### 参数介绍
- 节点名称：标识节点名称。
- 节点ID：图元节点ID，不可更改。
- 描述：节点的详细说明信息。

- 变量赋值：即变量名和变量值。由于接口返回的出参只能在当前节点有效，如果您需要在后续流程中应用该值，可在此处定义变量，将接口出参的值赋给它。
  ![](https://support.huaweicloud.com/usermanual-cec/public_sys-resources/note_3.0-zh-cn.png)
  在安全子流程场景下：
  1. 当变量值为IVRREQUEST.input时，变量名必须为加密保存的变量。
  
  2. 当变量值包含加密保存的变量，且变量名不为加密保存的变量时，系统会给出"表达式中包含加密变量，请注意数据安全"的提示，但不会影响用户保存流程。
    
- 方法调用：如果业务需要对数据处理，比如截取、获取长度、转换、判断等，可以使用[内置函数](https://support.huaweicloud.com/usermanual-cec/cec_04_0203.html#ZH-CN_TOPIC_0000002510096093)。
  ![](https://support.huaweicloud.com/usermanual-cec/public_sys-resources/note_3.0-zh-cn.png)
  在安全子流程场景下：
  1. 当方法参数包含加密保存的变量，且返回值不为加密保存的变量时，系统会给出"表达式中包含加密变量，请注意数据安全"的提示，但不会影响用户保存流程。
    
 
#### 分支条件介绍
表1分支条件 
| 名称             | 含义       | 使用方法                                |
|:---|:---|:---|
| SYSERROR_INNER | odfs内部错误 | ODFS内部发生其他未知错误时会触发该分支条件，不选择则进入异常流程。 |
   
#### 如何使用图元
(1)当随路数据内容为JSON格式时，可以使用该图元获取随路数据指定节点的参数并赋值的功能。
(2)如果业务需要对数据处理，比如截取、获取长度、转换、判断等，可以使用[内置函数](https://support.huaweicloud.com/usermanual-cec/cec_04_0203.html#ZH-CN_TOPIC_0000002510096093)
单击图元，或使用鼠标将图元拖拽到画布上，根据上述的参数介绍，填上相应的参数使用。
#### 典型使用场景
当用户呼入智能联络中心，路由到了某个技能队列，而该技能队列座席全忙时，如果该技能队列设置了等待音通过智能IVR流程播放时，智能IVR流程可使用该图元，用于获取当前用户当前的排队状态，并向用户播放。用户因此可通过排队状态，决定是否要继续等待。
**场景一：变量赋值**
数据赋值时，赋值支持字符串和整型数据，同时支持表达式计算。整型数据支持 +、-、\*、% （）等四则运算，数据支持FLOW 和GLOBAL 、SYS等。示例： (FLOW.xxx+FLOW.yyy)\*GLOBAL.zzz 注意在使用/ 除法时，需要用字符串类型的数据接收计算结果，整型不支持带小数。字符串数据支持 比较 、大小写转换、 字符串拼接 、求子串、求长度。示例：FLOW.aaa=="华为" FLOW.bb.to FLOW.a.toUpperCase() FLOW.A.toLowerCase() FLOW.hua+FLOW.wei FLOW.len.substring(0,3)FLOW.zzzz.length()
![](https://support.huaweicloud.com/usermanual-cec/figure/zh-cn_image_0000002557369781.png)
**场景二：管理随路数据**
1. 编排流程。 
   例1有随路数据为：{"data":{"test": "随路数据测试"}}
   使用"变量赋值"图元，将随路数据中的test字段值赋值给流程变量FLOW.str1，此时FLOW.str1的值为"随路数据测试"。
   例2有外呼任务随路数据为：{"iSales":{"name":"张三"}}，可通过配置iSales.name获取到内容"张三"。
   根据例1截图如下。
   图1获取随路数据   
   ![](https://support.huaweicloud.com/usermanual-cec/figure/zh-cn_image_0000002557350279.png)
   1. 配置智能机器人，对话类型选择IVR流程。
   
   2. 配置普通IVR，使用转移图元，选择转移到智能ivr，配置随路数据。
   
   3. 在智能ivr流程中配置变量赋值图元，获取随路数据中配置变量接收普通IVR传过来的随路数据。
   
   4. 设置随路数据 IVR流程在运行时，可以通过这里设置随路数据，随会话传递
      此处设置随路数据，以key value形式编写，可以设置多个，后台拼接传输格式
      {"data":{"key":"value","key1":"value1"}} 座席侧可以获取
      
   
   5. 获取IE数据 此处可以获取流程中传递的IE信息值，目前支持类型User To User。
      单击待赋值变量，弹出全局变量和流程变量列表，可供选择。
      
   
   
   
   
2. 选择"配置中心\>接入配置 \> 被叫"，添加被叫配置，IVR请选择上述添加的智能IVR。
3. 使用软电话号码登录Openeye模拟客户，拨打被叫中添加的接入码，查看智能ivr流程中获取的随路数据是否正确。
**场景三：话单扩展字段**
1. 您可设置40个业务信息字段extfield1至extfield40。extfield1-extfield30字段值最大字符长度为256，extfield31-extfield40字段值最大字符长度为2000。该扩展字段用于收集IVR流程需要保存的客户信息和客户操作，需要开启系统参数IVRCDRCTRLPARAMS才能使用。不要赋值加密变量，加密变量储存时值按照\*\*\*\*\*\*处理。
2. 您可设置extEncryptField1至extEncryptField5个字段，加密存储客户信息。需要开启系统参数IVRCDRCTRLPARAMS才能使用。OP独立部署环境下不支持。
 
