변수

이 도움말 페이지의 정보는 CXone StudioDesktop Studio에 모두 적용됩니다.

변수는 변경될 수 있는 값을 저장하는 자리 표시자입니다. 스크립트가 실행될 때마다 값이 다를 때 사용하십시오. 예를 들어 ANI은(는) 발신자의 ANI닫힘 발신자 ID라고도 합니다. 들어오는 음성 통화의 나열된 전화번호입니다. 또는 전화를 보유하는 변수입니다. ANI이(가) 스크립트에서 사용되면 이는 컨택의 발신자 ID를 저장합니다. 스크립트가 실행될 때마다 다른 컨택을 처리하기에 ANI 값이 변경됩니다.

필요할 때 언제든지 자체 변수를 만들 수 있습니다. 변수는 단일 값만을 가질 수 있습니다. 또한 동적 데이터 개체배열도 가질 수 있습니다.

Studio에 사용된 일부 변수는 시스템 정의입니다. Studio작업닫힘 고객 데이터 모음, 메시지 또는 음악 재생 또는 상담원에게 컨택 라우팅과 같은 Studio 스크립트 내에서 프로세스를 수행합니다. 내부에 있는 코드의 일부이기에 만들 필요가 없음을 의미합니다. 두 가지 시스템 정의 변수가 있습니다.

  • 예약된 변수: 스크립트에 특정한 유형의 정보를 포함해야 할 때 사용할 수 있는 읽기 전용 변수입니다.
  • 사전 정의된 변수: 이미 정의된 변수입니다. 여기에 값을 할당할 수 있도록 쓰기가 가능합니다.

시도해 보기

변수 예시 스크립트를 다운로드하여 Studio가져오기합니다. 이 도움말 페이지의 예시는 예시 스크립트의 Snippet 작업에서 사용할 수 있습니다. Snippet editor 창을 열고 디버거를 실행하여 각 예시가 작동하는 방식을 확인할 수 있습니다.

변수 구문 요약

다음 목록에서는 변수 구문을 요약합니다. 이 지점에 관한 자세한 정보는 이 페이지의 다른 섹션에서 확인할 수 있습니다.

  • ASSIGN 작업 또는 Snippet 작업을 사용하여 변수에 대한 값을 생성 및 할당합니다. Snippet에서는 변수를 선언할 때 ASSIGN 키워드를 사용할 수 있습니다. 이는 선택 사항이지만 강력히 추천합니다. 이 구문을 Snippet, 즉 ASSIGN <var name> = <var value> 또는 <var name> = <var value>에서 사용하십시오. (CXone Studio의 작업 도움말 페이지: ASSIGN 작업 또는 Snippet 작업.)

  • 변수에 값을 할당하는 경우: 
    • 문자열 및 날짜/시간 값은 작은따옴표 또는 큰따옴표로 묶여야 합니다. 예: ASSIGN life = "forty-two".
    • 날짜/시간 함수와 사용할 날짜/시간 값을 할당하려면, 값 앞에 우물 정자 기호(#)를 배치하되 큰따옴표 밖에 배치해야 합니다. 예: ASSIGN var = #"02/09/2023". 날짜/시간 값이 날짜/시간 함수와 함께 사용되지 않는 경우에는 우물 정자 기호 문자를 사용할 필요가 없습니다. 하지만, 우물 정자 기호가 없으면 값은 날짜/시간 유형이 아니라 문자열 유형입니다.
    • 숫자 값은 따옴표로 묶을 필요가 없습니다. 따옴표로 숫자 값을 묶으면 수학 표현식으로 평가되지 않는 한 문자열로 취급됩니다.
    • 숫자 및 부울닫힘 참 및 거짓과 같은 두 가지의 가능한 값을 가진 데이터 유형. 표현식은 따옴표로 묶을 수 없습니다. 표현식이 따옴표로 묶여 있으면 문자열로 취급됩니다. 예: ASSIGN myVar = var2 > 42은(는) var2의 값에 따라 참 또는 거짓으로 평가됩니다. 하지만, ASSIGN myVar = "var2 > 42"은(는) myVar의 값이 문자 그대로 var2 > 42인 결과를 야기할 수 있습니다.
    • 부울 값은 따옴표로 묶으면 안 됩니다.
    • 문자열에 다음 문자를 포함하려면 이스케이프 시퀀스를 사용합니다. 큰따옴표( " ), 작은따옴표( ' ), 열림 중괄호( { ) 탭(ASCII 9), 캐리지 리턴(ASCII 13), 라인 피드(ASCII 10), 백스페이스(ASCII 8), null.
  • 문자열 내에서 변수를 대체하는 경우: 
    • 변수를 중괄호로 묶습니다. 예: ASSIGN myVar = "삶의 의미는 {life}이다"
    • 변수가 동적 데이터 개체면 개체 내에 변수를 참조해야 합니다. 예: ASSIGN myVar = "삶의 의미는 {anObj.thisProperty}이다". 개체만을 참조하면 오류가 발생합니다.
    • 변수에 배열이 포함되어 있는 경우에는 할당하려는 값의 인덱스를 포함해야 합니다. 예를 들면 ASSIGN myVar = myArray[4]입니다.
  • 변수 하나의 값을 다른 변수에 할당하는 경우:
    • 큰따옴표 또는 중괄호를 사용할 필요가 없습니다. 예를 들면  ASSIGN myVar = var2입니다. 이렇게 하면 변수 값의 사본이 myVar로 할당됩니다.
    • 변수에 배열이 포함된 경우에는 이를 다른 변수에 할당할 수 있습니다.
    • 변수가 개체인 경우에는 다른 개체에만 할당할 수 있습니다.
  • Studio 작업 속성에서 변수를 참조하는 경우에는 일반적으로 다음 가이드라인이 적용됩니다. 이러한 문에는 예외가 있으므로 사용하는 작업에 대한 온라인 도움말 페이지를 항상 참조하십시오.

    • 속성은 변수 또는 데이터를 기대합니다. 데이터는 리터럴 또는 변수로 구성될 수 있습니다. 속성이 데이터를 기대하는 경우에는 일반적으로 리터럴 또는 변수를 수락할 수 있습니다. 하지만 예외가 있을 수 있으므로 속성이 무엇을 기대하는지 잘 모르는 경우에는 항상 온라인 도움말을 참조하십시오.
    • 속성이 변수 이름을 기대한다면 중괄호 없이 변수 이름을 입력합니다.

    • 속성이 데이터를 기대하며 변수 대체를 사용하려는 경우에는 변수 이름을 중괄호로 묶으십시오(예: {varName}).

데이터 유형 및 암시적 입력

데이터 유형은 변수가 가지는 데이터 종류와 프로그램에서 사용되는 방법을 정의합니다. Studio에서 변수는 다음 데이터 유형을 가질 수 있습니다.

  • 문자열: 변수의 값에 영숫자와 마침표, 쉼표 및 밑줄과 같은 특수 문자가 포함되어 있습니다. 문자열 값은 큰따옴표로 묶어야 합니다.
  • 숫자: 변수의 값이 숫자입니다. 숫자 값에는 큰따옴표가 필요 없습니다.
  • 날짜/시간: 변수의 값은 날짜, 시간, 또는 두 가지 모두입니다. 날짜/시간이 Studio에서 날짜/시간 함수와 함께 사용되는 경우, 값은 큰따옴표로 묶고 시작 큰따옴표 앞에는 우물 정자를 기재해야 합니다(예: var = #"11-23-2022").
  • 부울: 변수의 값은 true 또는 1, 또는 false 또는 0입니다. 부울 값은 따옴표로 묶으면 안 됩니다.

많은 프로그래밍 및 스크립팅 언어에서는 생성할 때 변수에 대해 데이터 유형을 명시적으로 할당해야 합니다. Studio에서 변수는 암시적 유형입니다. Studio 컴파일러는 스크립트를 컴파일할 때 각 변수의 유형을 결정합니다. 이는 사용하는 모든 변수를 대상으로 데이터 유형을 정의할 필요가 없음을 의미합니다. 유일한 예외는 변수가 날짜/시간 함수와 함께 사용하려는 날짜/함수 값을 가지는 경우입니다.

유형 추론

암시적 입력은 변수를 평가하는 방법에 영향을 줍니다. 예를 들어 변수를 비교하면 Studio이(가) 변수를 인식하는 유형에 따라 결과가 달라집니다. Studio의 기본 행동은 수학적 계산이 필요한 경우가 아니면 모든 것이 문자열로 취급되는 것입니다. 하지만 숫자로 평가할 수 있는 것은 따옴표로 묶어도 숫자로 평가합니다. 이는 '유형 추론'이라고 합니다.

Studio 컴파일러는 따옴표로 묶은 경우에도 값을 숫자로 인식합니다. 따옴표는 값이 문자열임을 표시합니다. 숫자 값이 따옴표로 묶이면 Studio은(는) 사용자가 스크립트에서 이를 수학 계산에서 사용하지 않는 한 이를 문자열로 취급합니다. 예:


var1 = "42"
var2 = 42

var3 = var2 + var1	

예시의 결과입니다 var3 = 84. Studio은(는) var1의 값이 큰따옴표로 묶인 경우에도 var3에서 표현식을 평가할 때 이를 숫자로 인식하고 숫자로 취급합니다.

변수 만들기

스크립트에서 사용할 자체 변수를 만들 수 있습니다. 스크립트에서 Assign 작업 또는 Snippet 작업을 사용하여 이를 수행할 수 있습니다.

작업 할당

Assign 작업을 사용하면 하나의 변수를 만들고 값을 변수에 할당할 수 있습니다. 작업의 VariableValue 속성을 사용하여 이를 수행할 수 있습니다. Assign의 이점은 변수를 만들 때 사용하기 쉽고 구성 가능한 방법이라는 것입니다. (CXone Studio의 도움말 페이지: Assign 작업.)

이 작업에는 변수가 사용되는 방식을 정의하는 데 사용할 수 있는 기타 속성이 있습니다. 다음을 수행할 수 있습니다.

또한 Reqagent 작업(CXone Studio 내: 작업)에서 화면 팝업 값을 설정할 수 있습니다.

스니펫 작업

Snippet 작업은 코드 기반의 변수 생성 방법 (CXone Studio의 도움말 페이지: 작업)입니다. 단일 작업을 사용하여 한 개 이상의 변수를 생성할 수 있으며, 또한 포함하기를 원할 수 있는 기타 사용자 정의 코드 역시 생성할 수 있습니다. Snippet을(를) 사용할 때의 이점은 추후에 스크립트에 더 많은 변수를 추가하고 싶으면 동일한 작업에 추가할 수 있다는 것입니다. 기존에 Assign 작업을사용할 때와는 달리 스크립트에 더 많은 작업을 추가하거나 커넥터를 다시 실행할 필요가 없습니다.

다음 구문 형식 중 하나를 사용하십시오.

ASSIGN varName = value 또는 varName = value

Assign 작업에서 속성과 일치하는 변수에 속성을 추가할 수 있습니다.

  • 변수의 값을 화면 팝업에 포함하려면 setscreenpop(1)을(를) 변수 이름에 추가합니다.
  • 변수의 값을 데이터베이스에 저장되게 하려면 savetodb(1)을(를) 변수 이름에 추가합니다.

예:

ASSIGN epicPoem = "Beowulf"
epicPoem.setscreenpop(1)
epicPoem.savetodb(1)

두 속성에 대해 모두, 1은 속성을 true(으)로 설정하는 부울닫힘 참 및 거짓과 같은 두 가지의 가능한 값을 가진 데이터 유형. 값입니다.

Snippet 작업에서 변수 생성에 관한 핵심 정보:

  • 날짜/시간 변수를 제외하면 변수를 생성할 때 유형을 선언할 필요가 없습니다.
  • ASSIGN 키워드를 포함하는 것은 선택 사항입니다. 하지만, 모범 사례는 변수를 만들 때마다 이 키워드를 사용하는 것입니다. 고급 검색을 사용할 때 이 키워드를 포함했다면 변수가 만들어진 장소를 빠르게 찾을 수 있습니다.
  • 하위 스크립트에서 변수를 선언하고 원래 스크립트로 다시 전송하고자 한다면 global:을(를) 변수 이름의 시작에 추가합니다. 그러면 글로벌 범위로 이를 나타냅니다.

작은따옴표, 큰따옴표 또는 따옴표 없음

변수의 값을 다른 변수로 할당할 때 일부 값은 따옴표로 묶어야 합니다. 다른 값에는 따옴표가 필요 없습니다. 다음 지침에 따르십시오.

  • 문자열 값은 작은따옴표 또는 큰따옴표로 묶여야 합니다. 변수 이름이 달러 기호로 끝나도 마찬가지입니다. 문자열이 따옴표로 묶이지 않은 경우에는 스크립트가 값을 변수로 간주합니다. 다음 예시에서 a1, a2, a1$은(는) 리터럴 값인 Example(으)로 평가됩니다. a3a3$의 값은 Example이(가) 변수로 선언되었는지 여부에 따라 달라집니다. 변수 Example이(가) 스크립트에 있는 경우에는 a3a3$이(가) Example의 값으로 평가됩니다. Example이(가) 없는 경우에는 a3a3$의 결과는 빈 값입니다.

    ASSIGN a1 = "Example"
    ASSIGN a2 = 'Example'
    ASSIGN a1$ = "Example"
    ASSIGN a3 = Example
    ASSIGN a3$ = Example
  • 숫자 값에는 따옴표가 필요 없습니다. 하지만, 원하면 따옴표를 사용할 수 있습니다. 다음 예시에서 b1, b2, b3은(는) 123(으)로 평가됩니다.

    ASSIGN b1 = "123" 
    ASSIGN b2 = '123' 
    ASSIGN b3 = 123
  • 숫자 표현식 은 따옴표로 묶을 수 없습니다. 여기에는 수학 및 부울닫힘 참 및 거짓과 같은 두 가지의 가능한 값을 가진 데이터 유형. 표현식이 포함됩니다. 숫자 표현식을 따옴표로 묶으면 텍스트로 취급됩니다. 예를 들어, c1 = 123 + 456579(으)로 평가되지만, c2 = "123 + 456"의 결과는 123 + 456입니다.
  • 날짜/시간 값을 날짜/시간 유형으로 선언하려면 따옴표로 묶어야 합니다.
  • 부울 값은 따옴표로 묶으면 안 됩니다.
  • 배열을 할당하거나 동적 개체의 값을 변수로 할당하는 경우에는 배열 또는 개체 멤버 이름에 따옴표 또는 중괄호를 사용하지 마십시오.

날짜/시간 값으로 변수 만들기

Studio는 암시적으로 날짜/시간을 유형으로 인식하지 않습니다. 하지만, 변수 값 전에 식별자를 추가하면 날짜/시간을 이 유형으로 선언할 수 있습니다. 값이 날짜/시간 함수로 사용되거나 그 값으로 작업을 수행할 때만 이를 수행하면 됩니다.

변수 값을 날짜/시간으로 선언하려면 ASSIGN <varName> = #"<datetime>" 구문을 사용하십시오, 여기에서 <datetime>은(는) 변수에 저장하려는 날짜/시간 값입니다. 예를 들면 date1 = #"7/15/2050 5:00pm"입니다. 변수가 날짜/시간으로 선언되지 않으면 asdatetime() 함수를 사용하여 날짜/시간으로 변환할 수 있습니다.

날짜와 시간을 조작하는 일부 함수는 변수를 날짜/시간으로 선언해야 합니다. 날짜/시간 형식이 올바르더라도 변수가 제대로 선언되지 않으면 함수는 작동하지 않습니다.또한 이 구문을 사용하여 일반적으로 가능하지 않은 날짜와 시간에 작업을 수행할 수 있습니다. 예를 들어 비교할 수 있습니다.

date1 = #"7/15/2050 5:00pm" 
date2 = #"7/15/2050 4pm"
x = date1 > date2 

이 결과는 1(참)입니다. 왜냐하면 date1 의 리터럴 값은 date2의 리터럴 값보다 크기 때문입니다.

변수 명명

다음 가이드라인에 따라 변수 이름을 지정합니다.

  • 영숫자 문자(a-z, A-Z, 0-9)를 사용합니다.

  • 이름의 첫 문자는 글자여야 합니다.
  • 밑줄 문자(_)와 달러 기호($)를 이름의 아무 곳에나 사용합니다.
  • 변수 이름의 마지막 문자가 달러 기호라면 값은 텍스트로 취급됩니다.
  • 사전 정의된 변수의 이름 또는 예약된 단어는 사용하지 마십시오.

변수 대체

변수의 값을 스크립트에서 사용해야 할 때 스니펫 코드 또는 작업의 속성 필드에 해당 변수의 이름을 포함합니다.

변수의 값을 문자열로 대체하는 경우에는 변수의 이름을 중괄호로 묶습니다. 문자열에서는 변수로 형식을 지정하는 경우를 제외하면 모든 것이 일반 텍스트로 취급됩니다. 예:

ASSIGN foeName = "Grendel"
ASSIGN numberFoes = "3"
ASSIGN x = numberFoes
ASSIGN y = "One of Beowulf's foes is {foeName}. He faced {numberFoes} foes in all." 
ASSIGN z = "One of Beowulf's foes is foeName. He faced numberFoes in all." 

예시의 결과입니다

  • x=3.
  • y=One of Beowulf's foes is Grendel. He faced 3 foes in all.
  • z=One of Beowulf's foes is foeName. He faced numberFoes in all.

변수의 값을 다른 변수로 복사하는 경우에는 중괄호를 사용할 필요가 없습니다. 이는 텍스트와 숫자 값에 적용됩니다. 다음 예시에서 포트는 x=3z=Grendel입니다.

ASSIGN numberFoes = "3"
ASSIGN name = "Grendel"
ASSIGN x = numberFoes 
ASSIGN y = name 

변수로 수학 연산을 수행하는 경우에는 중괄호로 묶을 필요가 없습니다. 다음 예시에서 포트는 y=200입니다.

ASSIGN a1 = "100"
ASSIGN a2 = "100.00"
ASSIGN y = (a1 + a2) 

작업 속성의 변수 대체

많은 작업 속성은 리터럴 값 대신에 변수를 수용할 수 있습니다. 작업의 도움말 페이지에 변수를 사용하여 속성을 구성할 수 있다는 언급이 특별히 없을 때도 마찬가지입니다.

작업 속성에 변수를 사용하면 스크립트를 재사용할 수 있습니다. 예를 들어, 조직에 사업 부문이 3개 있는 경우에는 리터럴 값을 사용할 경우 각 사업 부문에 대한 ACD 스킬닫힘 상담원 스킬, 능력 및 지식에 기반한 인터랙션의 전달을 자동화하는 데 사용됩니다., 우선순위 관리, 기타 설정 등을 정의하기 위한 대기열 스크립트가 3개 필요합니다. 변수를 사용하여 값이 사업 부문 간에 서로 다른 속성을 구성하면 스크립트를 3개가 아니라 1개만 사용할 수 있습니다.

Studio 작업 속성에서 변수를 참조할 때는 일반적으로 다음 가이드라인이 적용됩니다.

  • 속성은 변수 또는 데이터를 기대합니다. 데이터는 리터럴 또는 변수로 구성될 수 있습니다. 속성이 데이터를 기대하는 경우에는 일반적으로 리터럴 또는 변수를 수락할 수 있습니다. 하지만 예외가 있을 수 있으므로 속성이 무엇을 기대하는지 잘 모르는 경우에는 항상 온라인 도움말을 참조하십시오.
  • 속성이 변수 이름을 기대한다면 중괄호 없이 변수 이름을 입력합니다.

  • 속성이 데이터를 기대하며 변수 대체를 사용하려는 경우에는 변수 이름을 중괄호로 묶으십시오(예: {varName}).

스크립트에서 스크립트로 변수 값 전송

변수 값은 스크립트에서 스크립트로 전송할 수 있습니다. 다음으로부터 전달할 수 있습니다.

  • 원래 스크립트에서 하위 스크립트로: 원래 스크립트의 모든 변수가 하위 스크립트에 존재하며 사용할 수 있습니다. 하지만, 글로벌 범위에 있습니다. 하위 스크립트에서 사용하려면 변수 이름을 global:(으)로 시작해야 합니다. 예를 들면 global:varName입니다. 여기에는 사전 정의된 시스템 변수 및 생성했던 변수가 포함됩니다.
  • 원래 스크립트에 대한 하위 스크립트: 하위 스크립트에서 선언하는 변수는 자동으로 원래 스크립트로 전달되지 않습니다. 하위 스크립트의 변수를 원래 스크립트로 다시 전송하려면 이를 글로벌 변수로 선언해야 합니다. 이와 유사하게, 변수를 하위 스크립트로 선언하면, 이를 글로벌 변수로 선언하고 이를 하위 스크립트 및 최상위 원래 스크립트의 글로벌 변수로 참조해야 합니다.

글로벌 변수를 스크립트 추적에서 볼 수 있습니다. 추적을 볼 때는 추적 출력 창에서 이 옵션을 활성화해야 할 수 있습니다.

일부 데이터는 CRM닫힘 컨택, 영업 정보, 지원 세부 사항 및 케이스 내역 등을 관리하는 타사 시스템입니다. 또는 API닫힘 API는 CXone 시스템을 조직에서 사용하는 다른 소프트웨어와 연결하여 특정 기능을 자동화할 수 있습니다. 호출 등 스크립트 외부의 소스에서 기인할 수 있습니다. RunSub 작업 또는 Spawn 작업에서 Parameters 속성을 사용하여 하위 스크립트 또는 생성된 스크립트로 값을 전달할 수 있습니다. Begin작업에는 다른 Parameters 속성도 있습니다. RunSub 또는 Spawn을(를) 통하여 전달되는 값을 수신할 변수의 이름으로 하위 스크립트의 Begin 작업을 구성합니다. (CXone Studio의 작업 도움말 페이지: RunSub 작업, Spawn작업, Begin 작업.)

전달해야 하는 데이터가 개체에 포함된 경우에는 우선 개체를 JSON 또는 XML로 변환해야 합니다. JSON 또는 XML 문자열을 포함한 변수를 전달할 수 있습니다. 두 번째 스크립트에서는 원하면 데이터를 개체로 개편할 수 있습니다.

변수 비교 및 평가

Studio(이)가 변수의 유형을 암시적으로 정한다는 점은 평가된 표현식 및 부울닫힘 참 및 거짓과 같은 두 가지의 가능한 값을 가진 데이터 유형. 비교에 포함되는 방식에 영향을 줍니다.

예:

ASSIGN a1 = "100"
ASSIGN a2 = "100"
ASSIGN y = (a1 = a2)

이 예시에서 표현식 y = (a1 = a2)은(는) y = 1(참)(으)로 평가됩니다.

텍스트로 강제 비교

값이 숫자일 때도 변수를 강제로 텍스트로 평가되게 할 수 있습니다. 2가지 방식으로 강요할 수 있습니다.

  • 변수 이름 끝에 달러 기호를 추가합니다. 예: varName$ = 42. 비교할 때는 두 변수 중 하나에만 달러 기호 접미사가 필요합니다.
  • 중괄호와 큰따옴표로 변수 이름을 묶습니다. 예를 들면 y = ("{a1}" = "{a2}")입니다.

변수 이름이 달러 기호로 끝날 때 이러한 변수를 사용하는 모든 부울닫힘 정수(곱셈 가능한 숫자) 또는 부울(참/거짓)과 같이 프로그램에서 사용되는 방식을 정의하는 정보 속성. 연산자(=, >, <, >=, <=)는 값을 텍스트로 취급합니다. 예:

ASSIGN a$ = 20
ASSIGN b = 100
ASSIGN x = a$ > b

이 예시에서 변수 x은(는) 1 (참)입니다. 변수 a$이(가) 달러 기호로 끝나므로 값(20)은 텍스트로 취급됩니다. 이는 a$ > b이(가) 정수가 아닌 텍스트 문자열로 20 100 을(를) 비교한다는 의미입니다. 텍스트로 비교하면 20이 100보다 큽니다. 왜냐하면 20은 2로 시작하고 100은 1로 시작하기 때문입니다. 변수 이름에 달러 기호가 없다면 x = a > b은(는) 0(거짓)입니다. 왜냐하면 값은 변수로 비교하며, 정수 20은 정수 100보다 크지 않기 때문입니다.

예약 및 사전 정의된 변수

Studio에 기존 변수가 있습니다. 이는 다음과 같습니다.

  • 예약된 변수: 이러한 변수는 현재 시간 또는 현재 시간대의 ID 등 특정한 종류의 정보를 반환합니다. 예약된 변수는 읽기 전용이기에 스크립트는 여기에 변수를 저장할 수 없습니다. 이는 정보를 반환할 목적으로만 존재합니다. 반환하는 정보를 입력하려 할 때 스크립트에서 사용할 수 있습니다. Studio에는 10개의 예약된 변수가 있습니다.
  • 사전 정의된 변수: 시스템 변수입니다. Studio에 이미 정의되어 있으므로 생성하지 않고도 스크립트에서 사용할 수 있습니다. 보유된 정보가 필요할 때마다 스크립트에서 시스템 변수를 사용하십시오. 온라인 도움말 또는 CXone 계정 담당자에서 지시하는 경우에만 사전 정의된 시스템 변수를 재정의하십시오. 사전 정의된 변수 페이지에서 사전 정의된 변수에 관한 자세한 정보를 확인할 수 있습니다.

전역 변수

전역 변수를 통해 하위 스크립트에서 변수를 선언하고 Return 작업(CXone Studio 내: 작업) 후 원래 스크립트로 다시 자동 전송할 수 있습니다. 하위 스크립트에서 전역 변수를 선언할 때 Return 작업을 통해 이를 다시 원래 스크립트로 전송할 필요는 없습니다.

Snippet 작업 또는 Assign 작업을 사용하여 전역 변수를 생성할 수 있습니다(CXone Studio 내: Snippet 작업 또는 Assign 작업). Snippet(으)로 전역 변수를 만들 때 다음 구문을 사용합니다.

ASSIGN global:<variable name>

ASSIGN global:<variable name>="{firstname} {lastname}"

콜론과 변수 이름 사이에 아무 공백이 없는지 확인합니다.

Assign 작업을 사용하는 경우에는 ASSIGN 키워드를 포함하지 마십시오.

원래 스크립트에서 변수를 전역 변수로 선언할 필요는 없습니다. 글로벌 변수의 선언을 하위 스크립트만으로 제한하면 작업하는 스크립트에 대한 단서를 눈으로 직접 볼 수 있습니다. global:var가 표시되면 하위 스크립트에 있다는 것을 알 수 있습니다.

하위 스크립트에 있는 변수를 글로벌로 선언하는 것은 하위 스크립트에 있는 변수의 값에 액세스하는 한 가지 방법입니다. 다른 옵션은 GET /contacts/{contactId}/custom-data 중앙에서 오른쪽 상단 모서리 방향으로 가리키는 화살표가 있는 사각형 아이콘입니다. API를 사용하는 것입니다.

전역 변수 예시

다음 예시는 전역 변수 사용 방법을 보여줍니다.

스크립트에서 모든 변수 보기

스크립트에서 모든 변수를 확인하는 방법은 두 가지입니다.

  • Studio의 변수 탭은 스크립트에 사용된 모든 변수를 보여줍니다. 이 탭이 닫힌 경우에는 Validation > Windows > Variables을(를) 클릭하여 다시 엽니다.
  • 추적을 실행할 때 스크립트에서 사용되는 변수를 확인할 수도 있습니다. 추적 출력에서 각 줄을 선택하면 해당 지점의 스크립트에 있는 변수를 변수 창에서 볼 수 있습니다. 추적의 각 줄을 클릭하면 변수의 내용이 스크립트 진행에 따라 변경되는 과정을 볼 수 있습니다.

변수 수정

변수 수정은 스크립트가 생성한 추적 및 로그의 변수 값을 제거합니다. 변수와 개체를 수정할 수 있습니다.

편집은 스크립트 속성VariableRedaction 필드에 있는 스크립트 레벨에서 구성됩니다. 편집된 값은 X자의 문자열로 대체됩니다. 변수 값의 길이는 사용되는 X의 개수에 따라 결정됩니다. 5글자짜리 단어가 편집될 경우 X의 개수는 5개입니다. 신용 카드 번호의 일부와 같은 부분 변수 수정은 지원되지 않습니다.

변수 수정은 스크립트 레벨에서 발생합니다. 상속 속성이 아닙니다. RunScript 또는 RunSub 작업과 같이 기타 스크립트로 편집된 변수가 전달되면 해당 변수는 자동으로 후속 스크립트에서 자동으로 편집되지 않습니다. 변수가 항상 편집되기를 원한다면 변수가 전달될 수 있는 모든 스크립트에서 변수 편집을 구성해야 합니다.

다른 스크립트로 전달되는 변수에는 글로벌 범위가 있습니다. 이를 편집하려면 편집을 확실하게 하기 위해 VariableRedaction 필드에서 변수 이름 전에 global:을(를) 포함해야 합니다.

스크립트에 민감한 데이터를 필요 이상으로 긴 기간 동안 절대로 보유하지 않는 것이 모범 사례입니다. 변수 값 편집뿐만 아니라, 변수에서 데이터를 삭제할 수도 있습니다. 데이터 삭제는 다음 작업의 단계에 포함됩니다

  1. Studio에서 스크립트 캔버스를 클릭하여 아무것도 선택되지 않았는지 확인합니다.
  2. Properties 탭을 클릭합니다.
  3. VariableRedaction 필드 옆에 있는 Ellipsis 버튼 을 클릭하여 String Collection Editor을(를) 엽니다.
  4. 수정하고자 하는 변수 이름을 입력합니다. 한 줄당 변수 하나를 배치합니다.
  5. OK을(를) 클릭합니다.
  6. 변수에서 데이터를 삭제하려는 경우에는 민감한 데이터를 사용한 이후 더 이상 필요하지 않을 때 스크립트에 Snippet 작업을 배치합니다.
  7. Snippet 작업을 두 번 클릭한 다음 스니펫 편집기 창의 텍스트 보기 탭에 다음을 추가합니다. 
    • 동적 데이터 개체의 경우: DYNAMIC <object name>
    • 일반 변수의 경우: ASSIGN <var name> = ""
  8. OK을(를) 클릭하여 변경 사항을 저장합니다.