環境:
COSM を使用した最初のプロジェクトは、電気メーターからのデータポイントを記録することです。feed のグラフを見ると、データポイントが正しく受信されているように見えても、ゼロで横ばいになっています。
何が問題なのか、またはデバッグするために探す必要があるものはありますか?
より詳しい情報:
フィードをデバッグすると、1 分あたり約 8 つの API リクエストを受信していることがわかります。
これは、COSM の「デバッグ フィード」インターフェイスによって表示される、受信したデータポイントのインスタンスです。特に、応答が 200 [ok] であり、要求本文に適切なタイムスタンプとゼロ以外の値があることに注意してください。
200 POST /api/v2/feeds/129722/datastreams/1/datapoints 06-05-2013 | 08:16:54 +0000
Request Headers
Version HTTP/1.0
Host api.cosm.com
X-Request-Start 1367828214422267
X-Apikey <expunged>
Accept-Encoding gzip, deflate, compress
Accept */*
User-Agent python-requests/1.2.0 CPython/2.7.3 Linux/3.6.11+
Origin
Request Body
{"at": "2013-05-06T08:16:57", "value": 164.0}
Response Headers
X-Request-Id 245ee3ca6bd99efd156bff2416404c33f4bb7f0f
Cache-Control max-age=0
Content-Type application/json; charset=utf-8
Content-Length 0
Response Body
[No Body]
アップデート
ドキュメントでは JSON がデフォルトであると指定されていますが、明示的に ".json" を POST URL ( /api/v2/feeds/129722/datastreams/1/datapoints.json
) に追加しましたが、違いはないようです。
更新 2
「値」の値を文字列で囲んだため、リクエストの本文は次のようになります (たとえば)。
{"at": "2013-05-06T15:37:06", "value": "187.0"}
同じ動作: デバッグ ビューで更新が表示されますが、グラフ ビューではゼロしか報告されません。
更新 3
COSM 提供のグラフではなく、API を使用してデータを調べてみました。私の推測では、何らかの理由でデータポイントが保存されていないということです (200 OK の戻りステータスにもかかわらず)。この URL を Web ブラウザに入力すると、次のようになります。
http://api.cosm.com/v2/feeds/129722.json?interval=0
私はこれに応じて得ます:
{"id":129722,
"title":"Rainforest Automation RAVEn",
"private":"false",
"tags":["power"],
"feed":"https://api.cosm.com/v2/feeds/129722.json",
"status":"frozen",
"updated":"2013-05-06T05:07:30.169344Z",
"created":"2013-05-06T00:16:56.701456Z",
"creator":"https://cosm.com/users/fearless_fool",
"version":"1.0.0",
"datastreams":[{"id":"1",
"current_value":"0",
"at":"2013-05-06T05:07:29.982986Z",
"max_value":"0.0",
"min_value":"0.0",
"unit":{"type":"derivedSI","symbol":"W","label":"watt"}}],
"location":{"disposition":"fixed","exposure":"indoor","domain":"physical"}
}
デバッグ ツールが 1 分間に 7 つまたは 8 つの更新を表示しているにもかかわらず、状態が "凍結" (最後の更新が受信されてから 15 分以上前) としてリストされていることに注意してください。データポイントはどこに行くのですか?