Javascript SDK
    • PDF

    Javascript SDK

    • PDF

    Article Summary

    最新のコンテンツが反映されていません。早急にアップデート内容をご提供できるよう努めております。最新のコンテンツ内容は韓国語ページをご参照ください。

    Classic/VPC環境で利用できます。

    ウェブで GAMEPOTを連携するための GAMEPOT Javascript SDKの使い方について説明します。SDKをインストールして環境を構成することで、ゲームとダッシュボードを連携できます。

    Javascript用 GAMEPOT SDKを使用するためのシステム要件は、以下のとおりです。

    • 最小スペック: Chrome 4、IE 8、Firefox 3.5、Safari 4、Opera 10.50など

    SDKのインストールと環境の構成

    JavaScript SDKを使用するための基本的な設定方法は、以下のとおりです。

    1. gamepot-sdk-javascript-lastest.min.jsをダウンロードします。
    2. ダウンロードしたファイル、gamepot-sdk-javascript-lastest.min.jsを headと headの間に追加します。
      <head><script src="gamepot-sdk-javascript-lastest.min.js"></script></head>
      
      // もしくは、CDNリンクを直接使用しても構いません。(推奨)    
       <head><script src="https://gamepot.gcdn.ntruss.com/gamepot-sdk-javascript-lastest.min.js"></script></head>
      

    GAMEPOT Javascript SDKは npmパッケージとして提供されます。yarnを介しても使用できます。

    # using npm
    npm install gamepot
    
    # using yarn
    yarn add gamepot
    

    ソーシャルログイン関連コンソール内の設定ガイド: ダウンロード

    使用可能なログイン: Google/Facebook/Appleログイン

    Appleログインの場合、GAMEPOTのダッシュボード > プロジェクトの設定 > 一般 > Apple ID Login項目が記入されている必要があります。
    ログインするドメインのアドレスが、GAMEPOTのダッシュボード > プロジェクトの設定 > 一般 > WEB- 許可ドメインに記入されている必要があります。

    初期化

    ウェブページのロード完了時に実行するようwindow.onload = function() {...}または jQueryを使用すると$(ducement).ready(function() {...})ブロック内で初期化します。

    
    <!-- YOUR WEB HTML CODES -->
    <script>
    window.onload = function () {
        // プロジェクト IDは GAMEPOTのダッシュボードでも確認できます。
        var project_id = 'xxxxxxx-xxxx-xxxx-xxxx-xxxxxx';
        var gamepotConfig = {
          // 共通
          api_url: "https://gpapps.gamepot.ntruss.com",
          api_key: "XXXXXXXXXXXXX",
          // Googleログインを利用する場合、以下のように Google APIクライアント IDを入力します。
          google_signin_client_id:"XXXXXXXXXX-XXXXXXXXXXX.apps.googleusercontent.com",
          // Facebookログインを利用する場合、以下のように Facebookアプリ IDを入力します。
          facebook_app_id: "XXXXXXXXXX",
          // Appleログインを使用する場合、以下のように Appleコンソールの Services IDとログインを試みるドメインアドレスを入力します。(使用しない場合、空値に設定)
          apple_client_id: "XXXXXXXXXX",
          apple_redirect_uri: "https://XXXXXXXXXX"
    };
    GP.initialize(project_id, gamepotConfig);
    };
    </script>
    
    AttributeDescription
    project_idGAMEPOTのダッシュボードプロジェクト ID
    api_urlGAMEPOTのダッシュボードに関連する URL(基本的に https://gpapps.gamepot.ntruss.comですが、Managed商品をご利用のお客様はアドレスが異なるため、GAMEPOTまでお問い合わせください)
    api_keyGAMEPOTで発行される認証キー(ダッシュボード > プロジェクトの設定 > API Key)
    google_signin_client_idGoogleコンソール内のウェブアプリケーション ID
    facebook_app_idFacebookアプリ ID
    apple_client_idAppleコンソールに作成した Services ID
    apple_redirect_uriログインを試みるドメインアドレス

    エラーの処理

    エラーの処理方法はすべて同じである。function (user, error) { }のようにエラーがあった場合はメッセージを表示し、エラーがなかった場合は成功と返す。

    GP.login(GP.ChannelType.EMAIL, function (user, error) { 
            if(error) { // ログイン失敗 
                alert(error.message); // 失敗メッセージ 
                return;
            } 
            alert(user);
    });
    

    ログイン、ログアウト

    Google、Facebook、Apple IDログイン SDKを統合して使用できます。

    ログイン

    ログイン UIは開発会社で実装し、ログインボタンをクリックする際に連携されます。

    ソーシャルプラットフォームログイン

    // ログインタイプの定義
    // GP.ChannelType.GOOGLE: Google
    // GP.ChannelType.FACEBOOK: Facebook
    // GP.ChannelType.APPLE: Apple ID
    // GP.ChannelType.KAKAO: カカオ
    
    // Facebookログインボタンを押すと呼び出す
    GP.login(GP.ChannelType.FACEBOOK, function (user, error) {
      if (error) {
        alert(error); // エラーメッセージ
        return;
      }
        // ログイン完了
        alert(user);
    });
    

    ソーシャルログインの自動ログインと同時にゲームに登録されます。登録を希望しない場合は以下のオプションを追加してください。

    GP.setAuthSignup(false);
    

    USER Data Class

    IDtypedesc
    idstring会員 ID
    tokenstringログイントークン(JWT)
    nicknamestringハンドルネーム
    providerstringソーシャルログインの種類
    providerIdstringソーシャルログイン ID
    verifystring認証の有無
    agreestring規約に同意したかどうか

    メールでログイン

    GP.signin("email", username, password, function(user, err) {
      if(err) {
          alert(err.message);
        } else {
          alert(user.id);
        }
    });
    

    メールで会員登録

    GP.signup("email", username, password, name, function(user, err) {
        if(err) {
          alert(err.message);
        } else {
          alert(user);
        }
    });
    

    ログアウト

    現在の会員アカウントをログアウトします。

    GP.logout(function (result, error) {
         if (error) {
                alert(error.message);
         }
        // ログアウト成功
    });
    

    会員の退会

    GP.withdraw(function (result, error) {
        if (error) {
             alert(error.message);
        }
        // 会員退会に成功
    });
    

    ソーシャルアカウントで会員かどうかを確認

    ログイン後、そのソーシャルアカウントで連携している GAMEPOT内の会員がいるかを確認します。

    GP.linkingByUser(channeltype, function( user, error) {
        if(error) {
            alert(`${error.code}-${error.message}`); // エラーメッセージ
            return false;
        }
        if(user == null)
            alert('アカウントが存在しない')
       else if(user.member_id.id)
            alert(user.member_id.id);       // IDを返す
    });
    

    USER Data Class

    IDtypedesc
    member_id.idstringGAMEPOT会員 ID
    usernamestringソーシャル ID

    4. プラグイン

    GAMEPOTの基本機能のほか、様々な外部モジュールとの連携機能などをサポートします。
    サポート可能なモジュール

    • 本人認証(Danal)
    • 海外 PG(Xsolla)
    • 国内 PG(Danal)

    本人確認

    携帯電話による本人認証サービスとは、本人名義の携帯電話で認証手続きを経て本人かどうかを確認する機能です。(韓国でのみ可能)

     GP.Identity('[本人確認コード]',{},function(resp) {
      if(resp.success) {
        alert(resp.orderId); 
      } else {
        alert(resp.error);
      }
    });
    

    外部決済

    Xsollaや Danalのような外部 PGを利用する際に決済画面を表示させる関数です。

    function Payment(key) {
        GP.Payment(key,
          {
            userId: "[USERID]",
            productId : "[ITEMID]",
            name: "[ITEMNAME]",
            buyer_name: "[購入者名]",
            buyer_email: "[購入者の EMAIL]",
        },function(resp) {
            if(resp.success) {
              alert(resp.orderId);
            } else {
              alert(resp.error);
            }
          })
      }
    
    AttributeDescription
    userIdGAMEPOT会員 ID
    productId商品コード
    nameアイテム名
    buyer_name購入者名(option)
    buyer_email購入者のメールアドレス(option)
    playerIdプレイヤー ID(option)
    serverIdサーバ ID(option)
    userdataユーザーデータ(option)

    この記事は役に立ちましたか?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.