0

是否可以在一次 REST API 数据查询中查询不止一台设备的遥测数据?

例如,以下数据查询仅针对一个设备来获取它的遥测数据:

DEV1=e1bda0d0-5f56-11ec-bd96-d14b569a99b2
START=1641633600000
END=1641639600000
QUERY1="/api/plugins/telemetry/DEVICE/$DEV1/values/timeseries?keys=temperature&startTs=$START&endTs=$END"

curl --silent -X GET "https://my.domain.org:8080$QUERY1" \
--header "Content-Type:application/json" \
--header "X-Authorization:Bearer $JWT_TOKEN"

这工作正常,数据以 json 格式返回。

现在,由于性能原因,应该扩展同一个查询,以便在同一个 API 调用中同时返回另一个设备的结果(即:只调用一次curl):

DEV2=02e1d1f0-5f57-11ec-bd96-d14b569a99b2

我试过这个(当然它没有用;-):

QUERY2="/api/plugins/telemetry/DEVICE/$DEV2/values/timeseries?keys=temperature&startTs=$START&endTs=$END"
curl --silent -X GET "https://my.domain.org:8080$QUERY1 $QUERY2" --header...

ThingsBoard 返回“无法转换值......”失败。

我还尝试将两个设备 ID 插入为逗号或分号分隔的值。但这也没有用。

QUERY3="/api/plugins/telemetry/DEVICE/$DEV1;$DEV2/values/timeseries?keys=temperature&startTs=$START&endTs=$END"
curl --silent -X GET "https://my.domain.org:8080$QUERY3" --header...

有人知道如何解决这个问题吗?还是 ThingsBoard 不支持多设备数据查询?

4

0 回答 0