> For the complete documentation index, see [llms.txt](/llms.txt)

# GS2-JobQueue トランザクションアクション

検証/消費/入手の各トランザクションアクションの仕様





## Consume Action

消費アクション

### Gs2JobQueue:DeleteJobByUserId

ユーザーIDを指定してジョブを削除<br>

指定ユーザーのジョブキューから特定のジョブを削除します。<br>
実行状態に関係なくジョブが削除されます。

**数量指定可能なアクション：いいえ**

**反転可能なアクション：いいえ**

|  | 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128文字 | ネームスペース名<br>ネームスペース固有の名前。英数字および -(ハイフン) _(アンダースコア) .(ピリオド)で指定します。 |
| userId | string |  | ✓|  |  ~ 128文字 | ユーザーID<br>`#{userId}` と設定することでログイン中のユーザーIDに置換されます。 |
| jobName | string |  | ✓| UUID |  ~ 36文字 | ジョブの名前<br>ジョブの一意な名前を保持します。<br>名前は UUID（Universally Unique Identifier）フォーマットで自動的に生成され、各ジョブを識別するために使用されます。 |
| timeOffsetToken | string |  | |  |  ~ 1024文字 | タイムオフセットトークン |




**JSON**
```json
{
    "action": "Gs2JobQueue:DeleteJobByUserId",
    "request": {
        "namespaceName": "[string]ネームスペース名",
        "userId": "[string]ユーザーID",
        "jobName": "[string]ジョブの名前",
        "timeOffsetToken": "[string]タイムオフセットトークン"
    }
}
```

**YAML**
```yaml

action: Gs2JobQueue:DeleteJobByUserId
request:
  namespaceName: "[string]ネームスペース名"
  userId: "[string]ユーザーID"
  jobName: "[string]ジョブの名前"
  timeOffsetToken: "[string]タイムオフセットトークン"
```

**GS2-Script**
```lua

transaction.service("jobQueue").consume.delete_job_by_user_id({
    namespaceName="[string]ネームスペース名",
    userId="[string]ユーザーID",
    jobName="[string]ジョブの名前",
    timeOffsetToken="[string]タイムオフセットトークン",
})
```


---

## Acquire Action

入手アクション

### Gs2JobQueue:PushByUserId

ユーザーIDを指定してジョブを登録<br>

ユーザーのジョブキューに1つ以上のジョブを登録します（最大10件）。<br>
各ジョブには実行する GS2-Script、引数、最大リトライ回数を指定します。<br>
ネームスペースで enableAutoRun が有効な場合、ジョブは登録後に即座に非同期で実行され、レスポンスの autoRun フラグが true になります。<br>
enableAutoRun が無効な場合、ジョブはキューに追加され Run API で手動実行する必要があり、autoRun フラグは false になります。

**数量指定可能なアクション：いいえ**

**反転可能なアクション：いいえ**

|  | 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128文字 | ネームスペース名<br>ネームスペース固有の名前。英数字および -(ハイフン) _(アンダースコア) .(ピリオド)で指定します。 |
| userId | string |  | ✓|  |  ~ 128文字 | ユーザーID<br>`#{userId}` と設定することでログイン中のユーザーIDに置換されます。 |
| jobs | List&lt;JobEntry&gt; |  | |  | 0 ~ 10 items | 追加するジョブの一覧 |
| timeOffsetToken | string |  | |  |  ~ 1024文字 | タイムオフセットトークン |




**JSON**
```json
{
    "action": "Gs2JobQueue:PushByUserId",
    "request": {
        "namespaceName": "[string]ネームスペース名",
        "userId": "[string]ユーザーID",
        "jobs": [
            {
                "scriptId": "[string]スクリプトGRN",
                "args": "[string]引数",
                "maxTryCount": "[int]最大試行回数"
            }
        ],
        "timeOffsetToken": "[string]タイムオフセットトークン"
    }
}
```

**YAML**
```yaml

action: Gs2JobQueue:PushByUserId
request:
  namespaceName: "[string]ネームスペース名"
  userId: "[string]ユーザーID"
  jobs: 
    - scriptId: "[string]スクリプトGRN"
      args: "[string]引数"
      maxTryCount: "[int]最大試行回数"
  timeOffsetToken: "[string]タイムオフセットトークン"
```

**GS2-Script**
```lua

transaction.service("jobQueue").acquire.push_by_user_id({
    namespaceName="[string]ネームスペース名",
    userId="[string]ユーザーID",
    jobs={
        {
            scriptId="[string]スクリプトGRN",
            args="[string]引数",
            maxTryCount="[int]最大試行回数"
        }
    },
    timeOffsetToken="[string]タイムオフセットトークン",
})
```


---



