设备通信方法、装置、设备及存储介质制造方法及图纸

技术编号:26307812 阅读:41 留言:0更新日期:2020-11-10 20:09
本公开实施例提供一种设备通信方法、装置、设备及存储介质。该方法包括:响应于用于指示发送消息的触发操作,获取所述消息对应的目标业务数据;获取预定义的通用消息体,根据所述目标业务数据,通过Protocol Buffers对所述通用消息体进行填充,得到目标业务消息体;将所述目标业务消息体通过Protocol Buffers填充至MQTT协议的报文体中,生成数据包;将所述数据包通过MQTT协议发送至消息接收方,以使所述消息接收方解析所述数据包并根据解析得到的所述目标业务数据执行相应的操作。本公开实施例能够解决现有技术无法有效地实现设备通信的问题。

【技术实现步骤摘要】
设备通信方法、装置、设备及存储介质
本公开实施例涉及通信
,尤其涉及一种设备通信方法、装置、设备及存储介质。
技术介绍
在车上装上车载记录仪以后,远程控制车载记录仪进行信息上报,视频文件上传,看实时的视频直播等需求越来越多。因此,设备之间的通信尤为重要。常见的,有一部分通信协议是基于自己定义的私有通信协议;还有一部分通信协议是基于消息队列遥测传输协议(MessageQueuingTelemetryTransport,MQTT),MQTT协议是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。但是,基于自己定义的私有通信协议,不透明,开发和维护成本都比较高;针对MQTT协议,数据的封装和解析比较复杂,封装和解析工作量大、容易出错,而且不容易扩展。因此,现有技术无法有效地实现设备通信。
技术实现思路
本公开实施例提供一种设备通信方法、装置、设备及存储介质,能够解决现有技术本文档来自技高网...

【技术保护点】
1.一种设备通信方法,其特征在于,包括:/n响应于用于指示发送消息的触发操作,获取所述消息对应的目标业务数据;/n获取预定义的通用消息体,根据所述目标业务数据,通过Protocol Buffers对所述通用消息体进行填充,得到目标业务消息体;/n将所述目标业务消息体通过Protocol Buffers填充至MQTT协议的报文体中,生成数据包;/n将所述数据包通过MQTT协议发送至消息接收方,以使所述消息接收方解析所述数据包并根据解析得到的所述目标业务数据执行相应的操作。/n

【技术特征摘要】
1.一种设备通信方法,其特征在于,包括:
响应于用于指示发送消息的触发操作,获取所述消息对应的目标业务数据;
获取预定义的通用消息体,根据所述目标业务数据,通过ProtocolBuffers对所述通用消息体进行填充,得到目标业务消息体;
将所述目标业务消息体通过ProtocolBuffers填充至MQTT协议的报文体中,生成数据包;
将所述数据包通过MQTT协议发送至消息接收方,以使所述消息接收方解析所述数据包并根据解析得到的所述目标业务数据执行相应的操作。


2.根据权利要求1所述的方法,其特征在于,所述通用消息体包括封装特征字段以及业务数据字段;
所述根据所述目标业务数据,通过ProtocolBuffers对所述通用消息体进行填充,得到目标业务消息体,包括:
根据所述触发操作的类型和所述目标业务数据,通过ProtocolBuffers对所述封装特征字段进行填充,根据所述目标业务数据,通过ProtocolBuffers对所述业务数据字段进行填充,得到第一消息体;
通过ProtocolBuffers对所述第一消息体进行序列化,得到目标业务消息体。


3.根据权利要求2所述的方法,其特征在于,所述根据所述目标业务数据,通过ProtocolBuffers对所述业务数据字段进行填充,包括:
通过ProtocolBuffers,生成与所述目标业务数据相关联的目标消息体;
根据所述目标业务数据和所述目标消息体,通过ProtocolBuffers对所述业务数据字段进行填充。


4.根据权利要求3所述的方法,其特征在于,所述通过ProtocolBuffers,生成与所述目标业务数据相关联的目标消息体,包括:
通过ProtocolBuffers,生成当前时间字段;
根据所述目标业务数据,通过ProtocolBuffers,生成目标业务数据字段;
根据所述当前时间字段和所述目标业务数据字段,生成所述目标消息体。


5.根据权利要求4所述的方法,其特征在于,所述根据所述目标业务数据和所述目标消息体,通过ProtocolBuffers对所述业务数据字段进行填充,包括:
获取当前时间;
将所述当前时间和所述目标业务数据通过ProtocolBuffers填充至所述目标消息体中,得到第一对象;
根据所述第一对象,通过ProtocolBuffers对所述业务数据字段进行填充。


6.根据权利要求5所述的方法,其特征在于,所述将所述当前时间和所述目标业务数据通过ProtocolBuffers填充至所述目标消息体中,得到第一对象,包括:
根据所述当前时间和所述目标业务数据,通过ProtocolBuffers对所述目标消息体中的当前时间字段和所述目标业务数据字段进行相应的填充;
通过ProtocolBuffers对填充后的目标消息体进行序列化,得到所述第一对象。


7.根据权利要求2-6任一项所述的方法,其特征在于,所述封装特征字段中至少包含消息ID字段、压缩方式字段、加密方式字段、调用的方法名称字段、消息发生时间字段、业务操作字段;
所述封装特征字段与所述业务数据字段分离。


8.根据权利要求7所述的方法,其特征在于,所述触发操作的类型包括通知操作类型或回应操作类型,所述根据所述触发操作的类型和所述目标业务数据,通过ProtocolBuffers对所述封装特征字段进行填充,包括:
获取所述触发操作的类型;
获取所述目标业务数据的关联信息,所述关联信息至少包括消息发送方ID、消息接收方ID、压缩方式、加密方式、调用的方法名称、消息发生时间、业务操作类型,所述业务操作类型与所述触发操作的类型一致;
根据所述关联信息和所述触发操作的类型,通过ProtocolBuffers对所述封装特征字段进行填充。


9.根据权利要求8所述的方法,其特征在于,所述消息ID字段包括消息发送方ID字段和消息接收方ID字段;
根据所述关联信息和所述触发操作的类型,通过ProtocolBuffers对所述封装特征字段进行填充,包括:
将所述消息发送方ID、消息接收方ID、压缩方式、加密方式、调用的方法名称、消息发生时间、所述触发操作的类型通过ProtocolBuffers对应填充至所述封装特征字段中。


10.根据权利要求1所述的方法,其特征在于,所述消息接收方为终端设备或服务器,所述终端设备至少包括车载设备。


11.一种设备通信方法,其特征在于,包括:
获取消息发送方通过MQTT协议发送的数据包;
获取通过ProtocolBuffers解析得到所述数据包的目标业务消息体;
获取预定义的通用消息体,根据所述通用消息体以及所述目标业务消息体,确定目标业务数据。


12.根据权利要求11所述的方法,其特征在于,所述根据所述通用消息体以及所述目标业务消息体,确定目标业务数据,包括:
通过ProtocolBuffers对所述目标业务消息体进行反序列化,得到第一消息体;
根据所述第一消息体和所述通用消息体,确定目标业务数据。<...

【专利技术属性】
技术研发人员:杨科
申请(专利权)人:北京骑胜科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1