

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

# Wait 워크플로 상태
<a name="state-wait"></a>

**상태 관리 및 데이터 트랜스포밍**  
[변수를 사용하여 상태 간 데이터 전달](workflow-variables.md)과 [JSONata를 사용하여 데이터 트랜스포밍](transforming-data.md)에 대해 알아봅니다.

`Wait` 상태(`"Type": "Wait"`)는 상태 머신이 지정된 시간 동안 계속되지 않도록 지연시킵니다. 상대적인 시간, 상태가 시작된 후 지정된 시간(초) 또는 타임스탬프로서 지정되는 절대적인 종료 시간에서 선택할 수 있습니다.

`Wait` 상태에서는 [일반 상태 필드](statemachine-structure.md#amazon-states-language-common-fields) 외에도 다음 필드 하나가 있습니다.

** `Seconds` **  
`Next` 필드에 지정된 상태를 시작하기 전에 기다려야 하는 시간(초). 시간을 0\~99999999 사이의 정수 값으로 지정해야 합니다. JSONata 상태에서는 지정된 범위의 정수로 평가되어야 하는 JSONata 표현식을 지정할 수도 있습니다.

** `Timestamp` **  
`Next` 필드에 지정된 상태를 시작할 때까지 기다려야 하는 절대 시간.  
타임스탬프는 ISO 8601의 RFC3339 프로필을 준수해야 하며, 대문자 `T`는 날짜와 시간 부분을 구분해야 하고, 대문자 `Z`는 숫자 시간대 오프셋이 없음을 나타냅니다(예: `2024-08-18T17:33:00Z`).  
JSONata 상태에서는 이전 요구 사항을 준수하는 문자열을 생성하는 JSONata 표현식을 지정할 수 있습니다.  
현재 대기 시간을 타임스탬프로 지정하면 Step Functions는 시간 값을 초까지 고려하여 밀리초를 잘라냅니다.

** `SecondsPath`(선택 사항, JSONPath만 해당) **  
상태의 [경로](concepts-input-output-filtering.md)는 다음 상태로 진행하기 전에 대기 시간을 초 단위로 지정하는 정수 값에 데이터를 입력합니다.

** `TimestampPath`(선택 사항, JSONPath만 해당) **  
상태의 [경로](concepts-input-output-filtering.md)는 다음 상태로 진행하기 전에 대기할 절대 날짜 및 시간(타임스탬프)으로 데이터를 입력합니다.

**참고**  
`Seconds`, `Timestamp`, `SecondsPath` 또는 `TimestampPath` 중 하나를 정확하게 지정해야 합니다. 또한 표준 워크플로와 Express 워크플로에 지정할 수 있는 최대 대기 시간은 각각 1년 및 5분입니다.

## Wait 상태 예제
<a name="wait-state-example"></a>

다음 `Wait` 상태는 상태 머신을 10초간 지연시킵니다.

```
"wait_ten_seconds": {
  "Type": "Wait",
  "Seconds": 10,
  "Next": "NextState"
}
```

다음 예제에서 `Wait` 상태는 절대 시간이 2024년 3월 14일 오전 1시 59분(UTC 기준)이 될 때까지 기다립니다.

```
"wait_until" : {
  "Type": "Wait",
  "Timestamp": "2024-03-14T01:59:00Z",
  "Next": "NextState"
}
```

대기 시간을 반드시 하드 코딩할 필요는 없습니다. 예를 들어 다음 입력 데이터를 예로 들 수 있습니다.

```
{
  "expirydate": "2024-03-14T01:59:00Z"
}
```

입력 데이터로부터 값을 선택하려면 참조 [경로](concepts-input-output-filtering.md)를 사용하여 입력의 "expirydate" 값을 선택할 수 있습니다.

```
"wait_until" : {
    "Type": "Wait",
    "TimestampPath": "$.expirydate",
    "Next": "NextState"
}
```