边缘计算框架EdgeX Foundry使用详解9(手动提交一个数据事件event)
在之前的文章中我们都是启动一个虚拟设备,然后 EdgeX Foundry 这边接收虚拟设备上报的数据,再推送到云端。我们也可以直接通过 core-data 微服务的 API 接口手动提交数据事件,EdgeX Foundry 同样会将其推送到云端。
九、手动提交一个数据事件event
1,注册客户端
如果不清楚如何注册客户端,可以参考我之前写的这篇文章:
假设我们要把数据推送到一个 MQTT 服务器上,注册信息如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | { "name" : "QuickStartExport" , "addressable" :{ "name" : "EMQBroker" , "protocol" : "tcp" , "address" : "192.168.60.128" , "port" :1883, "publisher" : "EdgeXExportPublisher" , "topic" : "hangge" }, "format" : "JSON" , "filter" :{}, "enable" : true , "destination" : "MQTT_TOPIC" } |
2,手动提交 event
(1)调用如下接口发送数据事件:
- API接口:http://EdgeX-IP:48080/api/v1/event
- 提交方式:POST
(2)我们提交内容如下,这是一条温湿度传感器数据,里面包含温度、湿度值,以及时间戳 origin(时间戳不是必须的)
注意:设备和数据描述目前在库里都没注册,也没关系
1 2 3 4 5 6 7 8 9 10 11 12 13 | { "device" : "sensor1" , "origin" :1471806386919, "readings" : [{ "name" : "temperature" , "value" : "72" , "origin" :1471806386919 }, { "name" : "humidity" , "value" : "58" , "origin" :1471806386919 }] } |

3,观察结果
前面提交 event 之后,我们如果使用 MQTT 客户端订阅,可以看到数据已经成功推送了:
