是否可以在一次 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 不支持多设备数据查询?