TECH BLOG

MENU

オンプレクラウド

MotionBoard

MotionBoard

MotionBoardの機能のひとつに、端末機器(モノ)の「いま」のデータをリアルタイムに蓄積できるリアルタイム連携というものがあります。本記事では実際にリアルタイム連携でデータを送信するにあたって、簡単に試せるサンプルプログラムを用意していますので使い方を紹介します。

なお、MotionBoardへWebAPIでリアルタイムにセンサーデータなどを送信する準備は下記の記事で紹介しています。本記事では、「リアルタイム連携の受信設定(テンプレート)を作成する」のテンプレートを例に説明します。

この記事の動作の流れは下図のようになります。

動作の流れ

 (1)HTMLページ作成
  送信するデータを入力するHTMLページと作成し、データを入力

 (2)ボタンの実行
  データ送信

 (3)データ確認、使用
  受信したデータを確認する

STEP1 HTMLページ作成

WebAPIを送信する静的HTMLは次のマニュアルの記載を参考に作成しています。「位置情報の送信」とありますが、位置情報以外であっても、ステータス名を変えるだけで送信できます。

参照:位置情報の送信(POSTリクエスト版)

 

マニュアルのあるHTMLサンプルコードをメモ帳等のテキストエディタにコピー&ペーストして送信フォームを作成します。HTMLサンプルコードのactionメソッドの宛先はMotionBoardサーバーに設定するため、本記事では自コンピュータ上のMotionBoardへ送信するため、localhostに変更しています。

<form enctype="application/x-www-form-urlencoded" method="post" action="http://localhost:8787/motionboard/rest/tracking /data/upload/simple" accept-charset="UTF-8">
Tenant ID:<input type="text" name="tenant" /><br />
Template:<input type="text" name="template" /><br /> 
Authkey:<input type="text" name="authkey" /><br />
Id:<input type="text" name="id" /><br />
Name:<input type="text" name="name" /><br />
Time:<input type="text" name="time" /><br />
Uptime:<input type="text" name="uptime" /><br />
Lat:<input type="text" name="lat" /><br />
Lon:<input type="text" name="lon" /><br />
Address:<input type="text" name="address" /><br />
Accuracy:<input type="text" name="accuracy" /><br />
Msg:<input type="text" name="msg" /><br />
Enabled:<input type="radio" name="enabled" value ="true"checked="true">True</input>
<input type="radio" name="enabled" value ="false">False</input><br />
Retry:<input type="radio" name="retry" value ="true">True</input>
<input type="radio" name="retry" value ="false" checked="true">False</input><br />
<fieldset> <legend>Status:</legend>  Battery:<input type="text" name="Battery" /></input><br />
Accelerometer_Sensor:<input type="text" name="Accelerometer_Sensor" /></input><br />
Moving:<input type="radio" name="Moving" value="true" />True</input>
<input type="radio" name="Moving" value ="false" checked="true">False</input><br />
Visiting:<input type="radio" name="Visiting" value="true" />True</input>
<input type="radio" name="Visiting" value ="false" checked="true">False</input><br />
On_a_break:<input type="radio" name="On_a_break" value="true" />True</input>
<input type="radio" name="On_a_break" value ="false" checked="true">False</input><br />
</fieldset><br />
<input type="submit" value="submit" /><br />
</form>

上記HTMLファイルを保存し、ブラウザで開くと下図のようになります。

ブラウザに値を入力します。必須項目はidです。パラメーターの詳細はマニュアルに記載しています。

参照:位置情報の送信(POSTリクエスト版)

 


入力後、submitボタンをクリックすると、MotionBoardへ送信します。送信後、MotionBoardにログインして、右上の管理をクリックして、ボード編集をクリックするとボード編集モードになります。

ボード編集モードから任意のチャートをクリックすると、アイテムの右側(または左側)に「ショートカットボタン」が表示されます。「ショートカットボタン」の中から、データソース編集をクリックすると、データソースエディタ画面が表示されます。データソース選択画面でリアルタイム連携用の[system datasource]を選択し,[Realtime]>[LocationAndStatus]フォルダーのWebAPIを選択すると、WebAPIで送信したデータが入っています。[LocationAndStatus]のデータソースには、ユーザーごとのステータスと位置情報の履歴が蓄積されています。

あとはこのデータソースを、通常のMotionBoardのデータソースと同じように使用して、チャートなどを作成することができます。

いかがでしたでしょうか。今回はHTMLのフォームを例に説明しましたが、意外とお手軽にリアルタイム連携を実現することができます。今回は紹介していませんが、HTTP(GET)やMQTTなどの他の送信方法もありますので、別の記事で紹介したいと思います。

この記事にリアクションしてみませんか?

  • 分かりやすい (1)
  • 問題が解決した (0)
いいね!ボタンありがとうございます!
プロフィールへ

塚田 涼太郎

2020年からDr.Sum MotionBoard のプリセールスとして活動しています。ユーザー様のお困りごと/お悩みごとを解決できるようブログ執筆の活動をしています。お困りごとが解決したら是非「いいね」ボタンのクリックをお願いします!

Related article

Related article関連記事

Pick up

Pick upおすすめ記事

【まとめ】SVFCloud帳票をinvoiceAgentに連携する方法

  • #帳票作成・出力
  • #システム連携
  • #電帳法
  • #文書定義
  • #処理定義

2024.04.18

SVF

Dr.Sum Copilotをインストールしてみた【OpenAI】

  • #Copilot

2024.04.05

Dr.Sum

特定の文字列で分割して階層構造をつくりたい!~DS Scriptで分割する~1

  • #データ加工
  • #DS Script

2023.07.17

Dr.Sum

Ranking

Rankingランキング

1

棒グラフを大きい順番に並び替えたい!(ソートしたい)

  • #デザイン
  • #グラフ
  • #集計表

2019.06.15

MotionBoard

2

経過時間を時:分:秒で時刻表示したい!【320秒→05:20】

  • #グラフ

2022.08.02

MotionBoard

3

カスタム項目の書き方 よく使う関数からIfまで

  • #データ加工

2023.07.28

MotionBoard

Info

Information

ウイングアーク1stからのお知らせ