我在 Rasperry Pi 上安装了 ThingsBoard (TB) 3.3.2,添加了一个设备并向其发送了一些温度值。这些值可以在我的 TB 仪表板上看到。
问题是,当我尝试通过 TB 遥测 API 请求这些数据时,我只能收到一个值(即“数据点”)——这是最近的一个。
例如:当我发送这个 API 调用时(我隐藏了我的 IPv4 地址)......
curl -v -X GET "http://xxxx:8080/api/plugins/telemetry/DEVICE/$ENTITYID/values/timeseries?keys=temperature&startTs=1639458000&interval=60000&limit=100&agg=AVG"
--header "内容类型: application/json"
--header "X-Authorization:Bearer $JWT_TOKEN"
...我只收到这个单一的数据点 - 而不是所有现有的数据点:
{“温度”:[{“ts”:1639670432016,“值”:“25.8”}]}
当我向 TB 的设备发送另一个温度值时,比如说 26.3,然后重复上面的 curl 命令,然后我得到了新值,但没有得到其他值,甚至不是我以前见过的那个(25.8):
{“温度”:[{“ts”:1639673228689,“值”:“26.3”}]}
我尝试了一些不同的 URL 行参数,例如有和没有标签 'agg'、'limit' 和 'startTs'。但这并没有导致只提供一个以上的数据点。
有谁知道如何获取startTs(/endTs) 定义的范围内的所有历史数据点,而不仅仅是最近的一个?
非常感谢任何帮助!谢谢!
顺便说一句:如果我使用endTs(例如:...keys=temperature&startTs=1639458000&endTs=1640037600&interval=60000...)TB 只返回:“{}”。但这似乎是一个不同的问题?