CN111753164A - 链路事件引导方法、装置、电子设备及存储介质 - Google Patents
链路事件引导方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111753164A CN111753164A CN201910237721.7A CN201910237721A CN111753164A CN 111753164 A CN111753164 A CN 111753164A CN 201910237721 A CN201910237721 A CN 201910237721A CN 111753164 A CN111753164 A CN 111753164A
- Authority
- CN
- China
- Prior art keywords
- event
- link
- current
- data pool
- container
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开实施例提供了一种链路事件引导方法、装置、电子设备及计算机可读存储介质,涉及互联网技术领域,所述链路事件引导方法包括:发送链路请求,并接收响应于所述链路请求的链路报文;在当前数据池中存储当前容器的事件信息;根据所述链路报文获取未被执行的当前事件的当前事件标识;若所述当前数据池中包括所述当前事件标识,则执行所述当前事件,以显示所述当前事件对应的提示视图。本公开实施例提供的方案,能够提高链路事件执行的通用性,可以适用于多种场景或者平台。
Description
技术领域
本公开涉及互联网技术领域,具体而言,涉及一种链路事件引导方法、链路事件引导装置、电子设备以及计算机可读存储介质。
背景技术
随着互联网的发展,网站、H5站(H5是一系列制作网页互动效果的技术集合,即H5就是移动端的web页面)、移动APP(application,应用程序)等公司业务输出端口经过了多年的功能和业务的积累,功能变得越来越完善,同时也变得越来越繁杂,越来越臃肿。虽然功能入口比较明确,功能也比较完善,但是功能比较独立。
这个现象在移动设备上的应用尤为明显。这里以移动设备上安装的移动APP为例,因此,当用户第一次进入APP某个页面时候,在第一次操作新功能时,需要引导用户进行操作。但是,相关技术中的功能引导操作只能适用于单一应用场景。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种链路事件引导方法、装置、电子设备及计算机可读存储介质,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的功能引导操作通用性不够的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供一种链路事件引导方法,包括:发送链路请求,并接收响应于所述链路请求的链路报文;在当前数据池中存储当前容器的事件信息;根据所述链路报文获取未被执行的当前事件的当前事件标识;若所述当前数据池中包括所述当前事件标识,则执行所述当前事件,以显示所述当前事件对应的提示视图。
根据本公开的一个方面,提供一种链路事件引导装置,包括:链路事件获取模块,配置为发送链路请求,并接收响应于所述链路请求的链路报文;容器事件存储模块,配置为在当前数据池中存储当前容器的事件信息;当前事件获取模块,配置为根据所述链路报文获取未被执行的当前事件的当前事件标识;链路事件执行模块,配置为若所述当前数据池中包括所述当前事件标识,则执行所述当前事件,以显示所述当前事件对应的提示视图。
根据本公开的一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的链路事件引导方法。
根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的链路事件引导方法。
本示例性实施例提供的链路事件引导方法、装置、电子设备及计算机可读存储介质中,通过发送链路请求,并接收响应于所述链路请求的链路报文,从而可以根据所述链路报文获取未被执行的当前事件的当前事件标识,并在当前数据池中存储当前容器的事件信息,将所述当前事件标识与所述当前数据池中的数据进行比对,若所述当前数据池中包括所述当前事件标识,则可以执行所述当前事件,以实现显示所述当前事件对应的提示视图的功能,即本公开实施例提供的方案,设计开发了一套全平台通用、全容器或界面(整个界面或者全屏)通用的链路平台事件引导方案,能够实现多场景下的通用引导服务。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出本公开示例性实施例中用于实现方法的系统架构图。
图2示意性示出本公开示例性实施例中第一种方法的示意图。
图3示意性示出本公开示例性实施例中为事件之间建立关联关系的具体流程图。
图4示意性示出本公开示例性实施例中下发链路数据的示意图。
图5示意性示出本公开示例性实施例中第二种方法的示意图。
图6示意性示出本公开示例性实施例中实现功能引导的具体流程图。
图7示意性示出本公开示例性实施例中实现功能引导的操作界面的示意图。
图8示意性示出本公开示例性实施例中第一种装置的框图。
图9示意性示出本公开示例性实施例中第二种装置的框图。
图10示意性示出本公开示例性实施例中链路平台的框图。
图11示意性示出本公开示例性实施例中一种链路事件引导方法的流程图。
图12示意性示出本公开示例性实施例中另一种链路事件引导方法的流程图。
图13示意性示出本公开示例性实施例中另一种链路事件引导方法的流程图。
图14示意性示出基于图13的步骤S1310的一示例性实施例的流程图。
图15示意性示出基于图13的步骤S1320的一示例性实施例的流程图。
图16示意性示出基于图13的步骤S1330的一示例性实施例的流程图。
图17示意性示出本公开示例性实施例中一种链路事件引导装置的模块示意图。
图18示意性示出本公开示例性实施例中的电子设备的示意图。
图19示意性示出本公开示例性实施例中的计算机可读存储介质的示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
首先,对本公开实施例中提及的术语进行定义说明。
事件:发送操作控件的基本单位。
埋点事件:对事件属性actionID(事件标识)赋值的事件。
空事件:未对事件属性actionID赋值的事件。可以用字段“_nullactionid_”标识。
容器:当前界面内,包含所有事件的集合。也就是说,在当前页面内不可能触发除容器以外的常规事件,因此,模态的浮框也为容器。
容器界面:在容器内UI元素共同绘制的界面。
开发者模式:在开发阶段,所采用的上报策略模式。
线上模式:在APP或网站,后台在线上运营期间的模式。
图形数据库:是以图形结构的形式存储数据的数据库。它以节点、关系和属性的形式存储应用数据的数据。正如RDBMS(Relational Database Management System,关系数据库管理系统)以表的“行,列”的形式存储数据,GDBMS(Generalized Data Base ManagementSystem,综合数据库管理系统)以图形的形式存储数据。
Neo4j:是一个图形数据库。它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎。
节点:在这里指图形数据库内的一个数据单元。
链路:一条链路由一组能够完成引导服务的事件组成。一套链路代表着一次引导服务。一次引导服务代表着一次有意义的功能。
相关技术中,为了解决功能比较独立的问题,可通过蒙版(静态模板)、新手引导、动态引导等方式来进行引导操作。其中,蒙版是指当用户第一次进入某个操作较为复杂或新上的功能时,弹出蒙版,指引用户如何操作。静态模板往往是通过带有指示用户操作的箭头和说明的图片构成,当用户按照提示点击某个位置时候,蒙版即消失。新手引导是提前在APP中预置功能引导路径,当用户第一次安装或者第一次触发时候,进入引导流程。动态引导是基于功能请求,路径服务端动态下发的功能引导服务系统。在游戏APP中使用较多。由于游戏场景比较固定,往往针对新人进行某一场景的指引。
但是,蒙版和新手引导虽然能够实现引导服务,但是数据被固定化,不够灵活。动态引导服务虽然数据比较灵活,但是实现不够明确,功能比较单一,就是单纯的功能引导服务,在动态引导实现上,往往将指引逻辑和游戏逻辑写到一起,没有将动态指引作为一个服务独立出来。
本示例实施方式中首先提供了一种用于实现方法的系统架构,参考图1所示,该系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送请求指令等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如图片处理应用、购物类应用、网页浏览器应用、检索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如提示视图--仅为示例)反馈给终端设备。
基于图1中的系统架构,本示例实施方式中提供了一种方法,可以应用于对复杂功能进行引导、推荐等场景。参考图2所示,以服务端为执行主体,对本示例性实施例中的方法进行详细说明。
在步骤S210中,根据客户端上报的事件埋点读取用户对应的事件,并对所述事件进行审核。
本示例性实施例中,事件埋点指的是将事件属性加入到应用程序APP的控件中,即对事件属性进行赋值。事件指的是发送操作控件的基本单位。按照在业务场景中的具体功能,事件的类型包括但不限于动态事件、静态事件和定制事件。其中:动态事件指的是在程序上线运行期间,功能可能变化的事件,例如某个APP的不同类型入口;静态事件指的是在程序上线期间,功能不会发生变化的事件,例如某个APP的设置入口;定制事件指的是因用户而功能变化的事件,且每个用户对应的定制事件可不同,例如某个APP首页活动或广告入口。
事件属性包括但不限于几个方面:事件标识号actionID,用于在容器内保证唯一,由开发人员自己设置。事件类型actionType,例如静态事件,动态事件,定制事件,默认为静态事件。containerID容器标识号,由容器名称+容器类型containerType构成。事件的级别level(一级入口,二级入口等)。事件功能关键字描述key,具体可包括事件重要性分类(主功能,辅助性描述功能),还可以包括编辑规则(越常用,越主要的功能描述放到前面)。指向下几个事件的指针nextActions以及由开发者备注使用comment。
在完成事件埋点之后,客户端可将事件埋点上报至服务端。服务端可以接收来自客户端的数据上报,并将接收到的数据(事件属性)进行整理。具体而言,可将事件属性中的容器标识号containerID和事件标识号actionID拼接形成一个预设标识号,用该预设标识号作为事件的一个唯一ID,以避免重复。进一步地,还可以将预设标识号以及接收到的数据存储至一个临时数据库。该临时数据库是做暂存储用,需要对数据进行编辑,正式发布后,数据会从临时数据库中删除。
在接收到上报的数据之后,可根据所述预设标识号以及通用唯一识别码读取所述事件,并为所述事件配置关键字。UUID(Universally Unique Identifier,通用唯一识别码)的作用在于表示用户的唯一标识,每个用户都可对应不与其他人冲突的UUID。如此一来,可根据预设标识号以及UUID读取到与每个用户对应的某一个事件。在读取到用户的事件后,可按照相应的规则配置事件的关键字key。其中,相应的规则可根据实际需求由用户自己定义,只要配置的关键字能够描述事件的意思或含义就好。
进一步地,可对事件进行审核,具体指的是根据参考版本的功能以及所述关键字判断所述事件是否正确,并根据判断结果对所述事件进行处理。参考版本指的是某个APP要发布的最新版本。具体而言,可对照APP要发布最新版本的功能,根据最新版本的功能的关键字以及接收到的数据对应的关键字,确定接收到的事件是否正确,以便于根据事件是否正确的判断结果来对事件进行处理。如果判断事件不正确,则删除不正确的事件埋点,并发布正确的事件埋点。例如,若事件的关键字与参考版本的功能不匹配,则确定事件不正确,并且删除掉对于该事件错误的事件埋点而更新为正确的事件埋点。若所述事件之间存在断链或者是冗余等异常状态,则对所述断链的异常状态进行上报。例如,事件1和事件2之间存在断链,则将事件1和事件2之间存在断链的情况进行补充上报。类似地,若事件2和事件3之间存在冗余,则将事件2和事件3之间存在冗余链条进行补充上报。如果事件正确且无异常状态,则不作处理。
在步骤S220中,建立审核后的事件之间的关联关系并将所述关联关系存储至数据库。
本示例性实施例中,关联关系用于描述不同事件之间的关系。通过建立审核后的事件之间的关联关系,能够避免错误的事件,并且能够根据关联关系执行多个事件,以为用户提供便利。数据库指的是图形数据库,图形数据库是以图形结构的形式存储数据的数据库。它以节点,关系和属性的形式存储应用程序的数据。本示例性实施例中以Neo4j图形数据库为例进行说明。
图3中示意性示出了为事件之间建立关联关系的示意图。参考图3中所示,具体包括以下步骤:
在步骤S310中,链接所述数据库,其中的数据库例如可以为Neo4j图形数据库。
在步骤S320中,在所述数据库中为每个事件创建节点,并为每个事件对应的节点创建索引。
本步骤中,节点指的是图形数据库内的一个数据单元,每个事件可以与一个节点相对应。具体地,可为存储的每一个事件,在图形数据库中创建对应的节点。进一步地,还可以为每个节点创建一个一一对应的索引。索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,索引提供指向存储在表的指定列中的数据值的指针,然后根据您指定的排序顺序对这些指针排序。数据库使用索引以找到特定值,然后顺指针找到包含该值的行。本示例性实施例中,可以通过索引从数据库中方便查找到需要的节点进而根据节点查找到事件。
在步骤S330中,存储所述事件的先后顺序,并根据所述先后顺序为所述事件之间建立所述关联关系。
本步骤中,由于事件间是有先后顺序的。首先一个事件执行完成之后,下一个事件待执行;当触发下一个事件时候,会执行下一个事件。因此可以结合索引存储多个事件执行的先后顺序,进而按照事件的先后顺序,在图形数据库中为事件之间建立关联关系。
通过采用图形数据库存储事件以及事件之间的先后顺序,进而根据先后顺序为多个事件之间建立关联关系,能够使得建立的关联关系更准确,进而为生成链路提供便利。
在步骤S230中,根据接收到的由所述客户端发送的链路请求,结合所述数据库中的关联关系确定与所述链路请求匹配的链路数据发送至所述客户端,以便于所述客户端根据所述链路数据执行对应的功能。
本示例性实施例中,链路请求指的是用于确定合适的链路数据的请求。链路数据用于表示一组能完成某些功能(例如引导服务,推荐)的事件。也就是说,一个链路数据代表一次引导服务,一次引导服务代表一次功能。本示例性实施例中,主要以引导类功能为例进行说明。
图4中示意性示出了确定链路数据的示意图。参考图4中所示,具体包括以下步骤S410至步骤S430,其中:
在步骤S410中,根据所述链路请求中的关键字确定与所述链路请求匹配的事件节点。
本步骤中,在接收到由客户端发送的链路请求时,首先可获取链路请求中的关键字,例如关键字1。进一步地,可将获取到的关键字与图形数据库中存储的为所有事件配置的关键字进行对比,以根据关键字是否匹配来确定与链路请求对应的事件的事件节点。可例如,关键字1与事件1的关键字11匹配成功,则确定的链路请求对应的事件节点可以为事件1对应的节点。
在步骤S420中,计算所述关键字和所述事件节点的相邻节点的关键字之间的节点匹配度。
本步骤中,相邻节点的关键字指的是在图形数据库中与当前事件的节点相邻的其他节点,即相邻节点表示的事件的关键字。需要说明的是,相邻节点的数量可以为多个。可例如,将事件1作为当前事件,则事件1的节点作为当前节点,例如关键字1。相邻节点例如可以为节点2,其对应的事件可以为事件2;相邻节点也可以为节点3,其对应的事件可以为事件3;相邻节点还可以为节点4,其对应的事件可以为事件4。进一步地,可将获取到的关键字1与事件2、事件3和事件4的关键字进行对比,以确定关键字之间的节点匹配度,此处的匹配度也可以理解为相似度。
在步骤S430中,根据所述节点匹配度选择一个目标节点,并通过最短路径算法确定所述目标节点与当前容器的路径,以确定所述链路数据。
本步骤中,目标节点指的是最终确定的节点。具体可以根据匹配度由大到小的顺序确定目标节点,以保证确定的目标节点的准确性。例如,关键字1与事件2、事件3和事件4的关键字的匹配度由大到小的排列顺序依次为事件4>事件2>事件3,则可将事件4对应的节点确定为目标节点。
在此基础上,可计算目标节点与当前容器的路径。容器指的是当前界面内,包含所有事件的集合。也就是说,在当前页面内不可能触发除容器以外的常规事件,例如模态的浮框也属于容器。当前容器指的是与当前事件存在关联关系的所有事件的集合。具体而言,可根据最短路径算法或者是最优路径算法等等,此处以最短路径算法为例进行说明。
最短路径算法指的是,从图形数据库中的某顶点出发,沿图的边到达另一顶点所经过的路径中,各边上权值之和最小的一条路径叫做最短路径。对于本步骤而言,目标节点指的是一个顶点,当前容器指的是另一个顶点,由此可以确定一个最短路径。在确定最短路径之后,可将最短路径作为与链路请求对应的链路数据,并将该链路数据下发至客户端。如此一来,客户端可以得到准确的链路数据,并且根据准确的链路数据执行对应的功能,例如执行引导功能等等,以实现功能之间的互通和灵活性。
通过图4中的方法,通过确定目标节点以及最短路径,能够得到符合链路请求的链路数据,提高确定链路数据的准确性。
除此之外,本示例性实施例中还提供了以客户端为执行主体的另一种方法。参考图5所示,对本示例性实施例中的方法进行详细说明。
步骤S510中,将事件埋点上报至服务端,以使服务端为所述事件埋点对应的事件之间创建关联关系。
本示例性实施例中,事件埋点已在步骤S210中进行了描述,此处不再赘述。客户端将事件埋点上报至服务端的具体方法可以包括以下两种:第一种,若事件属性为静态事件,则根据点击跳转操作自动收集事件,并将收集到的所述事件进行上报。也即是说,在开发、调试过程中,将开发者开发功能过程中的点击、跳转等,自动完成静态事件的收集,并将收集到的事件进行上报。这种上报模式可以理解为开发者模式。第二种,若事件属性为所述动态事件或所述定制事件,则在用户点击事件或容器加载事件时,对事件进行收集并上报。也即是说,在线上完成动态事件和定制事件的上报。当用户进入容器,容器加载事件或者用户点击事件的时候,完成事件的收集任务,并上报。这种上报模式可以理解为线上模式。
需要补充的是,对于开发者模式和线上模式而言,其上报事件埋点时上报的信息均相同,具体均可以包括事件属性。可例如,上报的信息主要包含actionID、actionType、containerID、nextActions。
通过将事件埋点上报至服务端,能够使服务端根据事件埋点读取用户对应的事件,以为事件之间建立关联关系。通过不同的方式(开发者模式或线上模式)将事件埋点上报至服务端,能够提高信息上报的准确性和效率。
在步骤S520中,根据功能类型确定链路请求,并将所述链路请求发送至所述服务端以得到所述关联关系和所述链路请求对应的链路数据。
本示例性实施例中,功能类型包括但不限于引导类功能、游戏类功能以及推荐类功能。基于此,根据功能类型确定链路请求包括以下几种情况:第一种,若为所述引导类功能,则所述链路请求包括从当前容器到达目标功能入口的一条最优链路。目标功能入口可以为下一步即将要处理的功能或者是要实现的功能。若为引导类功能,则可根据步骤S410至步骤S430中的步骤来确定当前容器到达目标功能入口的一条最优的链路数据,即确定一个从当前事件对应的容器到达即将要实现的功能入口处的最优的要执行的一组事件(即链路数据)。第二种,若为所述游戏类功能,则所述链路请求包括游戏场景下的多条链路数据,以及通过条件数据使得所述链路数据满足所述游戏场景下不断跳转的需求。其中,条件数据指的是限制数据。也就是说,可以请求某一个游戏场景下的几条链路数据,并且可以添加一些限制数据使得链路数据满足游戏场景下不断跳转的需求。第三种,若为所述推荐类功能,则所述链路请求包括从当前容器到达目标功能入口的最优路径,且所述最优路径不超过四步。此处的最优路径指的是从当前容器到目标功能入口的简化、快捷的最优路径,该最优路径的不超过四步,以通过该最优路径实现快速推荐。
通过功能类型确定对应的链路请求之后,可将链路请求发送至服务端,以使服务端根据事件之间的关联关系以及对应的链路请求下发对应的链路数据,进一步将链路数据返回至客户端,以使客户端得到关联关系和链路请求对应的链路数据。本示例中,通过功能类型能够得到准确的符合实际情况的链路请求,从而可以使得到的链路数据更准确。
在步骤S530中,对所述链路数据进行解析,并按照所述链路数据的预设规则执行对应的功能。
本示例性实施例中,在得到由服务端下发的链路数据之后,可对链路数据进行解析,以使其满足客户端可以使用的格式。进一步地,可按照链路数据的预设规则执行对应的功能。预设规则指的是:以事件标识actionID和容器标识containerID生成的唯一的预设标识号作为事件ID,根据事件ID生成链表。如此一来,可根据事件ID构成的链路得到链路数据。基于此,可按照链路数据中包含的事件ID依次执行对应的所有事件,进而通过执行事件完成对应的功能。通过按照预设规则执行对应的功能,可保证事件执行的先后顺序和事件执行准确性。具体而言,按照所述链路数据的预设规则控制执行对应的功能包括:按照所述预设规则自动执行链路数据,以执行对应的功能,即客户端按照事件ID的顺序依次执行多个事件,从而实现链路数据中的事件对应的功能。除此之外,也可通过蒙版提示用户执行链路数据,以执行对应的功能。蒙版作为一个特殊的容器,覆盖到当前容器上面。通过蒙版可以提示用户如何操作,例如采用点击、滑动手势等。通过蒙版还可以加入游戏元素,建立游戏场景,另外可以将更加丰富的元素加入到蒙版上,提高用户体验。
本示例性实施例中,通过链路数据,可以是功能之间建立连接,提供功能互通;除此之外,基于链路数据,能够实现多种功能,提高多样性。
图6示意性示出了实现功能引导的流程图。参考图6中所示,主要包括以下步骤。
在步骤S610中,用户发起寻找功能请求,寻找功能请求例如可以为如何达到“电话客服”。
在步骤S620中,APP根据用户的寻找功能请求对应的链路数据进行指引。
在步骤S630中,用户根据APP的指引进行操作。
在步骤S640中,APP到达用户想要的目标功能入口的位置。
本示例性实施例中,通过寻找功能请求对应的链路数据对用户进行指引,能够灵活地实现功能指引,且提高了功能的多样性。
图7中示意性示出了实现功能引导的操作界面的示意图,参考图7所示,当前容器为“客服”,用户需要的目标功能为“电话客服”,则首先可以通过蒙版提示用户需要点击的位置,例如提示用户点击图7(A)中的“客户服务”,再提示用户点击图7(B)中的“电话客服”,即可完成功能引导。需要注意的是,可将提示用户需要点击的位置进行标记,例如用固定样式进行标识等等。除此之外,还可以在操作界面上呈现云朵、草坪、小狗等元素,以作为游戏元素,并根据这些游戏元素建立游戏场景,提高用户体验。
本公开还提供了一种装置。参考图8所示,该装置800可以包括:事件读取模块801、关系建立模块802以及链路确定模块803。
其中,事件读取模块801可以用于根据客户端上报的事件埋点读取用户对应的事件,并对所述事件进行审核。关系建立模块802可以用于建立审核后的事件之间的关联关系并将所述关联关系存储至数据库。链路确定模块803可以用于根据接收到的链路请求,结合所述数据库中的关联关系确定与所述链路请求匹配的链路数据发送至所述客户端,以便于所述客户端根据所述链路数据执行对应的功能。
本公开还提供了另一种装置。参考图9所示,该装置900可以包括:事件埋点上报模块901、链路请求确定模块902以及功能执行模块903。
其中,事件埋点上报模块901可以用于将事件埋点上报至服务端,以使服务端为所述事件埋点对应的事件之间创建关联关系。链路请求确定模块902可以用于根据功能类型确定链路请求,并将所述链路请求发送至所述服务端以得到所述关联关系和所述链路请求对应的链路数据。功能执行模块903可以用于对所述链路数据进行解析,并按照所述链路数据的预设规则执行对应的功能。
需要说明的是,上述装置中各模块的具体细节已经在对应的方法实施例中进行了详细描述,因此此处不再赘述。
除此之外,本示例性实施例中还提供了一种链路平台系统,参考图10中所示,该系统1000主要包括客户端1001和服务端1002。和一般的平台化服务一样,本平台也会有一个注册账户,注册应用的模块。下面对本平台的一些技术模块做详细介绍:
客户端1001的主要功能包括但不限于事件埋点、上报事件埋点、链路请求、事件链路解析、事件链路执行以及蒙版展示。服务端1002的主要功能包括但不限于注册账户,注册应用,并将其存储至普通数据库MySQL,在上报事件埋点之后收集数据、事件审核与配置得到事件之间的关联关系并存储至图形数据库neo4j,事件下发服务。
基于链路平台,可以使功能模块之间建立建立,提供功能互通,流量互通。基于链路平台,在业务上,可以基于链路平台可以实现功能引导、链路游戏(地图类游戏)、智能推荐服务,智能引导服务。
上述实施例中,客户端通过链路平台服务,虽然已经可以实现较为灵活的可配置的指引,但是这些引导用户行为的方式只能实现固定场景(例如APP启动页,新手指引等)下的引导服务,还不能实现多场景(这里的多场景指的是应用内各个界面都可以使用本公开实施例提供的指引服务,比如新手引导、活动指引、新功能指引,以及所有可能的功能指引)下的通用。即常规引导服务应用场景单一。下面以某一平台为例详细描述事件执行(引导方案)。
图11示意性示出本公开示例性实施例中一种链路事件引导方法的流程图。如图11所示,本公开实施例提供的链路事件引导方法可以包括以下步骤。
在步骤S1110中,发送链路请求,并接收响应于所述链路请求的链路报文。
在示例性实施例中,发送链路请求,并接收响应于所述链路请求的链路报文,可以包括:将所述链路请求发送至服务端;接收所述服务端返回的所述链路报文;解析所述链路报文,生成字典数据;将所述字典数据存储至单例对象中。
在步骤S1120中,在当前数据池中存储当前容器的事件信息。
在示例性实施例中,所述当前容器的事件信息包括所述当前容器的事件的事件标识和事件指针;其中,在当前数据池中存储当前容器的事件信息,可以包括:在所述单例对象中设置所述当前数据池和备份数据池;收集所述当前容器的事件的事件标识和事件指针;将所述所述当前容器的事件的事件标识和事件指针作为键值对存储至所述当前数据池中。
在步骤S1130中,根据所述链路报文获取未被执行的当前事件的当前事件标识。
在步骤S1140中,若所述当前数据池中包括所述当前事件标识,则执行所述当前事件,以显示所述当前事件对应的提示视图。
在示例性实施例中,所述方法还可以包括:将所述当前数据池中的数据传递至所述备份数据池。
在示例性实施例中,所述方法还可以包括:若所述当前数据池中不包括所述当前事件标识,则判断所述备份数据池中是否包括所述当前事件标识;若所述备份数据池中包括所述当前事件标识,则执行所述当前事件,以显示所述当前事件对应的提示视图。
在示例性实施例中,所述方法还可以包括:生成事件执行完成通知;根据所述事件执行完成通知将所述当前事件标记为已执行事件。
在示例性实施例中,所述方法还可以包括:若所述当前事件为所述链路报文的最后一个事件,则生成链路执行完成通知;根据所述链路执行完成通知,将所述当前数据池和所述备份数据池清空。
在示例性实施例中,执行所述当前事件,以显示所述当前事件对应的提示视图,可以包括:获取所述当前事件标识对应的当前事件指针;根据所述当前事件指针获取所述当前事件的事件类型、事件位置和事件大小;根据所述当前事件的事件类型确定所述提示视图的操作标识,根据所述事件位置确定所述提示视图的显示位置,并根据所述事件大小确定所述提示视图的显示大小。
在示例性实施例中,所述提示视图可以为模态视图或者非模式视图。
本公开实施方式提供的链路事件引导方法,通过发送链路请求,并接收响应于所述链路请求的链路报文,从而可以根据所述链路报文获取未被执行的当前事件的当前事件标识,并在当前数据池中存储当前容器的事件信息,将所述当前事件标识与所述当前数据池中的数据进行比对,若所述当前数据池中包括所述当前事件标识,则可以执行所述当前事件,以实现显示所述当前事件对应的提示视图的功能,即本公开实施例提供的方案,设计开发了一套全平台通用、全容器或界面(整个界面或者全屏)通用的链路平台事件引导方案,能够实现多场景下的通用引导服务。
图12示意性示出本公开示例性实施例中另一种链路事件引导方法的流程图。本公开实施例中,链路是由一个个事件组成的,当用户通过某种方式触发引导(例如,语音、文字搜索等发起链路请求)后,客户端需要对一个个的事件去解析,然后通过一定的展示方式提示用户,最后引导用户行为。用户操作流程如图12所示。
在步骤S1210中,用户看到操作标识。
本公开实施例中,所述操作标识是指示用户如何操作的标识,可以是圆圈、小手、箭头等其中的任意一种或者多种的组合,并且指示标识带有一定的动作。
在步骤S1220中,用户根据标识进行操作。
本公开实施例中,对于用户的操作不限于点击,也可以是滑动,双击等等。
在步骤S1230中,用户到达指定位置。
下面结合图13-16描述下详细的解决方案:链路执行(事件引导)不同于常规的静态模板和动态引导,必须针对链路做统一的处理,以达到同样的处理逻辑适用多场景的目的。将事件引导服务从具体的业务应用中独立出来,作为一种独立的服务,实现和设计上要做到通用,并且给业务实现提供接口。下面针对某一平台写一下链路执行的逻辑。
图13示意性示出本公开示例性实施例中另一种链路事件引导方法的流程图。
如图13所示,本公开实施例提供的链路事件引导方法可以包括以下步骤。
在步骤S1310中,链路单元向服务端发送链路请求,并接收所述服务端返回的链路报文,对所述链路报文进行解析后将存储链路。
在步骤S1320中,事件单元完成当前容器事件的收集工作。
在步骤S1330中,执行单元实现链路事件的执行操作。
在步骤S1340中,展示单元实现用户如何操作的提示视图的展示。
本公开实施例中,所述展示单元主要实现用户如何操作的提示视图的展示。执行单元根据链路单元存储的链路和事件单元存储的当前容器的事件信息,可以获取到当前待执行的当前事件的当前事件指针,根据所述当前事件指针可以获取到所述当前事件的事件类型、事件位置和事件大小等信息。
其中,根据事件类型来提示用户是滑动、点击等操作。例如:如果是scroll view类型,则显示滑动提示,如果是button类型,则提示点击操作。根据事件位置来显示提示视图的位置。根据事件大小来展示提示视图可点击区域的大小。
具体的,提示视图可以使用以下两种实现方式。
提示视图实现方式一:
提示视图为非模态视图(提示视图周围区域(即事件展示区域之外的区域)可点击)。这时候用户点击提示视图可以将事件透传给链路事件对应的事件控件,从而使事件得到执行。这时候通知链路单元,当前事件已经执行完成。例如,可以参照图7的GUI界面,客服服务->客服电话流程。
提示视图实现方式二:
提示视图为模态视图(提示视图以外的区域不可通过系统传递事件)。又可以分为以下两种情况。
1)事件可以实现统一的action方法。已经知道了事件对象的指针,可以通过反射(例如,字符串反射函数)来实现调用或执行。例如,事件A和B,他们对应action事件的名字相同。
2)事件不实现统一的action方法,也可以通过设置提示视图位置可以传递事件,而其他区域不可传递事件来实现事件的透传,即事件在提示视图上是有对应的位置和区域的。只有在区域内可点击,在区域外不可点击。例如,在图7的界面上,对应客服电话圆圈外不可点击。实现做法根据提示视图的位置、大小范围以及整个容器(当前容器)的大小,绘制支持和不支持事件响应区域。
图14示意性示出基于图13的步骤S1310的一示例性实施例的流程图。
如图14所示,本公开实施例提供的步骤S1310可以包括以下步骤。
在步骤S1311中,客户端向服务端发送链路请求。
在步骤S1312中,客户端对服务端返回的响应于所述链路请求的链路报文进行解析,将所述链路报文转化为字典数据。
本公开实施例中,链路报文的解析可以采用系统方法也可以采用三方框架(例如SBJson(Objective-C实现的一个JSON(JavaScript Object Notation,JS对象简谱)解析器和生成器)等),链路解析的目的是将服务端返回的二进制链路报文转换成文本格式的字典数据。
在步骤S1313中,将字典数据存储到通过单例模式构建的单例对象中,以备后面执行链路的时候使用。
需要说明的是,并不限于将字典数据存储到单例模式构建的单例对象中。但是本公开实施例中,因为链路的执行是跨容器的,所以不能跟容器绑定,也不太适合放到本地存储,会影响读写效率和并不要求持久存储。
本公开实施例中,当接收到获取链路事件通知时,按照由前往后的顺序返回,返回最前面没被执行的事件。当用户触发事件,事件执行完成后,会进入下一个事件执行(展示事件,并处于等待响应状态)。以图7的客户服务->客服电话为例。当点击客户服务按钮后,则客户服务对应的事件执行完成,进入客服电话事件。
本公开实施例中,当接收到事件执行完成通知时,则将当前或者所述事件执行完成通知对应的未被执行的事件标记为已经执行。事件执行引擎会监听每个事件的执行情况,当检查到事件执行完成时候,则发送所述事件执行完成通知。监听可以通过事件响应者链实现。链路是由事件构成。链路的执行是一个个的事件。每个事件可以从未执行状态变为已执行状态。
图15示意性示出基于图13的步骤S1320的一示例性实施例的流程图。本公开实施例中,事件单元用于完成当前容器事件的收集工作。链路平台的实现,首先对事件进行埋点,埋点的主要工作是对事件控件跟actionID产生关联起来,也就是给事件控件增加了一个属性actionID。在事件收集的过程中,多平台通用(因为没有利用某个平台的特性,实现方案采用全平台可实现的逻辑)的方法如下:
如图15所示,本公开实施例提供的步骤S1320可以包括以下步骤。
在步骤S1321中,通过一个全局的类方法对当前容器的事件指针和actionID进行收集。
本公开实施例中,类方法是面向对象编程中一个概念。类方法可以全局调用。在这里类方法以事件和actionID为参数。
在步骤S1322中,通过在单例对象中增加两个字典或者枚举类型属性保存数据。
以增加两个字典为例,一个作为当前数据池,另一个作为备份数据池。这里用字典作为存储的好处是,有利于提高数据读取的效率,提供了一种通用的事件存储和执行方案。
在步骤S1323中,将当前容器的事件指针和actionID存储到当前数据池中。
本公开实施例中,以actionID为key,以actionID对应的事件指针为value的格式进行存储。其中,所述单例对象包含数据池并提供方法支持。
本公开实施例中,当接收到执行单元传来的事件执行完成通知时,将当前数据池中的数据(是指动态收集或者保存当前容器内所有的事件的集合)传递给备份数据池。这里所谓的传递是指将当前数据池中的数据剪切复制至备份数据池,即传递后当前数据池没有了该数据。如果当前数据池已经备份过了,则放弃备份。数据做这样处理的目的是,执行单元对事件的执行操作的需要。
本公开实施例中,当接收到执行单元传来的链路执行完成通知时,即表示链路中的最后一个事件执行完成,则将当前数据池和备份数据池清空。
图16示意性示出基于图13的步骤S1330的一示例性实施例的流程图。本公开实施例中,执行单元实现链路事件的执行操作。链路事件的执行时,按照由前往后顺序执行的,图16中的事件1和事件2都是链路的一部分。当执行完成链路最后一个事件后,通知事件单元链路已经执行完成。
如图16所示,本公开实施例提供的步骤S1330可以包括以下步骤。
在步骤S1331中,从链路单元获取当前要执行的链路事件,例如事件1。
在步骤S1332中,判断事件1是否执行;若事件1未执行,则返回步骤步骤S1331;若事件1已执行,则从链路单元获取当前要执行的链路事件,例如事件2。
本公开实施例中,以链路中的事件1的执行为例进行举例说明。
首先判断事件单元中当前数据池是否为空;若当前数据池为空,则说明事件1所在的容器即当前容器和之前所执行的事件为同一容器,因为之前所执行的事件执行完成后,会将当前数据池中的数据移动至备份数据池中,所以当再次执行下一个事件即这里的事件1时,当前数据池为空,则将事件1的actionID与事件单元中的备份数据池中的数据key进行比较。若当前数据池不为空,则将事件1的actionID与事件单元中的当前数据池中的数据key进行比较。即可以从不同数据池中查找当前事件。
如果当前数据池或者备份数据池中有对应与事件1的actionID的key的事件,则将事件1和事件单元中的key对应的事件数据进行合并,统一存储在一个数据模型,然后将事件1传递给展示单元。其中,这里的数据模型(程序开发中的一个概念)用于存储事件,从事件对象(事件数据模型的一个实例,用于显示或提示用户操作)中可以获取到事件1对应的事件类型、事件位置和事件大小等信息)。此外,还可以通知事件单元,当前事件1已经执行完成。
需要说明的是,这里提到的事件数据是指来自两个不同的数据源,一个来源于链路请求,只包含了actionID。数据池(当前数据池和备份数据池)中的事件数据来源于在APP运行时,在本地收集的事件,不仅仅包含了actionID,还有事件指针,通过事件指针可以拿到事件位置,事件大小,事件类型等信息。数据的合并过程其实是查到对应的事件的过程。查找到对应事件数据,然后展示执行。
如果当前数据池和备份数据池中均没有对应事件1的actionID的key的事件,则是由于异常情况引起的,这时候通知展示单元执行发生了异常。
图17示意性示出本公开示例性实施例中一种链路事件引导装置的模块示意图。
如图17所示,本公开实施例提供的链路事件引导装置1700可以包括链路事件获取模块1710、容器事件存储模块1720、当前事件获取模块1730以及链路事件执行模块1740。
其中,链路事件获取模块1710可以配置为发送链路请求,并接收响应于所述链路请求的链路报文。容器事件存储模块1720可以配置为在当前数据池中存储当前容器的事件信息。当前事件获取模块1730可以配置为根据所述链路报文获取未被执行的当前事件的当前事件标识。链路事件执行模块1740可以配置为若所述当前数据池中包括所述当前事件标识,则执行所述当前事件,以显示所述当前事件对应的提示视图。
在示例性实施例中,链路事件获取模块1710可以包括:链路请求发送单元,可以配置为将所述链路请求发送至服务端;链路报文接收单元,可以配置为接收所述服务端返回的所述链路报文;链路报文解析单元,可以配置为解析所述链路报文,生成字典数据;链路事件存储单元,可以配置为将所述字典数据存储至单例对象中。
在示例性实施例中,所述当前容器的事件信息可以包括所述当前容器的事件的事件标识和事件指针。其中,容器事件存储模块1720可以包括:数据池设置单元,可以配置为在所述单例对象中设置所述当前数据池和备份数据池;容器事件收集单元,可以配置为收集所述当前容器的事件的事件标识和事件指针;容器事件存储单元,可以配置为将所述所述当前容器的事件的事件标识和事件指针作为键值对存储至所述当前数据池中。
在示例性实施例中,链路事件引导装置1700还可以包括:容器事件备份模块,可以配置为将所述当前数据池中的数据传递至所述备份数据池。
在示例性实施例中,链路事件引导装置1700还可以包括:备份查找模块,可以配置为若所述当前数据池中不包括所述当前事件标识,则判断所述备份数据池中是否包括所述当前事件标识;事件执行模块,可以配置为若所述备份数据池中包括所述当前事件标识,则执行所述当前事件,以显示所述当前事件对应的提示视图。
在示例性实施例中,链路事件引导装置1700还可以包括:事件执行通知生成模块,可以配置为生成事件执行完成通知;事件状态标记模块,可以配置为根据所述事件执行完成通知将所述当前事件标记为已执行事件。
在示例性实施例中,链路事件引导装置1700还可以包括:链路执行通知生成模块,可以配置为若所述当前事件为所述链路报文的最后一个事件,则生成链路执行完成通知;数据池清空模块,可以配置为根据所述链路执行完成通知,将所述当前数据池和所述备份数据池清空。
在示例性实施例中,链路事件执行模块1740可以包括:事件指针获取单元,可以配置为获取所述当前事件标识对应的当前事件指针;事件信息获取单元,可以配置为根据所述当前事件指针获取所述当前事件的事件类型、事件位置和事件大小;提示视图确定单元,可以配置为根据所述当前事件的事件类型确定所述提示视图的操作标识,根据所述事件位置确定所述提示视图的显示位置,并根据所述事件大小确定所述提示视图的显示大小。
在示例性实施例中,所述提示视图可以为模态视图或者非模式视图。
需要说明的是,上述链路事件引导装置中各模块的具体细节已经在对应的链路事件引导方法实施例中进行了详细描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图18来描述根据本公开的这种实施方式的电子设备1800。图18显示的电子设备1800仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图18所示,电子设备1800以通用计算设备的形式表现。电子设备1800的组件可以包括但不限于:上述至少一个处理单元1810、上述至少一个存储单元1820、连接不同系统组件(包括存储单元1820和处理单元1810)的总线1830。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1810执行,使得所述处理单元1810执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元1810可以执行如图11中所示的步骤。
存储单元1820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)18201和/或高速缓存存储单元18202,还可以进一步包括只读存储单元(ROM)18203。
存储单元1820还可以包括具有一组(至少一个)程序模块18205的程序/实用工具18204,这样的程序模块18205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线1830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
显示单元1840可以为具有显示功能的显示器,以通过该显示器展示由处理单元1810执行本示例性实施例中的方法而得到的处理结果。显示器包括但不限于液晶显示器或者是其它显示器。
电子设备1800也可以与一个或多个外部设备2000(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1800交互的设备通信,和/或与使得该电子设备1800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口1850进行。并且,电子设备1800还可以通过网络适配器1860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1860通过总线1830与电子设备1800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
参考图19所示,描述了根据本公开的实施方式的用于实现上述方法的程序产品1900,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
Claims (12)
1.一种链路事件引导方法,其特征在于,包括:
发送链路请求,并接收响应于所述链路请求的链路报文;
在当前数据池中存储当前容器的事件信息;
根据所述链路报文获取未被执行的当前事件的当前事件标识;
若所述当前数据池中包括所述当前事件标识,则执行所述当前事件,以显示所述当前事件对应的提示视图。
2.根据权利要求1所述的链路事件引导方法,其特征在于,发送链路请求,并接收响应于所述链路请求的链路报文,包括:
将所述链路请求发送至服务端;
接收所述服务端返回的所述链路报文;
解析所述链路报文,生成字典数据;
将所述字典数据存储至单例对象中。
3.根据权利要求2所述的链路事件引导方法,其特征在于,所述当前容器的事件信息包括所述当前容器的事件的事件标识和事件指针;其中,在当前数据池中存储当前容器的事件信息,包括:
在所述单例对象中设置所述当前数据池和备份数据池;
收集所述当前容器的事件的事件标识和事件指针;
将所述所述当前容器的事件的事件标识和事件指针作为键值对存储至所述当前数据池中。
4.根据权利要求3所述的链路事件引导方法,其特征在于,所述方法还包括:
将所述当前数据池中的数据传递至所述备份数据池。
5.根据权利要求3所述的链路事件引导方法,其特征在于,所述方法还包括:
若所述当前数据池中不包括所述当前事件标识,则判断所述备份数据池中是否包括所述当前事件标识;
若所述备份数据池中包括所述当前事件标识,则执行所述当前事件,以显示所述当前事件对应的提示视图。
6.根据权利要求3所述的链路事件引导方法,其特征在于,所述方法还包括:
生成事件执行完成通知;
根据所述事件执行完成通知将所述当前事件标记为已执行事件。
7.根据权利要求3所述的链路事件引导方法,其特征在于,所述方法还包括:
若所述当前事件为所述链路报文的最后一个事件,则生成链路执行完成通知;
根据所述链路执行完成通知,将所述当前数据池和所述备份数据池清空。
8.根据权利要求1至7任一项所述的链路事件引导方法,其特征在于,执行所述当前事件,以显示所述当前事件对应的提示视图,包括:
获取所述当前事件标识对应的当前事件指针;
根据所述当前事件指针获取所述当前事件的事件类型、事件位置和事件大小;
根据所述当前事件的事件类型确定所述提示视图的操作标识,根据所述事件位置确定所述提示视图的显示位置,并根据所述事件大小确定所述提示视图的显示大小。
9.根据权利要求1所述的链路事件引导方法,其特征在于,所述提示视图为模态视图或者非模式视图。
10.一种链路事件引导装置,其特征在于,包括:
链路事件获取模块,配置为发送链路请求,并接收响应于所述链路请求的链路报文;
容器事件存储模块,配置为在当前数据池中存储当前容器的事件信息;
当前事件获取模块,配置为根据所述链路报文获取未被执行的当前事件的当前事件标识;
链路事件执行模块,配置为若所述当前数据池中包括所述当前事件标识,则执行所述当前事件,以显示所述当前事件对应的提示视图。
11.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-9任一项所述的链路事件引导方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-9任一项所述的链路事件引导方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910237721.7A CN111753164A (zh) | 2019-03-27 | 2019-03-27 | 链路事件引导方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910237721.7A CN111753164A (zh) | 2019-03-27 | 2019-03-27 | 链路事件引导方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111753164A true CN111753164A (zh) | 2020-10-09 |
Family
ID=72671542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910237721.7A Pending CN111753164A (zh) | 2019-03-27 | 2019-03-27 | 链路事件引导方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111753164A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115061733A (zh) * | 2022-05-10 | 2022-09-16 | 阿里健康科技(杭州)有限公司 | 任务引导方法及装置和电子设备 |
CN115378854A (zh) * | 2022-07-07 | 2022-11-22 | 浙江众合科技股份有限公司 | 基于自定义json规则的二进制数据报文修改方法 |
-
2019
- 2019-03-27 CN CN201910237721.7A patent/CN111753164A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115061733A (zh) * | 2022-05-10 | 2022-09-16 | 阿里健康科技(杭州)有限公司 | 任务引导方法及装置和电子设备 |
CN115378854A (zh) * | 2022-07-07 | 2022-11-22 | 浙江众合科技股份有限公司 | 基于自定义json规则的二进制数据报文修改方法 |
CN115378854B (zh) * | 2022-07-07 | 2023-11-14 | 浙江众合科技股份有限公司 | 基于自定义json规则的二进制数据报文修改方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11775572B2 (en) | Directed acyclic graph based framework for training models | |
US10140314B2 (en) | Previews for contextual searches | |
US20200320142A1 (en) | Regular expression generation using span highlighting alignment | |
US20200320068A1 (en) | User interface commands for regular expression generation | |
CN110088751B (zh) | 与交互式对话服务界面整合的搜索结果 | |
US7441188B1 (en) | Web construction framework presentation tier | |
US11647117B2 (en) | Systems and methods for customer service agent-guided chat session digital assistant | |
US20110289407A1 (en) | Font recommendation engine | |
US10169374B2 (en) | Image searches using image frame context | |
JP2018533126A (ja) | データベースへの自然言語インタフェースのための方法、システム、およびコンピュータ・プログラム製品 | |
CN108647355A (zh) | 测试用例的展示方法、装置、设备及存储介质 | |
US10013238B2 (en) | Predicting elements for workflow development | |
US11941018B2 (en) | Regular expression generation for negative example using context | |
US20190171945A1 (en) | Context-aware knowledge base system | |
EP3961426A2 (en) | Method and apparatus for recommending document, electronic device and medium | |
CN111427577A (zh) | 代码处理方法、装置及服务器 | |
CN111753164A (zh) | 链路事件引导方法、装置、电子设备及存储介质 | |
US10372760B2 (en) | Building queries directed to objects hosted on clouds | |
CN111723134A (zh) | 信息处理方法、装置、电子设备及存储介质 | |
KR20170013266A (ko) | 개발 시스템에서의 시맨틱 콘텐츠 액세스 기법 | |
CN112765159A (zh) | 报表生成方法、系统、计算机设备和存储介质 | |
US10528575B2 (en) | Collaborative search of databases | |
CN114237588A (zh) | 一种代码仓库选择方法、装置、设备及存储介质 | |
KR20190012492A (ko) | 자동 문장 생성 장치 및 그 방법 | |
US11119761B2 (en) | Identifying implicit dependencies between code artifacts |
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 |