GS2-JobQueue 트랜잭션 액션
검증/소비/입수 각 트랜잭션 액션의 사양
Consume Action
소비 액션
Gs2JobQueue:DeleteJobByUserId
사용자 ID를 지정하여 잡 삭제
지정한 사용자의 잡 큐에서 특정 잡을 삭제합니다.
실행 상태와 관계없이 잡이 삭제됩니다.
수량 지정 가능한 액션: 아니오
반전 가능한 액션: 아니오
| 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128자 | 네임스페이스 이름 네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. | ||
| userId | string | ✓ | ~ 128자 | 사용자ID#{userId}로 설정하면 로그인 중인 사용자ID로 치환됩니다. | ||
| jobName | string | ✓ | UUID | ~ 36자 | 잡 이름 잡의 고유한 이름을 보유합니다. 이름은 UUID(Universally Unique Identifier) 형식으로 자동 생성되며, 각 잡을 식별하는 데 사용됩니다. | |
| timeOffsetToken | string | ~ 1024자 | 타임 오프셋 토큰 |
{
"action": "Gs2JobQueue:DeleteJobByUserId",
"request": {
"namespaceName": "[string]네임스페이스 이름",
"userId": "[string]사용자ID",
"jobName": "[string]잡 이름",
"timeOffsetToken": "[string]타임 오프셋 토큰"
}
}action: Gs2JobQueue:DeleteJobByUserId
request:
namespaceName: "[string]네임스페이스 이름"
userId: "[string]사용자ID"
jobName: "[string]잡 이름"
timeOffsetToken: "[string]타임 오프셋 토큰"transaction.service("jobQueue").consume.delete_job_by_user_id({
namespaceName="[string]네임스페이스 이름",
userId="[string]사용자ID",
jobName="[string]잡 이름",
timeOffsetToken="[string]타임 오프셋 토큰",
})Acquire Action
입수 액션
Gs2JobQueue:PushByUserId
사용자 ID를 지정하여 잡 등록
사용자의 잡 큐에 하나 이상의 잡을 등록합니다(최대 10건).
각 잡에는 실행할 GS2-Script, 인수, 최대 재시도 횟수를 지정합니다.
네임스페이스에서 enableAutoRun이 활성화된 경우, 잡은 등록 후 즉시 비동기로 실행되며, 응답의 autoRun 플래그가 true가 됩니다.
enableAutoRun이 비활성화되어 있으면 잡은 큐에 추가되고 Run API를 통해 수동으로 실행해야 하며, autoRun 플래그는 false가 됩니다.
수량 지정 가능한 액션: 아니오
반전 가능한 액션: 아니오
| 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128자 | 네임스페이스 이름 네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. | ||
| userId | string | ✓ | ~ 128자 | 사용자ID#{userId}로 설정하면 로그인 중인 사용자ID로 치환됩니다. | ||
| jobs | List<JobEntry> | 0 ~ 10 items | 추가할 잡 목록 | |||
| timeOffsetToken | string | ~ 1024자 | 타임 오프셋 토큰 |
{
"action": "Gs2JobQueue:PushByUserId",
"request": {
"namespaceName": "[string]네임스페이스 이름",
"userId": "[string]사용자ID",
"jobs": [
{
"scriptId": "[string]스크립트 GRN",
"args": "[string]인수",
"maxTryCount": "[int]최대 시도 횟수"
}
],
"timeOffsetToken": "[string]타임 오프셋 토큰"
}
}action: Gs2JobQueue:PushByUserId
request:
namespaceName: "[string]네임스페이스 이름"
userId: "[string]사용자ID"
jobs:
- scriptId: "[string]스크립트 GRN"
args: "[string]인수"
maxTryCount: "[int]최대 시도 횟수"
timeOffsetToken: "[string]타임 오프셋 토큰"transaction.service("jobQueue").acquire.push_by_user_id({
namespaceName="[string]네임스페이스 이름",
userId="[string]사용자ID",
jobs={
{
scriptId="[string]스크립트 GRN",
args="[string]인수",
maxTryCount="[int]최대 시도 횟수"
}
},
timeOffsetToken="[string]타임 오프셋 토큰",
})