- 追加された行はこの色です。
- 削除された行はこの色です。
*Imaocande Viewer仕様書 [#x8f9eb06]
https://docs.google.com/document/d/1VmAxtvelaYe-7qK44Ed2f1YKbeKLDsVeoseLQsHX-wU/edit
*imaocandeフォーマット [#v5ab2faf]
**旧プロトコル [#j442815c]
-XML形式
**新プロトコル [#kd8810d2]
-JSON形式
-旧プロトコルとは形式および、値の意味も変化している
-Imaocande Viewer仕様書にあるものは定義が厳密でないため、独自解釈を加えたものをImaocande Proプロトコルとして以下に示す。
*Imaocande Proプロトコル [#g3cceb2d]
Imaocande ProプロトコルはImaocandeに準拠して、運用に伴う拡張や解釈を規定したものである。
**データ形式 [#pb1148da]
以下に規定されるものはすべてJSON形式である。
***imaocandeオブジェクト [#s76d93ff]
ht,sn,dt,ct,dt,la,lgキーによって構成される。この他のキーを含むことも可。
***imaocande配列 [#c7e0af27]
imaocandeオブジェクトの配列。
**転送プロトコル [#e08d24aa]
imaocande転送については規程はない。
しかし実装したものとして、twitterにimaocandeオブジェクトをツィートするもの、cloudcandeサーバにimaocande配列を転送するものがある。
***twitterツィート [#n8f8e157]
専用ツィートアカウントとして、iomaocande,imaocande2が存在する。
***cloudcandeサーバ [#x70261c8]
-210.145.62.213 cloudcandeサーバに対してPOSTメソッドでimaocande配列を転送する。
-imaocande配列の順序は順不同。上限50MBytes。
-事前にユーザ名/パスワードを登録のあと、公開鍵/秘密鍵ペアを生成。鍵をPOSTで同時に送出する。鍵の変数名はkey、imaocande配列の変数名はimaocande_array。
-暫定的にcomment変数で、JSON形式の追加データを送ることができる。このcommentはサーバ側のアクセスログに記録される。
以下に規定されるものはすべてJSON形式である。
***imaocandeオブジェクト [#i4ba5c57]
ht,sn,dt,ct,dt,la,lgキーによって構成される。この他のキーを含むことも可。
**imaocandeキー&バリューの解説 [#g44b8b9a]
-ht:ハッシュタグ。複数のimaocandeに対応できるようハッシュタグをキーにタイムラインを取得する。
-sn:シリアル番号。計測機器が起動した時点で必ず0となる。snが9999を超えたときは1に戻る。毎送信ごとにカウントアップするものとする。この値で機器が正常に動作していることを確認する。
0は初期状態であることを示す特別な値。
-dt:データ送信時点の日付と時刻について。
エラー再送やオフライン時に蓄積したものを吐き出すことを考えると、
データ送信時点ではなくデータ計測時点の方が良い。
更に、データ計測時間は測定開始時刻と終了時刻があることを踏まえ、物理量の測定期間の終わり時刻とする。
-ct:単位時間に計測したカウント数。
単位時間とは、前回のデータ送信時点から現データ送信時間までの時間を云う。
この間隔は、計測システム側で任意に設定可能とする。
とありますが、単位時間は可変でもいいのですかね。1回目と2回目
の間は5分、2回目と3回目の間は10分というように、単位時間は可変でもいい。
-ct:単位時間に計測したカウント数。
-dt:データ送信時点の日付と時刻(iso8601形式とする)、尚時間を取得できない機器については、空文字列を入れること。
-la:データ送信時点の計測機器の緯度
-lg:データ送信時点の計測機器の経度
--単位時間とは、前回のデータ送信時点から現データ送信時間までの時間を云う。
--この間隔は、計測システム側で任意に設定可能とする。
**例 [#gb88ee93]
{“ht”:”imaocande”,“sn”:0, “ct”:0,”dt”:”2011-05-20T12:34+09:00”,”la”:33.934744,”lg”:132.775183}
*例 [#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に戻る