로딩중입니다
リワードサーバーの連携
6/12/2015 3:08:50 PM

IGAWリワードサーバーの連携

IGAWorksのadPOPcornやCouponサービスのように、ユーザーにリワードを付与するサービスをご利用する際にはリワードサーバーの連携が必要となります。

IGAWorksリワードサーバーはリワードを付与するために必要な情報をデベロッパー様のポストバック(コールバック)サーバーに渡します。 

リワード付与情報を受信して処理するため、以下のガイドのご参考の上、ポストバックサーバーを構築してください。



基本情報の設定

adPOOPcornの管理画面(リワードウォール)の「オファーウォール管理>連携設定」メニューより、

ポストバックを受信するサーバーの基本情報を入力してください。入力する情報は以下となります。

  • サーバー : リワードサーバー直接構成を選択します。
  • ポストバックURL : リワード情報を受信するポストバックサーバーのライブURL
  • テストポストバックURL : リワード付与情報を受信するポストバックサーバーのテストURL
  • HTTP通信方式 : ポストバック送信方式
  • Parameter(ポストバックパラメーター)(*) : リワードを付与するために必要なリワード情報のパラメーター


【例】


(*)Parameter(ポストバックパラメーター)

IGAWリワードサーバーが渡す各パラメーターを受信するパラメーターキーを入力します。

基本パラメーター以外に、追加で受信したい情報があれば追加することができます。

    追加パラメーター(adPOPcorn)

  1. {campaign_name} : ユーザーが参加完了したキャンペーン名
  2. {campaign_type} : ユーザーが参加完了したキャンペーンタイプ
  3. {app_key} : IGAWorks App Key
  4. {app_name} : IGAWorks アプリ名
  5. {time_stamp} : キャンペーン参加完了時刻
  6. {adid} : ユーザーが参加完了したデバイスのGoogle広告ID

Protocolテスト

リワードサーバーの連携のテストのため、管理画面上でProtocolテストを実施できるようにサポートしております。

テストを実施するユーザー識別値を入力して頂き、以下の3つのProtocolテストを実施します。

各Protocolテストの「スタート」ボタンをクリックすると、サンプルリワード情報がテストポストバックURLに渡されます。



ポストバック応答

IGAWリワードサーバーに渡すリワード付与情報を受信して処理した後、処理結果をJSON形式で返答する必要がございます。

以下のように定義したケースに沿い、適切な応答をIGAWリワードサーバーに返信します。


ケース別のJSON応答フォーマット

  • セキュリティー検証失敗 
    {"Result":false,"ResultCode":1100,"ResultMsg":"invalid signed value"}
  • リワード重複付与
    {"Result":false,"ResultCode":3100,"ResultMsg":"duplicate transaction"}
  • ユーザー検証の失敗
    {"Result":false,"ResultCode":3200,"ResultMsg":"invalid user "}
  • 例外ケースの発生
    {"Result":false,"ResultCode":4000,"ResultMsg":"custom error message"}
  • リワード付与成功
    {"Result":true,"ResultCode":1,"ResultMsg":"success"}


ケースの詳細

各応答フォーマットの利用は以下の状況となります。

  1. セキュリティー検証
    IGAWリワードサーバーでHMAC-MD5方式で暗号化して渡した(*)SignedValue数値と、デベロッパーサーバーから生成したSignedValue数値を捕獲して、一致する場合のみ、セキュリティーが検証された通信で判断するフローです。

  2. リワード重複付与防止処理
    ユーザーが同じrewardKeyに対して、リワードを2回以上付与されることを封じするためのフローです。

    ユーザーが正常でキャンペーンを完了した際、キャンペーン毎にユニークなrewardkeyが発行されます。
    渡されたrewardkeyがすでに付与処理を完了した場合、リワードを付与しなくなります。

  3. ユーザー検証
    IGAWリワードサーバーより送信したリワード付与情報の中、ユーザー情報に該当するユーザーが存在するかを確認するフローです。

    正しくないユーザー情報を渡した場合、リワードは付与しません。

  4. 例外ケースの発生
    上記で定義したエラー事項以外に、他の事項に対して処理する際に利用します。 
    ResultMsgには、各状況に合うメッセージを直接設定することが出来ます。(英語のみ対応)

  5. リワード付与処理の成功
    上記のエラー事項を全てパスしたリワード付与情報に対して、リワード付与処理を完了した後、処理結果をIGAWリワードサーバーに渡します。

(*)SignedValue : セキュリティーを検証するために利用する暗号化の文字列です。IGAWサーバーでは、基本ポストバックパラメーター(usn,rewardkey,quantity,campaignkey)をplainTextとして生成したSignedValueをポストバックに含めて送信します。デベロッパーサーバーにも同じ方法でSignedValueを生成して、IGAWから渡された数値と比較します。


サンプルコード(c#, php)

ポストバックサーバーでは、上記で定義したProtocol interfaceに沿い、各ケースに合う応答をIGAWしてください。

ポストバックサーバーの構成に役立つため、C#, PHP サンプルコードを提供しております。

以下のリンクより、サンプルコードをダウンロードしてください。

【IGAWリワードサーバーサンプルコード】