GS2-Limit トランザクションアクション
検証/消費/入手の各トランザクションアクションの仕様
VerifyAction
検証アクション
Gs2Limit:VerifyCounterByUserId
ユーザーIDを指定してカウンター値を検証
指定されたユーザーのカウンター値が指定された条件を満たすことを検証します。
6つの比較演算子をサポートします:less、lessEqual、greater、greaterEqual、equal、notEqual。
数量指定可能なアクション:いいえ
| 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128文字 | ネームスペース名 ネームスペース固有の名前。英数字および -(ハイフン) _(アンダースコア) .(ピリオド)で指定します。 | ||||||||||||||||
| userId | string | ✓ | ~ 128文字 | ユーザーID#{userId} と設定することでログイン中のユーザーIDに置換されます。 | ||||||||||||||||
| limitName | string | ✓ | ~ 128文字 | 回数制限モデル名 このカウンターが属する回数制限モデルの名前です。このカウンターの値に適用されるリセットスケジュール(毎日、毎週、毎月など)を決定します。 | ||||||||||||||||
| counterName | string | ✓ | ~ 128文字 | カウンターの名前 回数制限モデル内でこのカウンターを一意に識別する名前です。同じ回数制限モデルを異なる名前の複数のカウンターで共有でき、個別の回数制限モデルを作成せずに別々の使用回数追跡(例:クエストごとや商品ごとに1カウンター)が可能です。 | ||||||||||||||||
| verifyType | 文字列列挙型 enum { “less”, “lessEqual”, “greater”, “greaterEqual”, “equal”, “notEqual” } | ✓ | 検証の種類
| |||||||||||||||||
| count | int | 0 | 0 ~ 2147483646 | カウント値 このカウンターの現在の使用回数です。countUp操作でインクリメントされ、その際に指定された最大値と比較されます。回数制限モデルのリセットタイミングに達すると自動的にゼロにリセットされます。 | ||||||||||||||||
| multiplyValueSpecifyingQuantity | bool | true | 数量指定した際に、検証に使用する値も乗算するか | |||||||||||||||||
| timeOffsetToken | string | ~ 1024文字 | タイムオフセットトークン |
{
"action": "Gs2Limit:VerifyCounterByUserId",
"request": {
"namespaceName": "[string]ネームスペース名",
"userId": "[string]ユーザーID",
"limitName": "[string]回数制限モデル名",
"counterName": "[string]カウンターの名前",
"verifyType": "[string]検証の種類",
"count": "[int]カウント値",
"multiplyValueSpecifyingQuantity": "[bool]数量指定した際に、検証に使用する値も乗算するか",
"timeOffsetToken": "[string]タイムオフセットトークン"
}
}action: Gs2Limit:VerifyCounterByUserId
request:
namespaceName: "[string]ネームスペース名"
userId: "[string]ユーザーID"
limitName: "[string]回数制限モデル名"
counterName: "[string]カウンターの名前"
verifyType: "[string]検証の種類"
count: "[int]カウント値"
multiplyValueSpecifyingQuantity: "[bool]数量指定した際に、検証に使用する値も乗算するか"
timeOffsetToken: "[string]タイムオフセットトークン"transaction.service("limit").verify.verify_counter_by_user_id({
namespaceName="[string]ネームスペース名",
userId="[string]ユーザーID",
limitName="[string]回数制限モデル名",
counterName="[string]カウンターの名前",
verifyType="[string]検証の種類",
count="[int]カウント値",
multiplyValueSpecifyingQuantity="[bool]数量指定した際に、検証に使用する値も乗算するか",
timeOffsetToken="[string]タイムオフセットトークン",
})ConsumeAction
消費アクション
Gs2Limit:CountUpByUserId
ユーザーIDを指定してカウントアップ
指定されたユーザーのカウンターを指定されたカウントアップ値だけ増加させます。
maxValue が指定された場合、カウンターはその上限を超えません。操作が最大値を超える場合は Overflow エラーが返されます。
カウンターがまだ存在しない場合、自動的に作成されます。
数量指定可能なアクション:はい
反転可能なアクション:はい
| 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128文字 | ネームスペース名 ネームスペース固有の名前。英数字および -(ハイフン) _(アンダースコア) .(ピリオド)で指定します。 | ||
| limitName | string | ✓ | ~ 128文字 | 回数制限モデル名 このカウンターが属する回数制限モデルの名前です。このカウンターの値に適用されるリセットスケジュール(毎日、毎週、毎月など)を決定します。 | ||
| counterName | string | ✓ | ~ 128文字 | カウンターの名前 回数制限モデル内でこのカウンターを一意に識別する名前です。同じ回数制限モデルを異なる名前の複数のカウンターで共有でき、個別の回数制限モデルを作成せずに別々の使用回数追跡(例:クエストごとや商品ごとに1カウンター)が可能です。 | ||
| userId | string | ✓ | ~ 128文字 | ユーザーID#{userId} と設定することでログイン中のユーザーIDに置換されます。 | ||
| countUpValue | int | 1 | 1 ~ 2147483646 | カウントアップする量 | ||
| maxValue | int | 1 ~ 2147483646 | カウントアップを許容する最大値 | |||
| timeOffsetToken | string | ~ 1024文字 | タイムオフセットトークン |
{
"action": "Gs2Limit:CountUpByUserId",
"request": {
"namespaceName": "[string]ネームスペース名",
"limitName": "[string]回数制限モデル名",
"counterName": "[string]カウンターの名前",
"userId": "[string]ユーザーID",
"countUpValue": "[int]カウントアップする量",
"maxValue": "[int]カウントアップを許容する最大値",
"timeOffsetToken": "[string]タイムオフセットトークン"
}
}action: Gs2Limit:CountUpByUserId
request:
namespaceName: "[string]ネームスペース名"
limitName: "[string]回数制限モデル名"
counterName: "[string]カウンターの名前"
userId: "[string]ユーザーID"
countUpValue: "[int]カウントアップする量"
maxValue: "[int]カウントアップを許容する最大値"
timeOffsetToken: "[string]タイムオフセットトークン"transaction.service("limit").consume.count_up_by_user_id({
namespaceName="[string]ネームスペース名",
limitName="[string]回数制限モデル名",
counterName="[string]カウンターの名前",
userId="[string]ユーザーID",
countUpValue="[int]カウントアップする量",
maxValue="[int]カウントアップを許容する最大値",
timeOffsetToken="[string]タイムオフセットトークン",
})AcquireAction
入手アクション
Gs2Limit:CountDownByUserId
ユーザーIDを指定してカウントダウン
指定されたユーザーのカウンターを指定されたカウントダウン値だけ減少させます。
カウンター値は 0 を下回りません。
数量指定可能なアクション:はい
反転可能なアクション:はい
| 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128文字 | ネームスペース名 ネームスペース固有の名前。英数字および -(ハイフン) _(アンダースコア) .(ピリオド)で指定します。 | ||
| limitName | string | ✓ | ~ 128文字 | 回数制限モデル名 このカウンターが属する回数制限モデルの名前です。このカウンターの値に適用されるリセットスケジュール(毎日、毎週、毎月など)を決定します。 | ||
| counterName | string | ✓ | ~ 128文字 | カウンターの名前 回数制限モデル内でこのカウンターを一意に識別する名前です。同じ回数制限モデルを異なる名前の複数のカウンターで共有でき、個別の回数制限モデルを作成せずに別々の使用回数追跡(例:クエストごとや商品ごとに1カウンター)が可能です。 | ||
| userId | string | ✓ | ~ 128文字 | ユーザーID#{userId} と設定することでログイン中のユーザーIDに置換されます。 | ||
| countDownValue | int | 1 | 1 ~ 2147483646 | カウントダウンする量 | ||
| timeOffsetToken | string | ~ 1024文字 | タイムオフセットトークン |
{
"action": "Gs2Limit:CountDownByUserId",
"request": {
"namespaceName": "[string]ネームスペース名",
"limitName": "[string]回数制限モデル名",
"counterName": "[string]カウンターの名前",
"userId": "[string]ユーザーID",
"countDownValue": "[int]カウントダウンする量",
"timeOffsetToken": "[string]タイムオフセットトークン"
}
}action: Gs2Limit:CountDownByUserId
request:
namespaceName: "[string]ネームスペース名"
limitName: "[string]回数制限モデル名"
counterName: "[string]カウンターの名前"
userId: "[string]ユーザーID"
countDownValue: "[int]カウントダウンする量"
timeOffsetToken: "[string]タイムオフセットトークン"transaction.service("limit").acquire.count_down_by_user_id({
namespaceName="[string]ネームスペース名",
limitName="[string]回数制限モデル名",
counterName="[string]カウンターの名前",
userId="[string]ユーザーID",
countDownValue="[int]カウントダウンする量",
timeOffsetToken="[string]タイムオフセットトークン",
})Gs2Limit:DeleteCounterByUserId
ユーザーIDを指定してカウンターを削除
指定されたユーザーのカウンターを削除し、使用回数をリセットします。
これにより、このカウンターに対する回数制限が実質的に解除され、ユーザーは再び 0 からカウントを開始できます。
数量指定可能なアクション:いいえ
反転可能なアクション:いいえ
| 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128文字 | ネームスペース名 ネームスペース固有の名前。英数字および -(ハイフン) _(アンダースコア) .(ピリオド)で指定します。 | ||
| limitName | string | ✓ | ~ 128文字 | 回数制限モデル名 このカウンターが属する回数制限モデルの名前です。このカウンターの値に適用されるリセットスケジュール(毎日、毎週、毎月など)を決定します。 | ||
| userId | string | ✓ | ~ 128文字 | ユーザーID#{userId} と設定することでログイン中のユーザーIDに置換されます。 | ||
| counterName | string | ✓ | ~ 128文字 | カウンターの名前 回数制限モデル内でこのカウンターを一意に識別する名前です。同じ回数制限モデルを異なる名前の複数のカウンターで共有でき、個別の回数制限モデルを作成せずに別々の使用回数追跡(例:クエストごとや商品ごとに1カウンター)が可能です。 | ||
| timeOffsetToken | string | ~ 1024文字 | タイムオフセットトークン |
{
"action": "Gs2Limit:DeleteCounterByUserId",
"request": {
"namespaceName": "[string]ネームスペース名",
"limitName": "[string]回数制限モデル名",
"userId": "[string]ユーザーID",
"counterName": "[string]カウンターの名前",
"timeOffsetToken": "[string]タイムオフセットトークン"
}
}action: Gs2Limit:DeleteCounterByUserId
request:
namespaceName: "[string]ネームスペース名"
limitName: "[string]回数制限モデル名"
userId: "[string]ユーザーID"
counterName: "[string]カウンターの名前"
timeOffsetToken: "[string]タイムオフセットトークン"transaction.service("limit").acquire.delete_counter_by_user_id({
namespaceName="[string]ネームスペース名",
limitName="[string]回数制限モデル名",
userId="[string]ユーザーID",
counterName="[string]カウンターの名前",
timeOffsetToken="[string]タイムオフセットトークン",
})