imaocande とは測定した放射線の値を一定時間ごとに twitter に投稿するシステム。およびその投稿データを利用し可視化などを行う。

*imaocande 資料 [#o7d16c16]

http://openforce.project2108.com/file/cloudcande/Imaocande.pdf
2011/5 Wireless Japanにての配布資料

*Imaocande Viewer仕様書 [#x8f9eb06]

imaocandeについてのプロトコルなどの記述があります。
imaocandeで規定されているプロトコルなどの記述があります。

https://docs.google.com/document/d/1VmAxtvelaYe-7qK44Ed2f1YKbeKLDsVeoseLQsHX-wU/edit


*Androidアプリ [#x6d4e296]
***imaocande Viewer [#v28b9043]

http://code.google.com/p/imaocande-viewer/
apkがダウンロードできます。
@imaocandeのTLを取得して、グラフと地図表示するアプリ。2012/10/17現在、動作しないようです。

***imaocande-forest [#r7393cf2]
http://code.google.com/p/imaocande-forest/
apkがダウンロードできます。
@imaocandeのTLを取得して、グラフと地図表示するアプリ。2012/10/17現在、動作しないようです。

*imaocandeフォーマット [#v5ab2faf]
**旧プロトコル [#j442815c]
-XML形式
**新プロトコル [#kd8810d2]
-JSON形式
-旧プロトコルとは形式および、値の意味も変化している
-Imaocande Viewer仕様書にあるものは定義が厳密でないため、独自解釈を加えたものをImaocande Proプロトコルとして以下に示す。

*Imaocande Proプロトコル [#g3cceb2d]
Imaocande ProプロトコルはImaocandeに準拠して、運用に伴う拡張や解釈を規定したものである。twitterサーバ以外への投稿にも利用する。
**データ形式 [#pb1148da]
以下に規定されるものはすべてJSON形式である。
***imaocandeオブジェクト [#s76d93ff]
ht,sn,dt,ct,dt,la,lgキーによって構成される。この他のキーを含むことも可。
***imaocande配列 [#c7e0af27]
imaocandeオブジェクトの配列。
**転送プロトコル [#e08d24aa]
imaocande転送については規程はない。
しかし実装したものとして、twitterにimaocandeオブジェクトをツィートするもの、cloudcandeサーバにimaocande配列を転送するものがある。
***twitterツィート [#n8f8e157]
専用ツィートアカウントとして、iomaocande,imaocande2が存在する。
imaocandeオブジェクトを1オブジェクト1ツィートの形で登録。オンラインになっていない時の計測値については一度に数百ツィートするわけにいかないのでlinuxの時刻同期みたいにすこしずつ追いかけていくか、別サーバに一気にバルク転送。別サーバとしては、cloudcandeサーバが存在する。
***cloudcandeサーバ [#x70261c8]
-cloudcandeサーバに対してPUTメソッドでimaocandeオブジェクトを転送する。
--http://cloudcande.project2108.com/put.php/?user=USER
--PUTメソッド変数名PASSにパスワードを平文で、DATAにJSON文字列を平文で格納。
-cloudcandeサーバに対してPOSTメソッドでimaocande配列を転送する。
-imaocande配列の順序は順不同。上限50MBytes。
-事前にユーザ名/パスワードを登録のあと、公開鍵/秘密鍵ペアを生成。鍵をPOSTで同時に送出する。鍵の変数名はkey、imaocande配列の変数名はimaocande_array。
-暫定的にcomment変数で、JSON形式の追加データを送ることができる。このcommentはサーバ側のアクセスログに記録される。
以下に規定されるものはすべてJSON形式である。

**imaocandeキー&バリューの解説 [#g44b8b9a]
-ht:ハッシュタグ。複数のimaocandeに対応できるようハッシュタグをキーにタイムラインを取得する。
-sn:シリアル番号。計測機器が起動した時点で必ず0となる。snが9999を超えたときは1に戻る。毎送信ごとにカウントアップするものとする。この値で機器が正常に動作していることを確認する。
0は初期状態であることを示す特別な値。
-dt:データ送信時点の日付と時刻について。
エラー再送やオフライン時に蓄積したものを吐き出すことを考えると、
データ送信時点ではなくデータ計測時点の方が良い。
更に、データ計測時間は測定開始時刻と終了時刻があることを踏まえ、物理量の測定期間の終わり時刻とする。

-ct:単位時間に計測したカウント数。
単位時間とは、前回のデータ送信時点から現データ送信時間までの時間を云う。
この間隔は、計測システム側で任意に設定可能とする。
とありますが、単位時間は可変でもいいのですかね。1回目と2回目
の間は5分、2回目と3回目の間は10分というように、単位時間は可変でもいい。


-ct:単位時間に計測したカウント数。
-dt:データ送信時点の日付と時刻(iso8601形式とする)、尚時間を取得できない機器については、空文字列を入れること。	
-la:データ送信時点の計測機器の緯度
-lg:データ送信時点の計測機器の経度
--単位時間とは、前回のデータ送信時点から現データ送信時間までの時間を云う。
--この間隔は、計測システム側で任意に設定可能とする。
*例 [#gb88ee93]
** Imaocande Pro プロトコル [#l35fea5e]
***オブジェクト [#n6270c56]
 {"ht":"imaocande”,“sn”:0, “ct”:0,”dt”:”2011-05-20T12:34+09:00”,”la”:33.934744,”lg”:132.775183} 
***配列 [#ic1d2d8f]
 [
 {"ht":"imaocande”,“sn”:1, “ct”:2,”dt”:”2011-05-20T12:39+09:00”,”la”:33.934744,”lg”:132.775183},
 {"ht":"imaocande”,“sn”:2, “ct”:1,”dt”:”2011-05-20T12:44+09:00”,”la”:33.934744,”lg”:132.775183},
 {"ht":"imaocande”,“sn”:3, “ct”:3,”dt”:”2011-05-20T12:49+09:00”,”la”:33.934744,”lg”:132.775183},
 {"ht":"imaocande”,“sn”:4, “ct”:1,”dt”:”2011-05-20T12:54+09:00”,”la”:33.934744,”lg”:132.775183},
 .
 .
 .
 .
 {"ht":"imaocande”,“sn”:9999,“ct”:3,”dt”:”2011-05-20TXX:XX+09:00”,”la”:33.934744,”lg”:132.775183},
 {"ht":"imaocande”,“sn”:1, “ct”:2,”dt”:”2011-05-20TXX:XX+09:00”,”la”:33.934744,”lg”:132.775183}
 ]
 //測定回数が9999を超えた場合、次のシリアルナンバーは1に戻る

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS