【技术实现步骤摘要】
基于状态机处理用户行为的方法、系统、设备及存储介质
[0001]本申请涉及计算机
,尤其地涉及一种基于状态机处理用户行为的方法、系统、设备及存储介质。
技术介绍
[0002]一般情况下,于前端技术的用户行为或者事件模型的匹配中,用户行为执行时包括的若干事件可能会对应多个事件模型,当若干事件组成的用户行为满足同时多个事件模型的情况下,仅仅依靠若干事件去匹配当前用户行为是一个完整的用户行为还是一个完整的行为的一部分,用户行为可能根据事件流的流转进行实时修改,整个用户行为的确定和处理比较复杂。例如地,针对点击事件,当接收到一组mousedown,mouseup,c l ick的事件组合的时候,用户无法分辨完整的用户行为是单击行为还是双击行为;为了实现依靠若干事件准确匹配当前用户行为是单击还是双击行为,基于现有的事件模型匹配用户行为的机制,用户根据mousedown需要匹配所有相关的mousedown事件的事件模型,会先将mousedown事件简单记录为单击行为,并且在接收到新mousedown事件的时候会去检查该事件是否会影 ...
【技术保护点】
【技术特征摘要】
1.一种基于状态机处理用户行为的方法,其特征在于,所述的方法包括:在状态机的根节点注册预设事件,所述预设事件包括预设起始事件和通用事件;预设用户行为对应的事件模型,根据所述事件模型在所述状态机的每个状态节点注册每个所述预设起始事件对应的相关事件,所述用户行为与所述状态节点唯一映射;获取所述当前用户行为的所述事件类型,所述事件类型可以匹配关联所述预设起始事件的中间事件;在监听到当前用户行为对应的所述预设起始事件的情况下,根据所述预设起始事件和初始守卫条件将所述状态机的所述根节点转移至对应当前事件模型的当前状态节点;依次接收事件流中的所述中间事件,根据所述中间事件及所述事件类型执行当前状态节点的保持或当前状态节点的转移。2.根据权利要求1所述的一种基于状态机处理用户行为的方法,其特征在于,在状态机的根节点注册预设事件包括:获取待处理的用户行为,将所述用户行为发生时对应的事件模型中的所述预设起始事件注册至所述状态机的根节点;以及,将无法匹配至所述事件模型的所述通用事件注册至所述状态机的根节点。3.根据权利要求1所述的一种基于状态机处理用户行为的方法,其特征在于,在监听到当前用户行为对应的所述预设起始事件的情况下,根据所述预设起始事件和初始守卫条件将所述状态机的所述根节点转移至对应当前事件模型的当前状态节点包括:获取转移至所述当前事件模型的所述当前状态节点的所述初始守卫条件;在所述预设起始事件满足所述初始守卫条件的情况下,将所述根节点转移至初始守卫条件守卫的所述当前事件模型对应的所述当前状态节点。4.根据权利要求3所述的一种基于状态机处理用户行为的方法,其特征在于,获取转移至所述当前事件模型的所述当前状态节点的所述守卫条件包括:在所述预设起始事件对应的所述事件模型不少于一个的情况下,设置转移至各个所述事件模型对应的各个所述状态节点的初始守卫条件,所述初始守卫条件包括保留当前状态节点预设条件和/或转移当前状态节点预设条件。5.根据权利要求1所述的一种基于状态机处理用户行为的方法,其特征在于,依次接收事件流中的所述中间事件,根据所述中间事件及所述事件类型执行当前状态节点的保持或当前状态节点的转移包括:依次获取所述事件流中的所述中间事件及所述事件模型触发相应的动作;...
【专利技术属性】
技术研发人员:尹沈文,徐文豪,张凯,王弘毅,
申请(专利权)人:北京志凌海纳科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。