Upgrade to Pro — share decks privately, control downloads, hide ads and more …

sakura.io 体験ハンズオン(入門編 Part1)/sakuraio handson p...

sakura.io 体験ハンズオン(入門編 Part1)/sakuraio handson part1

各地で開催されているさくらインターネットが提供するIoTプラットフォーム「sakura.io」のハンズオンでの資料となります。

本資料ではIoTデバイスのプロトタイピングを想定し「Arduino+sakura.ioモジュールを用いたマイコンおよびプログラムの構築」から「Node-REDを用いたWebサービス連携」までの手順をスライドでご覧いただけます。

サービス詳細は以下をご確認ください。
https://sakura.io/

More Decks by さくらインターネット(IoTプラットフォーム事業)

Other Decks in Technology

Transcript

  1. sakura.io体験ハンズオン https://sakura.io 2018/7/17 (C) Copyright 1996-2018 SAKURA Internet Inc. さくらインターネット株式会社

    IoTチーム 西田 有騎 だれもが、データを活かせる世の中へ。 さ く ら ア イ オ ー
  2. 本ハンズオンの目的とお願い  本ハンズオンは sakura.io を使用し、組込み、Web/アプリ開発、それぞれのスキルセッ トを大きく超えることなく、Internet of Things(IoT) に携わることができることをご体験 いただくものです。

     そのため、組み込み系またはWeb/アプリ系のどちらか、または両方わからないという方に もご参加いただくことができます。  今回は1人に1つのキットをご用意しています。もしもご自身の知識分野で、近くの方の フォローができそうだなと思われましたら、積極的にサポートしあって進めていただければと 思います。 5
  3. 本ハンズオンで使用するツール・機材・参考情報まとめ ▪本編▪ ・さくらインターネット会員登録 https://secure.sakura.ad.jp/signup3/member-register/input.html ・さくらのクラウドコントロールパネル https://secure.sakura.ad.jp/cloud/ ・sakura.ioコントロールパネル https://secure.sakura.ad.jp/iot/ ・Arduino https://www.arduino.cc/en/Main/Software

    ・サンプル用スケッチ(HDC1000) https://github.com/sakuraio/handson-sample/blob/master/arduino/basic-HDC1000-with-LED.ino ・サンプル用スケッチ(SHT31) https://github.com/sakuraio/handson-sample/blob/master/arduino/basic-SHT31-with-LED.ino ・Node-REDサンプル用フロー https://github.com/sakuraio/handson-sample/blob/master/node-red/basic-graph-and-control-with-tweet.json ・Twitter連携設定 https://apps.twitter.com/ ▪参考▪ 開発者向けページ ・さくらのクラウド ドキュメント https://manual.sakura.ad.jp/cloud/ ・さくらのクラウド API1.1 https://developer.sakura.ad.jp/cloud/api/1.1/ ・sakura.io 開発者向け https://sakura.io/developer/ ▪参考▪ モジュール&オプションのご購入 ・商品の購入 https://sakura.io/product/ ・sakura.ioモジュール(LTE) https://sakura.io/product/module_lte.html ・sakura.ioシールド for Arduino https://sakura.io/product/arduino.html ▪参考▪ その他物品のご購入(秋月電子通商) ・温湿度センサ(SHT31) http://akizukidenshi.com/catalog/g/gK-12125/ ・抵抗内蔵LED http://akizukidenshi.com/catalog/g/gI-06245/ ・ジャンパコード http://akizukidenshi.com/catalog/g/gC-05159/ ・Arduino Uno Rev3 http://akizukidenshi.com/catalog/g/gM-07385/ ・USBケーブル Aオス-Bオス http://akizukidenshi.com/catalog/g/gC-07605/ ・ACアダプター http://akizukidenshi.com/catalog/g/gM-07772/ ・ブレッドボード http://akizukidenshi.com/catalog/g/gP-05294/ 6
  4. Webサービス連携 (さくらのクラウド) 仮想サーバ ① 今回のハンズオンの流れ 7 ② マイコンおよび プログラムの構築 マイコン

    (Arduino Uno) 温湿度センサ (SHT31/HDC1000) sakura.io モジュール ③ 各種LED 前編 後編:全ての設定が完了後 ハンズオン キット WebSocket 連携 サービス モジュール sakura.ioの設定 ダッシュボード表示 ボタンでのデバイス制御 プロジェクト オプション:SNS投稿
  5. アジェンダ 1. Webサービス連携(さくらのクラウド 前編) ₋ Node-REDサーバ用 仮想サーバ の作成 2. sakura.ioの設定

    ₋ プロジェクトの作成 ₋ sakura.ioモジュールの登録 ₋ 連携サービスの設定 3. マイコンおよびプログラムの構築 ₋ マイコン(Arduino)による開発環境の準備 ₋ 温湿度センサおよびsakura.ioモジュールの繋ぎ込み ₋ 試験用プログラムの流し込み ₋ デバイスから送信されたデータの確認 4. Webサービス連携(さくらのクラウド 後編) ₋ Node-REDでWebSocketを利用したデータ連携フロー作成(グラフ表示) ₋ Node-REDでWebSocketを利用したデータ連携フロー作成(ボタンでのデバイス制御) ₋ Node-REDでWebSocketを利用したデータ連携フロー作成(SNS連携) 8
  6. 今回のハンズオンの流れ 10 ② マイコンおよび プログラムの構築 マイコン (Arduino Uno) 温湿度センサ (SHT31/HDC1000)

    sakura.io モジュール ③ 各種LED 後編:全ての設定が完了後 ハンズオン キット WebSocket 連携 サービス モジュール sakura.ioの設定 ダッシュボード表示 ボタンでのデバイス制御 プロジェクト オプション:SNS投稿 Webサービス連携 (さくらのクラウド) 仮想サーバ ① 前編
  7. さくらインターネット 会員ID作成  会員IDをお持ちでない場合はご契約の サービスがない場合でも、さくらインター ネット会員登録から作成いただけます  会員登録が完了すると、指定したメール アドレスに [email protected]

    より会員IDが記載されたメールが送信さ れます。 会員IDおよびパスワードは重要な情報となりま すので、漏れないよう大事に保管ください。 11 Title:会員登録完了のお知らせ [XXX00000] ─────────────────────────────────── このメッセージはさくらインターネット会員登録フォームより 自動送信されています。このメールに心当たりのない場合は [email protected]までご連絡ください。 ─────────────────────────────────── さくらインターネット株式会社 様 (ご担当者: さくら 太郎 様) この度は、さくらインターネットに会員登録いただきまして誠に ありがとうございます。 以下の通り会員登録を受付ましたので、ご連絡させていただきます。 ============================================ ◎ 会員登録情報 会員ID : XXX00000 ご契約者名 : さくらインターネット株式会社 様 (ご担当者: さくら 太郎 様) 電子メール : [email protected] ============================================ ~~~以下省略~~~ https://secure.sakura.ad.jp/signup3/member-register/input.html
  8. Node-REDサーバの作成  サーバ作成のステータスが成功に遷移した時点でサーバのIPアドレスを確認できます。  コントロールパネル左側ペインの【 サーバ 】をクリックすると作成済みサーバの一覧が表示さ れますので、最右部【 ▼ 】をクリックするか、該当サーバの行を右クリックし、【

    IPアドレス をコピー 】をクリックすることで、該当サーバのIPアドレスをコピーすることができます。 Node-REDサーバのIPアドレスは後ほど使います。作成が完了したらメモしてください。 25 ***.*** メモ情報あり
  9. 今回のハンズオンの流れ 28 ② マイコンおよび プログラムの構築 マイコン (Arduino Uno) 温湿度センサ (SHT31/HDC1000)

    sakura.io モジュール ③ 各種LED 後編:全ての設定が完了後 ハンズオン キット WebSocket 連携 サービス モジュール sakura.ioの設定 ダッシュボード表示 ボタンでのデバイス制御 プロジェクト オプション:SNS投稿 Webサービス連携 (さくらのクラウド) 仮想サーバ ① 前編
  10. sakura.ioコントロールパネルにおける考え方 29 プロジェクトC プロジェクトB プロジェクト モジュール3 ☑ データストアプラン 有償版/無償版 ☑

    簡易位置情報提供 利用する/しない ☑ ファイル配信 ファイル1、ファイル2... 連携サービス3 モジュール / 連携サービス プロジェクトに対して複数登録可能 オプションサービス プロジェクトに対して1つ/1セット設定可能 モジュール2 連携サービス2 モジュール1 uAAAAAAAAAA 連携サービス1 WebSocket  sakura.ioは【 プロジェクト 】という単位で管理します。  プロジェクトには【 モジュール 】【 連携サービス 】を複数紐付けることができます。  各種【 オプションサービス 】はプロジェクトに対して1つもしくは1セット設定できます。
  11. モジュール登録  モジュールの追加に成功すると[ モジュールを追加しました ]ダイアログが表示されます。  [ ホームへ戻る ]ボタンをクリックしてホームに戻ります。 ID/PASSが正しくない、もしくは既に登録されているモジュールを追加しようとした場合は

    内容とともに[ モジュールの追加に失敗しました ]というダイアログが表示されます。 39 登録が成功した場合 登録が失敗した場合 登録用ID / 登録用パスワードのいずれかに誤りがあります、再度ご確認ください 別の会員IDで登録されています、過去登録した会員IDでログインし解除ください
  12. 今回のハンズオンの流れ 47 ② マイコンおよび プログラムの構築 マイコン (Arduino Uno) 温湿度センサ (SHT31/HDC1000)

    sakura.io モジュール ③ 各種LED 後編:全ての設定が完了後 ハンズオン キット WebSocket 連携 サービス モジュール sakura.ioの設定 ダッシュボード表示 ボタンでのデバイス制御 プロジェクト オプション:SNS投稿 Webサービス連携 (さくらのクラウド) 仮想サーバ ① 前編
  13. 今回のワークショップでご提供するもの 48 ジャンパーコード sakura.ioモジュール(アンテナ付) +Arduino用シールド&Arduino Uno Rev3 USB2.0 ケーブル(A-B) 12W級

    9V-1.3A ACアダプタ ブレッドボード 人感センサ (SB412A) 照度センサ (GL5537-2) 温湿度センサ (HDC1000 or SHT31) 各種抵抗 ※必要に応じてご提供 タクトスイッチ ※必要に応じてご提供 抵抗入りLED ※必要に応じてご提供 本日は使用しません
  14. Arduino IDEのセットアップ  Webサイトから開発環境(Arduino IDE)を入手します。2018/6/4時点の最新バー ジョンは[ 1.8.5 ]です。  環境がWindowsの場合は【

    Windows Installer 】、Macの場合は【 Mac OS X 10.7 Lion or newer 】を選択します。 49 https://www.arduino.cc/en/Main/Software
  15. Arduino IDEのセットアップ  上部メニューバーからボードと、シリアルポートを設定します。 ボード:[ ツール ]→[ ボード:”XXX” ]から【 Arduino/Genuino

    Uno 】を選択 シリアルポート:[ ツール ]→[ シリアルポート ]から【 COMx (Arduino/Genuino Uno) 】を選択 Mac環境の場合はCOMポートではなく、【 /dev/… (Arduino/Genuino Uno) 】を選択  うまく認識しない場合は、USBを挿し直し、Arduino IDEを再起動を試してください。 53 ボードの選択 シリアルポートの選択
  16. マイコン(Arduino)の準備  [ ファイル ]→[ スケッチ例 ]→[ 01.Basics ]→[ Blink

    ]を選択し、Blink スケッチを表示します。  【 】をクリックしてスケッチを書き込み、該当のLEDが点滅状態になることを確認します。 何らかの問題があった場合、スケッチ下部にオレンジ色のエラーが表示されます。 54
  17. ライブラリの取得(SakuraIO)  [ スケッチ ]→[ ライブラリをインクルード ]→[ ライブラリを管理... ]をクリックし、 右上検索窓から【

    sakuraio 】を検索すると、[ SakuraIO by SAKURA Internet Inc. ]がヒットします。  最新のVer.を選択のうえ【 インストール 】をクリックすると該当ライブラリが取り込まれ、 [ INSTALLED ]が表示されます。 55
  18. ライブラリの取得(温湿度センサ-HDC1000利用の場合)  [ スケッチ ]→[ ライブラリをインクルード ]→[ ライブラリを管理... ]をクリックし、 検索窓から【

    hdc1000 】を検索すると、[ HDC1000 by Yuichi Tateno ]がヒット します。  【 インストール 】をクリックすると該当ライブラリが取り込まれ、[ INSTALLED ]が表示 されます。 56 ※本作業はセンサにHDC1000を利用している場合のみ実施します。
  19. ライブラリの取得(温湿度センサ-SHT31利用の場合)  [ スケッチ ]→[ ライブラリをインクルード ]→[ ライブラリを管理... ]をクリックし、 検索窓から【

    SHT31 】を検索すると、[ Adafruit SHT31 Library ]がヒットします。  【 インストール 】をクリックすると該当ライブラリが取り込まれ、[ INSTALLED ]が表示 されます。 57 ※本作業はセンサにSHT31を利用している場合のみ実施します。
  20. FirmwareUpdate.ino  [ ファイル ]→[ スケッチ例 ]→[ SakuraIO ]→[ FirmwareUpdate

    ]を 選択し、【 】クリックでスケッチを書き込みます。[ ツール ]→[ シリアルモニタ ]もし くは【 】クリックでアップデート状況を確認します。  現在のVersion情報と比較し、新しいファームウェアが提供されている場合はアップデートを 実行します。 58 ※PCからの給電が不安定/不足している場合は [ Update Failure ] と表示され、アップデートに 失敗する場合があります。その場合、電源アダプタを接続し、再度スケッチを書き込みます。 新しいファームウェアが存在する場合 最新のファームウェアが適用されている場合
  21. 試験用プログラムの流し込み(温湿度センサ-HDC1000利用の場合)  Githubの該当サンプルスケッチページで【 Raw 】をクリックし、キーボードで【 Ctrl + A 】 ですべてを選択して、【

    Ctrl +C 】でコピーします。 65 https://github.com/sakuraio/handson-sample/blob/master/arduino/basic-HDC1000-with-LED.ino キーボードで【 Ctrl + A 】ですべてを選択 →【 Ctrl +C 】でコピーします
  22. 試験用プログラムの流し込み(温湿度センサ-HDC1000利用の場合)  [ ファイル ]→[ 新規ファイル ]で新しいスケッチを表示し、以下URLの内容をスケッ チにコピー&ペーストします。 【 】をクリックし、[

    ツール ]→[ シリアルモニタ ]もしく は【 】クリックでシリアル値、Temp、Humi情報に加え、シリアル値と送信キュー情報が 取得できるのを確認します。 66 ※問題があった場合、オレンジ色のエラーが表示されます。 ※本作業はセンサにHDC1000を利用している場合のみ実施します。 https://github.com/sakuraio/handson-sample/blob/master/arduino/basic-HDC1000-with-LED.ino
  23. 試験用プログラムの流し込み(温湿度センサ-SHT31利用の場合)  Githubの該当サンプルスケッチページで【 Raw 】をクリックし、キーボードで【 Ctrl + A 】 ですべてを選択して、【

    Ctrl +C 】でコピーします。 67 https://github.com/sakuraio/handson-sample/blob/master/arduino/basic-SHT31-with-LED.ino キーボードで【 Ctrl + A 】ですべてを選択 →【 Ctrl +C 】でコピーします
  24. 試験用プログラムの流し込み(温湿度センサ-SHT31利用の場合)  [ ファイル ]→[ 新規ファイル ]で新しいスケッチを表示し、以下URLの内容をスケッ チにコピー&ペーストします。 【 】をクリックし、[

    ツール ]→[ シリアルモニタ ]もしく は【 】クリックでシリアル値、Temp、Humi情報に加え、シリアル値と送信キュー情報が 取得できるのを確認します。 68 ※問題があった場合、オレンジ色のエラーが表示されます。 ※本作業はセンサにSHT31を利用している場合のみ実施します。 https://github.com/sakuraio/handson-sample/blob/master/arduino/basic-SHT31-with-LED.ino
  25. 【参考】デバイスから送信されたデータの確認  [ 詳細表示モードに切り替え ]をクリックすると詳細表示モードに遷移します。  モジュールは同一ですが、データの内容によりタイプやペイロードが異なります。 71 チャンネルごとの最終到着データ: 各チャンネルに届いた最終の

    Valueを表示 クリックでログ出力を 開始/停止 タイプ: プラットフォームからの内容に応じて、 いくつかの種類に分かれる ・channels :モジュールからのデータ ・connection :接続の開始/終了 ・location :簡易位置情報 ・keepalive :WebSocketセッション確認 ペイロード: 受け取ったデータのpayload部 が表示 時刻: 詳細表示モードではプラットフォーム で該当のメッセージを受け取ったタイ ムスタンプ
  26. 今回のハンズオンの流れ 73 ② マイコンおよび プログラムの構築 マイコン (Arduino Uno) 温湿度センサ (SHT31/HDC1000)

    sakura.io モジュール ③ 各種LED ハンズオン キット WebSocket 連携 サービス モジュール sakura.ioの設定 ボタンでのデバイス制御 プロジェクト オプション:SNS投稿 ① 前編 後編:全ての設定が完了後 ダッシュボード表示 Webサービス連携 (さくらのクラウド) 仮想サーバ
  27. http://<サーバのIPアドレス>:<指定したWeb UIポート番号>/ Node-RED サーバへのログイン  Webブラウザで上記URLにアクセスします。  サーバ作成時にオプションの[ Node-REDのWebUIポート]に【 80

    】を指定した場合 はポート番号を省略できます。なおサーバを示す行を右クリックもしくは行最右部にある 【 ▼ 】 をクリックすることで簡単にIPアドレスをコピーすることができます。 74
  28. Node-RED WebSocketノードの作成  ドラッグ&ドロップされたwebsocket inノードをダブルクリックし、設定画面に移ります。  種類は【 接続 】、名前は【 sakuraio-websocket

    】(任意の名前)を入力のうえ、 URLは【 新規にwebsocket-clientを追加... 】を選択した状態で、URLの行にある 【 】をクリックします。 79 sakuraio-websocket
  29. Node-RED WebSocketノードの作成  [ URL ]欄には、sakura.ioのコンパネからのWebSocketの[ URL ]欄の情報を ペーストします。 

    [ TLS設定 ]は、デフォルトで選択されている【 新規にtls-configを追加... 】のまま、 [ 送信/受信 ]はデフォルトで定義されている【 ペイロードを送信/受信 】を選択し、 【 追加 】をクリックします。 80
  30. Node-RED WebSocketノードの作成  指定する[ URL ]の値は、コンパネの連携サービスで確認できる赤枠部分です。  赤枠部分の情報をコピーして、websocket inノードのURL部分にペーストします。 

    URLの末尾と、Tokenは同一の文字列となりますので、Token情報は不要です。 81 ************************************** **************************************
  31. Node-RED フローサンプルの紹介  Githubの該当するサンプルフローページで【 Raw 】をクリックし、キーボードで【 Ctrl + A 】ですべてを選択して、【

    Ctrl +C 】でコピーします。 88 https://github.com/sakuraio/handson-sample/blob/master/node-red/basic-graph-and-control-with-tweet.json キーボードで【 Ctrl + A 】ですべてを選択 →【 Ctrl +C 】でコピーします
  32. Node-RED フローサンプルの紹介  サンプルのフローをシート上に展開します。Node-RED右上の[ メニュー( )]から [ 読み込み ]→【 クリップボード

    】を選択し、下記URLの内容をペーストのうえ、【 読 み込み 】 をクリックすると、記載されたJSONの内容に基づき、シートに新たにフローが作成 されます。 89 コピーしたJSONをペースト https://github.com/sakuraio/handson-sample/blob/master/node-red/basic-graph-and-control-with-tweet.json
  33. ダブルクリック Node-RED フローサンプルの紹介  タブが作成されたら、以下の手順で先程設定した[ フロー1 ]を【 無効 】にします。 90

    クリック 無効になっているのを 確認し【 完了 】をクリック マークが付いて いる事を確認
  34.  用意されたフローはほぼ構成は済んでいます。  websocket inノード(sakuraio_in)を再度設定することで動作します。 Node-RED フローサンプルの紹介 91 文字列として受け取った JSONデータの変換

    モジュールからのデータのみを通過 (type == channels) ../ui/ にグラフとして可視化 ../ui/ でグラフとして可視化 sakura.ioのWebSocket から情報を取得 温度(ch0)データだけを抽出 湿度(ch1)データだけを抽出
  35. Node-RED フローサンプルの紹介(GUI表示 - WebSocket設定)  作成されたWebSocket inノードをダブルクリックし、設定画面に移ります。先程の手順と 同様、種類は【 接続 】、名前は【

    任意の名称 】を入力します。  URLは過去設定したものがある場合、ドロップダウンで指定できます。設定したら【 完了 】 をクリックします。  最後に【 デプロイ 】をクリックすると設定した内容に従ってフローが動作するようになります。 92 先ほど設定したものを選択します
  36. オプション:SNS投稿 ダッシュボード表示 今回のハンズオンの流れ 94 ② マイコンおよび プログラムの構築 マイコン (Arduino Uno)

    温湿度センサ (SHT31/HDC1000) sakura.io モジュール ③ 各種LED ハンズオン キット WebSocket 連携 サービス モジュール sakura.ioの設定 プロジェクト ① 前編 後編:全ての設定が完了後 Webサービス連携 (さくらのクラウド) 仮想サーバ ボタンでのデバイス制御
  37. ダッシュボード表示 今回のハンズオンの流れ 95 マイコン (Arduino Uno) 温湿度センサ (SHT31/HDC1000) sakura.io モジュール

    各種LED ハンズオン キット WebSocket 連携 サービス モジュール ボタンでのデバイス制御 プロジェクト 前編 後編:全ての設定が完了後 仮想サーバ オプション:SNS投稿  現時点の設定ではボタンでのデバイス制御は正しく動作しません。これは制御対象となる モジュールIDと、クラウドの受け口となるWebSocketのURLを指定できていないためです。  そのため、最後にNode-REDにて、上記2つのパラメータを指定します。 一定間隔で温度と湿度 カウント値データを送信 WebSocketにより、 リアルタイムで連携 モジュールIDとWebSocketURLが 指定されていないため動作しない 受信したJSONデータを ダッシュボードに反映 フロー内でモジュールIDと WebSocketURLを指定する
  38. Node-RED フローサンプルの紹介(デバイス制御 – WebSocketURLの指定)  作成されたWebSocket out(sakuraio_out)ノードをダブルクリックし、設定画面に 移ります。先程の手順と同様、種類は【 接続 】、名前は【

    任意の名称 】を入力します。  URLは過去設定したものがある場合、ドロップダウンで指定できます。  全て設定したら【 完了 】をクリックします。 100
  39. ダッシュボード表示 動作確認 101 マイコン (Arduino Uno) 温湿度センサ (SHT31/HDC1000) sakura.io モジュール

    各種LED ハンズオン キット WebSocket 連携 サービス モジュール ボタンでのデバイス制御 プロジェクト 前編 後編:全ての設定が完了後 仮想サーバ オプション:SNS投稿  以上で設定は完了です。温度センサを指で押さえ、一定間隔でグラフが変化(設定して いればツイートも)すること、ボタン操作により生成されたJSONデータにより、LEDが制御 されるまでを確認しましょう。 一定間隔で温度と湿度 カウント値データを送信 WebSocketにより、 リアルタイムで連携 moduleで指定された モジュールにデータを送信 ボタン操作で指定した内容 に基づきJSONデータ送信 受信したJSONデータを ダッシュボードに反映 JSONは電気信号に変換され 定義したLEDの操作を実行
  40. ダッシュボード表示 今回のハンズオンの流れ 102 ② マイコンおよび プログラムの構築 マイコン (Arduino Uno) 温湿度センサ

    (SHT31/HDC1000) sakura.io モジュール ③ 各種LED ハンズオン キット WebSocket 連携 サービス モジュール sakura.ioの設定 ボタンでのデバイス制御 プロジェクト ① 前編 後編:全ての設定が完了後 Webサービス連携 (さくらのクラウド) 仮想サーバ オプション:SNS投稿
  41. 【参考】Node-RED フローサンプルの紹介(Twitter連携設定)  Create an application画面は必要な情報を入力します。  下記項目に入力およびチェックのうえ、【 Create your

    Twitter application 】をク リックします。 109 Name:任意の名称を入力 Description:任意の説明を入力 Website: 【 http://example.jp/ 】を入力 Developer Agreement: 内容を確認のうえ、チェック
  42. 【参考】連携サービスの設定(DataStore API) /channels の取得  [ /channels ]は蓄積されたデータをチャンネル単位で取得します。単体のデータを複数の形式(入力時の形式 [ value

    ]、数値[ value_num ]、文字列[ value_str ])で格納しているため、単体でも価値のある データが活用しやすい形式となっています。  [ /channels ]は該当UR( https://api.sakura.io/datastore/v1/docs/ )にて、前述の【 Token 】 情報、および以下のパラメータを指定することで任意の情報を取得できます。 117 【module】:モジュールのモジュールID 【size】:一度に取得するデータの数 【order】:昇順(ASC)と降順(DESC)指定 【cursor】:※後述※ 【after/before】:指定日時の以前と以後指定 【channel】:取得するチャンネル指定
  43. 【参考】連携サービスの設定(DataStore API) /channels の取得  指定された条件を元に【 Try it out! 】をクリックすると、[

    Response Body ]欄に 条件に応じたデータを返します。またクリック後に返される[ Request URL ]から同様の データを取得できます。 118 { "meta": { “count”: <取得した件数>, “cursor”: “<sizeで指定した件数を超えた場合に、次のレスポンスを取得するためのカーソル>”, “match”: <ヒットした件数> }, "results": [ { “channel”: <データが格納されているチャンネル>, “datetime”: “<データがモジュールのキューに格納された時間>”, “id”: “<送信されたデータのID>", “module”: “<データが送信されたモジュールのID>", “type”: “<送信されたデータの型式>", “value”: <typeで指定された型式でのデータ>, “value_num”: <number形式でのデータ>, “value_str”: “<string形式でのデータ>" }, { "channel": … #以下[channel]単位のデータがcount数分列挙
  44. 【参考】連携サービスの設定(DataStore API) /messages の取得  [ /messages ]は蓄積されたデータをRM単位で取得します。RMに含まれる複数チャンネルのデータの関係性が 重要な場合に活用しやすい形式です。(鍵の「解錠者ID」と「入退室フラグ」等) 

    また、[ /messages ]にはモジュールの接続および切断の情報も含まれています。  [ /messages ]は該当URL( https://api.sakura.io/datastore/v1/docs/ )にて以下のパラメータを 指定することで任意の情報を取得できます。 119 【type】:取得するRMのtype指定 【module】:モジュールのモジュールID 【size】:一度に取得するデータの数 【order】:昇順(ASC)と降順(DESC)指定 【cursor】:※後述※ 【after/before】:指定日時の以前と以後指定
  45. 【参考】連携サービスの設定(DataStore API) /messages の取得  指定された条件を元に【 Try it out! 】をクリックすると、[

    Response Body ]欄に条件に応じ たデータを返します。またクリック後に返される[ Request URL ]から同様のデータを取得できます。 120 { "meta": { "count": <取得した件数>, "cursor": “<sizeで指定した件数を超えた場合に、次のレスポンスを取得するためのカーソル>”, "match": <ヒットした件数> }, "results": [ { “datetime”: “<対象のRMをプラットフォーム側で受信した時間>”, "id": “<格納されたRMのID>", "module": “<データが送信されたモジュールのID>", "payload": { "channels": [ { "channel": <データが格納されているチャンネル>, "type": “<送信されたデータの型式>", "value": <typeで指定された型式でのデータ> } ] }, "type": "channels" }, { “datetime”: … #以下[message]単位のデータ
  46. 【参考】Shell.ino 130 構文 【reset】モジュールのソフトウェアリセットを実行する 出力結果 reset >reset > 備考 シリアルモニタに実行結果は表示されません。

    ソフトウェアリセットを実行するとモジュールが再起動を行います。 モデムの起動、および通信確立までにおおよそ1分程度を要します。
  47. 【参考】Shell.ino 131 構文 【enqueue】送信キューにデータを格納する 出力結果 enqueue <ch> <type> <value> >enqueue

    0 i 123 > 備考 シリアルモニタに実行結果は表示されません。 enqueueコマンドを実行すると登録したデータは送信キューに貯められます。 送信キューは最大で32個まで蓄積され、超過したキューは貯められず破棄されます。
  48. 【参考】Shell.ino 132 構文 【send】送信キューに貯められたデータを送信する 出力結果 send >send > 備考 シリアルモニタに実行結果は表示されません。

    sendコマンドを実行すると、貯められたデータは16個分を1つのメッセージとして送信します。 キューが17個以上存在する場合、2つ目のメッセージも送信され、キューから削除されます。
  49. 【参考】Shell.ino 133 構文 【size】送信/受信キューに貯められたデータ数を確認する 出力結果 size >size Tx Queue Avail:

    32 Queued: 0 Rx Queue Avail: 32 Queued: 0 備考 Tx Queue は送信キュー、Rx Queue は受信キューを表します。 Availは利用可能数、Queuedは貯められているキューの数を表します。