アプリケーション開発

統合 API

setupGateway()

このメソッドは、UUID からゲートウェイを登録し、該当のゲートウェイが認識しているデバイスおよびそのサービスを取得するまでの一連の処理をまとめて実行します。このメソッドは、CompletableFuture オブジェクトを返します。

このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。

パラメータ
プロパティ名 必須 説明
uuid String 必須 ゲートウェイの UUID。
gatewayName String 任意 ゲートウェイの名前。指定がなければゲートウェイが Symphony に送ってきた名前がセットされます。もし名前が送られていなければ "Gateway" がセットされます。

このメソッドの使い方については、「チュートリアル」の章をご覧ください。

requestAction()

このメソッドは、ゲートウェイ配下のデバイスに対して、そのデバイスが提供するアクションの実行を命令します。このメソッドは、CompletableFuture オブジェクトを返します。

このメソッドは、以下のプロパティを持ったオブジェクトを引数に取ります。

パラメータ
プロパティ名 必須 説明
actionId String 必須 デバイスが提供するアクションの ID。
parameters Object 任意 アクションに必要なパラメータをオブジェクトとして指定します。
サンプルコード
SymphonyObject params = new SymphonyObject.Builder()
    .put("actionId", "ac-7A38F3E91034566581C54FA9D7D150D9")
    .put("parameters", new SymphonyObject.Builder().put("color", "00ff00").build())
    .build();

dSymphony.requestAction(params).thenAccept(obj -> {
    Log.d(TAG, obj.toString());
}).exceptionally(ex -> {
    Log.e(TAG, "", ex);
    return null;
});

parameters にセットするべきパラメータは、デバイスが提供するサービスによって異なります。パラメータの詳細は、ゲートウェイにインストールされているデバイスコネクトのプラグインのドキュメントをご覧ください。また、getActions() メソッドから得られる情報からも、パラメータの詳細を知ることができます。

このメソッドの実行が成功すると、コールバック関数には Symphony から返されたオブジェクトが引数に与えられます。

レスポンスの例
{
  "profile": "light",
  "attribute": "",
  "result": 0,
  "statusCode": 200,
  "product": "node-gotapi",
  "version": "0.3.3",
  "hmac": "f09679cc547152d0fe26ee474e6131a51d119b9db25e6b6e5c2b40cc6010580e",
  "serviceId": "hue-light-0017882C7D50-1"
}

このメソッドの使い方については、「チュートリアル」の章もご覧ください。