我已经尝试设置 ThingsBoard 了几天,到目前为止一切顺利。我被困在如何将属性(有时以聚合模式 - 平均、总和等)和遥测数据从设备推送到其相关资产上。
有什么简单的方法吗?我没有找到任何这样的 API。
谢谢
我已经尝试设置 ThingsBoard 了几天,到目前为止一切顺利。我被困在如何将属性(有时以聚合模式 - 平均、总和等)和遥测数据从设备推送到其相关资产上。
有什么简单的方法吗?我没有找到任何这样的 API。
谢谢
以下是用于推送资产遥测数据的API,但您还需要至少是客户用户才能使用该API,即需要在标头中将授权令牌设置为 x-authoization:Bearer {JWTtoken}
API:/api/plugins/telemetry/ASSET/{assetId}/timeseries/SERVER_SCOPE/
方法:POST
request(example):
{
"ts": 1563456910227,
"values": {
"longitude": "78.381984",
"latitude": "17.448645",
"fuel": "30",
"speed": "42",
"vehicleType": "bus",
"status": "On route"
}
}
Thingsboard 支持 MQTT、CoAP 和 HTTP。有关详细信息,请参阅https://thingsboard.io/docs/user-guide/telemetry/#device-telemetry-upload-api。
您可以利用规则引擎实时执行此操作。
首先,您必须在设备和资产之间建立关系,这可以通过 Web UI 或REST API来完成。下面是包含设备Thermostat A的资产Building A的屏幕截图:
要将恒温器 A数据推送到相关资产Building A,请使用规则链,其中关键步骤是将消息发起者从设备更改为相关资产,然后保存资产的时间序列(或属性)。您可以决定是否执行双重保存(首先在设备上,然后在资产上,正如我在下面的规则链中所做的那样)或仅在资产级别存储数据。我认为最好的做法是在上传原始数据后立即存储它们,并在需要时在进一步计算后进行额外的持久性。
此处描述了上述示例的高级版本,它显示了安装在仓库(资产)中的室外和室内恒温器(设备)之间的温差计算。
有一些规则节点适合您的目的,例如Duplicate To Related或Aggregate Stream,但它们仅在 Thingsboard PE 版上可用。