CN110286998B - 虚拟机图形用户界面生效、执行过程记录方法和装置 - Google Patents

虚拟机图形用户界面生效、执行过程记录方法和装置 Download PDF

Info

Publication number
CN110286998B
CN110286998B CN201910434680.0A CN201910434680A CN110286998B CN 110286998 B CN110286998 B CN 110286998B CN 201910434680 A CN201910434680 A CN 201910434680A CN 110286998 B CN110286998 B CN 110286998B
Authority
CN
China
Prior art keywords
virtual machine
video frame
recording
execution process
identification information
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
CN201910434680.0A
Other languages
English (en)
Other versions
CN110286998A (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.)
Nanjing Suning Software Technology Co ltd
Original Assignee
Nanjing Suning Software Technology 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 Nanjing Suning Software Technology Co ltd filed Critical Nanjing Suning Software Technology Co ltd
Priority to CN201910434680.0A priority Critical patent/CN110286998B/zh
Publication of CN110286998A publication Critical patent/CN110286998A/zh
Application granted granted Critical
Publication of CN110286998B publication Critical patent/CN110286998B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请涉及一种虚拟机图形用户界面生效、执行过程记录方法和装置。所述虚拟机图形用户界面生效方法包括:获取针对调用虚拟机的本地会话连接组件的触发事件;在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效。所述虚拟机执行过程记录方法包括:获取针对调用虚拟机的本地会话连接组件的触发事件;在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效,在所述图形用户界面处于生效后,对所述虚拟机的自动化流程任务的执行过程进行记录。采用本申请方法能够使得包含键鼠操作、图像识别等组件的自动化流程以及屏幕录制流程在远程的虚拟环境中能够正常运行。

Description

虚拟机图形用户界面生效、执行过程记录方法和装置
技术领域
本申请涉及自动化技术领域,特别是涉及一种虚拟机图形用户界面生效、执行过程记录方法、装置、计算机设备和存储介质。
背景技术
随着自动化运维技术以及自动化流程调试的发展,出现了PRA(Robotic ProcessAutomation,机器人流程自动化/软件机器人/虚拟劳动者)技术,RPA是以机器人作为虚拟劳动力,依据预先设定的程序与现有用户系统进行交互并完成预期的任务。
目前RPA行业的无人值守机器人一般采用虚拟机的部署方式,称为云端机器人。该类机器人无法直接执行图形用户界面(Graphical User Interface,GUI)的相关操作,这其中就包含了流程自动化中用到的鼠标、键盘等操作组件,以及图像识别组件、系统桌面截屏、屏幕录制等。对于包含键鼠操作、图像识别等组件以及需要进行录屏的自动化流程,传统的解决方案大多采用以下两种方式实现:
方式一,部署于用户本地电脑,以有人值守的方式运行,但这样既浪费了用户的电脑资源,又可能由于用户操作对自动化流程的干扰导致流程执行的失败。方式二,部署于云端虚拟机,多数使用实体机对虚拟机进行远程连接方式,保持远程连接一直存在,并且不能将远程桌面窗口最小化,方可实现相关自动化流程的云端部署,以及虚拟机的录屏功能。这样对于大批量上线的云端虚拟机服务器,要实现此类功能,需要使用多台实体机与之进行远程桌面的长连接,还要保证实体机远程连接的可靠性,才能使得相关功能代码或组件的生效。
将包含键鼠操作、图像识别等组件的自动化流程部署于云端虚拟环境,不但可以为用户节省电脑资源,还可避免外界干扰,保证流程运行的稳定性。部署于云端的自动化流程,用户无法看到流程操作执行过程。对于流程开发者来说,若执行过程出现异常,无法直接看到当时的情况。对于常规用户来说,用户更希望在任务执行结束后,确认下自动化流程执行的可靠性。对于安全审计类流程任务,审计人员更加需要自动化流程的执行过程录像,用于开展后续的审计工作。然而,针对云端虚拟环境,计算机实际一直处于锁屏状态,没有图形用户界面,无法获取到桌面窗口句柄,导致键鼠操作、图像识别等自动化流程组件的功能失效,无法实现屏幕录制功能。
发明内容
基于此,有必要针对上述技术问题,提供一种使得包含键鼠操作、图像识别等组件的自动化流程以及屏幕录制流程在远程的虚拟环境中能够正常运行的虚拟机图形用户界面生效、执行过程记录方法、装置、计算机设备和存储介质。
本申请第一方面,提供一种虚拟机图形用户界面生效方法,该方法包括:
获取针对调用虚拟机的本地会话连接组件的触发事件;
在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效。
在其中一个实施例中,上述的触发事件为接收到自动化流程任务的执行指令。
在其中一个实施例中,上述的调用本地会话连接组件,以使虚拟机的图形用户界面生效,包括:
获取第一标识信息和第二标识信息,第一标识信息为虚拟机的当前进程所在会话的标识信息,第二标识信息为虚拟机待进入的本地会话的标识信息;
根据第一标识信息和第二标识信息生成本地会话调用指令;
执行本地会话调用指令,以使虚拟机的图形用户界面生效。
本申请第二方面,提供一种虚拟机流程执行过程记录方法,该方法包括:
采用如上任意一个实施例中的虚拟机图形用户界面生效方法使虚拟机的图形用户界面生效;
在图形用户界面处于生效后,对虚拟机的自动化流程任务的执行过程进行记录。
在其中一个实施例中,上述的对虚拟机的自动化流程任务的执行过程进行记录,包括:
在自动化流程任务的执行过程中,对虚拟机进行录屏操作;
保存录屏操作产生的视频帧。
在其中一个实施例中,上述的保存录屏操作产生的视频帧,包括:
比较录屏操作产生的当前视频帧与已保存的上一视频帧;
若当前视频帧相对于上一视频帧发生变化,保存当前视频帧;
若当前视频帧相对于上一视频帧没有变化,删除当前视频帧。
在其中一个实施例中,上述的虚拟机流程执行过程记录方法,在保存录屏操作产生的视频帧后,还包括:
检测录屏操作产生的视频帧,若连续时间段内的视频帧没有变化,删除连续时间段内的部分视频帧。
在其中一个实施例中,上述的对虚拟机的自动化流程任务的执行过程进行记录,包括:
检测自动化流程任务中的桌面操作事件或者/和图像识别事件的执行时刻;
根据执行时刻,确定录屏时段;
在录屏时段内,对自动化流程任务的执行过程进行录屏操作。
在其中一个实施例中,上述的对虚拟机的自动化流程任务的执行过程进行记录,包括:
在自动化流程任务的执行过程中,若检测到截图指令,对虚拟机进行截图操作,保存截图操作产生的截图图像。
本申请第三方面,提供一种虚拟机图形用户界面生效装置,该装置包括:
获取模块,用于获取针对本地会话连接建立的触发事件;
生效模块,用于在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效。
本申请第四方面,提供一种虚拟机流程执行过程记录装置,该装置包括上述的虚拟机图形用户界面生效装置,还包括记录模块;
记录模块用于在图形用户界面处于生效后,对虚拟机的自动化流程任务的执行过程进行记录。
本申请第五方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取针对调用虚拟机的本地会话连接组件的触发事件;
在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效。
本申请第六方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取针对调用虚拟机的本地会话连接组件的触发事件;
在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效;
在图形用户界面处于生效后,对虚拟机的自动化流程任务的执行过程进行记录。
本申请第七方面,提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取针对调用虚拟机的本地会话连接组件的触发事件;
在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效。
本申请第八方面,提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取针对调用虚拟机的本地会话连接组件的触发事件;
在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效;
在图形用户界面处于生效后,对虚拟机的自动化流程任务的执行过程进行记录。
上述虚拟机图形用户界面生效、执行过程记录方法、装置、计算机设备和存储介质,在获取针对调用虚拟机的本地会话连接组件的触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效。在虚拟机的图形用户界面生效后,能够使得包含键鼠操作、图像识别等组件的自动化流程以及屏幕录制流程在远程的虚拟环境中得以正常运行。
附图说明
图1为一个实施例中虚拟机图形用户界面生效、执行过程记录方法的应用环境图;
图2为一个实施例中虚拟机图形用户界面生效方法的流程示意图;
图3为一个实施例中图形用户界面生效步骤的流程示意图;
图4为一个实施例中虚拟机流程执行过程记录方法的流程示意图;
图5为一个实施例中保存录屏操作产生的视频帧步骤的流程示意图;
图6为另一个实施例中保存录屏操作产生的视频帧步骤的流程示意图;
图7为一个实施例中虚拟机图形用户界面生效装置的结构框图;
图8为一个实施例中虚拟机图形用户界面生效装置的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的虚拟机图形用户界面生效、执行过程记录方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。虚拟机的包含键鼠操作或者/和图像识别等组件的自动化流程部署在服务器104上,虚拟机可以是无人值守机器人。本申请方案是虚拟机在自动化流程任务执行之前,自动调用虚拟机的本地会话连接组件,以使虚拟机的图形用户界面生效,从而使得包含键鼠操作、图像识别等组件的自动化流程以及屏幕录制程序在远程的虚拟环境中得以正常运行。
在一个实施例中,如图2所示,提供了一种虚拟机图形用户界面生效方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤202,获取针对调用虚拟机的本地会话连接组件的触发事件;
这里,虚拟机可以是但不限于是机器人流程自动化、软件机器人、虚拟劳动者或者云端机器人。
这里,本地会话连接组件被配置为调用后能够使虚拟机进入到一个原始本地会话状态的物理控制台。
这里,触发事件是指触发系统调用虚拟机的本地会话连接组件的事件。
具体地,服务器获取针对调用虚拟机的本地会话连接组件的触发事件。
步骤204,在获取到触发事件后,调用虚拟机的本地会话连接组件,以使虚拟机的图形用户界面生效。
具体地,服务器在获取到针对调用虚拟机的本地会话连接组件的触发事件后,调用虚拟机的本地会话连接组件,使得虚拟机进入到一个原始本地会话状态的物理控制台,此时,虚拟机的图形用户界面生效。
上述虚拟机图形用户界面生效方法中,是获取针对调用虚拟机的本地会话连接组件的触发事件,在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效,如此,能够使得包含键鼠操作、图像识别等组件的自动化流程以及屏幕录制程序在远程的虚拟环境中得以正常运行。
在其中一个实施例中,上述的触发事件为接收到自动化流程任务的执行指令。其中,自动化流程包含键鼠操作或者/和图像识别等组件。具体地,服务器可以在接收到自动化流程任务的执行指令(该执行指令可以是由终端发送)后,先调用虚拟机的本地会话连接组件,以使虚拟机的图形用户界面生效,再执行自动化流程任务。本实施例中,将接收到自动化流程任务的执行指令作为调用虚拟机的本地会话连接组件的触发事件,仅需要单个触发事件就可以触发调用虚拟机的本地会话连接组件以及执行自动化流程任务两个流程,使得流程更加简化。
在其中一个实施例中,如图3所示,上述的调用本地会话连接组件,以使虚拟机的图形用户界面生效,包括:
步骤S302:获取第一标识信息和第二标识信息,第一标识信息为虚拟机的当前进程所在会话的标识信息,第二标识信息为虚拟机待进入的本地会话的标识信息;
这里,第一标识信息和第二标识信息分别用于标识虚拟机的当前所在会话以及即将进入的会话,第一标识信息和第二标识信息可以分别是包括数字、字母和符号中的至少一种字符的字符串。
步骤S304:根据第一标识信息和第二标识信息生成本地会话调用指令;
其中,第一标识信息和第二标识信息作为本地会话调用指令的两个入参。
步骤S306:执行本地会话调用指令,以使虚拟机的图形用户界面生效。
此外,一般是以管理员身份调用本地会话连接组件。
根据上述的虚拟机流程执行过程记录方法,在一个实施例中,如图4所示,提供了一种虚拟机流程执行过程记录方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤402,获取针对调用虚拟机的本地会话连接组件的触发事件;
步骤404,在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效;
本实施例的步骤402和步骤404,可以对应地参照上述有关步骤202和步骤204的描述,在此不予赘述。
步骤406,在图形用户界面处于生效后,对虚拟机的自动化流程任务的执行过程进行记录;
这里,记录方式可以是屏幕录制或者桌面截图。
具体地,服务器在图形用户界面处于生效后,对虚拟机的自动化流程任务的执行过程进行记录。
上述虚拟机图形用户界面生效方法中,是获取针对调用虚拟机的本地会话连接组件的触发事件,在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效,在图形用户界面处于生效后,对虚拟机的自动化流程任务的执行过程进行记录。由于在图形用户界面处于生效,使得包含键鼠操作(键盘操作和鼠标操作)、图像识别等组件的自动化流程以及屏幕录制程序在远程的虚拟环境中得以正常运,同时由于在图形用户界面处于生效后,对虚拟机的自动化流程任务的执行过程进行了记录,如此,用户可以查看流程执行过程,为流程自动化项目开发调试中的异常定位,或是流程自动化项目实施应用后的安全审计工作都带来了便利。
在一个实施例中,上述的对虚拟机的自动化流程任务的执行过程进行记录,可以包括步骤:在虚拟机的自动化流程任务执行过程中,对虚拟机进行录屏操作,保存录屏操作产生的视频帧。其中,录屏操作指屏幕录制。
具体地,服务器在虚拟机的自动化流程任务执行过程中,对虚拟机进行录屏操作,将录屏操作产生的视频帧保存在虚拟机的录屏文件中。
本实施例方案中,通过录屏的方式对自动化流程任务执行过程进行记录,保存录屏操作产生的视频帧,用户可以回看自动化流程任务执行过程,提高了便利性。
考虑到如果在自动化流程任务执行过程中,将录屏操作产生的全部视频帧保存下来,会产生大量的数据冗余,加大存储器的存储压力。为此,在一个实施例中,如图5所示,上述的保存录屏操作产生的视频帧,可以包括如下步骤:
步骤502,比较录屏操作产生的当前视频帧与已保存的上一视频帧;
这里,上一视频帧是已保存的视频帧中的最后一个被保存的视频帧。
具体地,服务器比较录屏操作产生的当前视频帧的图像信息与已保存的上一视频帧的图像信息,获得图像信息比较结果,这里,图像信息可以是像素值。
步骤504,若当前视频帧相对于上一视频帧发生变化,保存当前视频帧;
具体地,服务器若根据图像信息比较结果判定当前视频帧相对于上一视频帧发生变化,保存当前视频帧。
步骤506,若当前视频帧相对于上一视频帧没有变化,删除当前视频帧。
这里,删除当前视频帧,也就是说,不保存当前视频帧。
具体地,服务器若根据图像信息比较结果判定当前视频帧相对于上一视频帧没有变化,删除当前视频帧。
本实施例的方案对录屏操作产生的视频帧有选择的保留,可以减轻服务器的存储压力,同时,保存下的视频帧又往往是用户较关心过程的视频帧。
举例说明,录屏操作产生第1视频帧后,保存录屏操作产生的第1视频帧,在录屏操作产生第2视频帧后,将第2视频帧与第1视频帧进行比较,若第2视频帧相对于第1视频帧发生变化,保存第2视频帧,若第2视频帧相对于第1视频帧没有变化,删除第2视频帧;在录屏操作产生第3视频帧后,将第3视频帧与已保存的上一视频帧(若第2视频帧被删除,则该上一视频帧是第1视频帧,若第2视频帧被保存,则该上一视频帧是第2视频帧)进行比较,若第3视频帧相对于已保存的上一视频帧发生变化,保存第3视频帧,若第2视频帧相对于已保存的上一视频帧没有变化,删除第3视频帧,以此类推。
在一个实施例中的虚拟机流程执行过程记录方法,在上述的保存录屏操作产生的视频帧之后,还包括:检测录屏操作产生的视频帧,若连续时间段内的视频帧没有变化,删除连续时间段内的部分视频帧。
这里,删除连续时间段内的部分视频帧的方式可以根据实际需要选取,例如,任意删除该连续时间段内的n-m帧视频帧,其中,n为该连续时间段内视频帧数,m为该连续时间段内需要保留的视频帧数,其中,m可以是预设的固定值,例如,1,也可以是根据n确定的整数,例如,m=k*n,k为预设的比例系数,0<k<1,或者m为对k*n取整或者四舍五入得到的正整数。
本实施例的方案,可以减轻服务器的存储压力,同时,保存下的视频帧又往往是用户较关心过程的视频帧。
在一个实施例中,如图6所示,上述的对虚拟机的自动化流程任务的执行过程进行记录,包括:
步骤602,检测自动化流程任务中的桌面操作事件或者/和图像识别事件的执行时刻;
这里,桌面操作事件或者/和图像识别事件是指,仅包括桌面操作事件,或者仅包括图像识别事件,或者包括桌面操作事件和图像识别事件。其中,桌面操作事件包括鼠标、键盘和触摸屏等一个以上输入设备的事件。
具体地,可以在自动化流程任务前或者执行过程中,对自动化流程任务中的桌面操作事件或者/和图像识别事件的执行时刻进行检测。
步骤604,根据执行时刻,确定录屏时段;
具体地,可以将执行时刻之后一指定时长的时段确定为录屏时段,或者将执行时刻前后一指定时长的时段确定为录屏时段。
此外,还可以根据执行时刻和事件类型,确定录屏时段,如此,可以有选择的设定录屏时段的长短,例如,不同类型的桌面操作事件,设定不同长短的录屏时段。
步骤606,在录屏时段内,对自动化流程任务的执行过程进行录屏操作。
本实施例的方案,由于仅在桌面操作事件或者/和图像识别事件的执行时刻对应的录屏时段内,对自动化流程任务的执行过程进行录屏操作,也可以减轻服务器的存储压力,同时,保存下的视频帧又是用户较关心的桌面操作事件或者/和图像识别事件的执行过程的视频帧。
在一个实施例中,上述的对虚拟机的自动化流程任务的执行过程进行记录,可以包括步骤:在自动化流程任务执行过程中,若检测到截图指令,对当前桌面进行截图操作,保存截图操作产生的截图图像。
本实施例中,通过截图的方式记录自动化流程任务执行过程,也利于用户查看流程执行过程。
需要说明的是,截图操作以及录屏操作在同一自动化流程任务执行过程,可以是共存的。
为了便于理解本申请方案,以下通过一个具体应用示例进行说明。对于某一无人值守机器人,在接收到自动化流程任务执行指令后,首先以管理员身份调用系统本地会话连接组件。具体执行命令为“tscon{<SessionID>}[/dest:<SessionName>]”,其中“tscon”为系统本地会话连接程序(在操作系统目录C:\Windows\System32下,一般通过程序动态获取该路径),“{<SessionID>}”为入参一,为当前进程所在会话的标识信息(本应用示例传入无人值守机器人进程所在会话的标识信息),“[/dest:<SessionName>]”为入参二,为要进入的会话的名称(本应用示例“/dest:console”),通过以上系统组件的调用,该无人值守机器人此时已经进入到了一个原始本地会话状态的物理控制台,此时的图形用户界面已经生效,带有键鼠操作、图像识别等组件的自动化流程、系统桌面截屏、屏幕录制等也随之生效。这里,入参一相当于上述的第一标识信息,入参二当于上述的第二标识信息。
具体地,服务器接收到无人值守机器人的自动化流程任务执行指令,调用系统本地会话连接组件,这之后,启动该无人值守机器人的录屏功能开始录屏,开始录屏后,开始执行无人值守机器人的自动化流程,在该自动化流程执行结束后,关闭该无人值守机器人的录屏功能以结束录屏,自动化流程任务执行结束。
应该理解的是,虽然图2-6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图7所示,提供了一种虚拟机图形用户界面生效装置,包括:获取模块702和生效模块704,其中:
获取模块702,用于获取针对本地会话连接建立的触发事件;
生效模块704,用于在获取到触发事件后,调用本地会话连接组件,以使虚拟机的图形用户界面生效。
在其中一个实施例中,上述的触发事件可以为接收到自动化流程任务的执行指令。
在其中一个实施例中,生效模块704可以获取第一标识信息和第二标识信息,第一标识信息为虚拟机的当前进程所在会话的标识信息,第二标识信息为虚拟机待进入的本地会话的标识信息,根据第一标识信息和第二标识信息生成本地会话调用指令,执行本地会话调用指令,以使虚拟机的图形用户界面生效。
关于虚拟机图形用户界面生效装置的具体限定可以参见上文中对于虚拟机图形用户界面生效方法的限定,在此不再赘述。上述虚拟机图形用户界面生效装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,如图8所示,提供了一种虚拟机流程执行过程记录装置,该装置包括上述任意一个实施例中的虚拟机图形用户界面生效装置802,还包括记录模块804;
记录模块804用于在图形用户界面处于生效后,对虚拟机的自动化流程任务的执行过程进行记录。
在其中一个实施例中,记录模块804可以在自动化流程任务的执行过程中,对虚拟机进行录屏操作,保存录屏操作产生的视频帧。
在其中一个实施例中,记录模块804可以比较录屏操作产生的当前视频帧与已保存的上一视频帧,若当前视频帧相对于上一视频帧发生变化,保存当前视频帧,若当前视频帧相对于上一视频帧没有变化,删除当前视频帧。
在其中一个实施例中,记录模块804还可以用于检测录屏操作产生的视频帧,若连续时间段内的视频帧没有变化,删除连续时间段内的部分视频帧。
在其中一个实施例中,记录模块804可以检测自动化流程任务中的桌面操作事件或者/和图像识别事件的执行时刻,根据执行时刻,确定录屏时段,在录屏时段内,对自动化流程任务的执行过程进行录屏操作。
在其中一个实施例中,记录模块804可以在自动化流程任务的执行过程中,若检测到截图指令,对虚拟机进行截图操作,保存截图操作产生的截图图像。
关于虚拟机流程执行过程记录装置的具体限定可以参见上文中对于虚拟机流程执行过程记录方法的限定,在此不再赘述。上述虚拟机流程执行过程记录装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种虚拟机图形用户界面生效、执行过程记录方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取针对调用虚拟机的本地会话连接组件的触发事件;
在获取到所述触发事件后,调用所述本地会话连接组件,以使所述虚拟机的图形用户界面生效。
在一个实施例中,上述的触发事件为接收到自动化流程任务的执行指令。
在其中一个实施例中,处理器执行计算机程序实现上述的虚拟机图形用户界面生效方法的步骤时,具体实现以下步骤:获取第一标识信息和第二标识信息,第一标识信息为虚拟机的当前进程所在会话的标识信息,第二标识信息为虚拟机待进入的本地会话的标识信息;根据第一标识信息和第二标识信息生成本地会话调用指令;执行本地会话调用指令,以使虚拟机的图形用户界面生效。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:在图形用户界面处于生效后,对虚拟机的自动化流程任务的执行过程进行记录。
在其中一个实施例中,处理器执行计算机程序实现上述的对虚拟机的自动化流程任务的执行过程进行记录的步骤时,具体实现以下步骤:在自动化流程任务的执行过程中,对虚拟机进行录屏操作;保存录屏操作产生的视频帧。
在其中一个实施例中,处理器执行计算机程序实现上述的保存录屏操作产生的视频帧的步骤时,具体实现以下步骤:比较录屏操作产生的当前视频帧与已保存的上一视频帧;若当前视频帧相对于上一视频帧发生变化,保存当前视频帧;若当前视频帧相对于上一视频帧没有变化,删除当前视频帧。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:检测录屏操作产生的视频帧,若连续时间段内的视频帧没有变化,删除连续时间段内的部分视频帧。
在其中一个实施例中,处理器执行计算机程序实现上述的对虚拟机的自动化流程任务的执行过程进行记录的步骤时,具体实现以下步骤:检测自动化流程任务中的桌面操作事件或者/和图像识别事件的执行时刻;根据执行时刻,确定录屏时段;在录屏时段内,对自动化流程任务的执行过程进行录屏操作。
在其中一个实施例中,处理器执行计算机程序实现上述的对虚拟机的自动化流程任务的执行过程进行记录的步骤时,具体实现以下步骤:在自动化流程任务的执行过程中,若检测到截图指令,对虚拟机进行截图操作,保存截图操作产生的截图图像。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取针对调用虚拟机的本地会话连接组件的触发事件;
在获取到所述触发事件后,调用所述本地会话连接组件,以使所述虚拟机的图形用户界面生效。
在一个实施例中,上述的触发事件为接收到自动化流程任务的执行指令。
在其中一个实施例中,计算机程序被处理器执行实现上述的虚拟机图形用户界面生效方法的步骤时,具体实现以下步骤:获取第一标识信息和第二标识信息,第一标识信息为虚拟机的当前进程所在会话的标识信息,第二标识信息为虚拟机待进入的本地会话的标识信息;根据第一标识信息和第二标识信息生成本地会话调用指令;执行本地会话调用指令,以使虚拟机的图形用户界面生效。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在图形用户界面处于生效后,对虚拟机的自动化流程任务的执行过程进行记录。
在其中一个实施例中,计算机程序被处理器执行实现上述的对虚拟机的自动化流程任务的执行过程进行记录的步骤时,具体实现以下步骤:在自动化流程任务的执行过程中,对虚拟机进行录屏操作;保存录屏操作产生的视频帧。
在其中一个实施例中,计算机程序被处理器执行实现上述的保存录屏操作产生的视频帧的步骤时,具体实现以下步骤:比较录屏操作产生的当前视频帧与已保存的上一视频帧;若当前视频帧相对于上一视频帧发生变化,保存当前视频帧;若当前视频帧相对于上一视频帧没有变化,删除当前视频帧。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:检测录屏操作产生的视频帧,若连续时间段内的视频帧没有变化,删除连续时间段内的部分视频帧。
在其中一个实施例中,计算机程序被处理器执行实现上述的对虚拟机的自动化流程任务的执行过程进行记录的步骤时,具体实现以下步骤:检测自动化流程任务中的桌面操作事件或者/和图像识别事件的执行时刻;根据执行时刻,确定录屏时段;在录屏时段内,对自动化流程任务的执行过程进行录屏操作。
在其中一个实施例中,计算机程序被处理器执行实现上述的对虚拟机的自动化流程任务的执行过程进行记录的步骤时,具体实现以下步骤:在自动化流程任务的执行过程中,若检测到截图指令,对虚拟机进行截图操作,保存截图操作产生的截图图像。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (14)

1.一种虚拟机流程执行过程记录方法,所述方法应用于服务器,所述服务器部署有虚拟机的包含键鼠操作或者/和图像识别组件的自动化流程,包括:
获取针对调用虚拟机的本地会话连接组件的触发事件,所述本地会话连接组件被配置为调用后能够使虚拟机进入到原始本地会话状态的物理控制台,所述触发事件为接收到自动化流程任务的执行指令;
在获取到所述触发事件后,以管理员身份调用所述本地会话连接组件,以使所述虚拟机的图形用户界面生效;
在所述图形用户界面处于生效后,对所述虚拟机的自动化流程任务的执行过程进行记录;
其中,所述调用所述本地会话连接组件,以使所述虚拟机的图形用户界面生效,包括:
获取第一标识信息和第二标识信息,所述第一标识信息为所述虚拟机的当前进程所在会话的标识信息,所述第二标识信息为所述虚拟机待进入的本地会话的标识信息;
根据所述第一标识信息和第二标识信息生成本地会话调用指令;
执行所述本地会话调用指令,以使所述虚拟机的图形用户界面生效。
2.根据权利要求1所述的虚拟机流程执行过程记录方法,其特征在于,所述对所述虚拟机的自动化流程任务的执行过程进行记录,包括:
在所述自动化流程任务的执行过程中,对所述虚拟机进行录屏操作;
保存所述录屏操作产生的视频帧。
3.根据权利要求2所述的虚拟机流程执行过程记录方法,其特征在于,所述保存所述录屏操作产生的视频帧,包括:
比较所述录屏操作产生的当前视频帧与已保存的上一视频帧;
若所述当前视频帧相对于所述上一视频帧发生变化,保存所述当前视频帧;
若所述当前视频帧相对于所述上一视频帧没有变化,删除所述当前视频帧。
4.根据权利要求2所述的虚拟机流程执行过程记录方法,其特征在于,在保存所述录屏操作产生的视频帧后,还包括:
检测所述录屏操作产生的视频帧,若连续时间段内的视频帧没有变化,删除所述连续时间段内的部分视频帧。
5.根据权利要求1所述的虚拟机流程执行过程记录方法,其特征在于,所述对所述虚拟机的自动化流程任务的执行过程进行记录,包括:
检测所述自动化流程任务中的桌面操作事件或者/和图像识别事件的执行时刻;
根据所述执行时刻,确定录屏时段;
在所述录屏时段内,对所述自动化流程任务的执行过程进行录屏操作。
6.根据权利要求1所述的虚拟机流程执行过程记录方法,其特征在于,所述对所述虚拟机的自动化流程任务的执行过程进行记录,包括:
在所述自动化流程任务的执行过程中,若检测到截图指令,对所述虚拟机进行截图操作,保存所述截图操作产生的截图图像。
7.一种虚拟机流程执行过程记录装置,其特征在于,所述装置应用于服务器,所述服务器部署有虚拟机的包含键鼠操作或者/和图像识别组件的自动化流程,包括:
获取模块,用于获取针对调用虚拟机的本地会话连接组件的触发事件,所述本地会话连接组件被配置为调用后能够使虚拟机进入到原始本地会话状态的物理控制台,所述触发事件为接收到自动化流程任务的执行指令;
生效模块,用于在获取到所述触发事件后,以管理员身份调用所述本地会话连接组件,以使所述虚拟机的图形用户界面生效;
记录模块,用于在所述图形用户界面处于生效后,对所述虚拟机的自动化流程任务的执行过程进行记录;
其中,所述生效模块获取第一标识信息和第二标识信息,所述第一标识信息为所述虚拟机的当前进程所在会话的标识信息,所述第二标识信息为所述虚拟机待进入的本地会话的标识信息,根据所述第一标识信息和第二标识信息生成本地会话调用指令,执行所述本地会话调用指令,以使所述虚拟机的图形用户界面生效。
8.根据权利要求7所述的虚拟机流程执行过程记录装置,其特征在于:
所述记录模块在所述自动化流程任务的执行过程中,对所述虚拟机进行录屏操作,保存所述录屏操作产生的视频帧。
9.根据权利要求8所述的虚拟机流程执行过程记录装置,其特征在于:
所述记录模块比较所述录屏操作产生的当前视频帧与已保存的上一视频帧,若所述当前视频帧相对于所述上一视频帧发生变化,保存所述当前视频帧,若所述当前视频帧相对于所述上一视频帧没有变化,删除所述当前视频帧。
10.根据权利要求8所述的虚拟机流程执行过程记录装置,其特征在于:
所述记录模块还用于在保存所述录屏操作产生的视频帧后,检测所述录屏操作产生的视频帧,若连续时间段内的视频帧没有变化,删除所述连续时间段内的部分视频帧。
11.根据权利要求7所述的虚拟机流程执行过程记录装置,其特征在于:
所述记录模块检测所述自动化流程任务中的桌面操作事件或者/和图像识别事件的执行时刻,根据所述执行时刻,确定录屏时段,在所述录屏时段内,对所述自动化流程任务的执行过程进行录屏操作。
12.根据权利要求7所述的虚拟机流程执行过程记录装置,其特征在于:
所述记录模块在所述自动化流程任务的执行过程中,若检测到截图指令,对所述虚拟机进行截图操作,保存所述截图操作产生的截图图像。
13.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
CN201910434680.0A 2019-05-23 2019-05-23 虚拟机图形用户界面生效、执行过程记录方法和装置 Active CN110286998B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910434680.0A CN110286998B (zh) 2019-05-23 2019-05-23 虚拟机图形用户界面生效、执行过程记录方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910434680.0A CN110286998B (zh) 2019-05-23 2019-05-23 虚拟机图形用户界面生效、执行过程记录方法和装置

Publications (2)

Publication Number Publication Date
CN110286998A CN110286998A (zh) 2019-09-27
CN110286998B true CN110286998B (zh) 2022-08-02

Family

ID=68002413

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910434680.0A Active CN110286998B (zh) 2019-05-23 2019-05-23 虚拟机图形用户界面生效、执行过程记录方法和装置

Country Status (1)

Country Link
CN (1) CN110286998B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111047147B (zh) * 2019-11-20 2023-09-26 深圳市法本信息技术股份有限公司 一种业务流程自动采集方法及智能终端
CN112070487B (zh) * 2019-12-31 2024-04-12 北京来也网络科技有限公司 基于ai的rpa流程的生成方法、装置、设备及介质
US11233861B2 (en) 2020-02-18 2022-01-25 UiPath, Inc. Inter-session automation for robotic process automation (RPA) robots
US10654166B1 (en) 2020-02-18 2020-05-19 UiPath, Inc. Automation windows for robotic process automation
US11392477B2 (en) 2020-07-09 2022-07-19 UiPath, Inc. Automation of a process running in a first session via a robotic process automation robot running in a second session
CN113032070B (zh) * 2021-03-24 2023-06-16 山东英信计算机技术有限公司 一种主机图像截取方法、装置及相关组件

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5978834A (en) * 1997-09-30 1999-11-02 The United States Of America As Represented By The Secretary Of The Navy Platform independent computer interface software responsive to scripted commands
CN101398767A (zh) * 2007-09-29 2009-04-01 联想(北京)有限公司 虚拟机系统及其用户登录方法
CN102413150A (zh) * 2010-09-20 2012-04-11 联想(北京)有限公司 服务器、虚拟桌面控制方法以及虚拟桌面控制系统
CN104636435A (zh) * 2014-12-26 2015-05-20 中电科华云信息技术有限公司 云终端录屏方法
US9094420B2 (en) * 2011-02-24 2015-07-28 Avaya Inc. System and method for assuring quality real-time communication experience in virtual machine
CN105933415A (zh) * 2016-04-21 2016-09-07 国家计算机网络与信息安全管理中心 一种基于vnc代理的云计算环境中虚拟机在线录屏方法与系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5978834A (en) * 1997-09-30 1999-11-02 The United States Of America As Represented By The Secretary Of The Navy Platform independent computer interface software responsive to scripted commands
CN101398767A (zh) * 2007-09-29 2009-04-01 联想(北京)有限公司 虚拟机系统及其用户登录方法
CN102413150A (zh) * 2010-09-20 2012-04-11 联想(北京)有限公司 服务器、虚拟桌面控制方法以及虚拟桌面控制系统
US9094420B2 (en) * 2011-02-24 2015-07-28 Avaya Inc. System and method for assuring quality real-time communication experience in virtual machine
CN104636435A (zh) * 2014-12-26 2015-05-20 中电科华云信息技术有限公司 云终端录屏方法
CN105933415A (zh) * 2016-04-21 2016-09-07 国家计算机网络与信息安全管理中心 一种基于vnc代理的云计算环境中虚拟机在线录屏方法与系统

Also Published As

Publication number Publication date
CN110286998A (zh) 2019-09-27

Similar Documents

Publication Publication Date Title
CN110286998B (zh) 虚拟机图形用户界面生效、执行过程记录方法和装置
CN109788032B (zh) 镜像文件的获取方法、装置、计算机设备和存储介质
CN108427613B (zh) 异常接口定位方法、装置、计算机设备和存储介质
CN111078339B (zh) 界面元素定位方法、装置、计算机设备和存储介质
CN110928653B (zh) 跨集群任务的执行方法、装置、计算机设备和存储介质
CN110209652A (zh) 数据表迁移方法、装置、计算机设备和存储介质
CN110689232A (zh) 工作流配置的优化处理方法、装置和计算机设备
CN109361628B (zh) 报文组装方法、装置、计算机设备和存储介质
CN112235342B (zh) 异常运行环境的修复方法、装置、计算机设备和存储介质
CN110399241A (zh) 任务异常处理方法、装置、计算机设备和可读存储介质
CN110955508B (zh) 基于分布式架构的异步任务调度方法、装置和计算机设备
CN111259358A (zh) 登录方法、装置、计算机设备和存储介质
CN113377669A (zh) 自动化测试方法、装置、计算机设备和存储介质
CN111782447A (zh) 基于ssh服务的批量测试更新方法、装置和计算机设备
CN112559248B (zh) 预处理服务恢复方法、装置、设备及存储介质
CN111930579A (zh) 测试机的部署权限校验方法、装置、计算机设备及存储介质
CN111143305B (zh) 基于分布式存储系统的数据存储方法、装置、设备及介质
CN113407163A (zh) 模块关联赋值方法、装置、计算机设备及可读存储介质
CN109901998B (zh) 资源回收方法、装置、系统、计算机设备和存储介质
CN113505015A (zh) 应用异常信息采集方法、装置、计算机设备和存储介质
CN112559290A (zh) 业务调用监控方法、装置、计算机设备和存储介质
CN112527606A (zh) 数据流程分析方法、装置、计算机设备及存储介质
CN109766252A (zh) 提示框元素处理方法、装置、计算机设备及存储介质
CN111125123B (zh) 一种基于redis实现跨库操作一致性的方法和系统
CN110969430A (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