동적 변수에서 사용할 추가 함수
고급 작업에서는 MathJS 기반 함수 외에 사용자 정의 함수를 사용할 수 있습니다.
문자열 함수
indexOf(건초 더미, 바늘)
"바늘" 문자열이 "haystack" 문자열 또는 목록에서 발견되면 함수는 (0부터 시작하는) 위치를 반환하고, 그렇지 않으면 -1로 평가합니다.
예
indexOf("ABCD", "A") //returns 0 indexOf("ABCD", "CD") //returns 2 indexOf("ABCD", "E") //returns -1 indexOf(["a","b","c"], "a") //returns 0 indexOf(["a","b","c"], "bc") //returns -1
getIndexValue(건초 더미, 인덱스)
"index" 번호가 "haystack" 목록보다 작으면 함수는 "index" 위치에 있는 값을 반환하고, 그렇지 않으면 오류가 발생합니다.
예
getIndexValue(["a","b","c"], 0) //returns a getIndexValue(["a","b","c"], 1) //returns b
substr(문자열, 시작[, 길이])
이 함수는 0부터 시작하는 시작 위치에서 시작하여 원래 문자열의 하위 문자열을 반환합니다. 길이가 지정되면 그 만큼의 문자를 반환하고, 그렇지 않으면 나머지 문자열을 반환합니다.
예
substr("ABCD", 1) //returns "BCD" substr("ABCD", 2, 1) //returns "C" substr("ABCD", 5) //returns ""
슬라이스(문자열, 시작[, 끝])
이 함수는 0부터 시작하는 시작 위치에서 시작하여 원래 문자열의 하위 문자열을 반환합니다. 끝 위치가 제공되면 해당 위치의 문자를 포함하지만 포함하지 않는 모든 문자를 반환합니다. 그렇지 않으면 나머지 문자열을 반환합니다.
시작 또는 끝의 음수 위치는 문자열의 오른쪽부터 계산됩니다.
예
slice("ABCD", 1) //returns "BCD" slice("ABCD", 0, 2) //returns "AB" slice("ABCD", 1, -1) //returns "BC" slice("ABCD", 2, 1) //returns ""
상단(문자열)
이 함수는 대문자로 변환된 제공된 문자열을 반환합니다.
예
upper("aBcD") //returns "ABCD"
하한(문자열)
이 함수는 소문자로 변환된 제공된 문자열을 반환합니다.
예
lower("aBcD") //returns "abcd"
길이(문자열)
이 함수는 문자열의 길이를 반환합니다.
예
length("") //returns 0 length("ABCD") //returns 4
논리 함수
같음(값1, 값2)
이 함수는 value1과 value2가 같은 값과 유형이면 true를 반환하고 그렇지 않으면 false를 반환합니다. `value1 === value2`의 대체 구문입니다. (`value1 == value2`는 약한 비교임)
예
equal(2, 1) //returns false equal(1, 1) //returns true equal(1, "1") //returns false (different types)
ifElse(조건, 값IfTrue, 값IfFalse)
이 함수는 제공된 조건을 확인합니다. 조건이 true인 경우(또는 진실한), valueIfTrue를 반환하고 그렇지 않으면 valueIfFalse를 반환합니다.
예
ifElse(equal(1, 5), "equal", "not equal") //returns "not equal" ifElse(equal(2, 2), "equal", "not equal") //returns "equal"
정규식 함수
일치(값, 패턴[, 플래그, 그룹 인덱스])
matchAll(값, 패턴, matchIndex[, 플래그])
이러한 함수는 제공된 "값"이 제공된 정규식 "패턴"과 일치하는지 정규식 일치 및 테스트를 수행합니다.
선택적 flags 인수는 고급 동작을 가능하게 하는 단일 문자 정규 표현식 플래그의 문자열입니다(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#advanced_searching_with_flags). 플래그 인수의 가장 일반적인 사용법은 대소문자를 구분하지 않는 일치를 위해 "i"를 전달하는 것입니다.
여기에는 두 가지 관련 기능이 있습니다.
- The
match
function looks for a single match and supports an advanced usage with numeric capture groups, using the last argument to select the desired capture group (0 is the whole match, 1 is the first capture group, and so on). - The
matchAll
version supports multiple matches, using thematchIndex
argument to select the desired match. (0 is the first match, 1 is the second match, and so on.)
In both cases, if there is a match the result will be the string content, or when used as the body of a dynamic Boolean variable, it will be true
if there is a match or false
if there was not a match.
예
// Basic usage match("abc", "b.") // returns "bc" (or true as a Dynamic Boolean Variable) match("abc", "c.") // returns no match (or false as a Dynamic Boolean Variable) // Advanced usage // Case-insensitive match("aBc", "b.", "i") // returns "Bc", since casing was ignored with the "i" flag // Capture Groups match("acd bce", "b(c.)", "", 1); // returns "ce" - the whole match was "bce", but the first capture group is (c.) // Multiple matches matchAll("acd bce", "c.", 1); // returns "ce" - "c." matches both "cd" and "ce", the last argument (and usage of matchAll) selected the second one.
날짜 함수
형식날짜(날짜[, 형식문자열])
숫자 날짜를 가져와 사람이 읽을 수 있는 형식으로 변환합니다. 이것은 숫자 조작을 수행한 후 에이전트에 날짜를 표시하는 데 유용합니다.
The date
value is in milliseconds since January 1st 1970.
The formatString
accepts Unicode-standard substitutions.
예
// Default formatting formatDate(946684800000) // 01/01/2000 12:00:00 am (+00:00) // Custom formatting formatDate(946684800000, "eeee, MMMM do yyyy, h:mm:ss a (z)") // Saturday, January 1st 2000, 12:00:00 am (GMT) formatDate(946684800000, "eeee, MMMM do yyyy, h:mm:ss a (xxxxx)") // Saturday, January 1st 2000, 12:00:00 am (+00:00)
형식날짜ISO(날짜)
숫자 날짜를 가져와 ISO 8601 형식의 형식이 지정된 날짜 문자열로 변환합니다. 이는 날짜 구성 요소로 작업하거나 날짜를 API 호출로 보낼 때 유용합니다.
The date
value is in milliseconds since January 1st 1970.
참고: 결과 문자열은 에이전트의 시간대에 있습니다.
예
formatDateISO(946684800000) // 1999-12-31T19:00:00-05:00
dateToMilliseconds(날짜)
문자열 날짜를 가져와 밀리초 단위로 변환합니다. 1970년 1월 1일부터 숫자 조작을 위해.
제공된 날짜는 스크립트 변수에서 사용하는 기본 형식이어야 합니다.
예
dateToMilliseconds("01/01/2000 12:00:00 am (+00:00)"); // 946684800000 formatDate(dateToMilliseconds({{Scripter.Customer Call Start Time}}) + 5 * 60 * 1000) // Five minutes (multiplied by 60 sec/minute and 1000 ms/sec to convert to ms) after the customer was connected
형식 기간(기간)
숫자 기간(밀리초)을 사람이 읽을 수 있는 형식으로 변환합니다.
예
formatDuration(5 * 1000 * 60 + 55); // "00:05:55"
durationToMilliseconds(durationString)
문자열 기간을 숫자 값으로 변환합니다.
예
durationToMilliseconds({{Scripter.Customer Call Duration}}) // How long has the customer been connected formatDuration(5 * 1000 * 60 - durationToMilliseconds({{Scripter.Customer Call Duration}})) // Countdown until the customer has been on the line for five minutes