Jetlinks 物联网平台专业版增加固件升级功能

栏目: 软件资讯 · 发布时间: 4年前

内容简介:JetLinks 开源物联网平台 JetLinks 基于Java8,Spring Boot 2.x,WebFlux,Netty,Vert.x,Reactor等开发, 是一个开箱即用,可二次开发的企业级物联网基础平台。平台实现了物联网相关的众多基础功能, 能帮助你快速建立物...

JetLinks 开源物联网平台

JetLinks 基于 Java 8,Spring Boot 2.x,WebFlux,Netty,Vert.x,Reactor等开发, 是一个开箱即用,可二次开发的企业级物联网基础平台。平台实现了物联网相关的众多基础功能, 能帮助你快速建立物联网相关业务系统。

核心特性

支持统一物模型管理,多种设备,多种厂家,统一管理。

统一设备连接管理,多协议适配(TCP,MQTT,UDP,CoAP,HTTP等),屏蔽网络编程复杂性,灵活接入不同厂家不同协议的设备。

灵活的规则引擎,设备告警,消息通知,数据转发.可基于 SQL 进行复杂的数据处理逻辑.

地理位置:统一管理地理位置信息,支持区域搜索.

数据可视化: 实现拖拽配置数据图表,设备组态等.

技术栈

  1. Spring Boot 2.2.x
  2. Spring WebFlux 响应式Web支持
  3. R2DBC 响应式关系型数据库驱动
  4. Project Reactor 响应式编程框架
  5. Netty,Vert.x 高性能网络编程框架
  6. ElasticSearch 全文检索,日志,时序数据存储
  7. PostgreSQL 业务功能数据管理
  8. hsweb framework 4 业务功能基础框架

固件升级

jetlinks专业版在>=1.2中提供了固件管理功能,提供对设备固件升级,以及获取固件信息等操作.

Jetlinks 物联网平台专业版增加固件升级功能

操作流程

创建固件信息 -> 发布升级任务 -> 推送固件消息 -> 自定义协议解析发送到设备 -> 设备更新 -> 设备推送更新进度 -> 平台修改进度信息.

固件相关消息

消息协议解析设备上报的消息为指定的类型即触发对应的操作.

上报固件信息

消息类型: ReportFirmwareMessage

{
    "deviceId":"设备ID",
    "version":"固件版本号",
    "properties":{"key":"value"}, //其他拓展信息
    "timestampe":"毫秒时间戳",
}

上报固件信息后,会更新设备固件信息记录.

设备拉取固件更新

前提: 消息协议解析设备上报的消息为:RequestFirmwareMessage.

{
    "deviceId":"设备ID",
    "timestampe":"毫秒时间戳",
    "messageId":"消息ID",
    "requestVersion":"请求更新的版本"//可留空
}

平台收到此消息后, 会获取更新任务中对应的固件更新记录.找出对应设备等待升级的固件信息. 并发送消息RequestFirmwareMessageReply给协议包解析并发送到设备.

{
	"sign": "文件签名",
	"signMethod": "文件签名方式",
	"messageId": "消息ID",//与拉取固件中到消息ID一致
	"deviceId": "设备ID",
	"version": "版本号",
	"url": "固件文件下载地址",
	"parameters": {},//其他拓展参数
	"timestamp": 1589277368209 //毫秒时间戳
}

平台推送固件更新

平台可推送固件更新给设备,需要消息协议处理消息:UpgradeFirmwareMessage.

{
	"sign": "文件签名",
	"signMethod": "文件签名方式",
	"deviceId": "设备ID",
	"version": "版本号",
	"url": "固件文件下载地址",
	"success": true,
	"parameters": {},//其他拓展参数
	"timestamp": 1589277368209 //毫秒时间戳
}

设备上报固件更新结果

设备可以上报固件更新进度以及更新结果. 消息类型:UpgradeFirmwareProgressMessage

更新结果(进度)消息:

{
	"success": true, //是否成功
    "message":"失败时传的消息",
	"progress": 10, //更新进度: 0-100
	"complete": false,//是否完成,如果只是上报进度,则设置为false,完成更新则设置为true
	"deviceId": "设备ID",
	"version": "1.0", //更新的版本号(必填)
	"timestamp": 1589277369268
}

 


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

jQuery in Action

jQuery in Action

Bear Bibeault、Yehuda Katz / Manning Publications / 2008-2-17 / USD 39.99

A good web development framework anticipates what you need to do and makes those tasks easier and more efficient; jQuery practically reads your mind. Developers of every stripe-hobbyists and professio......一起来看看 《jQuery in Action》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

SHA 加密
SHA 加密

SHA 加密工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具