CN112579093B - 一种信息推送方法、装置及相关设备 - Google Patents

一种信息推送方法、装置及相关设备 Download PDF

Info

Publication number
CN112579093B
CN112579093B CN202011453185.3A CN202011453185A CN112579093B CN 112579093 B CN112579093 B CN 112579093B CN 202011453185 A CN202011453185 A CN 202011453185A CN 112579093 B CN112579093 B CN 112579093B
Authority
CN
China
Prior art keywords
information
push
grammar
pushing
pushed
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.)
Active
Application number
CN202011453185.3A
Other languages
English (en)
Other versions
CN112579093A (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.)
DBAPPSecurity Co Ltd
Original Assignee
DBAPPSecurity 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 DBAPPSecurity Co Ltd filed Critical DBAPPSecurity Co Ltd
Priority to CN202011453185.3A priority Critical patent/CN112579093B/zh
Publication of CN112579093A publication Critical patent/CN112579093A/zh
Application granted granted Critical
Publication of CN112579093B publication Critical patent/CN112579093B/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/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种信息推送方法,包括根据信息推送指令调用语法解析器;利用所述语法解析器对预设信息推送脚本进行解析,获得待推送信息;其中,所述预设信息推送脚本利用领域特定语言构建获得;将所述待推送信息发送至语法执行器;利用所述语法执行器对所述待推送信息进行推送;该信息推送方法可以快速高效地实现不同推送服务或系统的信息推送,通用性高且成本消耗较低。本申请还公开了一种信息推送装置、设备及计算机可读存储介质,均具有上述有益效果。

Description

一种信息推送方法、装置及相关设备
技术领域
本申请涉及互联网技术领域,特别涉及一种信息推送方法,还涉及一种信息推送装置、设备及计算机可读存储介质。
背景技术
目前,众多的业务系统都有通知推送的需求,而这些业务系统常常需要兼容不同的推送服务或系统来满足用户不同的通知需求,如邮件、短信、微信、QQ、钉钉、webhook(网络钩子)、第三方推送平台等。在相关技术中,通常是以硬编码加联调对接的方式去对接不同的推送服务或系统,但是,这种方式实现后存在复用程度低、通用困难的问题,而且,这种直接对接操作以及对接之后的版本兼容工作重复且繁重,耗时耗力、实现困难且成本消耗巨大。
因此,如何快速高效地实现不同推送服务或系统的信息推送,降低成本消耗是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种信息推送方法,该信息推送方法可以快速高效地实现不同推送服务或系统的信息推送,通用性高且成本消耗较低;本申请的另一目的是提供一种信息推送装置、设备及计算机可读存储介质,均具有上述有益效果。
第一方面,本申请提供了一种信息推送方法,包括:
根据信息推送指令调用语法解析器;
利用所述语法解析器对预设信息推送脚本进行解析,获得待推送信息;其中,所述预设信息推送脚本利用领域特定语言构建获得;
将所述待推送信息发送至语法执行器;
利用所述语法执行器对所述待推送信息进行推送。
优选的,所述利用所述语法解析器对预设信息推送脚本进行解析,获得待推送信息,包括:
利用ANTLR对所述预设信息推送脚本进行解析,获得所述待推送信息。
优选的,所述利用所述语法执行器对所述待推送信息进行推送,包括:
利用所述语法执行器将所述待推送信息发送至目标推送对象;其中,所述目标推送对象根据查询指令从预设存储设备中查询获得。
优选的,所述信息推送方法还包括:
通过所述语法执行器获取信息推送结果。
优选的,所述信息推送方法还包括:
当所述信息推送结果为推送失败信息时,根据所述推送失败信息生成日志文件。
第二方面,本申请还公开了一种信息推送装置,包括:
语法解析器调用模块,用于根据信息推送指令调用语法解析器;
脚本解析模块,用于利用所述语法解析器对预设信息推送脚本进行解析,获得待推送信息;其中,所述预设信息推送脚本利用领域特定语言构建获得;
语法执行器调用模块,用于将所述待推送信息发送至语法执行器;
信息推送模块,用于利用所述语法执行器对所述待推送信息进行推送。
优选的,所述脚本解析模块具体用于利用ANTLR对所述预设信息推送脚本进行解析,获得所述待推送信息。
优选的,所述信息推送模块具体用于利用所述语法执行器将所述待推送信息发送至目标推送对象;其中,所述目标推送对象根据查询指令从预设存储设备中查询获得。
第三方面,本申请还公开了一种信息推送设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述的任一种信息推送方法的步骤。
第四方面,本申请还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的任一种信息推送方法的步骤。
本申请所提供的一种信息推送方法,包括根据信息推送指令调用语法解析器;利用所述语法解析器对预设信息推送脚本进行解析,获得待推送信息;其中,所述预设信息推送脚本利用领域特定语言构建获得;将所述待推送信息发送至语法执行器;利用所述语法执行器对所述待推送信息进行推送。
可见,本申请所提供的信息推送方法,利用领域特定语言实现信息推送脚本的构建,进而基于该信息推送脚本实现信息推送,通过领域特定语言统一了不同信息推送方式的定义,从而可以快速高效地实现不同推送服务或系统的信息推送,有效地提高了增加了对接代码的复用程度,简化了使用推送信息的门槛,通用性高且成本消耗低。
本申请所提供的一种信息推送装置、设备及计算机可读存储介质,均具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明现有技术和本申请实施例中的技术方案,下面将对现有技术和本申请实施例描述中需要使用的附图作简要的介绍。当然,下面有关本申请实施例的附图描述的仅仅是本申请中的一部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,所获得的其他附图也属于本申请的保护范围。
图1为本申请所提供的一种信息推送方法的流程示意图;
图2为本申请所提供的另一种信息推送方法的流程示意图;
图3为本申请所提供的一种信息推送系统的功能模块示意图;
图4为本申请所提供的一种信息推送装置的结构示意图;
图5为本申请所提供的一种信息推送设备的结构示意图。
具体实施方式
本申请的核心是提供一种信息推送方法,该信息推送方法可以快速高效地实现不同推送服务或系统的信息推送,通用性高且成本消耗较低;本申请的另一核心是提供一种信息推送装置、设备及计算机可读存储介质,也具有上述有益效果。
为了对本申请实施例中的技术方案进行更加清楚、完整地描述,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行介绍。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
信息推送是指由信源主动将信息推送给用户的一种方式,在计算机系统领域常常用到这种模式,可以达到很好地及时性。特别是在安全领域,及时性是至关重要的,新的威胁、新的漏洞都需要及时通知到用户或安全技术人员,否则关键系统很可能会遭受破坏。目前,众多的业务系统都有信息推送的需求,而这些业务系统常常需要兼容不同的推送服务或系统来满足用户不同的通知需求,如邮件、短信、微信、QQ、钉钉、webhook、第三方推送平台等。在相关技术中,通常是以硬编码加联调对接的方式去对接不同的推送服务或系统,但是,这种方式实现后存在复用程度低、通用困难的问题,而且,这种直接对接操作以及对接之后的版本兼容工作重复且繁重,耗时耗力、实现困难且成本消耗巨大。
因此,为解决上述技术问题,本申请提供了一种信息推送方法,该信息推送方法利用领域特定语言实现信息推送脚本的构建,进而基于该信息推送脚本实现信息推送,通过领域特定语言统一了不同信息推送方式的定义,从而可以快速高效地实现不同推送服务或系统的信息推送,有效地提高了增加了对接代码的复用程度,简化了使用推送信息的门槛,通用性高且成本消耗低。
请参考图1,图1为本申请所提供的一种信息推送方法的流程示意图,该信息推送方法可包括:
S101:根据信息推送指令调用语法解析器;
本步骤旨在实现语法解析器的调用,该语法解析器用于实现脚本解析功能,主要用于对预先建立的信息推送脚本(下述预设信息推送脚本)进行解析,进而实现信息推送。具体而言,当接收到信息推送指令时即可对语法解析器进行调用,该语法解析器可预存于相应的存储空间中,以便即时调用。其中,上述信息推送指令的获取方式并不唯一,可以由用户直接从前端界面输入,也可以根据预设响应条件自动触发,如定时条件,本申请对此不做限定。
S102:利用语法解析器对预设信息推送脚本进行解析,获得待推送信息;其中,预设信息推送脚本利用领域特定语言构建获得;
本步骤旨在通过脚本解析获得待推送信息,即需要推送的数据信息。具体的,在调取获得语法解析器后,即可利用该语法解析器对预设信息推送脚本进行解析,获得上述带推送信息。其中,上述预设信息推送脚本利用领域特定语言(Domain-specific Language,DSL)构建获得,DSL是指专注于某个应用程序领域的计算机语言,不同于普通的跨领域通用计算机语言(General Purpose Language,GPL),DSL只用在某些特定的领域,由此,可将DSL作为消息推送领域的专用语言,用以实现推送信息服务,统一度高、识别度高、且易用性高。此外,待推送信息的具体内容并不唯一,由技术人员根据实际需求进行自定义设置即可,例如,可以为网络漏洞信息、网络攻击信息等,本申请对此不做限定。
作为一种优选实施例,上述利用语法解析器对预设信息推送脚本进行解析,获得待推送信息,可以包括:利用ANTLR(ANother Tool for Language Recognition,一种跨语言语法解析器)对预设信息推送脚本进行解析,获得待推送信息。
本优选实施例提供了一种具体类型的语法解析器,即ANTLR。具体的,ANTLR是一个强大的跨语言语法解析器,可以用来读取、处理、执行或翻译结构化文本或二进制文件,被广泛用来构建语言、工具和框架。可以理解的是,上述ANTLR仅为本优选实施例所提供的一种优选实现方式,还可以为其他类型的语法解析工具,本申请对此不做限定。在本申请中,具体采集ANTLR4作为语法解析器实现脚本解析功能。
S103:将待推送信息发送至语法执行器;
S104:利用语法执行器对待推送信息进行推送。
以上步骤旨在利用语法执行器实现信息推送。具体的,当基于预设信息推送脚本解析获得带推送信息时,即可将其发送至语法执行器,进而利用该语法执行器对待推送信息进行推送,至此,完成信息推送功能。其中,语法执行器类似于上述语法解析器,均是预先构建完成并存储于预设存储空间中的,便于直接调用。
作为一种优选实施例,上述利用语法执行器对待推送信息进行推送,可以包括:利用语法执行器将待推送信息发送至目标推送对象;其中,目标推送对象根据查询指令从预设存储设备中查询获得。
在进行信息推送时,具体是将待推送信息推送至目标推送对象,也即待推送信息的接收方。具体而言,可预先创建存储设备用于实现各类推送对象的存储,由此,即可根据查询指令从预设存储设备中查询获得各个推送对象,进而将待推送信息推送给目标推送对象,完成信息推送。其中,目标推送对象的具体类型并不唯一,例如,可以为邮件、短信、钉钉、QQ、webhook、第三方推送平台等,本申请对此不做限定;并且,目标推送对象的数量也不唯一,可以为一个,也可以为多个。
作为一种优选实施例,该信息推送方法还可以包括:通过语法执行器获取信息推送结果。
本优选实施例所提供的信息推送方法可实现推送结果反馈功能,在完成信息推送后,即可利用语法执行器获取信息推送结果,具体可包括推送成功信息和推送失败信息,以告知用户当前信息推送结果。
作为一种优选实施例,该信息推送方法还可以包括:当信息推送结果为推送失败信息时,根据推送失败信息生成日志文件。
具体的,当信息推送结果为推送失败信息时,还可进一步生成日志文件,以告知用户异常原因,如参数信息不匹配、网络异常、目标推送对象返回的错误信息等。
可见,本申请所提供的信息推送方法,利用领域特定语言实现信息推送脚本的构建,进而基于该信息推送脚本实现信息推送,通过领域特定语言统一了不同信息推送方式的定义,从而可以快速高效地实现不同推送服务或系统的信息推送,有效地提高了增加了对接代码的复用程度,简化了使用推送信息的门槛,通用性高且成本消耗低。
本申请实施例提供了另一种信息推送方法。
请参考图2和图3,图2为本申请所提供的另一种信息推送方法的流程示意图,图3为本申请所提供的一种信息推送系统的功能模块示意图,该信息推送方法的具体实现流程如下:
1、定义通知推送场景下的领域特定语言(PUSH DSL):
统一语法的定义可以完整抽象通知推送逻辑,使用者或开发人员无需掌握推送实现的细节、无需对接具体的推送设备,只需掌握该语法即可0门槛使用该推送工具或系统内已实现的各种不同的推送类型(包括但不限于邮件、短信、微信、QQ、钉钉、webhook、第三方推送平台等)。核心语法分为两类:查询语法(query)和推送语法(push)。
(1)查询语法(query)是指可表述查询推送相关信息含义的语法,可查询可用的推送类型(queryType),可查询不同推送类型的详细参数列表(query)。其对应的语法示例:
Figure BDA0002832254110000071
(2)推送语法(push)是指可表述完整的推送过程含义的语法,包含但不限于所需推送的内容、推送的类型、推送的目标对象、推送的类型所必须或选填的参数等。其对应的语法示例:
Figure BDA0002832254110000072
Figure BDA0002832254110000081
2、实现通知推送语法解析器(Push DSL Parser):
可用于解析使用步骤1中定义的PUSH DSL语句,提取出语句内提供的所有信息,包括语法类型(查询或推送)、所需推送的内容、推送的类型、推送的目标对象、推送的类型所必须或选填的参数等,用于后续执行器的具体处理。此处采用ANTLR4构建规则来进行语法的解析,具体规则包括:
(1)解析执行动作,一般支持两类:query和push;其中,query代表后续执行的是查询类的动作,push代表后续执行的是实际推送的动作;
(2)解析条件参数,如果是query动作,后接查询参数;如果是push动作,to后接执行参数。两类参数书写方式一致,单个参数为明确的赋值等式(形如:field=value),value数值类型支持字符串、数值、布尔、数组(数组内元素支持字符串、数值、布尔),使用常规逻辑符(AND、OR)关联单个参数(形如:field1=value1 AND field2=value2 OR field3=value3);规定type参数为唯一且必填字段。若需要一次采用多种类型推送,可数组类型赋值给type;若需要一次推送给多个对象,可数组类型赋值给dest。以下为相应参数列表示例:
Figure BDA0002832254110000082
Figure BDA0002832254110000091
(3)解析待推送信息,具体为push关键字之后、to关键字之前的内容。
3、实现通知推送语法执行器(Push DSL Executor):
同上所述,通知推送语法执行器也支持执行两类的动作:查询(query)和推送(push)。
(1)查询类,执行器中实现的是从相关存储设备或服务里获取匹配到的已有的预先定义好的不同的推送类型(包括但不限于邮件、短信、微信、QQ、钉钉、webhook、第三方推送平台等)以及不同推送类型的参数列表信息;
(2)推送类,执行器中实现的是具体的推送类型(包括但不限于邮件、短信、微信、QQ、钉钉、webhook、第三方推送平台等)的对接逻辑,具体是将步骤1中解析器解析出来的结果作为参数传入该执行器,执行器根据参数选择不同的类型的实现,执行最终的推送动作。此外,在完成推送后,返回推送的结果(成功或失败),如果失败,则返回失败的原因(包括但不限于不支持的参数、网络原因、推送的目标返回的错误等)。
需要说明的是,以上所述的通知推送领域特定语言(PUSH DSL)、通知推送语法解析器(Push DSL Parser)、通知推送语法执行器(Push DSL Executor)三类定义概念和实现逻辑可以包装为包括但不限于工具方法、第三方依赖包、在线系统、shell脚本、可执行程序等可供客户端(一般为程序)或使用者(一般为人)调用执行的任意方式。对于客户端或使用者,则可以采用定义的语法书写PUSH DSL后,再通过脚本或调用预定义的执行方法最终执行通知推送,达到推送目的。
可见,本申请实施例所提供的信息推送方法,利用领域特定语言实现信息推送脚本的构建,进而基于该信息推送脚本实现信息推送,通过领域特定语言统一了不同信息推送方式的定义,从而可以快速高效地实现不同推送服务或系统的信息推送,有效地提高了增加了对接代码的复用程度,简化了使用推送信息的门槛,通用性高且成本消耗低。
为解决上述技术问题,本申请还提供了一种信息推送装置,请参考图4,图4为本申请所提供的一种信息推送装置的结构示意图,该信息推送装置可包括:
语法解析器调用模块1,用于根据信息推送指令调用语法解析器;
脚本解析模块2,用于利用语法解析器对预设信息推送脚本进行解析,获得待推送信息;其中,预设信息推送脚本利用领域特定语言构建获得;
语法执行器调用模块3,用于将待推送信息发送至语法执行器;
信息推送模块4,用于利用语法执行器对待推送信息进行推送。
可见,本申请实施例所提供的信息推送装置,利用领域特定语言实现信息推送脚本的构建,进而基于该信息推送脚本实现信息推送,通过领域特定语言统一了不同信息推送方式的定义,从而可以快速高效地实现不同推送服务或系统的信息推送,有效地提高了增加了对接代码的复用程度,简化了使用推送信息的门槛,通用性高且成本消耗低。
作为一种优选实施例,上述脚本解析模块2可具体用于利用ANTLR对预设信息推送脚本进行解析,获得待推送信息。
作为一种优选实施例,上述信息推送模块4可具体用于利用语法执行器将待推送信息发送至目标推送对象;其中,目标推送对象根据查询指令从预设存储设备中查询获得。
作为一种优选实施例,该信息推送装置还可包括推送反馈模块,用于通过语法执行器获取信息推送结果。
作为一种优选实施例,该信息推送装置还可包括日志生成模块,用于当信息推送结果为推送失败信息时,根据推送失败信息生成日志文件。
对于本申请提供的装置的介绍请参照上述方法实施例,本申请在此不做赘述。
为解决上述技术问题,本申请还提供了一种信息推送设备,请参考图5,图5为本申请所提供的一种信息推送设备的结构示意图,该信息推送设备可包括:
存储器10,用于存储计算机程序;
处理器20,用于执行计算机程序时可实现如上述任意一种信息推送方法的步骤。
对于本申请提供的设备的介绍请参照上述方法实施例,本申请在此不做赘述。
为解决上述问题,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如上述任意一种信息推送方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本申请提供的计算机可读存储介质的介绍请参照上述方法实施例,本申请在此不做赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的技术方案进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请的保护范围内。

Claims (8)

1.一种信息推送方法,其特征在于,包括:
根据信息推送指令调用语法解析器;
利用所述语法解析器对预设信息推送脚本进行解析,获得待推送信息;其中,所述预设信息推送脚本利用领域特定语言构建获得;所述领域特定语言包括查询语法和推送语法;所述查询语法是指用于表述查询推送信息含义的语法,包括查询推送类型;所述推送语法是指用于表述推送过程含义的语法,包括推送内容和/或目标推送对象和/或推送类型;
将所述待推送信息发送至语法执行器;其中,所述语法执行器支持查询和推送,所述查询用于查询所述推送类型,所述推送用于根据所述推送内容和/或所述目标推送对象和/或所述推送类型执行推送动作;
利用所述语法执行器对所述待推送信息进行推送;
其中,所述利用所述语法执行器对所述待推送信息进行推送,包括:
利用所述语法执行器将所述待推送信息发送至目标推送对象;其中,所述目标推送对象根据查询指令从预设存储设备中查询获得;所述查询指令由查询端发起,包括所述目标推送对象的对象信息。
2.根据权利要求1所述的信息推送方法,其特征在于,所述利用所述语法解析器对预设信息推送脚本进行解析,获得待推送信息,包括:
利用ANTLR对所述预设信息推送脚本进行解析,获得所述待推送信息。
3.根据权利要求1所述的信息推送方法,其特征在于,还包括:
通过所述语法执行器获取信息推送结果。
4.根据权利要求3所述的信息推送方法,其特征在于,还包括:
当所述信息推送结果为推送失败信息时,根据所述推送失败信息生成日志文件。
5.一种信息推送装置,其特征在于,包括:
语法解析器调用模块,用于根据信息推送指令调用语法解析器;
脚本解析模块,用于利用所述语法解析器对预设信息推送脚本进行解析,获得待推送信息;其中,所述预设信息推送脚本利用领域特定语言构建获得;所述领域特定语言包括查询语法和推送语法;所述查询语法是指用于表述查询推送信息含义的语法,包括查询推送类型;所述推送语法是指用于表述推送过程含义的语法,包括推送内容和/或目标推送对象和/或推送类型;
语法执行器调用模块,用于将所述待推送信息发送至语法执行器;其中,所述语法执行器支持查询和推送,所述查询用于查询所述推送类型,所述推送用于根据所述推送内容和/或所述目标推送对象和/或所述推送类型执行推送动作;
信息推送模块,用于利用所述语法执行器对所述待推送信息进行推送;
其中,所述信息推送模块具体用于利用所述语法执行器将所述待推送信息发送至目标推送对象;其中,所述目标推送对象根据查询指令从预设存储设备中查询获得;所述查询指令由查询端发起,包括所述目标推送对象的对象信息。
6.根据权利要求5所述的信息推送装置,其特征在于,所述脚本解析模块具体用于利用ANTLR对所述预设信息推送脚本进行解析,获得所述待推送信息。
7.一种信息推送设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述的信息推送方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述的信息推送方法的步骤。
CN202011453185.3A 2020-12-11 2020-12-11 一种信息推送方法、装置及相关设备 Active CN112579093B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011453185.3A CN112579093B (zh) 2020-12-11 2020-12-11 一种信息推送方法、装置及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011453185.3A CN112579093B (zh) 2020-12-11 2020-12-11 一种信息推送方法、装置及相关设备

Publications (2)

Publication Number Publication Date
CN112579093A CN112579093A (zh) 2021-03-30
CN112579093B true CN112579093B (zh) 2022-08-12

Family

ID=75131303

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011453185.3A Active CN112579093B (zh) 2020-12-11 2020-12-11 一种信息推送方法、装置及相关设备

Country Status (1)

Country Link
CN (1) CN112579093B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113741974A (zh) * 2021-09-16 2021-12-03 杭州安恒信息技术股份有限公司 一种领域特定语言的执行方法、系统及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105915612A (zh) * 2016-04-19 2016-08-31 北京金山安全软件有限公司 推送消息获取、消息推送方法及装置
CN105827733B (zh) * 2016-05-12 2019-06-07 珠海豹趣科技有限公司 一种推送数据的方法、装置及电子设备
CN107423079A (zh) * 2017-03-10 2017-12-01 武汉斗鱼网络科技有限公司 一种同步脚本的方法、解析消息的方法和设备
CN107247613A (zh) * 2017-04-25 2017-10-13 北京航天飞行控制中心 语句解析方法及语句解析装置
US10311670B2 (en) * 2017-07-08 2019-06-04 Gaming Analytics Inc Machine-learning platform for operational decision making
CN107277181A (zh) * 2017-08-14 2017-10-20 深圳市金立通信设备有限公司 一种消息推送方法、服务器及消息推送系统
EP3457274A1 (en) * 2017-09-16 2019-03-20 Tata Consultancy Services Limited System and method for creating domain specific language
CN108449256B (zh) * 2018-02-10 2021-05-04 深圳壹账通智能科技有限公司 消息推送的处理方法、装置、计算机设备及存储介质
US11265277B2 (en) * 2018-11-05 2022-03-01 International Business Machines Corporation Dynamic notification groups
CN109376220B (zh) * 2018-12-12 2020-12-25 北京字节跳动网络技术有限公司 用于获取信息的方法和装置
CN110572434A (zh) * 2019-08-05 2019-12-13 威富通科技有限公司 语音播报消息的推送方法、装置、推送服务器及存储介质
CN110460514A (zh) * 2019-08-19 2019-11-15 广州华多网络科技有限公司 即时通信工具的消息发送方法、装置、存储介质及设备
CN111555963B (zh) * 2020-04-30 2022-08-16 北京思特奇信息技术股份有限公司 消息推送方法、装置、电子设备及存储介质
CN111680313B (zh) * 2020-06-08 2022-06-28 南京领行科技股份有限公司 一种数据处理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN112579093A (zh) 2021-03-30

Similar Documents

Publication Publication Date Title
US9507874B2 (en) Validation of schema and schema conformance verification
CN106547527B (zh) 一种JavaScript文件构建方法及装置
KR20180063240A (ko) 클라우드 기반 컴퓨팅 환경에서 인프라스트럭처를 구축, 최적화, 및 시행하는 시스템 및 방법
CN112154420A (zh) 自动智能云服务测试工具
CN114021130A (zh) 不依赖编译的漏洞扫描方法、装置及存储介质
CN112130830B (zh) 接口生成方法、装置及电子设备
Kim et al. Reuse-oriented reverse engineering of functional components from x86 binaries
CN112579093B (zh) 一种信息推送方法、装置及相关设备
CN111767096A (zh) 接口文档的生成方法、装置、设备及计算机可读存储介质
CN113885880A (zh) 一种多规则匹配方法、装置及设备
EP3438818B1 (en) Method and device for compiling computer language
CN114115884A (zh) 一种编程服务的管理方法以及相关装置
CN113703734A (zh) 一种小程序生成方法、装置、电子设备及存储介质
CN113885844A (zh) 一种业务服务编排方法及相关装置
CN113535186B (zh) 业务应用部署方法和装置
CN115794872A (zh) 基于异构数据库的语句转化方法及装置、存储介质、设备
CN115469875B (zh) 基于遥控作业的领域专用语言dsl的编译方法及装置
CN117149617A (zh) 一种代码的预分析方法和装置
CN114168479A (zh) 一种漏洞测试方法、装置、电子设备及存储介质
Lavorato et al. Deep Grammar Optimization for Submessagae Structure of Network Protocol Parsers
CN114201179A (zh) 接口文档的代码转化方法、装置、终端设备以及存储介质
CN113568677A (zh) 一种数据对象解析方法、装置和电子设备
CN115268882A (zh) 一种轻量级在线代码协同编辑的方法
CN117312383A (zh) Hive任务的风险预警方法、装置、电子设备和介质
CN114443685A (zh) 一种sql注入检测方法及装置

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