CN113703819A - 一种动态消息解析方法、装置、设备和介质 - Google Patents

一种动态消息解析方法、装置、设备和介质 Download PDF

Info

Publication number
CN113703819A
CN113703819A CN202111008504.4A CN202111008504A CN113703819A CN 113703819 A CN113703819 A CN 113703819A CN 202111008504 A CN202111008504 A CN 202111008504A CN 113703819 A CN113703819 A CN 113703819A
Authority
CN
China
Prior art keywords
service
message
user side
side terminal
response data
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.)
Granted
Application number
CN202111008504.4A
Other languages
English (en)
Other versions
CN113703819B (zh
Inventor
刘洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kangjian Information Technology Shenzhen Co Ltd
Original Assignee
Kangjian Information Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kangjian Information Technology Shenzhen Co Ltd filed Critical Kangjian Information Technology Shenzhen Co Ltd
Priority to CN202111008504.4A priority Critical patent/CN113703819B/zh
Publication of CN113703819A publication Critical patent/CN113703819A/zh
Application granted granted Critical
Publication of CN113703819B publication Critical patent/CN113703819B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提出一种动态消息解析方法、装置、设备和介质,涉及智能应用更新领域,该方法包括:根据待更新业务生成消息解析包,用户方预加载所述消息解析包;建立用户方与业务提供方的通信连接,响应于通信过程中的消息数据,根据所述消息解析包对所述业务提供方的消息进行解析处理,确定所述用户方展示数据;将所述展示数据录入用户方的消息队列,等待所述用户方的用户界面调用,获取更新的用户界面数据;本发明通过即时通信信息触发用户方业务逻辑层面的更新,在用户无感的情况下,完成实时业务更新,增强用户体验。

Description

一种动态消息解析方法、装置、设备和介质
技术领域
本发明涉及智能应用更新领域,尤其涉及一种动态消息解析方法、装置、设备和介质。
背景技术
公司持续发展过程中,基于IM(instant messaging)消息的核心问诊业务也在不断的拓展和升级中,原有的IM消息数据模型及解析处理需要做一定的扩展或者重构方能为新的业务提供良好的技术基础支持。
目前移动端采用的技术方案为Native+RN,Native为RN提供不同类型的IM消息数据解析及DB存储持久化并在处理完毕后通知RN刷新UI。RN侧重与IM UI相关的页面业务逻辑处理及视图数据渲染,RN支持一次开发多端编译运行极大的提高了生产效率并保证了Android&IOS两端的代码一致性,同时RN的动态热更新功能也为线上问题的快速修复提供了保证。传统的RN Module必须是UI与业务的绑定,无UI的纯业务逻辑模块无法使用RN热更新。
由于IM相关的消息数据模型及业务解析流程均为Native实现,新的业务诉求涉及IM消息解析流程变化及需用户侧APP升级到新新版本支持方可使用新的业务功能,而用户侧APP版本升级又由用户自主决定,升级周期不可控。对新业务上线的快速推广支持不够及时,用户侧的反馈也会有一定的滞后性。
发明内容
鉴于以上现有技术存在的问题,本发明提出一种动态消息解析方法、装置、设备和介质,主要解决现有方法应用热更新依赖于绑定的界面,针对业务更新操作不便的问题。
为了实现上述目的及其他目的,本发明采用的技术方案如下。
一种动态消息解析方法,包括:
用户方终端预加载消息解析包,其中,所述消息解析包由服务器端根据待更新业务对应的业务解析逻辑生成;
用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据;
将所述展示数据录入用户方终端的消息队列,等待所述用户方终端的用户界面调用,从所述消息队列中获取更新的用户界面数据。
可选地,用户方终端预加载消息解析包的步骤至少包括:
用户方终端对应应用启动并完成初始化后向服务器端输出更新检索请求,其中所述更新检索请求包括:用户方身份信息和应用版本信息;
响应于所述更新检索请求,用户方终端从服务器端获取对应的消息解析包。
可选地,用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据,包括:
用户方终端根据用户方的输入信息,确定所述输入信息请求的业务类型,根据所述业务类型生成业务请求,输出至业务提供方终端;
用户方终端根据所述业务请求从业务提供方终端获取业务响应数据;
用户方终端调用预加载的消息解析包,判断所述业务响应数据是否对应新的业务解析逻辑,若是,则按预加载的消息解析包对所述业务响应数据进行消息解析处理;若否,则按原有业务解析逻辑对所述业务响应数据进行消息解析处理。
可选地,用户方终端根据所述业务请求从业务提供方终端获取业务响应数据,包括:
通过与用户方终端的显示界面交互触发特定业务请求,其中交互触发业务请求的方式包括:点击显示界面功能选项;和/或,
通过预训练的识别模型识别用户方与业务提供方即时通信过程中的输入信息,获取匹配的业务类型并触发对应的业务请求。
可选地,对所述业务响应数据进行消息解析处理包括:
根据预先设置的消息过滤规则对业务响应数据进行消息过滤;
调取用户方终端的消息解析包对经过消息过滤的业务响应数据进行消息解析,并生成通知信息与用户方进行交互确认。
可选地,调取用户方的消息解析包对经过消息过滤的业务响应数据进行消息解析,包括:
用户方终端获取业务响应数据后,调用预加载的消息解析包,判断消息解析包中是否包含业务响应数据对应的业务类型,若包含,则直接启用预加载的消息解析包,按照更新的业务解析逻辑对业务响应数据进行解析处理;若不包含,则调用用户方本地原有的消息解析包,按原有业务解析逻辑对业务响应数据进行解析处理。
可选地,判断消息解析包中是否包含业务响应数据对应的业务类型,包括:
在业务响应数据中设置业务对应的第一编码,将所述第一编码与业务请求对应的第二编码进行比对,若二者不一致,则所述消息解析包中包含业务响应数据对应的业务类型,反之,则所述消息解析包中包含业务响应数据对应的业务类型。
一种动态消息解析装置,包括:
预加载模块,用于用户方终端预加载消息解析包,其中,所述消息解析包由服务器端根据待更新业务对应的业务解析逻辑生成;
交互响应模块,用于用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据;
界面更新模块,用于将所述展示数据录入用户方终端的消息队列,等待所述用户方终端的用户界面调用,从所述消息队列中获取更新的用户界面数据。
一种动态消息解析设备,包括:
一个或多个处理器和存储器,
所述存储器上存储有计算机程序,当所述一个或多个处理器执行所述计算机程序时,使得所述设备执行所述的动态消息解析方法。
一种计算机可读存储介质,其上存储有计算机程序,当由一个或多个处理器执行时,使得设备执行所述的动态消息解析方法。
如上所述,本发明一种动态消息解析方法、装置、设备和介质,具有以下有益效果。
通过通信过程中的消息触发用户端业务更新,基于更新的业务逻辑解析通信信息,实现即时信息对应业务逻辑的热更新,在不影响实时通信的情况下,便可自动完成业务逻辑层面的更新,不受用户方界面的限制,可极大地增强用户体验。
附图说明
图1为本发明一实施例中动态消息解析方法的流程示意图。
图2为本发明一实施例中建立用户方与业务提供饭的通信连接的流程示意图。
图3为本发明一实施例中获取用户方展示数据的流程示意图。
图4为本发明一实施例中业务解析的流程示意图。
图5为本发明一实施例中动态消息解析装置的模块图。
图6为本发明一实施例中动态消息解析设备的结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
请参阅图1,本发明提供了一种动态消息解析方法,该动态消息解析方法可应用于服务器、台式电脑、手提电脑、平板电脑、个人数字助理(PDA)、智能手机(如Android手机、IOS手机等)。具体地,该方法包括以下步骤:
步骤S1:用户方终端预加载消息解析包,其中,所述消息解析包由服务器端根据待更新业务对应的业务解析逻辑生成;
步骤S2:用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据;
步骤S3:将所述展示数据录入用户方终端的消息队列,等待所述用户方终端的用户界面调用,从所述消息队列中获取更新的用户界面数据。
下面结合实施例对动态消息解析方法的具体步骤步骤进行说明:
在步骤S1中,用户方终端预加载消息解析包,其中,所述消息解析包由服务器端根据待更新业务对应的业务解析逻辑生成。
在一实施例中,可采用RN(React native)开发基于用户业务逻辑层的代码对应一个或多个json包,将所有关于业务逻辑的json包打包成一个JSBundle,得到针对业务逻辑的消息解析包。进一步地,可将消息解析包存入服务器的数据库中,进行存储持久化,以便于响应不同时间节点接入的用户方终端APP,输出对应消息解析包。用户方通过应用APP与业务提供方进行即时消息传输时,可按照生成的消息解析包中对应的业务逻辑对消息进行解析,获取针对新业务逻辑的消息输出。消息解析包中业务逻辑可包含新业务节点的跳转关系、界面显示图片变化、界面排版更新等。以业务节点跳转关系更新为例,原业务逻辑为A节点跳转到B节点然后进入C节点,新业务逻辑更新为A节点跳转到D节点再进入C节点。在对应业务存在更新时,用户可在即时通信过程中输入触发当前节点A跳转的信息,用户方终端调取消息解析包,获取跳转接点D的显示内容,再经过D节点可进入C节点对应的显示界面。以上仅示例性地给出一种界面节点跳转方式,实现其他方式的跳转时,也可依据即使通信信息触发对应跳转方式更新,以获取对应的界面影响数据,不限于此。
在一实施例中,用户方预加载消息解析包至少包括以下步骤。
步骤S11,用户方终端对应应用启动并完成初始化后向服务器端输出更新检索请求,其中所述更新检索请求包括:用户方身份信息和应用版本信息等。
步骤S12,响应于所述更新检索请求,用户方终端从服务器端获取对应的消息解析包。
在一实施例中,用户方终端启动对应APP进行登录,APP完成初始化后,将用户身份信息以及当前APP版本信息打包生成更新检索请求。进而APP连接服务器端,将更新检索请求发送至服务器,以检索服务器端是否存储有最新的消息解析包。具体地,可根据登录APP的用户身份信息获取与身份信息匹配的消息解析包。通过RN开发针对特定身份消息解析包,基于身份信息进行匹配获取,可实现业务层面的定制化服务,增强用户体验,针对不同需求的用户实现不同业务展示效果。进一步的,也可根据APP版本信息,判断获取的消息解析包是否兼容当前版本。例如研发人员可针对需要更新的业务,开发针对现有各个应用版本的消息解析包。由于应用端更新可由用户进行选择配置,用户可以选择更新到某一版本,或不更新当前应用,这导致不同用户的应用版本存在很大的差异。在用户方启动对应APP时,APP可根据当前版本信息生成更新检索请求,通过版本信息自动匹配可兼容当前版本的消息解析包,或者根据当前版本选择合适的消息解析包对应版本进行预加载。示例性地,服务器端存储有A、B、C三个消息解析包,消息解析包A兼容版本1.0,和版本2.0,消息解析包B只兼容版本2.0,消息解析包C兼容版本2.0和3.0。若用户方的应用版本为1.0,则通过更新检索请求可匹配消息解析包A进行预加载;若用户方的应用版本为2.0,可从三个消息解析包中任选一个进行预加载;若用户方的应用版本为3.0,则通过更新检索请求可匹配消息解析包C进行预加载。或者,消息解析包用于同时更新版本信息,消息解析包A用于更新当前应用版本到2.0,消息解析包B用于更新当前应用版本到3.0,消息解析包C用于更新当前应用版本到4.0。若用户方的应用版本为1.0,则通过更新检索请求从A、B和C三个消息解析包中任一选择一个进行消息解析包预加载;若用户方的应用版本为3.0,则通过更新检索请求可匹配消息解析包C用于同步更新当前应用的业务逻辑以及版本信息。以上仅示例性的给出部分版本检索进行消息解析包预加载的方式,任何其他通过更新检索请求触发消息解析包预加载的方式都可应用于本实施例,不限于此。
此外,服务器端也可在确认用户方APP与服务器处于连接状态时,主动推送最新的消息解析包至用户方,在用户方本地设备端对消息解析包进行持久化,完成消息解析包的预加载过程,为后续消息解析做好准备。服务器端可开发兼容所有应用版本信息的消息解析包,在预加载时,通过检测连接状态触发消息解析包的主动推送。其中,检测连接状态时,可通过服务器端向应用端发送心跳信号,通过服务器端的心跳反馈判断连接状态。具体心跳检测过程这里不再赘述。
S2:用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据。
请参阅图2,在一实施例中,建立用户方终端与业务提供方终端建立通信连接,包括:
S21,所述用户方终端与所述业务提供方终端建立长链接;
S22,所述用户方终端定期向所述业务提供方终端发送心跳数据,响应于所述心跳数据,所述业务提供方输出响应数据,根据所述心跳数据和所述响应数据确定所述用户方终端与所述业务提供方终端的连接状态。
可在业务提供方终端设置IM(instant messaging)服务器,用户方终端采用XMPP协议与IM服务器建立消息长链接,并维持长链接心跳,确保在用户方终端的应用存活期间,用户方终端与业务提供方终端的长链接稳定可用。用户方终端和业务提供方终端可基于建立的长链接进行即时通信,收发语音、图片、文本、通用信息素、通用卡片等不同类型的消息。具体地,可在用户方与业务提供方的即时通信间歇时间内,设置心跳数据发送间隔,以确认用户方终端与业务提供方终端是否保持连接状态。心跳数据和响应数据均可设置为只包含包头的空数据包。若双方在设定时间间隔内收到对应心跳数据或响应数据,则认为连接处于维持状态。若超出设定时间未收到心跳数据或响应数据,则认为其中一方断开,清理缓存数据,为下次连接做准备。用户方终端发送心跳数据以告知IM服务器用户端APP处于存活期间,即时通信可用。
请参阅图3,在一实施例中,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据,包括:
S23,用户方终端根据用户方的输入信息,确定所述输入信息请求的业务类型,根据所述业务类型生成业务请求,输出至业务提供方终端;
S24,用户方终端根据所述业务请求从业务提供方终端获取业务响应数据;
S25,用户方终端调用预加载的消息解析包,判断所述业务响应数据是否对应新的业务解析逻辑,若是,则按预加载的消息解析包对所述业务响应数据进行消息解析处理;若否,则按原有业务解析逻辑对所述业务响应数据进行消息解析处理。
其中,步骤S23还包括:
通过与用户方终端的显示界面交互触发特定业务请求,其中交互触发业务请求的方式包括:点击显示界面功能选项;和/或,
通过预训练的识别模型识别用户方与业务提供方即时通信过程中的输入信息,获取匹配的业务类型并触发对应的业务请求。
用户可通过与用户方终端APP显示界面交互触发特定业务请求,其中交互触发业务请求的方式可包括点击选择按钮、点击特定图片或区域等。示例性地,以医生和患者通过在线问诊APP进行即时通信为例,患者登录在线问诊APP后,可选择问诊科室、专科医师等业务请求,APP根据医生的在线情况获取业务节点跳转逻辑。通信过程中,患者也可点击APP界面特定链接,向医生输入其他业务请求。
此外,也可训练识别模型用于识别即时通信过程中用户方输入信息和/或业务提供方输入信息,获取对应业务类型,其中,识别模型包括:文本识别模型和/或图像识别模型。具体地,可预先将各业务类型与特定文本或图像类型建立映射关系,基于该映射关系构建包含文本-业务数据对的第一训练样本集以及图像-业务数据对的第二训练样本集。构建OCR(optical character recognition)网络框架,将第一训练样本集输入OCR网络框架,进行模型训练,得到文本识别模型。同样地,也可构建深度卷积神经网络框架,将第二训练样本集输入深度卷积神经网络框架,基于卷积网络对图像进行卷积分类,再根据第二训练样本集中标注的图像类型与业务类型的映射关系,进行模型训练,得到图像识别模型。当然也可选择其他网络框架用于模型训练以得到对应的识别模型,具体网络框架选择及模型训练过程这里不作限制。仍以在线问诊为例,患者在app对话界面上传,患病处图像,通过图像识别模型识别该患病处图像,假设该图像对应皮肤病业务,进而触发皮肤病业务请求。患者也可直接输入对应的症状或特定名称,通过文本识别模型分类,匹配对应的疾病类别,进而触发对应类型的业务请求。为了增强用户体验,可在模型训练时,整理各类与业务类型关联的特定文本对应的同义词或近义词集合,以丰富第一训练样本集,基于该第一训练样本集进行识别模型训练得到文本识别模型,用户方不需要准确记忆各类专业词汇,只需要输入对应的近义词、简写词等便可快速触发对应业务请求。
在步骤S24中,用户方终端根据所述业务请求从业务提供方终端获取业务响应数据;
业务提供方终端接收到请求的业务类型后,基于业务类型调用服务器端的业务数据,如连接特定医生或输出特定信息卡片以便于用户方根据信息卡片进入二级界面等。其中,业务响应数据可包括业务请求对应的跳转页面、特定信息卡等。业务响应数据反馈给用户方终端后,还需要根据用户方的解析逻辑进行解析。解析逻辑包括页面节点的跳转方式、跳转次数、跳转链接等。以在线问诊为例,用户请求皮肤病在线问诊,在与业务提供方的即时通信过程中,通过输入的文本或图像触发皮肤病的业务请求,业务提供方终端输出的业务响应数据为特定专科医生的IM即时通信界面,将该通信界面反馈给用户方终端。用户方终端根据解析逻辑确定要跳转到专科医生的IM即时通信界面需要经历哪些节点,以及各节点的链接以及数据类型,进而基于解析逻辑获取各节点跳转过程中的界面展示数据。如预先跳转到身份信息采集界面,由用户填写基本信息,再跳转到症状描述界面,有用户填写基本症状描述,经过多个节点跳转最终进入与专科医生的IM即时通信界面。这一过程中,任何业务逻辑的变化,如节点跳转方式变化,跳转接点增删,都会导致用户方终端的显示界面展示数据发生变化。因此,设置一消息解析模块,用于针对业务逻辑进行匹配解析。消息解析模块中包含了预加载的消息解析包在内的所有业务对应消息的解析包。
在步骤S25中,用户方终端调用预加载的消息解析包,判断所述业务响应数据是否对应新的业务解析逻辑,若是,则按预加载的消息解析包对所述业务响应数据进行消息解析处理;若否,则按原有业务解析逻辑对所述业务响应数据进行消息解析处理。
业务提供方终端接收请求的业务类型后,根据业务类型匹配对应的业务响应数据,反馈给用户方终端,用户方终端调用预加载消息解析包。具体地,用户方终端获取业务响应数据后,首先调用预加载的消息解析包,判断消息解析包中是否包含业务响应数据对应的业务类型,若包含,则直接启用预加载的消息解析包,按照更新的业务解析逻辑对业务响应数据进行解析处理;若不包含,则调用用户方终端本地原有的消息解析包,按原有业务解析逻辑对业务响应数据进行解析处理。
在一实施例中,判断消息解析包中是否包含业务响应数据对应的业务类型,包括:
在业务响应数据中设置业务对应的第一编码,将所述第一编码与业务请求对应的第二编码进行比对,若二者不一致,则所述消息解析包中包含业务响应数据对应的业务类型,反之,则所述消息解析包中包含业务响应数据对应的业务类型。具体地,可在业务响应数据中设置业务对应的第一编码,可通过编码比对判断预加载的消息解析包中是否包含与业务响应数据对应的新的消息解析逻辑,通过编码校验的方式进行更新判断。具体地,可采用MD5编码校验,将每个业务响应数据的业务解析逻辑通过散列函数计算得到散列值作为业务编码。若用户方终端的业务解析逻辑已更新,而用户通过未更新的显示界面发出的业务请求对应的业务编码必然与业务提供方终端反馈的业务响应数据对应的业务编码不一致,通过编码校验可快速确定对应的消息解析逻辑是否更新。若经验证未更新,则按原有的解析逻辑进行消息解析处理,若经验证已更新,则可根据预加载的消息解析包进行接口调用,将原始的业务响应数据转换为业务可用的消息数据。示例性地,以基于XMPP协议的即时通信为例,若业务响应数据为XML原始消息结构,则需要转换为业务可用的数据类型以便于进行解析处理。
请参阅图4,在一实施例中,对所述业务响应数据进行消息解析处理包括:
S251,根据预先设置的消息过滤规则对业务响应数据进行消息过滤;
S252,调取用户方终端的消息解析包对经过消息过滤的业务响应数据进行消息解析,并生成通知信息与用户方进行交互确认。
在一实施例中,消息过滤规则可采用黑名单和白名单的形式进行设置。具体地,可设置消息白名单和消息黑名单,在接收到业务响应数据后,通过消息白名单和消息黑名单对业务响应数据进行消息过滤,保留消息白名单中的消息数据,剔除消息黑名单中的消息数据。示例性地,业务响应数据中可能包含用户信息对应的白名单和黑名单,特定业务只针对白名单中的用户开放,黑名单中的用户无法获取对应的业务响应,进而区分不同身份用户对应的请求。如心血管疾病患者只能访问心血管疾病对应的业务,神经外科医生只能获取神经外科相关的业务输出至用户方终端。当然,也可通过白名单对特定用户或业务提供方开放多个业务权限,具体白名单可根据实际应用需求进行设置,这里不作限制。黑名单也可过滤如广告,图片等不必要的数据信息。
完成消息解析后,可进一步获取用户方的身份信息,根据身份信息生成通知信息,发送至对应用户方。其中,身份信息包括用户ID、昵称、头像等信息。通知信息可以即时IM对话的方式显示在用户方终端的显示界面,也可通过弹窗的方式在用户方界面进行通知信息显示。其中通知信息包括:消息连接、通知跳转连接或文本/图像等数据。
在以弹窗方式进行通知信息显示之前,可根据通知消息从通知系统获取弹窗模板,并从通知消息中提取关键信息作为实体要素以替换弹窗模板中的实体要素,生成通知信息对应的弹窗,输出至用户方终端的显示界面与用户方进行交互。具体地,可根据通知信息的数据类型匹配对应的弹窗模板,每个弹窗模板可设置一个或多个数据类型标签,通过标签匹配便可获取对应的弹窗模板。弹窗模板中可设置默认通知文本,默认通知文本可在关键信息处留白,通过填空的方式填充当前通知信息对应的关键信息,进而生成需要的弹窗。其中,关键信息可包括关键词、短语或句子。在一实施例中,可通过循环神经网络进行对通知消息对应的文本序列进行特征提取,获取关键信息。具体地,可将系统各类通知信息整理成训练样本集,对训练样本集中的关键信息进行标注,进而将经过标注的训练样本集输入循环神经网络中,获取特征提取模型。也可采用其他神经网络架构进行特征提取模型训练,这里不作限制。通过特征提取模型自动提取各类通知信息中的关键信息,生成对应的弹窗。
每次即时通信过程中触发对应业务更新后,通过通知信息反馈至用户方终端的显示界面,用户方可点击确认更新或点击通知信息中的跳转链接进行页面跳转。
S3:将所述展示数据录入用户方终端的消息队列,等待所述用户方终端的用户界面调用,从所述消息队列中获取更新的用户界面数据。
在完成消息解析处理后,可将解析后消息更新到用户方的本地数据库中,并通知用户方消息列表根据解析后的消息生成最近一条展示数据,并通知用户方的显示界面拉取消息列表中最近一条展示数据进行页面更新。
通过以上实施方式,自动识别用户与业务提供方在IM通信过程中的消息,基于即时消息触发用户方请求业务,进而有利于根据请求业务获取响应数据更新用户方展示数据的业务逻辑,自动完成双方通信过程中针对业务逻辑的用户展示数据匹配更新。
在一实施例中,如图5所示,提供一种动态消息解析装置,该装置包括:预加载模块10,用于用户方终端预加载消息解析包,其中,所述消息解析包由服务器端根据待更新业务对应的业务解析逻辑生成;交互响应模块11,用于用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据;界面更新模块12,用于将所述展示数据录入用户方终端的消息队列,等待所述用户方终端的用户界面调用,从所述消息队列中获取更新的用户界面数据。
在一实施例中,预加载模块10还包括:更新请求单元,用于用户方终端对应应用启动并完成初始化后向服务器端输出更新检索请求,其中所述更新检索请求包括:用户方身份信息和应用版本信息;更新请求响应单元,用于响应于所述更新检索请求,用户方终端从服务器端获取对应的消息解析包。
在一实施例中,交互响应模块11包括业务类型获取单元,用于用户方终端根据用户方的输入信息,确定所述输入信息请求的业务类型,根据所述业务类型生成业务请求,输出至业务提供方终端;业务响应单元,用于用户方终端根据所述业务请求从业务提供方终端获取业务响应数据;业务解析单元,用于用户方终端调用预加载的消息解析包,判断所述业务响应数据是否对应新的业务解析逻辑,若是,则按预加载的消息解析包对所述业务响应数据进行消息解析处理;若否,则按原有业务解析逻辑对所述业务响应数据进行消息解析处理。
在一实施例中,业务响应单元包括第一响应单元,用于通过与用户方终端的显示界面交互触发特定业务请求,其中交互触发业务请求的方式包括:点击显示界面功能选项;第二响应单元,用于通过预训练的识别模型识别用户方与业务提供方即时通信过程中的输入信息,获取匹配的业务类型并触发对应的业务请求。
在一实施例中,业务解析单元包括:消息过滤组件,用于根据预先设置的消息过滤规则对业务响应数据进行消息过滤;解析组件,用于调取用户方的消息解析包对经过消息过滤的业务响应数据进行消息解析;通知生成组件,用于根据解析器的解析的消息生成通知信息与用户方进行交互确认。
在一实施例中,解析组件包括业务响应判别件,用于用户方终端获取业务响应数据后,调用预加载的消息解析包,判断消息解析包中是否包含业务响应数据对应的业务类型,若包含,则直接启用预加载的消息解析包,按照更新的业务解析逻辑对业务响应数据进行解析处理;若不包含,则调用用户方本地原有的消息解析包,按原有业务解析逻辑对业务响应数据进行解析处理。
在一实施例中,业务响应判别件包括业务校验器,用于在业务响应数据中设置业务对应的第一编码,将所述第一编码与业务请求对应的第二编码进行比对,若二者不一致,则所述消息解析包中包含业务响应数据对应的业务类型,反之,则所述消息解析包中包含业务响应数据对应的业务类型。
上述动态消息解析装置可以以一种计算机程序的形式实现,计算机程序可以在如图6所示的动态消息解析设备上运行。动态消息解析设备,包括:一个或多个处理器和存储器,所述存储器上存储有计算机程序。
上述动态消息解析装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于终端的存储器中,也可以以软件形式存储于终端的存储器中,以便于处理器调用执行以上各个模块对应的操作。该处理器可以为中央处理单元(CPU)、微处理器、单片机等。
如图6所示,为一个实施例中动态消息解析设备的内部结构示意图。提供了一种动态消息解析设备,包括:一个或多个处理器和存储器,所述存储器上存储有计算机程序,当所述一个或多个处理器执行所述计算机程序时实现以下步骤:用户方终端预加载消息解析包,其中,所述消息解析包由服务器端根据待更新业务对应的业务解析逻辑生成;用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据;将所述展示数据录入用户方终端的消息队列,等待所述用户方终端的用户界面调用,从所述消息队列中获取更新的用户界面数据。
在一实施例中,上述处理器执行时,所实现的用户方终端预加载消息解析包的步骤至少包括:用户方终端对应应用启动并完成初始化后向服务器端输出更新检索请求,其中所述更新检索请求包括:用户方身份信息和应用版本信息;响应于所述更新检索请求,用户方终端从服务器端获取对应的消息解析包。
在一实施例中,上述处理器执行时,所实现的用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据,包括:用户方终端根据用户方的输入信息,确定所述输入信息请求的业务类型,根据所述业务类型生成业务请求,输出至业务提供方终端;用户方终端根据所述业务请求从业务提供方终端获取业务响应数据;用户方终端调用预加载的消息解析包,判断所述业务响应数据是否对应新的业务解析逻辑,若是,则按预加载的消息解析包对所述业务响应数据进行消息解析处理;若否,则按原有业务解析逻辑对所述业务响应数据进行消息解析处理。
在一实施例中,上述处理器执行时,所实现的用户方终端根据所述业务请求从业务提供方终端获取业务响应数据,包括:通过与用户方终端的显示界面交互触发特定业务请求,其中交互触发业务请求的方式包括:点击显示界面功能选项;和/或,通过预训练的识别模型识别用户方与业务提供方即时通信过程中的输入信息,获取匹配的业务类型并触发对应的业务请求。
在一实施例中,上述处理器执行时,所实现的对所述业务响应数据进行消息解析处理包括:根据预先设置的消息过滤规则对业务响应数据进行消息过滤;调取用户方终端的消息解析包对经过消息过滤的业务响应数据进行消息解析,并生成通知信息与用户方进行交互确认。
在一实施例中,上述处理器执行时,所实现的调取用户方的消息解析包对经过消息过滤的业务响应数据进行消息解析,包括:用户方终端获取业务响应数据后,调用预加载的消息解析包,判断消息解析包中是否包含业务响应数据对应的业务类型,若包含,则直接启用预加载的消息解析包,按照更新的业务解析逻辑对业务响应数据进行解析处理;若不包含,则调用用户方本地原有的消息解析包,按原有业务解析逻辑对业务响应数据进行解析处理。
在一实施例中,上述处理器执行时,所实现的判断消息解析包中是否包含业务响应数据对应的业务类型,包括:在业务响应数据中设置业务对应的第一编码,将所述第一编码与业务请求对应的第二编码进行比对,若二者不一致,则所述消息解析包中包含业务响应数据对应的业务类型,反之,则所述消息解析包中包含业务响应数据对应的业务类型。
在一个实施例中,上述的动态消息解析设备可用作服务器,包括但不限于独立的物理服务器,或者是多个物理服务器构成的服务器集群,该动态消息解析设备还可用作终端,包括但不限手机、平板电脑、个人数字助理或者智能设备等。如图6所示,该动态消息解析设备包括通过系统总线连接的处理器、非易失性存储介质、内存储器、显示屏和网络接口。[
其中,该动态消息解析设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。动态消息解析设备的非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现以上各个实施例所提供的一种动态消息解析方法。动态消息解析设备中的内存储器为非易失性存储介质中的操作系统和计算机程序提供高速缓存的运行环境。显示界面可通过显示屏进行数据展示。显示屏可以是触摸屏,比如为电容屏或电子屏,可通过接收作用于该触摸屏上显示的控件的点击操作,生成相应的指令。
本领域技术人员可以理解,图6中示出的动态消息解析设备的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,当由一个或多个处理器执行时实现以下步骤:用户方终端预加载消息解析包,其中,所述消息解析包由服务器端根据待更新业务对应的业务解析逻辑生成;用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据;将所述展示数据录入用户方终端的消息队列,等待所述用户方终端的用户界面调用,从所述消息队列中获取更新的用户界面数据。
在一实施例中,该计算机程序被处理器执行时,所实现的用户方终端预加载消息解析包的步骤至少包括:用户方终端对应应用启动并完成初始化后向服务器端输出更新检索请求,其中所述更新检索请求包括:用户方身份信息和应用版本信息;响应于所述更新检索请求,用户方终端从服务器端获取对应的消息解析包。
在一实施例中,该计算机程序被处理器执行时,所实现的用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据,包括:用户方终端根据用户方的输入信息,确定所述输入信息请求的业务类型,根据所述业务类型生成业务请求,输出至业务提供方终端;用户方终端根据所述业务请求从业务提供方终端获取业务响应数据;用户方终端调用预加载的消息解析包,判断所述业务响应数据是否对应新的业务解析逻辑,若是,则按预加载的消息解析包对所述业务响应数据进行消息解析处理;若否,则按原有业务解析逻辑对所述业务响应数据进行消息解析处理。
在一实施例中,该计算机程序被处理器执行时,所实现的用户方终端根据所述业务请求从业务提供方终端获取业务响应数据,包括:通过与用户方终端的显示界面交互触发特定业务请求,其中交互触发业务请求的方式包括:点击显示界面功能选项;和/或,通过预训练的识别模型识别用户方与业务提供方即时通信过程中的输入信息,获取匹配的业务类型并触发对应的业务请求。
在一实施例中,该计算机程序被处理器执行时,所实现的对所述业务响应数据进行消息解析处理包括:根据预先设置的消息过滤规则对业务响应数据进行消息过滤;调取用户方终端的消息解析包对经过消息过滤的业务响应数据进行消息解析,并生成通知信息与用户方进行交互确认。
在一实施例中,该计算机程序被处理器执行时,所实现的调取用户方的消息解析包对经过消息过滤的业务响应数据进行消息解析,包括:用户方终端获取业务响应数据后,调用预加载的消息解析包,判断消息解析包中是否包含业务响应数据对应的业务类型,若包含,则直接启用预加载的消息解析包,按照更新的业务解析逻辑对业务响应数据进行解析处理;若不包含,则调用用户方本地原有的消息解析包,按原有业务解析逻辑对业务响应数据进行解析处理。
在一实施例中,该计算机程序被处理器执行时,所实现的判断消息解析包中是否包含业务响应数据对应的业务类型,包括:在业务响应数据中设置业务对应的第一编码,将所述第一编码与业务请求对应的第二编码进行比对,若二者不一致,则所述消息解析包中包含业务响应数据对应的业务类型,反之,则所述消息解析包中包含业务响应数据对应的业务类型。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
综上所述,本发明一种动态消息解析方法、装置、设备和介质,通过即时通信过程中通信双方发送信息触发对应的业务逻辑热更新,只需要在用到对应业务时,才触发业务层面的更新,不必急于整个应用版本进行更新,解决了页面与业务逻辑进行绑定更新带来的不便;在用户无感的情况下进行实时更新,不需要考虑用户端当前版本的对新业务类型的限制,增强用户体验的同时,便于进行新业务的推广应用。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (10)

1.一种动态消息解析方法,其特征在于,包括:
用户方终端预加载消息解析包,其中,所述消息解析包由服务器端根据待更新业务对应的业务解析逻辑生成;
用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据;
将所述展示数据录入用户方终端的消息队列,等待所述用户方终端的用户界面调用,从所述消息队列中获取更新的用户界面数据。
2.根据权利要求1所述的动态消息解析方法,其特征在于,用户方终端预加载消息解析包的步骤至少包括:
用户方终端对应应用启动并完成初始化后向服务器端输出更新检索请求,其中所述更新检索请求包括:用户方身份信息和应用版本信息;
响应于所述更新检索请求,用户方终端从服务器端获取对应的消息解析包。
3.根据权利要求1所述的动态消息解析方法,其特征在于,用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据,包括:
用户方终端根据用户方的输入信息,确定所述输入信息请求的业务类型,根据所述业务类型生成业务请求,输出至业务提供方终端;
用户方终端根据所述业务请求从业务提供方终端获取业务响应数据;
用户方终端调用预加载的消息解析包,判断所述业务响应数据是否对应新的业务解析逻辑,若是,则按预加载的消息解析包对所述业务响应数据进行消息解析处理;若否,则按原有业务解析逻辑对所述业务响应数据进行消息解析处理。
4.根据权利要求3所述的动态消息解析方法,其特征在于,用户方终端根据所述业务请求从业务提供方终端获取业务响应数据,包括:
通过与用户方终端的显示界面交互触发特定业务请求,其中交互触发业务请求的方式包括:点击显示界面功能选项;和/或,
通过预训练的识别模型识别用户方与业务提供方即时通信过程中的输入信息,获取匹配的业务类型并触发对应的业务请求。
5.根据权利要求3所述的动态消息解析方法,其特征在于,对所述业务响应数据进行消息解析处理包括:
根据预先设置的消息过滤规则对业务响应数据进行消息过滤;
调取用户方终端的消息解析包对经过消息过滤的业务响应数据进行消息解析,并生成通知信息与用户方进行交互确认。
6.根据权利要求5所述的动态消息解析方法,其特征在于,调取用户方的消息解析包对经过消息过滤的业务响应数据进行消息解析,包括:
用户方终端获取业务响应数据后,调用预加载的消息解析包,判断消息解析包中是否包含业务响应数据对应的业务类型,若包含,则直接启用预加载的消息解析包,按照更新的业务解析逻辑对业务响应数据进行解析处理;若不包含,则调用用户方本地原有的消息解析包,按原有业务解析逻辑对业务响应数据进行解析处理。
7.根据权利要求6所述的动态消息解析方法,其特征在于,判断消息解析包中是否包含业务响应数据对应的业务类型,包括:
在业务响应数据中设置业务对应的第一编码,将所述第一编码与业务请求对应的第二编码进行比对,若二者不一致,则所述消息解析包中包含业务响应数据对应的业务类型,反之,则所述消息解析包中包含业务响应数据对应的业务类型。
8.一种动态消息解析装置,其特征在于,包括:
预加载模块,用于用户方终端预加载消息解析包,其中,所述消息解析包由服务器端根据待更新业务对应的业务解析逻辑生成;
交互响应模块,用于用户方终端与业务提供方终端建立通信连接,根据用户方和/或业务提供方在通信过程中的输入信息匹配对应业务,并按照用户方终端的所述消息解析包中对应业务逻辑对输入信息匹配的业务进行解析处理,确定所述用户方展示数据;
界面更新模块,用于将所述展示数据录入用户方终端的消息队列,等待所述用户方终端的用户界面调用,从所述消息队列中获取更新的用户界面数据。
9.一种动态消息解析设备,其特征在于,包括:
一个或多个处理器和存储器,
所述存储器上存储有计算机程序,当所述一个或多个处理器执行所述计算机程序时,使得所述设备执行如权利要求1-7中所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,当由一个或多个处理器执行时,使得设备执行如权利要求1-7中所述的方法。
CN202111008504.4A 2021-08-31 2021-08-31 一种动态消息解析方法、装置、设备和介质 Active CN113703819B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111008504.4A CN113703819B (zh) 2021-08-31 2021-08-31 一种动态消息解析方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111008504.4A CN113703819B (zh) 2021-08-31 2021-08-31 一种动态消息解析方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
CN113703819A true CN113703819A (zh) 2021-11-26
CN113703819B CN113703819B (zh) 2023-11-14

Family

ID=78657353

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111008504.4A Active CN113703819B (zh) 2021-08-31 2021-08-31 一种动态消息解析方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN113703819B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090248698A1 (en) * 2008-03-31 2009-10-01 Stephan Rehmann Managing Consistent Interfaces for Internal Service Request Business Objects Across Heterogeneous Systems
CN108279932A (zh) * 2018-01-22 2018-07-13 北京奇艺世纪科技有限公司 一种移动终端动态配置用户界面方法和装置
CN110719221A (zh) * 2019-10-16 2020-01-21 北京蚂蜂窝网络科技有限公司 即时通信方法、装置、设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090248698A1 (en) * 2008-03-31 2009-10-01 Stephan Rehmann Managing Consistent Interfaces for Internal Service Request Business Objects Across Heterogeneous Systems
CN108279932A (zh) * 2018-01-22 2018-07-13 北京奇艺世纪科技有限公司 一种移动终端动态配置用户界面方法和装置
CN110719221A (zh) * 2019-10-16 2020-01-21 北京蚂蜂窝网络科技有限公司 即时通信方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN113703819B (zh) 2023-11-14

Similar Documents

Publication Publication Date Title
US11775254B2 (en) Analyzing graphical user interfaces to facilitate automatic interaction
US20190034199A1 (en) Auto-generation of application programming interface (api) documentation via implementation-neutral analysis of api traffic
CN107609092B (zh) 智能应答方法和装置
CN109791550A (zh) 生成情景搜索建议
CN104765791A (zh) 一种信息输入方法和装置
CN110276074B (zh) 自然语言处理的分布式训练方法、装置、设备及存储介质
CN108268450B (zh) 用于生成信息的方法和装置
CN116775183A (zh) 基于大语言模型的任务生成方法、系统、设备及存储介质
CN111382228A (zh) 用于输出信息的方法和装置
US20200050906A1 (en) Dynamic contextual data capture
WO2023142451A1 (zh) 工作流生成方法、装置、电子设备
CN111935265A (zh) 媒体信息的处理方法及装置
CN110519155B (zh) 信息处理方法及系统
CN110336791B (zh) 一种断点数据传输方法、装置、设备及计算机存储介质
CN110018823B (zh) 交互式应用程序的处理方法及系统、生成方法及系统
JP2019219737A (ja) 対話サーバ、対話方法及び対話プログラム
CN111552527A (zh) 用户界面内文字翻译方法、装置、系统及存储介质
CN108509059B (zh) 一种信息处理方法、电子设备和计算机存储介质
CN113703819B (zh) 一种动态消息解析方法、装置、设备和介质
CN110661693A (zh) 促进在计算装置中执行的基于媒体的内容共享的方法、计算装置可读存储介质以及计算装置
JP7029557B1 (ja) 判定装置、判定方法および判定プログラム
CN115061785A (zh) 信息下发方法、装置、存储介质及服务器
CN113703898A (zh) 一种卡片式交互方法、装置、设备和介质
CN112487164A (zh) 一种人工智能交互方法
CN113901337A (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
GR01 Patent grant
GR01 Patent grant