GS2-Money2 스크립트 트리거 레퍼런스

확장 스크립트를 호출하는 이벤트 트리거의 레퍼런스

트리거

deposit

지갑 잔액 가산

동기 실행 스크립트

지갑 잔액 가산 처리 전에, 스크립트가 동기 실행됩니다.

Request
타입 설명
namespace Namespace 네임스페이스
oldWallet Wallet 가산 전 지갑
newWallet Wallet 가산 후 지갑
transactions DepositTransaction[] 발생한 트랜잭션 리스트
count int 잔액 가산량
Result
타입 필수 기본값 값 제한 설명
permit bool
✓
지갑 잔액 가산을 허용할지 여부
구현 예제
-- Request
local namespace = args.namespace
local oldWallet = args.oldWallet
local newWallet = args.newWallet
local transactions = args.transactions
local count = args.count

-- Business logic:
local permit = true

-- Result
result = {
  permit=permit
}

비동기 실행 스크립트

지갑 잔액 가산 처리 후에, 스크립트가 비동기 실행됩니다.

Request
타입 설명
namespace Namespace 네임스페이스
oldWallet Wallet 가산 전 지갑
newWallet Wallet 가산 후 지갑
transactions DepositTransaction[] 발생한 트랜잭션 리스트
count int 잔액 가산량
구현 예제
-- Request
local namespace = args.namespace
local oldWallet = args.oldWallet
local newWallet = args.newWallet
local transactions = args.transactions
local count = args.count

-- 비동기 스크립트는 일반적으로 API 응답에 영향을 주지 않습니다.
-- 로그 출력이나 분석, 외부 알림 등에 사용됩니다.

result = {
}

withdraw

지갑 잔액 소비

동기 실행 스크립트

지갑 잔액 소비 처리 전에, 스크립트가 동기 실행됩니다.

Request
타입 설명
namespace Namespace 네임스페이스
oldWallet Wallet 소비 전 지갑
newWallet Wallet 소비 후 지갑
transactions DepositTransaction[] 발생한 트랜잭션 리스트
count int 잔액 소비량
Result
타입 필수 기본값 값 제한 설명
permit bool
✓
지갑 잔액 소비를 허용할지 여부
구현 예제
-- Request
local namespace = args.namespace
local oldWallet = args.oldWallet
local newWallet = args.newWallet
local transactions = args.transactions
local count = args.count

-- Business logic:
local permit = true

-- Result
result = {
  permit=permit
}

비동기 실행 스크립트

지갑 잔액 소비 처리 후에, 스크립트가 비동기 실행됩니다.

Request
타입 설명
namespace Namespace 네임스페이스
oldWallet Wallet 소비 전 지갑
newWallet Wallet 소비 후 지갑
transactions DepositTransaction[] 발생한 트랜잭션 리스트
count int 잔액 소비량
구현 예제
-- Request
local namespace = args.namespace
local oldWallet = args.oldWallet
local newWallet = args.newWallet
local transactions = args.transactions
local count = args.count

-- 비동기 스크립트는 일반적으로 API 응답에 영향을 주지 않습니다.
-- 로그 출력이나 분석, 외부 알림 등에 사용됩니다.

result = {
}

subscribe

신규 계약

동기 실행 스크립트

신규 계약 처리 전에, 스크립트가 동기 실행됩니다.

Request
타입 설명
namespace Namespace 네임스페이스
contentModel StoreSubscriptionContentModel 구독 스토어 콘텐츠 모델
transaction SubscribeTransaction 구독 상태
userId string 사용자ID
ttlAt long GS2-Schedule 트리거에 반영할 유효 기간
구현 예제
-- Request
local namespace = args.namespace
local contentModel = args.contentModel
local transaction = args.transaction
local userId = args.userId
local ttlAt = args.ttlAt

-- Business logic:

-- Result
result = {
}

renew

계약 갱신

동기 실행 스크립트

계약 갱신 처리 전에, 스크립트가 동기 실행됩니다.

Request
타입 설명
namespace Namespace 네임스페이스
contentModel StoreSubscriptionContentModel 구독 스토어 콘텐츠 모델
transaction SubscribeTransaction 구독 상태
userId string 사용자ID
ttlAt long GS2-Schedule 트리거에 반영할 유효 기간
구현 예제
-- Request
local namespace = args.namespace
local contentModel = args.contentModel
local transaction = args.transaction
local userId = args.userId
local ttlAt = args.ttlAt

-- Business logic:

-- Result
result = {
}

unsubscribe

계약 해지

동기 실행 스크립트

계약 해지 처리 전에, 스크립트가 동기 실행됩니다.

Request
타입 설명
namespace Namespace 네임스페이스
contentModel StoreSubscriptionContentModel 구독 스토어 콘텐츠 모델
transaction SubscribeTransaction 구독 상태
userId string 사용자ID
구현 예제
-- Request
local namespace = args.namespace
local contentModel = args.contentModel
local transaction = args.transaction
local userId = args.userId

-- Business logic:

-- Result
result = {
}

takeOver

할당 사용자 변경

동기 실행 스크립트

할당 사용자 변경 처리 전에, 스크립트가 동기 실행됩니다.

Request
타입 설명
namespace Namespace 네임스페이스
contentModel StoreSubscriptionContentModel 구독 스토어 콘텐츠 모델
transaction SubscribeTransaction 구독 상태
fromUserId string 사용자ID
toUserId string 사용자ID
elapsedHours int 마지막 할당 사용자 변경 이후 경과 시간(시간)
Result
타입 필수 기본값 값 제한 설명
permit bool
✓
할당 사용자 변경을 허용할지 여부
구현 예제
-- Request
local namespace = args.namespace
local contentModel = args.contentModel
local transaction = args.transaction
local fromUserId = args.fromUserId
local toUserId = args.toUserId
local elapsedHours = args.elapsedHours

-- Business logic:
local permit = true

-- Result
result = {
  permit=permit
}

비동기 실행 스크립트

할당 사용자 변경 처리 후에, 스크립트가 비동기 실행됩니다.

Request
타입 설명
namespace Namespace 네임스페이스
contentModel StoreSubscriptionContentModel 구독 스토어 콘텐츠 모델
transaction SubscribeTransaction 구독 상태
fromUserId string 사용자ID
toUserId string 사용자ID
elapsedHours int 마지막 할당 사용자 변경 이후 경과 시간(시간)
구현 예제
-- Request
local namespace = args.namespace
local contentModel = args.contentModel
local transaction = args.transaction
local fromUserId = args.fromUserId
local toUserId = args.toUserId
local elapsedHours = args.elapsedHours

-- 비동기 스크립트는 일반적으로 API 응답에 영향을 주지 않습니다.
-- 로그 출력이나 분석, 외부 알림 등에 사용됩니다.

result = {
}

verifyReceipt

영수증 검증

동기 실행 스크립트

영수증 검증 처리 전에, 스크립트가 동기 실행됩니다.

Request
타입 설명
namespace Namespace 네임스페이스
storeContentModel StoreContentModel 스토어 콘텐츠 모델
receipt Receipt 영수증
userId string 사용자ID
Result
타입 필수 기본값 값 제한 설명
permit bool
✓
영수증 검증을 허용할지 여부
구현 예제
-- Request
local namespace = args.namespace
local storeContentModel = args.storeContentModel
local receipt = args.receipt
local userId = args.userId

-- Business logic:
local permit = true

-- Result
result = {
  permit=permit
}

비동기 실행 스크립트

영수증 검증 처리 후에, 스크립트가 비동기 실행됩니다.

Request
타입 설명
namespace Namespace 네임스페이스
storeContentModel StoreContentModel 스토어 콘텐츠 모델
receipt Receipt 영수증
userId string 사용자ID
구현 예제
-- Request
local namespace = args.namespace
local storeContentModel = args.storeContentModel
local receipt = args.receipt
local userId = args.userId

-- 비동기 스크립트는 일반적으로 API 응답에 영향을 주지 않습니다.
-- 로그 출력이나 분석, 외부 알림 등에 사용됩니다.

result = {
}