製品TOP マニュアル

2018.09.18版

印刷する

IoT Connector 利用マニュアル

はじめに

本書では、IoT外部連携サービス「JET IoT」における、ご利用方法について記載しています。

JET IoTは、外部WEBアプリケーションとの連携を可能にするための「WEB API」や「Webhook」インタフェースを提供します。JET IoTのご利用には、事前に利用登録申し込みおよび契約が必要になります。

サービス利用規約

ご利用にあたり、 クラウドサービス利用規約 に同意頂く必要がございます。

ご利用環境について

JET IoT(以下、当サービス)は以下の環境でのご利用を推奨いたします。

PC

OSWindows 10 / Mac
インターネット・ブラウザGoogle Chrome(最新版)

ご利用いただけるデバイス

現在お使いいただけるデバイスは下記のとおりです。

デバイス型式機能概要
BICO-EL2LTEモジュール/Ethernet/デジタル出力端子×2を搭載した、インターネット経由で遠隔制御できるデジタル接点出力機
BICO-EL8LTEモジュール/Ethernet/デジタル出力端子×8を搭載した、インターネット経由で遠隔制御できるデジタル接点出力機

JET IoTのご利用方法

JET IoTコンソールへのログイン

JET IoTログインURLにアクセスし、登録済アカウントの「メールアドレス」「パスワード」を入力し、「ログイン」ボタンをクリックして「デバイス管理」画面が表示されることを確認します。

デバイスの登録

ログイン後に表示される「デバイス管理」画面の「デバイス登録」ボタンをクリックし、デバイス登録ダイアログを表示します。

デバイス購入時に同封されている「デバイスID」「アクティベートコード」を入力し、「アクティベート」ボタンをクリックします。

デバイス登録確認後、一覧に登録したデバイスIDが追加されている事を確認します。

JET IoT WEBアプリケーション用のAPI KEYの発行

アプリケーションの登録

上部メニュー「アプリケーション管理」をクリックし、「アプリケーション管理」画面を表示、「アプリケーション登録」ボタンをクリックしてアプリケーション登録ダイアログを表示します。

下記を入力し、「登録」ボタンをクリックしてアプリケーション登録を完了します。

  • アプリケーション名:外部システム名
  • WEB API IP制限:入力IPアドレス以外からのアクセスを受け付けなくなります。
  • WEB HOOK URL:Webhookを利用する場合の外部システムURL(例 https://example.com)
  • メモ:任意入力

アプリケーション一覧に、登録したアプリケーションが追加されている事を確認します。

「API KEY」「API SECRET」の取得

登録したアプリケーションの「詳細」ボタンをクリックし、詳細ダイアログを表示します。詳細ダイアログに表示されている「API KEY」「API SECRET」を控えます。(「API KEY」「API SECRET」は後述のWEBアプリケーションで利用します。)

※「API SECRET」は右に表示されているアイコンをクリックすることで表示されます。

デバイスとアプリケーションの紐付け登録

デバイス毎にアプリケーションの紐付け登録を行うことで、外部システムからのデバイスアクセスが可能になります。

アプリケーションに属するデバイスの選択

上部メニューの「デバイス管理」をクリックし、「デバイス管理」画面を表示します。

アプリケーションに紐付けるデバイスの、左側に表示されているチェックボックスをクリックし、選択状態にします。サブメニュー内の「アプリケーション変更」をクリックし、アプリケーション変更ダイアログを表示します。

アプリケーションの変更

変更対象のデバイスが表示されていることを確認の上、紐付けるアプリケーションを選択し、「更新」ボタンをクリックします。

アプリケーションの変更の確認

対象のデバイスが、変更したアプリケーションに切り替わっている事を確認します。

Web API 紹介

外部システムから、JET IoTを利用して、当社デバイス BICO-EL2 BICO-EL8 を遠隔制御する際のAPI利用例を紹介します。

Web API 共通

リクエスト

Method

GET

または

POST

Header

Authorization: Basic base64_encode([API KEY]:[API SECRET])

Body

JSON 形式で記述

レスポンス

StatusCode説明
200アプリケーション正常応答時
401API KEY、API SECRETが正しくない
404URLまたはMethodが正しくない
502デバイスへ通信できない
504デバイスから 30 秒間応答が無く、タイムアウト時

※通信環境によって上記以外のステータスコードが返却される場合があります。

※プロキシ等がステータスコード 200 を返却する可能性があります。

Header

Content-Type: application/json; charset=utf-8

Body

JSON形式で返却

JET IoT登録デバイス一覧情報取得API

アプリケーションに紐付いたデバイスの一覧情報を取得します。

リクエスト

Method

GET

Body

なし

レスポンス

Body

例)

{
  "code": 0,
  "data": {
    "devices": [
      {
        "device_id": "abcdefgh",
        "name": "名前",
        "product_name": "bico-el2",
        "product_version": "v1.0.0",
        "alive_flg": false,
        "revoke_flg": false,
        "connected_at": null,
        "disconnected_at": "2017-01-31 12:00:00"
      },
      {
        "device_id": " 12345678 ",
        "name": "名前",
        "product_name": "bico-el2",
        "product_version": "v1.0.0",
        "alive_flg": true,
        "revoke_flg": false,
        "connected_at": "2017-01-31 12:00:00",
        "disconnected_at": null
      },
      ...
    ]
  }
}

※connected_at, disconnected_atはalive_flgの内容に応じてnullになります。

指定デバイス情報取得API

指定デバイスの情報を取得します。

リクエスト

Method

GET

Body

なし

レスポンス

Body

例)

{
  "code": 0,
  "data": {
    "device": {
      "device_id": "abcdefgh",
      "name": "名前",
      "product_name": "bico-el2",
      "product_version": "v1.0.0",
      "alive_flg": false,
      "revoke_flg": false,
      "connected_at": null,
      "disconnected_at": "2017-01-31 12:00:00"
    }
  }
}

※connected_at, disconnected_atはalive_flgの内容に応じてnullになります。

BICO-EL2 / BICO-EL8 接点制御API

指定したデバイス( BICO-EL2 / BICO-EL8 )の接点端子を、指定秒数間、ON/OFFにします。

リクエスト

Method

GET

Body

JSON 形式で記述します。

  • key: write固定
  • data 配列指定
  • data pin: pin番号
  • data state: 0でoff、1でon
  • data time: 指定時間後、stateを反転させる(milliseconds)、0の時は状態保持(ネットワーク再接続でリセット)、最大1800000(30分)

例)

{
  "key": "write",
  "data": [
    {
      "pin": 1,
      "state": 1,
      "time": 1000
     }
  ]
}

レスポンス

Body

例) 正常時

{
  "code": 0,
  "data":  [
    {
      "pin": 1,
      "state": 1
     },
    {
      "pin": 2,
      "state": 1
     },
  ]
}

例) 異常時

{
  "code": -1,
  "data": "[エラーメッセージ]"
}
  • code: -1 JSONパースエラー
  • code: -2 JSONのフォーマットが異なる(keyがない等)
  • code: -3 keyがoutput以外
  • code: -4 dataフォーマットが異なる

サンプルソースコード(PHP)編

デバイスステータス一覧取得

「JET IoT登録デバイス一覧情報取得API」を利用したサンプルソースコードです。

[API KEY] , [API SECRET] を変更してご利用ください。

<?php
$api_key = [API KEY];
$api_secret = [API SECRET];
$url = 'https://[jetiot-api-domain]/device';

$context = stream_context_create([
'http' => [
  'method' => 'GET',
  'header' => implode("\r\n", [
    'Content-Type: application/x-www-form-urlencoded',
    'Authorization: Basic '.base64_encode($api_key.':'.$api_secret),
    ]),
  ],
]);

$contents = file_get_contents($url, false, $context);
var_dump($contents);

デバイス接点制御

「BICO-EL2 / BICO-EL8 接点制御API」を利用して、指定デバイスの接点端子を1秒間ONに操作するサンプルソースコードです。

[API KEY] , [API SECRET] , [DEVICE ID] を変更してご利用ください。

<?php
$api_key = [API KEY];
$api_secret = [API SECRET];
$device_id = [DEVICE ID];
$url = 'https://[jetiot-api-domain]/device/'.$device_id;

$context = stream_context_create([
'http' => [
  'method' => 'POST',
  'header' => implode("\r\n", [
    'Content-Type: application/json',
    'Authorization: Basic '.base64_encode($api_key.':'.$api_secret),
    ]),
    'content' => json_encode([[
      "pin": 1,
      "state": 1,
      "time": 1000
    ]]),
  ],
]);

$contents = file_get_contents($url, false, $context);
var_dump($contents);