기술 자료

​
​

Development

User Acquisition

Monetization

산업 분야

Unity 레벨플레이

Unity SDK

Android SDK

iOS SDK

Adobe AIR SDK

Flutter SDK

React Native SDK

Unity 레벨플레이

Monetization
​
​
레벨플레이
  • LevelPlay SDK
  • 레벨플레이 플랫폼
    • 시작하기
    • 기초
    • 측정 및 보고
    • 고급 설정
      • Placements
      • Segments
      • Introduction to capping and pacing
      • Rewarded settings
      • Server-to-server callback settings
      • Server-to-server callback event handlers
    • API
    • 베스트 프랙티스
  • 법적 리소스
  • 계정
  1. 게임 성장
  2. Unity 레벨플레이
  3. 레벨플레이 플랫폼
  4. 고급 설정

서버 간 콜백 이벤트 핸들러

제공된 파라미터와 PHP 또는 Java용 샘플 코드를 사용하여 Ironsource 서버 간 커미션 이벤트 콜백을 구현하고 인증 완료된 광고 혜택을 사용자에게 안전하게 보상합니다.
읽는 시간 4분
최근 업데이트: 10시간 전

커미션 이벤트 사용자 광고 혜택을 완료한 후 발생합니다.
  • 보상형 비디오 및 오프웨어 월의 경우 사용자 가상 화폐 또는 아이템 보상형 광고 제공해야 합니다. Ironsource 보상에 대한 세부 정보와 함께 (애플리케이션 설정의 콜백 URL 파라미터 정의된 대로) 커미션 이벤트 콜백 호출합니다.
  • 보상형 비디오 오프웨일의 경우 코드가 올바른 사용자 올바른 금액을 부여하도록 커미션 이벤트 콜백 구현해야 합니다. 인터스티셜 광고 경우 이벤트 사용자 혜택을 완료했음을 알려주기만 합니다(보상은 포함되지 않음).
다음 섹션에서는 커미션 이벤트 콜백 구문 설명하고 코드 샘플을 제공하고 이벤트 콜백 인증 관리하고 테스트하는 방법을 설명합니다.
  • 보상형 비디오 경우 사용자 광고 혜택을 완료할 때(iOS의 경우 RewardedVideoDidReceiveCredit 또는 Android의 경우 onRVAdCredited 참조) 클라이언트 측 이벤트 호출되는 서버 측 커미션 이벤트 콜백 외에도 전송됩니다.
  • OfferWall의 경우 클라이언트 측 이벤트 ssaOfferWallDidReceiveCredit(iOS) 또는 onOWAdCredited(Android)가 호출됩니다. 콜백 유효성을 확인할 수 있으므로 서버 측 이벤트 사용하여 사용자 보상을 트리거하는 것이 좋습니다.
    ssaRewardedVideoDidReceiveCredit
    (iOS) 또는
    onRVAdCredited
    (Android)를 핸들링할 때 동일한 이벤트에 대해 사용자에게 두 번 보상을 제공하지 마십시오.
참고
애플리케이션 백엔드 데이터 서버를 운영하지 않고 클라이언트 측 이벤트만 사용하려는 경우 서버 간 콜백 시스템을 비활성화하다, 무효화하다, 사용 안 함 수 있습니다.

커미션 이벤트 콜백

사용자 광고 혜택을 완료했을 때 커미션 이벤트 콜백 호출되며, 크레딧 또는 가상 아이템으로 보상형 광고 합니다. 이 이벤트 처리하기 위한 코드를 구현해야 합니다.

파라미터

Name

Type

설명

[USER_ID]문자열보상형 광고 대상 사용자 고유 식별자. 이는 Ironsource 제품을 초기화할 때 호출하는 앱에서 전송됩니다. URL로 인코딩된 양식이 전달됩니다(예: "123@abc.com"이 아닌 "123%40abc.com").
[REWARDS]Int사용자 부여할 신용 단위 수입니다.
[EVENT_ID]문자열Ironsource 서버에서 생성되고 영숫자 구성된 콜백 이벤트 고유 식별자.
[ITEM_NAME]문자열획득할 가상 아이템의 이름입니다(가상 아이템 옵션을 사용하는 경우).
타임스탬프문자열다음 포맷으로 이 콜백 호출된 정확한 날짜와 시간을 나타내는 문자열입니다. YYYYMMDDHMM(예: "201001021455"는 2010년 1월 2일 14:55로 표시됩니다.
서명문자열인증 사용되는 MD5 해시 문자열입니다. 이 키는 다음 수식에 따라 생성됩니다. md5([TIMESTAMP][EVENT_ID][USER_ID] [REWARDS][PRIVATE_KEY])。 [USER_ID] 요소는 userID의 URL로 디코딩된 값입니다(예: "123%40abc.com"이 아닌 "123@abc.com"). [PRIVATE_KEY] 요소 비공개 키 설정에서 정의한 값입니다.

응답

애플리케이션은 200(OK) 상태의 HTTP 리스폰스를 전송하여 커미션 이벤트 수신을 확인해야 하며, 여기서
"\[EVENT\_ID\]:OK"
문자열이 리스폰스 어디에나 나타납니다.
<xml><status>dae8e6cf42b1357f8652ad6ecb5b24f1:OK</status></xml>
참고
Ironsource 계속해서 콜백 재시도하지 않도록 올바른 구문 리스폰스를 보내는 것이 중요.

샘플 커미션 이벤트 콜백 코드 - PHP

다음 PHP 코드 샘플은 일반적인 커미션 이벤트 콜백 핸들러 보여줍니다. 코드를 복사한 후에는
**alreadyProcessed()**\
및
**doProcessEvent()**
함수를 구현하고
**\[YOUR\_PRIVATE\_KEY\]**
문자열을 올바른 값으로 설정해야 합니다.
// get the variables$userId = $_GET['applicationUserId'];$eventId = $_GET['eventId'];$rewards = $_GET['rewards'];$signature = $_GET['signature'];$timestamp = $_GET['timestamp'];$privateKey = ‘[YOUR_PRIVATE_KEY]';// validate the call using the signatureif (md5($timestamp.$eventId.$userId.$rewards.$privateKey) != $signature){ 에코 "서명은 매개 변수와 일치하지 않음"; 반환;}// check that we haven't processed the same event beforeif (!alreadyProcessed($eventId)){ // grant the rewards doProcessEvent($eventId, $userId, $rewards);}// return okecho $eventId.":OK";

샘플 커미션 이벤트 콜백 코드 - Java

다음 Java 코드 샘플은 일반적인 커미션 이벤트 콜백 핸들러 보여줍니다. 코드를 복사한 후에는
**getPostParameter()**
및
**alreadyProcessed()**\
메서드를 구현하고
**\[myPrivateKey\]**
문자열을 올바른 값으로 설정해야 합니다.
import java.security.*;import java.math.BigInteger;public class HelloWorld { public static void main(String []args) { validateSuperSonicCallback(); } public static String getPostParameter(String param){ // TODO : your app implementaion for get post parmas 반환 ""; } public static boolean alreadyProcessed(String eventId){ // TODO return true; } public static boolean validateSuperSonicCallback() { String applicationUserId = getPostParameter("applicationUserId"); String eventId = getPostParameter("eventId"); String signature = getPostParameter("signature"); String userId = getPostParameter("userId"); String rewards = getPostParameter("rewards"); String timestamp = getPostParameter("timestamp"); String privateKey = "myPrivateKey" ;// enter your private key String mySignature = ""; try { String message = timestamp + eventId + userId + rewards +privateKey; MessageDigest md = MessageDigest.getInstance("MD5"); md.update(message.getBytes()); BigInteger hash = new BigInteger(1, md.digest()); String result = hash.toString(16); while(result.length() < 32) { result = "0" + result; } System.out.println(result); // 문자열을 표시합니다. } catch(NoSuchAlgorithmException e){ } if (mySignature!=signature){ return false; }else{ return !alreadyProcessed(eventId); } }}

커미션 이벤트 콜백 인증

권한 없는 액세스, 접근 코드를 보호하기 위해 권장되는 베스트 프랙티스는 커미션 이벤트 콜백 서명과 소스를 테스트하여 호출 Ironsource 이루어졌는지 확인하는 것입니다.
다음 작업을 수행하여 커미션 이벤트 콜백 인증 수 있습니다.
  1. 호출의 파라미터에서 다음 수식:
    md5(\[TIMESTAMP\]\[EVENT\_ID\]\[USER\_ID\] \[REWARDS\]\[PRIVATE\_KEY\])
    에 따라 MD5 해시 값을 생성한 다음 결과가 서명 파라미터 값과 동일한지 확인합니다.
  2. 호출 다음 IP 주소 중 하나에서 발생했는지 확인합니다.
    • 79.125.5.179
    • 79.125.26.193
    • 79.125.117.130
    • 176.34.224.39
    • 176.34.224.41
    • 176.34.224.49
    • 34.194.180.125
    • 34.196.56.165
    • 34.196.251.81
    • 34.196.253.23
    • 54.88.253.218
    • 54.209.185.78

Copyright © 2026 Unity Technologies
법률 정보개인정보 처리방침쿠키Documentation Terms of Use개인 정보 판매 또는 공유 금지개인정보 보호 선택(쿠키 설정)

'Unity', Unity 로고 및 기타 Unity 상표는 미국 및 기타 지역 내 Unity Technologies 또는 그 계열사의 상표 또는 등록상표입니다(자세한 내용은 여기에서 확인하세요). 기타 명칭 또는 브랜드는 해당 소유자의 상표입니다.

일부 페이지는 편의를 위해 기계 번역되었으며 부정확한 내용이 있을 수 있습니다. 정보가 상충되는 경우, 영어 버전을 우선으로 참조하세요.

  • 보고 있는 페이지
    • 커미션 이벤트 콜백

      • 파라미터

      • 응답

    • 샘플 커미션 이벤트 콜백 코드 - PHP

    • 샘플 커미션 이벤트 콜백 코드 - Java

    • 커미션 이벤트 콜백 인증


이 페이지의 문제 보고