呼び出しを実施していきます。Tokenを利用して行います。モバコイン引き落とし済みか確認します。ついて、「モバコイン引き落とされているがアイテム付与されていない」という状態であるか確認するためには、「モバコインの決済状態」と「アイテムの付与状態」の2つを確認する必要があります。これらを確認して、必要な場合にアイテムを付与するプログラムを作成します。値を確認することで、モバコインが引き落とされているか判断します。値は以下のように分けられます。値は変更されることはありません。対象とし、ユーザーにアイテムを付与します。「アイテムの付与状態」を確認する上で忘れずに対応したいのが、「アイテムの付与状態」を確認して「アイテム付与される」まで、他のプロセスによって邪魔されない(アイテムを付与されない)ことを担保することです。データを排他制御する手法を採用します。排他制御を取り入れることで、同じようなタイミングで複数プロセスからリクエストがあった際に、アイテムの間違った重複付与を防ぐことができます。データの確認も行います。値に応じてアイテム付与を行います。データの更新は必要ありません。データの排他制御は解放してください。場合は、モバコイン消費がキャンセル/失効済みの状態なので、ゲーム側でのアイテム付与処理は不要となります。データのみを更新して、該当トランザクションの処理を終了させます。データの排他制御を開放します。場合は、「モバコインは引き落とされているがアイテム付与されていない」という状態なので、アイテム付与処理を実行します。このチュートリアルでは、ユーザのアイテムを管理するテーブルにレコードを追加/更新することでアイテムを付与します。以下がこのチュートリアルで定義しているユーザのアイテム管理テーブルです。上記に定義したアイテム管理テーブルは、あくまでこのチュートリアル用のサンプルであり、一例です。実際にゲームに実装する際には、ゲームの要件に従ったテーブルを定義してください。データも更新することで、該当トランザクションの処理を終了させます。データの排他制御も開放します。対して、網羅的にアイテム付与を行うことが出来ました。バッチのプログラムをおいているディレクトリを想定しています。以下のライブラリを配置します。https://github.com/F21/jwtなお、アイテムを購入するプログラムは、下記のチュートリアルで先に開発しておきます。アイテム管理テーブルの状態を作り出します。上記の準備により、7度アイテムが購入され、3度購入がキャンセルされたこと、ユーザにアイテムが7つ付与されたことが分かります。実際は購入処理が成功し、アイテムも付与されていますが、これは動作確認テストなので、その点は無視します。タイムスタンプを強制的に一定時間前に戻します。データが作成されました。前述した準備が整ったら、チュートリアルで開発したバッチを実行します。更新され、アイテムが再度付与されているか確認します。正常に更新されたことを確認できました。利用したライブラリは下記になります。reserved.DisclaimerLogin。