CN113867732A - 一种报文信息处理方法、系统以及存储介质 - Google Patents
一种报文信息处理方法、系统以及存储介质 Download PDFInfo
- Publication number
- CN113867732A CN113867732A CN202111126975.5A CN202111126975A CN113867732A CN 113867732 A CN113867732 A CN 113867732A CN 202111126975 A CN202111126975 A CN 202111126975A CN 113867732 A CN113867732 A CN 113867732A
- Authority
- CN
- China
- Prior art keywords
- data
- message information
- fields
- analysis
- communication layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种报文信息处理方法、系统以及存储介质,方法包括:当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息;将解析后的报文信息进行进制转换,生成十六进制报文信息;将十六进制报文信息拆分为多个字段的原始数据;基于多个字段的原始数据生成多个字段的解析数据;将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。因此,采用本申请实施例,可以简化报文信息解析的复杂度,操作简单且提升了报文信息的处理效率。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种报文信息处理方法、系统以及存储介质。
背景技术
JT/T808、JT/T809协议是交通运输部发布的道路运输车辆卫星定位系统平台数据交换协议。随着国家越来越重视道路运输行业的监管,各省市地区基于JT/T808、JT/T809协议也开始进行更广泛地扩展或独立定制协议,以实现更加多样的数据交换业务场景。为了快速解析协议对应的报文信息,需要深入了解JT/T808、JT/T809协议内容、二进制数据操作等技术,研发门槛相对较高,实现难度较大。
因此,如何快速的解析JT/T808、JT/T809协议对应的报文信息,是当前需要解决的技术问题。
发明内容
本申请实施例提供了一种报文信息处理方法、系统以及存储介质。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
第一方面,本申请实施例提供了一种报文信息处理方法,应用于服务端,方法包括:
当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息;
将解析后的报文信息进行进制转换,生成十六进制报文信息;
将十六进制报文信息拆分为多个字段的原始数据;
基于多个字段的原始数据生成多个字段的解析数据;
将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。
可选的,将十六进制报文信息拆分为多个字段的原始数据,包括:
获取解析后的报文信息对应的目标协议;
识别目标协议的归属地;
获取归属地的通讯协议数据结构规定的字段长度;
根据字段长度将十六进制报文信息拆分为多个字段的原始数据。
可选的,基于多个字段的原始数据生成多个字段的解析数据,包括:
解析多个字段原始数据的数据头,并从解析后的数据中获取数据长度;
根据数据长度从多个字段原始数据中提取出数据体部分;
获取目标协议的归属地所对应的目标数据解析脚本;
根据目标数据解析脚本解析数据体部分生成多个字段的解析数据。
可选的,基于目标协议的归属地对应的数据解析脚本解析数据体部分,生成多个字段的解析数据,包括:
将数据解析脚本与数据体部分进行映射关联后,生成关联数据的脚本文件;
执行脚本文件,生成解析标识;
当解析标识为解析成功的标识时,生成多个字段的解析数据;
或者当解析标识为解析失败的标识时,动态更新解析脚本中数据类型标记位的默认值,继续执行将数据解析脚本与数据体部分进行映射关联的步骤。
第二方面,本申请实施例提供了一种报文信息处理方法,应用于客户端,方法包括:
展示车辆通讯协议集合;
当接收到协议选择指令时,基于选择指令从车辆通讯协议集合中确定目标协议;
接收针对目标协议输入的报文信息;
当接收到报文提交指令时,将报文信息通过form传输方式发送至通讯层。
可选的,方法还包括:
接收通讯层针对客户端发送的dict格式数据;
调用json格式转换组件,基于json格式转换组件将dict格式数据转换为解码后的报文数据;
展示解码后的报文数据。
第三方面,本申请实施例提供了一种报文信息处理方法,应用于通讯层,方法包括:
接收客户端针对通讯层发送的报文信息;
截取报文信息的头标识和尾标识;
识别报文信息对应的目标协议;
判断报文信息的头标识和尾标识与目标协议的头尾标识是否相同;
若是,根据目标协议的协议类型从历史解析脚本目录中匹配报文信息对应的目标解析脚本;
当匹配成功时,根据目标解析脚本将报文信息进行解析,生成解析后的报文信息,并将解析后的报文信息发送至服务端;或者当匹配失败时,生成脚本类型错误信息反馈至客户端;
若否,确定报文信息的格式错误,并生成格式错误信息反馈至客户端。
可选的,接收服务端针对通讯层发送的解码数据;
调用dict格式转换组件,基于dict格式转换组件将解码信息转换为dict格式数据;
将dict格式数据发送至客户端。
第四方面,本申请实施例提供了一种报文信息处理系统,应用于服务端,系统包括:
报文信息接收模块,用于当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息;
报文信息转换模块,用于将解析后的报文信息进行进制转换,生成十六进制报文信息;
报文信息拆分模块,用于将十六进制报文信息拆分为多个字段的原始数据;
解析数据生成模块,用于基于多个字段的原始数据生成多个字段的解析数据;
数据封装模块,用于将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。
第五方面,本申请实施例提供一种计算机存储介质,计算机存储介质存储有多条指令,指令适于由处理器加载并执行上述的方法步骤。
第六方面,本申请实施例提供一种电子设备,可包括:处理器和存储器;其中,存储器存储有计算机程序,计算机程序适于由处理器加载并执行上述的方法步骤。
本申请实施例提供的技术方案可以包括以下有益效果:
在本申请实施例中,报文信息处理系统首先当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息;将解析后的报文信息进行进制转换,生成十六进制报文信息;将十六进制报文信息拆分为多个字段的原始数据;基于多个字段的原始数据生成多个字段的解析数据;将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。由于本申请通过服务端自动化的报文信息解析,从而可以简化报文信息解析的复杂度,操作简单且提升了报文信息的处理效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是本申请实施例提供的一种报文信息处理方法的流程示意图;
图2是本申请实施例提供的一种客户端报文处理界面示意图;
图3是本申请实施例提供的一种报文信息处理系统的结构示意图;
图4是本申请实施例提供的另一种报文信息处理方法的流程示意图;
图5是本申请实施例提供的另一种报文信息处理方法的流程示意图;
图6是本申请实施例提供的一种报文信息处理系统的结构示意图;
图7是本申请实施例提供的一种电子设备的结构示意图;
图8是本申请实施例提供的一种存储介质的示意图。
具体实施方式
以下描述和附图充分地示出本发明的具体实施方案,以使本领域的技术人员能够实践它们。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本发明的一些方面相一致的系统和方法的例子。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本申请提供了一种报文信息处理方法、系统以及存储介质,以解决上述相关技术问题中存在的问题。本申请提供的技术方案中,由于本申请通过服务端自动化的报文信息解析,从而可以简化报文信息解析的复杂度,操作简单且提升了报文信息的处理效率,下面采用示例性的实施例进行详细说明。
下面将结合附图1-附图5,对本申请实施例提供的报文信息处理方法进行详细介绍。该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的报文信息处理系统上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。
请参见图1,为本申请实施例提供了一种报文信息处理方法的流程示意图,应用于服务端。如图1所示,本申请实施例的方法可以包括以下步骤:
S101,当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息;
其中,客户端、通讯层与服务端依次连接。报文信息是基于JT/T808、JT/T809协议生成的,JT/T808、JT/T809协议是交通运输部发布的道路运输车辆卫星定位系统平台数据交换协议。
在本申请实施例中,在实时接收通讯层针对服务端发送的解析后的报文信息之前,服务端与客户端利用通讯层建立通信链路,通信链路建立后,客户端首先展示车辆通讯协议集合,并当接收到协议选择指令时,然后基于选择指令从车辆通讯协议集合中确定目标协议,并接收针对目标协议输入的报文信息,最后当接收到报文提交指令时,将报文信息通过form传输方式发送至通讯层。
进一步地,通讯层接收到报文信息后,首先截取报文信息的头标识和尾标识,然后识别报文信息对应的目标协议,再判断报文信息的头标识和尾标识与目标协议的头尾标识是否相同;若是,根据目标协议的协议类型从历史解析脚本目录中匹配报文信息对应的目标解析脚本。当匹配成功时,根据目标解析脚本将报文信息进行解析,生成解析后的报文信息,并将解析后的报文信息发送至服务端;或者当匹配失败时,生成脚本类型错误信息反馈至客户端;若否,确定报文信息的格式错误,并生成格式错误信息反馈至客户端。
进一步地,服务端实时检测通讯层是否有解析后的报文信息传输,当检测到有解析后的报文信息传输时,实时接收通讯层针对服务端发送的解析后的报文信息。
S102,将解析后的报文信息进行进制转换,生成十六进制报文信息;
在一种可能的实现方式中,进制转换时,针对JT/T809报文,根据主业务类型判断数据体,根据子业务类型再次判断数据体格式,切割数据生成各字段十六进制数据。
例如,对JT/T808协议中,若校验码、消息头以及消息体中出现0x7e转换为0x7d0x02,出现0x7d转换为0x7d0x01。
例如,对JT/T809报文协议中,若校验码、消息头以及消息体中出现0x5b转换为0x5a0x01;出现0x5a转换为0x5a0x02;出现0x5d转换为0x5e0x01;出现0x5e转换为0x5e0x02。
需要说明的是,该转换方式是由JT/T808、JT/T809所规定,此转换方式用于区别对消息尾标识的判断,避免报文解析过程中因对消息头尾判定错误导致异常终止。
S103,将十六进制报文信息拆分为多个字段的原始数据;
在一种可能的实现方式中,首先获取解析后的报文信息对应的目标协议,再识别目标协议的归属地,然后获取归属地的通讯协议数据结构规定的字段长度,最后根据字段长度将十六进制报文信息拆分为多个字段的原始数据。
例如,按照各个省市通讯协议数据结构规定的字段长度把报文结构拆分为:HeadFlag头标识str[0:2],(Message Header、Message Body)数据部分str[2:-4],CRC Code校验码str[-4:-2],End Flag尾标识str[-2:],拆分后分别存储至相关list集合中用于后续处理。
S104,基于多个字段的原始数据生成多个字段的解析数据;
在一种可能的实现方式中,在基于多个字段的原始数据生成多个字段的解析数据时,首先解析多个字段原始数据的数据头,并从解析后的数据中获取数据长度,再根据数据长度从多个字段原始数据中提取出数据体部分,然后获取目标协议的归属地所对应的目标数据解析脚本,最后根据目标数据解析脚本解析数据体部分生成多个字段的解析数据。
例如,根据通讯协议基本数据类型中对数据占用报文字节数的规定,调用tools工具类对报文中数据部分进行Message Header数据头解析,切割获取到MSG_LENGTH 4字节数据长度、MSG_SN 4字节报文序列号、MSG_ID 2字节业务数据类型、MSG_GNSSCENTERID 4字节下级平台接入码、VERSION_FLAG 3字节协议版本号标识、ENCRYPT_FLAG 1字节报文加密标识位、ENCRYPT_KEY 4字节数据加密的密钥,并存入对应数据变量中存储,根据获取到的MSG_LENGTH数据长度在数据部分提取出Message Body数据体部分,将获取到的MSG_ID业务数据类型,对数据体Message Body按照各省市规定对所属定制MSG_ID的消息字段中字节占用去分割,并对数据解码编译,获取到的子业务类型,调用对应子业务数据解析脚本,对子业务数据进行解析。
在本申请实施例中,通过服务端自动提取出数据体部分,并通过目标协议的归属地对应的目标数据解析脚本实现自动化解析,即根据服务端维护的数据解析脚本就可以完成解析,方便全部用户使用,从而降低操作的复杂度。
具体的,生成多个字段的解析数据时,首先将数据解析脚本与数据体部分进行映射关联后,生成关联数据的脚本文件,再执行脚本文件,生成解析标识,并当解析标识为解析成功的标识时,生成多个字段的解析数据,或者当解析标识为解析失败的标识时,动态更新解析脚本中数据类型标记位的默认值,最后继续执行将数据解析脚本与数据体部分进行映射关联的步骤。
在本申请实施例中,根据解析标识可以确定是否解析成功,在不成功的情况下自动调整脚本文件中的数据类型标记位的默认值,再次解析,从而实现了动态的参数更新以及动态的数据解析过程,提升了解析的效率。
S105,将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。
在一种可能的实现方式中,通讯层接收到解码数据时,首先调用dict格式转换组件,然后基于dict格式转换组件将解码信息转换为dict格式数据,最后将dict格式数据发送至客户端。
进一步地,客户端在接收到dict格式数据后,首先调用json格式转换组件,基于json格式转换组件将dict格式数据转换为解码后的报文数据,然后展示解码后的报文数据,将解码后的报文字段信息美化展示至日志区域。
例如,当用户在客户端左侧下拉选中需解析报文对应的通讯协议【广西809-2011】,然后用户在客户端右侧的输入信息框中输入对应的报文信息例如为:【5b000000960000000214000005091202010f0000000000bea9463331303636000000000000000000000000000114020000600102010000000060dc122b3132333130363621063014414700010000000206ef4c3d0262045501f40070000000001e002f2cf8013c00010260700201027001f40262045506ef4c3d21063014414700003132333130363621063014414700010076545d】,用户最后触发submit_button提交事件后,客户端发送对应协议机报文内容至通讯层,通讯层处理后中转至服务端,服务端接收到解析的数据进行自动转换、解码封装成标准的字段,并将标准的字段返回客户端,客户端将数据以json格式美化展示解码后对应报文数据,例如图2所示。
例如图3所示,图3是本申请提供的一种报文信息处理的系统结构示意图,系统结构包括客户端、通讯层以及服务端,首先服务端启动服务后,通过通讯层建立服务端与客户端之间的通讯连接,通讯连接建立后,客户端上用户选择协议类型,然后输入报文,并点击提交按钮上报至通讯层,通讯层收到报文后进行处理完发送至服务端,服务端接收处理后的报文后,将该处理后的报文进行解码、封装,并返回到通讯层,通讯层收到封装的数据后发送至客户端,客户端接收封装的报文进一步处理后展示到显示日志。
在本申请实施例中,报文信息处理系统首先当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息,再将解析后的报文信息进行进制转换,生成十六进制报文信息,然后将十六进制报文信息拆分为多个字段的原始数据,再基于多个字段的原始数据生成多个字段的解析数据,最后将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。由于本申请通过服务端自动化的报文信息解析,从而可以简化报文信息解析的复杂度,操作简单且提升了报文信息的处理效率。
请参见图4,为本申请实施例提供了一种报文信息处理方法的流程示意图,应用于客户端。如图4所示,本申请实施例的方法可以包括以下步骤:
S201,展示车辆通讯协议集合;
S202,当接收到协议选择指令时,基于选择指令从车辆通讯协议集合中确定目标协议;
S203,接收针对目标协议输入的报文信息;
S204,当接收到报文提交指令时,将报文信息通过form传输方式发送至通讯层。
进一步地,在收到服务端返回的dict格式数据后,调用json格式转换组件,基于json格式转换组件将dict格式数据转换为解码后的报文数据,并展示解码后的报文数据。
在本申请实施例中,报文信息处理系统首先当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息,再将解析后的报文信息进行进制转换,生成十六进制报文信息,然后将十六进制报文信息拆分为多个字段的原始数据,再基于多个字段的原始数据生成多个字段的解析数据,最后将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。由于本申请通过服务端自动化的报文信息解析,从而可以简化报文信息解析的复杂度,操作简单且提升了报文信息的处理效率。
请参见图5,为本申请实施例提供了一种报文信息处理方法的流程示意图,应用于客户端。如图5所示,本申请实施例的方法可以包括以下步骤:
S301,接收客户端针对通讯层发送的报文信息;
S302,截取报文信息的头标识和尾标识;
S303,识别报文信息对应的目标协议;
S304,判断报文信息的头标识和尾标识与目标协议的头尾标识是否相同;
S305,若是,根据目标协议的协议类型从历史解析脚本目录中匹配报文信息对应的目标解析脚本;
S306,当匹配成功时,根据目标解析脚本将报文信息进行解析,生成解析后的报文信息,并将解析后的报文信息发送至服务端;或者当匹配失败时,生成脚本类型错误信息反馈至客户端;
S307,若否,确定报文信息的格式错误,并生成格式错误信息反馈至客户端。
进一步地,在接收到服务端针对通讯层发送的解码数据后,调用dict格式转换组件,基于dict格式转换组件将解码信息转换为dict格式数据,最后将dict格式数据发送至客户端。
在本申请实施例中,报文信息处理系统首先当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息,再将解析后的报文信息进行进制转换,生成十六进制报文信息,然后将十六进制报文信息拆分为多个字段的原始数据,再基于多个字段的原始数据生成多个字段的解析数据,最后将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。由于本申请通过服务端自动化的报文信息解析,从而可以简化报文信息解析的复杂度,操作简单且提升了报文信息的处理效率。
下述为本发明系统实施例,可以用于执行本发明方法实施例。对于本发明系统实施例中未披露的细节,请参照本发明方法实施例。
请参见图6,其示出了本发明一个示例性实施例提供的报文信息处理系统的结构示意图,应用于服务端。该报文信息处理系统可以通过软件、硬件或者两者的结合实现成为电子设备的全部或一部分。该系统1包括报文信息接收模块10、报文信息转换模块20、报文信息拆分模块30、解析数据生成模块40、数据封装模块50。
报文信息接收模块10,用于当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息;
报文信息转换模块20,用于将解析后的报文信息进行进制转换,生成十六进制报文信息;
报文信息拆分模块30,用于将十六进制报文信息拆分为多个字段的原始数据;
解析数据生成模块40,用于基于多个字段的原始数据生成多个字段的解析数据;
数据封装模块50,用于将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。
需要说明的是,上述实施例提供的报文信息处理系统在执行报文信息处理方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的报文信息处理系统与报文信息处理方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请实施例中,报文信息处理系统首先当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息,再将解析后的报文信息进行进制转换,生成十六进制报文信息,然后将十六进制报文信息拆分为多个字段的原始数据,再基于多个字段的原始数据生成多个字段的解析数据,最后将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。由于本申请通过服务端自动化的报文信息解析,从而可以简化报文信息解析的复杂度,操作简单且提升了报文信息的处理效率。
请参见图7,为本申请实施例提供了一种电子设备的结构示意图。如图7所示,电子设备1000可以包括:至少一个处理器1001,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。
其中,通信总线1002用于实现这些组件之间的连接通信。
其中,用户接口1003可以包括显示屏(Display)、摄像头(Camera),可选用户接口1003还可以包括标准的有线接口、无线接口。
其中,网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
其中,处理器1001可以包括一个或者多个处理核心。处理器1001利用各种借口和线路连接整个电子设备1000内的各个部分,通过运行或执行存储在存储器1005内的指令、程序、代码集或指令集,以及调用存储在存储器1005内的数据,执行电子设备1000的各种功能和处理数据。可选的,处理器1001可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器1001可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1001中,单独通过一块芯片进行实现。
其中,存储器1005可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器1005包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1005可用于存储指令、程序、代码、代码集或指令集。存储器1005可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储系统。如图7所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及报文信息处理应用程序。
在图7所示的电子设备1000中,用户接口1003主要用于为用户提供输入的接口,获取用户输入的数据;而处理器1001可以用于调用存储器1005中存储的报文信息处理应用程序,并具体执行以下操作:
当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息;
将解析后的报文信息进行进制转换,生成十六进制报文信息;
将十六进制报文信息拆分为多个字段的原始数据;
基于多个字段的原始数据生成多个字段的解析数据;
将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。
在一个实施例中,处理器1001在执行将十六进制报文信息拆分为多个字段的原始数据时,具体执行以下操作:
获取解析后的报文信息对应的目标协议;
识别目标协议的归属地;
获取归属地的通讯协议数据结构规定的字段长度;
根据字段长度将十六进制报文信息拆分为多个字段的原始数据。
在一个实施例中,处理器1001在执行基于多个字段的原始数据生成多个字段的解析数据时,具体执行以下操作:
解析多个字段原始数据的数据头,并从解析后的数据中获取数据长度;
根据数据长度从多个字段原始数据中提取出数据体部分;
获取目标协议的归属地所对应的目标数据解析脚本;
根据目标数据解析脚本解析数据体部分生成多个字段的解析数据。
在一个实施例中,处理器1001在执行基于目标协议的归属地对应的数据解析脚本解析数据体部分,生成多个字段的解析数据时,具体执行以下操作:
将数据解析脚本与数据体部分进行映射关联后,生成关联数据的脚本文件;
执行脚本文件,生成解析标识;
当解析标识为解析成功的标识时,生成多个字段的解析数据;
或者当解析标识为解析失败的标识时,动态更新解析脚本中数据类型标记位的默认值,继续执行将数据解析脚本与数据体部分进行映射关联的步骤。
在本申请实施例中,报文信息处理系统首先当与客户端利用通讯层建立通信链路时,实时接收通讯层针对服务端发送的解析后的报文信息,再将解析后的报文信息进行进制转换,生成十六进制报文信息,然后将十六进制报文信息拆分为多个字段的原始数据,再基于多个字段的原始数据生成多个字段的解析数据,最后将每个字段的原始数据与解析数据进行封装后生成解码数据,并将解码数据发送至通讯层。由于本申请通过服务端自动化的报文信息解析,从而可以简化报文信息解析的复杂度,操作简单且提升了报文信息的处理效率。
本发明还提供一种计算机可读介质,请参考图8,其示出的计算机可读存储介质为光盘30,其上存储有程序指令(即程序产品),该程序指令被处理器执行时实现上述各个方法实施例提供的报文信息处理方法。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,报文信息处理的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (10)
1.一种报文信息处理方法,应用于服务端,其特征在于,所述方法包括:
当与客户端利用通讯层建立通信链路时,实时接收所述通讯层针对所述服务端发送的解析后的报文信息;
将所述解析后的报文信息进行进制转换,生成十六进制报文信息;
将所述十六进制报文信息拆分为多个字段的原始数据;
基于所述多个字段的原始数据生成多个字段的解析数据;
将每个字段的所述原始数据与所述解析数据进行封装后生成解码数据,并将所述解码数据发送至通讯层。
2.根据权利要求1所述的方法,其特征在于,所述将所述十六进制报文信息拆分为多个字段的原始数据,包括:
获取所述解析后的报文信息对应的目标协议;
识别所述目标协议的归属地;
获取所述归属地的通讯协议数据结构规定的字段长度;
根据所述字段长度将所述十六进制报文信息拆分为多个字段的原始数据。
3.根据权利要求2所述的方法,其特征在于,所述基于所述多个字段的原始数据生成多个字段的解析数据,包括:
解析所述多个字段原始数据的数据头,并从解析后的数据中获取数据长度;
根据所述数据长度从所述多个字段原始数据中提取出数据体部分;
获取所述目标协议的归属地所对应的目标数据解析脚本;
根据所述目标数据解析脚本解析所述数据体部分生成多个字段的解析数据。
4.根据权利要求3所述的方法,其特征在于,基于所述目标协议的归属地对应的数据解析脚本解析所述数据体部分,生成多个字段的解析数据,包括:
将所述数据解析脚本与所述数据体部分进行映射关联后,生成关联数据的脚本文件;
执行所述脚本文件,生成解析标识;
当所述解析标识为解析成功的标识时,生成多个字段的解析数据;
或者当所述解析标识为解析失败的标识时,动态更新所述解析脚本中数据类型标记位的默认值,继续执行所述将所述数据解析脚本与所述数据体部分进行映射关联的步骤。
5.一种报文信息处理方法,应用于客户端,其特征在于,所述方法包括:
展示车辆通讯协议集合;
当接收到协议选择指令时,基于所述选择指令从所述车辆通讯协议集合中确定目标协议;
接收针对所述目标协议输入的报文信息;
当接收到报文提交指令时,将所述报文信息通过form传输方式发送至通讯层。
6.一种报文信息处理方法,应用于通讯层,其特征在于,所述方法包括:
接收客户端针对通讯层发送的报文信息;
截取所述报文信息的头标识和尾标识;
识别所述报文信息对应的目标协议;
判断所述报文信息的头标识和尾标识与目标协议的头尾标识是否相同;
若是,根据所述目标协议的协议类型从历史解析脚本目录中匹配所述报文信息对应的目标解析脚本;
当匹配成功时,根据所述目标解析脚本将所述报文信息进行解析,生成解析后的报文信息,并将所述解析后的报文信息发送至服务端;或者当匹配失败时,生成脚本类型错误信息反馈至客户端;
若否,确定所述报文信息的格式错误,并生成格式错误信息反馈至客户端。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
接收服务端针对通讯层发送的解码数据;
调用dict格式转换组件,基于所述dict格式转换组件将所述解码信息转换为dict格式数据;
将所述dict格式数据发送至客户端。
8.根据权利要求5所述的方法,其特征在于,所述方法还包括:
接收通讯层针对客户端发送的dict格式数据;
调用json格式转换组件,基于所述json格式转换组件将所述dict格式数据转换为解码后的报文数据;
展示所述解码后的报文数据。
9.一种报文信息处理系统,应用于服务端,其特征在于,所述系统包括:
报文信息接收模块,用于当与客户端利用通讯层建立通信链路时,实时接收所述通讯层针对所述服务端发送的解析后的报文信息;
报文信息转换模块,用于将所述解析后的报文信息进行进制转换,生成十六进制报文信息;
报文信息拆分模块,用于将所述十六进制报文信息拆分为多个字段的原始数据;
解析数据生成模块,用于基于所述多个字段的原始数据生成多个字段的解析数据;
数据封装模块,用于将每个字段的所述原始数据与所述解析数据进行封装后生成解码数据,并将所述解码数据发送至通讯层。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1-8任意一项的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111126975.5A CN113867732A (zh) | 2021-09-26 | 2021-09-26 | 一种报文信息处理方法、系统以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111126975.5A CN113867732A (zh) | 2021-09-26 | 2021-09-26 | 一种报文信息处理方法、系统以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113867732A true CN113867732A (zh) | 2021-12-31 |
Family
ID=78994205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111126975.5A Pending CN113867732A (zh) | 2021-09-26 | 2021-09-26 | 一种报文信息处理方法、系统以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113867732A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114708671A (zh) * | 2022-01-27 | 2022-07-05 | 中银金融科技有限公司 | 清分结算方法、系统、电子设备及存储介质 |
CN114938386A (zh) * | 2022-05-20 | 2022-08-23 | 北京车网科技发展有限公司 | 一种车云通信系统 |
CN115361456A (zh) * | 2022-08-04 | 2022-11-18 | 广东中设智控科技股份有限公司 | 一种数据报文的处理方法、装置及系统 |
CN116776849A (zh) * | 2023-06-06 | 2023-09-19 | 深圳市平方科技股份有限公司 | 船舶edi的模板编辑方法、装置、电子设备及存储介质 |
-
2021
- 2021-09-26 CN CN202111126975.5A patent/CN113867732A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114708671A (zh) * | 2022-01-27 | 2022-07-05 | 中银金融科技有限公司 | 清分结算方法、系统、电子设备及存储介质 |
CN114938386A (zh) * | 2022-05-20 | 2022-08-23 | 北京车网科技发展有限公司 | 一种车云通信系统 |
CN114938386B (zh) * | 2022-05-20 | 2023-07-14 | 北京车网科技发展有限公司 | 一种车云通信系统 |
CN115361456A (zh) * | 2022-08-04 | 2022-11-18 | 广东中设智控科技股份有限公司 | 一种数据报文的处理方法、装置及系统 |
CN116776849A (zh) * | 2023-06-06 | 2023-09-19 | 深圳市平方科技股份有限公司 | 船舶edi的模板编辑方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113867732A (zh) | 一种报文信息处理方法、系统以及存储介质 | |
US10795629B2 (en) | Text and custom format information processing method, client, server, and computer-readable storage medium | |
CN108289060B (zh) | 一种基于rpc服务的数据处理方法以及装置 | |
CN106209830B (zh) | 一种基于xml网络协议表示的报文构造方法 | |
CN112615822B (zh) | 一种消息处理方法、装置、计算设备及可读存储介质 | |
CN111294235B (zh) | 数据处理方法、装置、网关及可读存储介质 | |
CN109861998B (zh) | 一种基于北斗短报文协议的插件式动态解析系统及方法 | |
US20130152069A1 (en) | Method, apparatus and system for initiating terminal operation | |
CN112788128B (zh) | 业务信息的推送方法、装置、存储介质及电子装置 | |
CN110297944B (zh) | 分布式xml数据处理方法及系统 | |
CN114500690A (zh) | 接口数据处理方法、装置、电子设备及存储介质 | |
US11709722B2 (en) | Extensible communication framework and communication method supporting multiple communication protocols | |
CN107368334B (zh) | 一种业务插件交互系统及方法 | |
CN110446228B (zh) | 数据传输方法、装置、终端设备及存储介质 | |
CN111367690A (zh) | 一种支持组合api服务调用方法及装置 | |
CN111369237A (zh) | 一种数据处理方法、装置及计算机存储介质 | |
CN113630404B (zh) | 一种协议报文的传输方法、装置、存储介质及终端 | |
CN111611065A (zh) | 机器学习算法的调用方法、装置、存储介质及电子设备 | |
US10038604B2 (en) | Processing method and apparatus for signaling tracing | |
CN112788078B (zh) | 数据传输方法、接收装置、发送装置和计算机设备 | |
CN110569069A (zh) | 一种配置管理方法、配置管理系统及具有存储功能的装置 | |
CN113765761B (zh) | 数据传输方法、装置、设备、系统及存储介质 | |
CN107769909A (zh) | 一种Egret引擎的前端数据发送处理的方法 | |
CN111240867A (zh) | 一种信息通讯系统及方法 | |
CN113382373B (zh) | 银行外围系统的监控装置、系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |