as

Settings
Sign out
Notifications
Alexa
Amazonアプリストア
AWS
ドキュメント
Support
Contact Us
My Cases
開発
設計と開発
公開
リファレンス
サポート

@amazon-devices/kepler-aps-client

@amazon-devices/kepler-aps-client

重要: このAPIはKeplerシミュレーターではサポートされません。実装のテストには、Fire TV Stickを使用してください。

Kepler APSクライアントAPIは、Kepler向けReact NativeアプリとAmazon Publisher Services(APS)のネイティブコード実装との連係を可能にします。この単一のAPIを使用して、Amazon Publisherアプリは必要なパラメーターを取得します。それらのパラメーターは、入札リクエストのコンパイルに使用され、C2S(クライアントからサーバー)またはS2S(サーバー間)の統合を介してAPSに送信されます。

このユーザーガイドでは、APSクライアントライブラリのインストール方法とAPIの使用方法について説明します。

注釈

APSは、Kepler TVプラットフォーム上で、パブリッシャーに2つの異なる統合パスを提供します。これらの統合を利用して、パブリッシャーは入札リクエストを送信して広告ブレークインベントリを埋めることができます。

S2S統合: パブリッシャーは、パブリッシャーの広告サーバーに渡される入札情報を返すS2Sバックエンド呼び出しを使用して、APSのキーと値のペアを取得します。サーバーを呼び出すことができるのは、サーバーからに限られます。APSは、クライアント側の呼び出しをサポートしていません。呼び出しパラメーターは以下のとおりです。

  • APIプロトコル: HTTPとHTTPSをサポート
  • エンドポイント:https://aax-ott.amazon-adsystem.com/e/mdtb/ads
  • 推奨タイムアウト: 500ミリ秒

C2S統合: パブリッシャーがC2S呼び出しを使用すると、パブリッシャーの広告サーバーに渡される入札情報が、カスタムキー値の形式で返されます。サーバーを呼び出すことができるのは、アプリからに限られます。APSは、このエンドポイントでのサーバー側の呼び出しをサポートしています。呼び出しパラメーターは以下のとおりです。

  • APIプロトコル: HTTPS
  • エンドポイント:https://aax-ott-C2S.amazon-adsystem.com/e/C2S/ads
  • 推奨タイムアウト: 1000ミリ秒

詳細については、S2S統合ガイドを参照してください。

開始の手順

前提条件

まず、Kepler SDKをインストール済みであることと、自身のKepler向けReact Nativeアプリを作成済みであることを確認してください。また、クラウド側のオンボーディングを完了するには、C2SまたはS2Sの統合ガイドに従っている必要があり、ペイロードの作成方法を理解しておく必要があります。

セットアップ

  1. package.jsonファイルのdependenciesセクションに、以下のライブラリ依存関係を追加します。

    クリップボードにコピーしました。

         "@amazon-devices/kepler-aps-client": "~1.0.0"
    
  2. manifest.tomlに、以下のコンポーネントと権限を追加します。

    クリップボードにコピーしました。

    [components]
    [[components.interactive]]
    ...
    runtime-module = "/com.amazon.kepler.keplerscript.runtime.loader_2@IKeplerScript_2_0"
    ...
    
    [wants]
    [[wants.module]]
    id = "/com.amazon.kepler.apslib@IApsDeviceParametersMap"
    

使用方法

手順1: 必要なコンポーネントのインポート

APS APIを使用するには、@amazon-devices/kepler-aps-clientから必要なコンポーネントをインポートします。

クリップボードにコピーしました。

import {
  ApsDeviceParametersMap,
  ApsClientLibraryAPI,
  ApsIntegrationType,
  SCREEN_HEIGHT_DEVICE_PARAM,
  SCREEN_WIDTH_DEVICE_PARAM,
  DNT_DEVICE_PARAM,
  IFA_DEVICE_PARAM,
  UA_DEVICE_PARAM,
  MAKE_DEVICE_PARAM,
  LANGUAGE_DEVICE_PARAM,
  MODEL_DEVICE_PARAM,
  OS_DEVICE_PARAM,
  OSV_DEVICE_PARAM,
} from '@amazon-devices/kepler-aps-client';

手順2: デバイスパラメーターを取得する

ApsClientLibraryAPI.getDeviceParams()は非同期で、awaitまたはthen()コンストラクトの使用時に待機できるPromiseを返します。成功すると、PromiseのペイロードはApsDeviceParametersMapのマッピングになります。マッピングには、必須パラメーターのキーと、それに対応する値が含まれています。エラーが発生した場合、Promiseは拒否され、エラーメッセージが返されます。

この関数では、アプリの読み込み時に呼び出し、戻り値をキャッシュすることが推奨されます。

この例では、サーバー間(S2S)統合を想定しています。C2S統合の場合は、代わりにApsIntegrationType.C2Sを渡してください。この例は、then()コンストラクトを使用して成功とエラーの両方のケースを処理する方法を示しています。

クリップボードにコピーしました。

const apsGetS2SWait = async (key: string) => {
  console.debug(`[APS][${key}] apsGetS2SWaitを実行します`);
      ApsClientLibraryAPI.getDeviceParams(ApsIntegrationType.S2S).then((deviceParams: ApsDeviceParametersMap) => {
          console.debug(`[APS][${key}] S2S APSデバイス構成:${SCREEN_HEIGHT_DEVICE_PARAM}、値:${deviceParams.height}`);
          console.debug(`[APS][${key}] S2S APSデバイス構成:${SCREEN_WIDTH_DEVICE_PARAM}、値:${deviceParams.width}`);
          console.debug(`[APS][${key}] S2S APSデバイス構成:${DNT_DEVICE_PARAM}、値:${deviceParams.dnt}`);
          console.debug(`[APS][${key}] S2S APSデバイス構成:${IFA_DEVICE_PARAM}、値:${deviceParams.ifa}`);
          console.debug(`[APS][${key}] S2S APSデバイス構成:${UA_DEVICE_PARAM}、値:${deviceParams.ua}`);
          console.debug(`[APS][${key}] S2S APSデバイス構成:${MAKE_DEVICE_PARAM}、値:${deviceParams.make}`);
          console.debug(`[APS][${key}] S2S APSデバイス構成:${LANGUAGE_DEVICE_PARAM}、値:${deviceParams.language}`);
          console.debug(`[APS][${key}] S2S APSデバイス構成:${MODEL_DEVICE_PARAM}、値:${deviceParams.model}`);
          console.debug(`[APS][${key}] S2S APSデバイス構成:${OS_DEVICE_PARAM}、値:${deviceParams.os}`);
          console.debug(`[APS][${key}] S2S APSデバイス構成:${OSV_DEVICE_PARAM}、値:${deviceParams.osv}`);
      },
      function (error: Error) {
          console.error(`[APS][${key}] 失敗:構成を取得できませんでした:${error["message"]}`);
      }
  );
}

必須パラメーターを確認する方法

APIから取得したデバイスパラメーターに加えて、サーバーに送信されたHTTPリクエストからIPを取得し、リクエストペイロードの一部として含める必要があります。詳細については、下の必須パラメーターの表を参照してください。

ペイロードを完成させる

HeaderBiddingリクエストのJSONペイロード作成を完了し、C2SまたはS2Sの統合ガイドに従って、残りのクラウドとのやり取りの後にHTTPSリクエストを行います。

必須パラメーター

パラメーター 説明 IntegrationType:S2S IntegrationType:C2S このAPIにより提供
h 画面の物理的な高さ(ピクセル)
w 画面の物理的な幅(ピクセル)
dnt ブラウザのヘッダーに設定される標準の「Do Not Track」フラグ(0 = トラッキングに制限なし、1 = トラッキング禁止)
ifa デバイスの広告ID
ua デバイスのユーザーエージェント文字列
make デバイスのメーカー(例:“Amazon”)
language ISO-639-1-alpha-2を使用するデバイスの言語
model デバイスのモデル(例:“AFTT”)
os デバイスのオペレーティングシステム(例:“Android”) ×
osv デバイスのオペレーティングシステムのバージョン(例:5.1.1) ×
ip デバイスに最も近いIPv4アドレス(パブリックIP)(例:204.78.58.34) × ×(注:IPはサーバーに送信されたhttpリクエストから取得してください)

モジュール


Last updated: 2025年10月2日