變量可以十分靈活地用于用戶當前對話流中,可以通過服務節點進行賦值,并在其他節點中使用${botVar.全局變量名}進行引用。
創建變量
路徑:多輪對話>變量管理
操作:在變量管理內,創建和管理機器人全局變量
變量調用示例:
在輸入框中輸入“$”符號即可出現變量的提示信息,“botVars.”的前置符號即為全局變量。
表達式配置說明
在配置變量賦值時,可能需要一些系統設定的參數:環境參數、服務返回參數、系統參數。
這里主要說明一下每種參數的具體含義。
環境參數
${envVars['CURRENT_QUERY']}:用戶QUERY。
${envVars['APP_ID']}:機器ID。
${envVars['SENDER_ID']}:C端用戶ID。
${envVars['SENDER_NICK']}:C端用戶名稱。
${envVars['SESSION_ID']}:會話ID。
${envVars['CHAT_ID']}:請求 ID。
${envVars['VENDOR_PARAM']}:隨路數據。
${envVars['EMOTION_POLARITY']}:情緒極性。
${envVars['EMOTION_NAME']}:情緒名稱。
${envVars['CURRENT_DATE']}:當前日期。
${envVars['CURRENT_TIME']}:當前時間。
${envVars['CURRENT_TURN']}:當前對話輪數。
服務返回參數
${svcVars['functionOutput']}:全局服務返回結果。
系統函數
${sysGetRandom(n)}:返回指定范圍[1,n]內的隨機數字。
${sysFormatDate('format')}:按自定義格式輸出時間。
${sysAddDate(day)}:基于當前時間增加若干天輸出,格式yyyy-MM-dd。
${sysAddTime(second)}:基于當前時間增加若干秒輸出,格式HH:mm:ss。
${sysUnescapeJson('str')}:解碼JavaScript中被轉義的字符串。
${sysIntervalDays('startDate','endDate')}:計算開始與結束時間間隔,格式yyyy-MM-dd。
${sysIntervalSeconds('startTime','endTime')}:計算開始與結束時間間隔,格式HH:mm:ss。
${sysFormatStrDate('source','format')}:時間格式轉換,將原有yyyy-MM-dd HH:mm:ss格式的時間轉換成自定義格式。