표현식의 입력과 변수에 대한 참조 - AWS IoT Events

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

표현식의 입력과 변수에 대한 참조

입력

$input.input-name.path-to-data

input-name액션을 사용하여 생성하는 입력입니다. CreateInput

예를 들어, inputDefinition.attributes.jsonPath 항목을 정의한 데 사용할 이름이 지정된 TemperatureInput 입력이 있는 경우 다음 사용 가능한 필드에 값이 나타날 수 있습니다.

{ "temperature": 78.5, "date": "2018-10-03T16:09:09Z" }

temperature 필드 값을 참조하려면 다음 명령을 사용합니다.

$input.TemperatureInput.temperature

값이 배열인 필드의 경우 [n]을 사용하여 배열의 멤버를 참조할 수 있습니다. 예를 들어 다음과 같은 값이 있다고 가정합니다.

{ "temperatures": [ 78.4, 77.9, 78.8 ], "date": "2018-10-03T16:09:09Z" }

다음 명령으로 값 78.8을 참조할 수 있습니다.

$input.TemperatureInput.temperatures[2]
Variables

$variable.variable-name

variable-nameCreateDetectorModel액션을 사용하여 정의한 변수입니다.

예를 들어 detectorDefinition.states.onInputEvents.actions.setVariable.variableName를 사용하여 정의한 이름이 지정된 TechnicianID 변수가 있는 경우 다음 명령을 사용하여 변수에 가장 최근에 지정된(문자열) 값을 참조할 수 있습니다.

$variable.TechnicianID

setVariable 작업을 사용해서만 변수 값을 설정할 수 있습니다. 표현식에는 변수 값을 할당할 수 없습니다. 변수는 설정을 해제할 수 없습니다. 예를 들어 값 null을 할당할 수 없습니다.

참고

(정규 표현식) 패턴 [a-zA-Z][a-zA-Z0-9_]*를 따르지 않는 식별자를 사용하는 참조에서는 해당 식별자를 백틱(`)으로 묶어야 합니다. 예를 들어 필드 이름이 $input.MyInput.`_value`로 지정된 입력에 대한 참조는 이 필드 MyInput_value로 지정해야 합니다.

표현식에서 참조를 사용하는 경우 다음을 확인하십시오.

  • 하나 이상의 연산자와 함께 참조를 피연산자로 사용하는 경우, 참조하는 모든 데이터 유형이 호환되는지 확인하십시오.

    예를 들어, 다음 표현식에서 정수 2는 및 연산자 ==&& 모두의 피연산자입니다. 피연산자를 호환하기 위해서는 $variable.testVariable + 1$variable.testVariable이 정수 또는 10진수를 참조해야 합니다.

    또한 정수 1은(는) + 연산자의 피연산자입니다. 따라서 $variable.testVariable은(는) 정수 또는 10진수를 참조해야 합니다.

    ‘$variable.testVariable + 1 == 2 && $variable.testVariable’
  • 참조를 함수에 전달된 인수로 사용하는 경우, 함수가 참조하는 데이터 유형을 지원하는지 확인하십시오.

    예를 들어, 다음 timeout("time-name") 함수에는 큰따옴표가 있는 문자열이 인수로 필요합니다. 에 대한 참조를 사용하는 경우 timer-name 값은 큰따옴표가 있는 문자열을 참조해야 합니다.

    timeout("timer-name")
    참고

    convert(type, expression)함수의 경우 참조를 사용하는 경우 type 값, 참조의 평가 결과는 StringDecimal, 또는 이어야 합니다Boolean.

AWS IoT Events 표현식은 정수, 십진수, 문자열 및 부울 데이터 유형을 지원합니다. 다음 표에는 호환되지 않는 유형의 페어 목록이 나와 있습니다.

호환되지 않는 유형 페어

정수, 문자열

정수, 부울

10진수, 문자열

10진수, 부울

문자열, 부울