Magidoc

SMARTIO ローカルAPI

このページではSMARTIOのローカルAPIのご利用方法についてご紹介します。

ローカルAPIとは

#

ローカルAPIでは、ローカルネットワーク内のSMARTIOの制御や設定を行う事ができます。
同一拠点に設置された複数のSMARTIOをまとめて制御する場合や、設定を一括で行う場合などにご利用ください。

ローカルAPIはインターネットを経由した遠隔地からの利用はできません。
遠隔地から利用する場合は、 クラウドAPI をご利用ください。

ローカルAPIの仕様

#

ローカルAPIはGraphQLの仕様に準じています。

  • エンドポイントにはhttp://[SMARTIOのアドレス]/v1/query を指定してください。
  • Basic認証にてAPIが実行可能なユーザのユーザID・パスワードを指定してください。

SMARTIOのアドレス には、対象となるSMARTIOデバイスのIPアドレス またはホスト名 + .local をご指定ください。

具体的なクエリの実行方法については、Examplesの他、GraphQL 公式サイトや使用するクライアントライブラリのドキュメントをご参照ください。

クロスオリジンからのアクセス

#

ローカルAPIはクロスオリジンからのアクセスを許可しており、HTML上からクエリを実行することが可能です。

ローカルAPIの利用手順

#

ローカルAPIをご利用頂くには、APIが実行可能なユーザの作成が必要です。
APIが実行可能なユーザは、「管理」または「API」の権限が指定されているユーザとなります。

APIが実行可能なユーザの作成

#

APIが実行可能なユーザの作成は、SMARTIOの設定画面から行います。

  1. SMARTIOの管理画面にアクセスし、左メニューの「ユーザ管理」を選択してください。
  2. 右上に表示されている「新規登録」ボタンを押してください。
  3. 権限で「管理」または「API」を選択し、任意のユーザID・パスワードを入力してください。
  4. 「登録する」ボタンを押して、APIが実行可能なユーザの作成を完了してください。

APIが実行可能なユーザの作成

Examples

#

ここでは、ローカルAPIを実行するいくつかの例をご紹介します。

入力ポート状態の取得

#

入力ポートの状態を取得するには、 inports query を使用します。
以下のコードは入力ポートの状態を取得する例です。

SMARTIOのアドレスおよび 、APIが実行可能なユーザのユーザID パスワード はご使用の環境に合わせて変更してください。

サンプルではgqlおよびaiohttpライブラリを使用しています。

    
  

サンプルではApollo Clientライブラリを使用しています。

    
  
    
  
    
  

実行結果は以下の様になります。

    
  

出力ポートの制御

#

出力ポートを制御するには、 writeOutport mutation を使用します。
以下のコードは出力の1番ポートをONにする例です。

SMARTIOのアドレスおよび 、APIが実行可能なユーザのユーザID パスワード はご使用の環境に合わせて変更してください。

サンプルではgqlおよびaiohttpライブラリを使用しています。

    
  

サンプルではApollo Clientライブラリを使用しています。