消息发送方法、系统、计算机设备及存储介质与流程

文档序号:20443262发布日期:2020-04-17 22:33阅读:170来源:国知局
消息发送方法、系统、计算机设备及存储介质与流程

本发明实施例涉及通信领域,尤其涉及一种消息发送方法、系统、计算机设备及存储介质。



背景技术:

在电商运营过程中,伴随着消息的多种渠道的发送与接收,当前环境下各个业务系统直接与消息中心底层服务对接,涉及到发送规则,包括内容的编辑都由各个业务系统进行处理,如涉及运营人员替换消息文案、三方平台替换平台模板等,都需要业务方重新编码、测试、上线,方可完成。

然而,现有方案中存在代码侵入性高的问题,并且,有一个发送需求,必须维护一套发送封装代码,维护成本高,一次变更必须对应一个到多个系统同时上线,管理维护不便。



技术实现要素:

鉴于此,为解决上述技术问题或部分技术问题,本发明实施例提供一种消息发送方法、系统、计算机设备及存储介质。

第一方面,本发明实施例提供一种消息发送方法,应用于消息发送系统,包括:

根据待发送消息确定消息模板;

获取包含有待发送消息的系统变量对应的系统数据;

接收业务服务器发送的自定义变量对应的自定义数据;

根据所述系统数据和所述自定义数据基于所述消息模板生成消息体;

将所述消息体发送给对应的客户端。

在一个可能的实施方式中,在所述根据所述系统数据和所述自定义数据基于所述消息模板生成消息体之前,还包括:

解析所述系统数据和所述自定义数据,得到对应的变量值;

验证所述变量值是否正确,以及验证所述变量值是否符合消息发布条件。

在一个可能的实施方式中,所述接收业务服务器发送的自定义变量对应的自定义数据,包括:

通过业务服务器的接口采用与所述接口对应的协议接收所述业务服务器发送的所述自定义变量对应的自定义数据,以及与所述自定义变量对应的授权参数。

在一个可能的实施方式中,所述解析所述系统数据和所述自定义数据,得到对应的变量值,包括:

根据所述授权参数,对所述系统数据和所述自定义数据进行解析;

确定所述系统数据和所述自定义数据对应的变量值。

在一个可能的实施方式中,所述根据所述系统数据和所述自定义数据基于所述消息模板生成消息体,包括:

若所述变量值正确,且符合消息发布条件,则将所述变量值基于所述消息模板生成消息体。

在一个可能的实施方式中,所述方法,还包括:确定所述待发送消息的场景类型;根据所述场景类型确定渠道模板;

所述将所述消息体发送给对应的客户端,包括:根据所述渠道模板将所述消息体发送给对应的客户端。

在一个可能的实施方式中,所述自定义变量通过以下方式确定;

通过所述待发送消息的业务类型、场景类型和时机类型配置所述自定义变量。

第二方面,本发明实施例提供一种消息发送方法,应用于业务服务器,包括:

根据待发送消息生成系统数据;

接收用户输入的自定义信息,根据所述自定义信息生成自定义数据;

通过数据传输接口将所述系统数据和所述自定义数据发送给消息发送系统。

第三方面,本发明实施例提供一种消息发送系统,包括:

确定模块,用于确定所述待发送消息的消息模板;

获取模块,用于获取包含有待发送消息的系统变量对应的系统数据;

接收模块,用于接收业务服务器发送的自定义变量对应的自定义数据;

生成模块,用于根据所述系统数据和所述自定义数据基于所述消息模板生成消息体;

发送模块,用于将所述消息体发送给对应的客户端。

第四方面,本发明实施例提供一种计算机设备,所述计算机设备包括处理器、存储器及通信总线;

所述通信总线用于实现处理器和存储器之间的连接通信;

所述处理器用于执行存储器中存储的消息发送程序,以实现上述第一方面或第二方面任一所述的消息发送方法。

第五方面,本发明实施例提供一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以上述第一方面或第二方面任一所述的消息发送方法。

本发明实施例提供的消息发送方案,通过根据待发送消息确定消息模板;获取包含有待发送消息的系统变量对应的系统数据;接收业务服务器发送的自定义变量对应的自定义数据;根据所述系统数据和所述自定义数据基于所述消息模板生成消息体;将所述消息体发送给对应的客户端;通过系统变量和自定义变量可获得待发送消息的内容数据,通过根据业务场景时机选择消息模板,降低了第三方模板的依赖,当有新的待发消息加入系统发送时,只需增加或更改消息模板即可,实现消息的灵活可配。

附图说明

图1为本发明实施例提供的一种消息发送系统的结构示意图;

图2为本发明实施例提供的一种消息发送方法的流程示意图;

图3为本发明实施例提供的另一种消息发送方法的流程示意图;

图4为本发明实施例提供的另一种消息发送系统的结构示意图;

图5为本发明实施例提供的一种业务服务器的结构示意图;

图6为本发明实施例提供的一种的计算机设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为便于对本发明实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本发明实施例的限定。

图1为本发明实施例提供的一种消息发送系统的结构示意图,如图1所示,该消息发送系统10具体包括:

业务管理模块11、变量库模块12、平台模板模块13、业务模板模块14、权限管理模块15和消息封装模块16。

进一步地,本实施例提供的消息发送系统10,应用于通过多渠道发送消息,将当前消息通过不同渠道发送给不同类型的用于显示该消息的载体,如将消息发送系统应用于电商消息的更新,电商消息可以是但不限于:订单更新消息、订单发货消息、物流更新消息等,电商消息可以在多种渠道的客户端进行显示更新,如微信公号、短信、小程序、apppush、网页消息等。

业务管理模块11用于管理消息发送系统中各种待发送消息的业务(如,发货消息、物流消息、优惠专场消息等);变量库模块12存储自定义变量和系统变量,通过系统变量从业务方获取待发送的消息内容,通过自定义变量获取用户输入的获取待发送的消息内容;平台模板模块13存储有多种渠道对应的渠道模板,根据待发送消息的渠道调用对应的渠道模板;业务模板模块14存储有多种业务对应的业务模块,根据待发送消息的业务类型调用对应的消息模板;权限管理模块15用于对消息发送系统的配置、执行等操作进行授权;消息封装模块16用于对待发送消息进行封装,再将封装后的消息按照不同渠道发送对应的客户端。

图2为本发明实施例提供的一种消息发送方法的流程示意图,如图2所示,该方法具体包括:

s21、根据待发送消息确定消息模板。

进一步地,根据待发送消息的业务场景时机确定发送消息所使用的消息模板,如通知业务的消息对应使用通知业务的消息模板。

进一步地,业务场景时机可以理解为:业务对应于不同场景下消息的唯一发送时机,也即触发消息发送的点,例如,用户购买商品下单后5分钟,拼团成功的时间点,或任意设定的时间点等。

具体地,在确定消息模板时,相应地确定了用于获取待发送消息的内容数据的系统变量、自定义变量以及消息体的生成规则,以及根据该系统变量和自定义变量从业务服务器获取到待发送消息的内容数据,消息的生成规则用于指示生成消息体。

s22、获取包含有待发送消息的系统变量对应的系统数据。

s23、接收业务服务器发送的自定义变量对应的自定义数据。

在本实施例中,消息发送系统根据待发送消息的消息模板确定待发送消息的系统变量和自定义变量,并根据系统变量从业务服务器获取对应的系统数据(如订单数据、物流数据等),根据自定义变量从业务服务器获取对应的自定义数据(如,商家自定义的店铺优惠专场消息的开抢时间点、优惠券发放数量等)。

s24、根据所述系统数据和所述自定义数据生成消息体。

s25、将所述消息体发送给对应的客户端。

根据获取到的系统数据和自定义数据确定待发送消息的内容数据,并将该待发送消息对应的内容数据基于消息模板生成消息体,将该消息体发送给对应的客户端。

具体地,将系统变量对应的系统数据和自定义变量对应的自定义数据,基于消息模板对应的消息体的生成规则,生成消息体。

在本发明实施例的一可选方案中,还可以采用多种渠道将消息体发送给对应的客户端,如通过微信渠道发送给微信小程序,又如,通过短信渠道发送给短信客户端等。

本发明实施例的消息发送方法,通过根据待发送消息确定消息模板;获取包含有待发送消息的系统变量对应的系统数据;接收业务服务器发送的自定义变量对应的自定义数据;根据所述系统数据和所述自定义数据基于所述消息模板生成消息体;将所述消息体发送给对应的客户端,通过系统变量和自定义变量可获取待发送消息的内容数据,通过根据业务场景时机选择消息模板,降低了第三方模板的依赖,当有新的待发消息加入系统发送时,只需增加或更改消息模板即可,实现消息的灵活可配。

图3为本发明实施例提供的另一种消息发送方法的流程示意图,如图3所示,该方法具体包括:

s31、根据待发送消息确定消息模板。

s32、获取包含有待发送消息的系统变量对应的系统数据。

s33、通过业务服务器的接口采用与所述接口对应的协议接收所述业务服务器发送的所述自定义变量对应的自定义数据,以及与所述自定义变量对应的授权参数。

在本实施例中,业务服务器通过调用消息发送系统的接口即可完成数据的发送流程,通过接口传输的系统变量和自定义变量可以是json格式参数。

进一步地,消息通知系统根据系统变量从业务服务器获取系统数据,通过自定义变量从业务服务器接收自定义数据。

具体地,系统数据可以是业务服务器内存储的数据信息(如,订单数据、物流更新数据等),在本实施例中,消息通知系统采用系统变量的形式从业务服务器获取存储的数据信息;除业务服务器内存储的数据信息外,还包括一些用户根据自己实际需求进行自定义的信息(如,优惠专场消息的开抢时间点、优惠券发放数量等等),采用自定义变量的形式从业务服务器获取自定义信息。

s34、解析所述系统数据和所述自定义数据,得到对应的变量值。

具体地,根据所述授权参数,对所述系统数据和所述自定义数据进行解析;确定所述系统数据和所述自定义数据对应的变量值。

s35、验证所述变量值是否正确,以及验证所述变量值是否符合消息发布条件。

根据授权参数验证系统数据对应的变量值是否正确(如,如验证通过系统变量获取的订单信息是否正确),验证系统数据和自定义数据是否相匹配,并验证该变量值是否符合消息发布条件,消息发布条件可以是客户端进行消息发布的规则,如,该消息是否属于违法消息、该消息是否涉黄、涉毒等。

s36、确定所述待发送消息的场景类型,以及根据所述场景类型确定渠道模板。

消息发送系统根据待发送消息确定对应的场景类型,例如,待发送消息为发货消息时,场景类型为通知类消息;再根据场景类型确定对应的渠道模板,也即,该消息需要通过哪些渠道发送给客户端,如场景为通知类消息时,以及确定将通知消息通过微信公号、短信、小程序三种渠道进行发送时,确定对应的渠道模板分别为:微信公号通知类消息模块、短信通知类消息模块、小程序通知类消息模块。

s37、若所述变量值正确,且符合消息发布条件,则将所述变量值基于所述消息模板生成消息体。

若系统数据和自定义数据对应的变量值正确,且该变量值符合消息发布条件时,将该变量值基于消息模板生成消息体。

例如,消息模板可以是:

尊敬的亲,您的订单已发货。

变量值对应的具体数据为:收货人姓名(李xx),订单号(xxx),商品(v),发货地(vv);

将变量值基于消息模板生成的消息体可以是:

尊敬的李xx:

您的订单xxx中的商品v,已经从vv出库发货。

s38、根据所述渠道模板将所述消息体发送给对应的客户端。

例如,获取系统变量a对应的系统数据a,获取自定义变量b对应的自定义数据b,将系统数据a和自定义b基于消息模板c,生成消息体d(a+b);渠道模板e对应微信公号,渠道模板f对应短信,将d(a+b)通过e发送给微信客户端,以使微信客户端的小程序显示d(a+b),将d(a+b)通过渠道模板f发送给短信客户端,以使短信客户端显示d(a+b)。

本发明实施例的消息发送方法,根据待发送消息确定消息模板,通过获取包含有待发送消息的系统变量对应的系统数据;接收业务服务器发送的自定义变量对应的自定义数据;根据所述系统数据和所述自定义数据基于所述消息模板生成消息体,将所述消息体发送给对应的客户端,通过系统变量和自定义变量可获取待发送消息的内容数据,通过根据业务场景时机选择消息模板,降低了第三方模板的依赖,当有新的待发消息加入系统发送时,只需增加或更改消息模板即可,实现消息的灵活可配,根据渠道模板可将消息同步发送至不同的客户端,提升消息发布的效率。

图4为本发明实施例提供的另一种消息发送系统的结构示意图,如图4所示,该消息发送系统具体包括:

确定模块401,用于根据待发送消息确定消息模板;

获取模块402,用于获取包含有待发送消息的系统变量对应的系统数据;

接收模块403,用于接收业务服务器发送的自定义变量对应的自定义数据;

生成模块404,用于根据所述系统数据和所述自定义数据基于所述消息模板生成消息体;

发送模块405,用于根据所述渠道模板将所述消息体发送给对应的客户端。

可选地,所述装置还包括:验证模块406,用于解析所述系统数据和所述自定义数据,得到对应的变量值;验证所述变量值是否正确,以及验证所述变量值是否符合消息发布条件。

可选地,所述接收模块403,还用于通过业务服务器的接口采用与所述接口对应的协议接收所述业务服务器发送的所述自定义变量对应的自定义数据,以及与所述自定义变量对应的授权参数。

可选地,所述确定模块401,还用于根据所述授权参数,对所述系统数据和所述自定义数据进行解析;确定所述系统数据和所述自定义数据对应的变量值。

可选地,所述生成模块404,具体用于若所述变量值正确,且符合消息发布条件,则将所述变量值基于所述消息模板生成消息体。

可选地,所述确定模块401,还用于确定所述待发送消息的场景类型;根据所述场景类型确定渠道模板;

所述发送模块405,具体用于根据所述渠道模板将所述消息体发送给对应的客户端。

本实施例提供的消息发送系统可以是如图4中所示的消息发送系统,可执行如图2-3中消息发送方法的所有步骤,进而实现图2-3所示消息发送方法的技术效果,具体请参照图2-3相关描述,为简洁描述,在此不作赘述。

图5为本发明实施例提供的一种业务服务器的结构示意图,如图5所示,具体包括:

生成模块501,用于根据待发送消息生成系统数据;

接收模块502,用于接收用户输入的自定义信息;

所述生成模块501,用还于根据所述自定义信息生成自定义数据;

发送模块503,用于通过数据传输接口将所述系统数据和所述自定义数据发送给消息发送系统。

图6为本发明实施例提供的一种的计算机设备的结构示意图,图6所示的计算机设备600包括:至少一个处理器601、存储器602、至少一个网络接口604和其他用户接口603。移动终端600中的各个组件通过总线系统605耦合在一起。可理解,总线系统605用于实现这些组件之间的连接通信。总线系统605除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图6中将各种总线都标为总线系统605。

其中,用户接口603可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。

可以理解,本发明实施例中的存储器602可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(electricallyeprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(staticram,sram)、动态随机存取存储器(dynamicram,dram)、同步动态随机存取存储器(synchronousdram,sdram)、双倍数据速率同步动态随机存取存储器(doubledataratesdram,ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,esdram)、同步连接动态随机存取存储器(synchlinkdram,sldram)和直接内存总线随机存取存储器(directrambusram,drram)。本文描述的存储器602旨在包括但不限于这些和任意其它适合类型的存储器。

在一些实施方式中,存储器602存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作系统6021和应用程序6022。

其中,操作系统6021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序6022,包含各种应用程序,例如媒体播放器(mediaplayer)、浏览器(browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序6022中。

在本发明实施例中,通过调用存储器602存储的程序或指令,具体的,可以是应用程序6022中存储的程序或指令,处理器601用于执行各方法实施例所提供的方法步骤,例如包括:

根据待发送消息确定消息模板;获取包含有待发送消息的系统变量对应的系统数据;接收业务服务器发送的自定义变量对应的自定义数据;根据所述系统数据和所述自定义数据基于所述消息模板生成消息体;将所述消息体发送给对应的客户端。

可选地,解析所述系统数据和所述自定义数据,得到对应的变量值;验证所述变量值是否正确,以及验证所述变量值是否符合消息发布条件。

可选地,通过业务服务器的接口采用与所述接口对应的协议接收所述业务服务器发送的所述自定义变量对应的自定义数据,以及与所述自定义变量对应的授权参数。

可选地,根据所述授权参数,对所述系统数据和所述自定义数据进行解析;确定所述系统数据和所述自定义数据对应的变量值。

可选地,若所述变量值正确,且符合消息发布条件,则将所述变量值基于所述消息模板生成消息体。

可选地,确定所述待发送消息的场景类型;根据所述场景类型确定渠道模板;

根据所述渠道模板将所述消息体发送给对应的客户端。

可选地,通过所述待发送消息的业务类型、场景类型和时机类型配置所述自定义变量。

或者,

根据待发送消息生成系统变量;接收用户输入的自定义信息,根据所述自定义信息生成自定义变量;通过数据传输接口将所述系统变量和所述自定义变量发送给消息发送系统。

上述本发明实施例揭示的方法可以应用于处理器601中,或者由处理器601实现。处理器601可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器601中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器601可以是通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(fieldprogrammablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器602,处理器601读取存储器602中的信息,结合其硬件完成上述方法的步骤。

可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(applicationspecificintegratedcircuits,asic)、数字信号处理器(digitalsignalprocessing,dsp)、数字信号处理设备(dspdevice,dspd)、可编程逻辑设备(programmablelogicdevice,pld)、现场可编程门阵列(field-programmablegatearray,fpga)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。

对于软件实现,可通过执行本文所述功能的单元来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。

本实施例提供的计算机设备可以是如图6中所示的计算机设备,可执行如图2-3中消息发送方法的所有步骤,进而实现图2-3所示消息发送方法的技术效果,具体请参照图2-3相关描述,为简洁描述,在此不作赘述。

本发明实施例还提供了一种存储介质(计算机可读存储介质)。这里的存储介质存储有一个或者多个程序。其中,存储介质可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘;存储器还可以包括上述种类的存储器的组合。

当存储介质中一个或者多个程序可被一个或者多个处理器执行,以实现上述在消息发送设备侧执行的消息发送方法。

所述处理器用于执行存储器中存储的消息发送程序,以实现以下在消息发送设备侧执行的消息发送方法的步骤:

根据待发送消息确定消息模板;获取包含有待发送消息的系统变量对应的系统数据;接收业务服务器发送的自定义变量对应的自定义数据;根据所述系统数据和所述自定义数据基于所述消息模板生成消息体;将所述消息体发送给对应的客户端。

可选地,解析所述系统数据和所述自定义数据,得到对应的变量值;验证所述变量值是否正确,以及验证所述变量值是否符合消息发布条件。

可选地,通过业务服务器的接口采用与所述接口对应的协议接收所述业务服务器发送的所述自定义变量对应的自定义数据,以及与所述自定义变量对应的授权参数。

可选地,根据所述授权参数,对所述系统数据和所述自定义数据进行解析;确定所述系统数据和所述自定义数据对应的变量值。

可选地,若所述变量值正确,且符合消息发布条件,则将所述变量值基于所述消息模板生成消息体。

可选地,确定所述待发送消息的场景类型;根据所述场景类型确定渠道模板;

根据所述渠道模板将所述消息体发送给对应的客户端。

可选地,通过所述待发送消息的业务类型、场景类型和时机类型配置所述自定义变量。

或者,

根据待发送消息生成系统数据;接收用户输入的自定义信息,根据所述自定义信息生成自定义数据;通过数据传输接口将所述系统数据和所述自定义数据发送给消息发送系统。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1