CN111866160B - 多机控制方法、装置、设备及存储介质 - Google Patents
多机控制方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111866160B CN111866160B CN202010736418.4A CN202010736418A CN111866160B CN 111866160 B CN111866160 B CN 111866160B CN 202010736418 A CN202010736418 A CN 202010736418A CN 111866160 B CN111866160 B CN 111866160B
- Authority
- CN
- China
- Prior art keywords
- message
- application program
- server
- sent
- electronic device
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Abstract
本申请提供一种多机控制方法、装置、设备及存储介质。该方法包括:响应于第一操作,从图形用户界面中显示的设备列表中确定至少一个电子设备;获取待发送的消息;将待发送消息通过应用程序,采用高级消息队列协议发送给至少一个电子设备,在无需额外增加硬件的基础上实现了对任意电子设备的多机控制。
Description
技术领域
本申请涉及计算机技术,尤其涉及一种多机控制方法、装置、设备及存储介质。
背景技术
目前市场上的手机的种类众多,且功能逻辑不尽相同,这种情况给移动应用的开发和测试工作带来了诸多麻烦,仅靠人工一一在每种设备上实现功能测试和输入测试,其工作量是巨大的,且效率极低。
目前普遍使用的多机控制方案通常是将电脑与多台待测试的手机通过USB连接,在电脑端对手机进行统一的控制,这种方式中,通过USB线连接手机与HUB集线器,HUB集线器再通过USB线与电脑连通,在手机和电脑上安装相应的客户端,通过该将手机画面映射到电脑,用户在电脑上操作手机画面,通过电脑段解析后再对手机进行相应的控制,从而达到多机控制的效果。这种方案对电脑的配置要求高,且依赖于硬件使得可扩展性差,并且该方案还要求手机为同种型号手机,因此在实际应用中的可用性受限。
发明内容
本申请提供一种多机控制方法、装置、设备及存储介质,在无需额外增加硬件的基础上实现了对任意电子设备的多机控制。
第一方面,本申请提供一种多机控制方法,应用于服务器,所述服务器运行多机服务的应用程序并在显示器上渲染显示所述应用程序的图形用户界面,所述方法包括:
响应于第一操作,从所述图形用户界面中显示的设备列表中确定至少一个电子设备;
获取待发送的消息;
将所述待发送消息通过所述应用程序,采用高级消息队列协议发送给所述至少一个电子设备。
在一种可行的实现方式中,所述方法还包括:
在启动多机服务的应用程序后,获取并显示注册所述多机服务的设备列表,所述设备列表中包括多个电子设备标识和登陆状态,所述登陆状态用于表示电子设备在线或者离线。
在一种可行的实现方式中,所述图形用户界面上包括预设的多个控制指令的控件以及信息输入框;
所述获取待发送的消息,包括:
响应于对任一控制指令的控件的选中操作,生成控制指令,所述待发送的消息包括所述控制指令;
或者,
获取所述信息输入框中输入的信息,作为所述待发送的消息。
在一种可行的实现方式中,所述待发送的消息包括所述控制指令时,所述将所述待发送消息通过所述应用程序,采用高级消息队列协议发送给所述至少一个电子设备,包括:
根据所述控制指令以及预先设置的指令和主题的对应关系,获取所述控制指令对应的指令主题;
将所述待发送消息通过所述应用程序,采用所述高级消息队列协议中的所述指令主题发送给所述至少一个电子设备。
在一种可行的实现方式中,所述方法还包括:
根据接收到的电子设备发送的心跳信息,对所述设备列表中的电子设备的登陆状态进行更新。
第二方面,本申请提供一种多机控制方法,应用于电子设备,所述电子设备中安装有多机服务的应用程序,所述方法包括:
运行所述应用程序时,根据预设周期向服务器发送心跳信息,所述心跳信息包括所述电子设备的标识,用于确定所述电子设备的登陆状态;
接收所述服务器发送的消息;其中,所述电子设备与所述服务器通过所述应用程序,采用高级消息队列协议进行通信。
在一种可行的实现方式中,接收所述服务器发送的消息,包括:
通过所述应用程序监听订阅的指令主题接收所述消息;所述消息包括控制指令或者接收到输入的信息。
在一种可行的实现方式中,所述消息包括控制指令,所述方法还包括:
根据所述控制指令执行对应的操作。
在一种可行的实现方式中,所述消息包括控制用户输入的信息,所述方法还包括:
在所述应用程序中显示所述信息。
第三方面,本申请提供一种多机控制装置,所述装置运行多机服务的应用程序并在显示器上渲染显示所述应用程序的图形用户界面,所述装置包括:
获取模块,用于响应于第一操作,从所述图形用户界面中显示的设备列表中确定至少一个电子设备;以及获取待发送的消息;
发送模块,用于将所述待发送消息通过所述应用程序,采用高级消息队列协议发送给所述至少一个电子设备。
第四方面,本申请提供一种多机控制装置,所述装置中安装有多机服务的应用程序,所述装置包括:
发送模块,用于在运行所述应用程序时,根据预设周期向服务器发送心跳信息,所述心跳信息包括所述电子设备的标识,用于确定所述电子设备的登陆状态;
接收模块,用于接收所述服务器发送的消息;其中,所述电子设备与所述服务器通过所述应用程序,采用高级消息队列协议进行通信。
第五方面,本申请提供一种服务器,包括存储器和处理器,所述存储器和所述处理器连接;
所述存储器用于存储计算机程序;
所述处理器用于在所述计算机程序执行时,实现如上述第一方面中任一项所述的方法。
第六方面,本申请提供一种电子设备,包括存储器和处理器,所述存储器和所述处理器连接;
所述存储器用于存储计算机程序;
所述处理器用于在所述计算机程序执行时,实现如上述第二方面中任一项所述的方法。
第七方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上述第一方面中任一项所述的方法。
第八方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上述第二方面中任一项所述的方法。
本申请提供一种多机控制方法、装置、设备及存储介质,该方法包括:响应于第一操作,从图形用户界面中显示的设备列表中确定至少一个电子设备;获取待发送的消息;将待发送消息通过应用程序,采用高级消息队列协议发送给至少一个电子设备。该方法中服务器将用户输入的控制指令或输入信息同时发送给多个电子设备,即终端设备,从而实现了多机控制和多机同时输入,该方案无需额外的硬件成本,利用消息队列技术,节约了硬件成本,简化了部署难度,增加了方案的可用性和扩展性,并且可以兼容不同的手机,兼容性较好。同时,对于电子设备只需安装多机服务的应用程序,在服务器侧打开web页面即可实现多机控制和多机输入,部署配置简单方便,易于实现。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的一种多机控制方法的应用场景图;
图2为本申请提供的一种多机控制方法的流程示意图;
图3为本申请提供的一种RabbitMQ的工作模式示意图一;
图4为本申请提供的一种RabbitMQ的工作模式示意图二;
图5为本申请提供的一种服务器和电子设备的模块示意图;
图6为本申请提供的一种web页面示意图;
图7为本申请提供的一种多机控制装置的结构示意图一;
图8为本申请提供的一种多机控制装置的结构示意图二;
图9为本申请提供的一种服务器的结构示意图;
图10为本申请提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请提供的一种多机控制方法的应用场景图。如图1中所示,终端设备10、终端设备20、终端设备30、终端设备40均为待测试的电子设备,例如手机,平板电脑等设备,每个终端设备中均安装本申请提供的多机服务的应用程序。服务器50运行多机服务的应用程序并在显示器上渲染显示应用程序的图形用户界面,服务器50可以包括前端和后端,其中前端用于显示应用程序的图形用户界面。终端设备10、终端设备20、终端设备30、终端设备40均通过无线通信的方式与服务器50通信。
为了实现对多个电子设备的控制,本申请中,电子设备通过无线通信的方式与服务器进行通信,并且采用高级消息队列协议的方式发送消息,来使得电子设备和服务器之间的通信不受服务器的硬件约束或电子设备的型号限制。电子设备可以通过多机服务应用程序连接至服务器,从而使得用户可以通过服务器侧提供的图形用户界面来查看和控制连接的多个电子设备,并输入对电子设备的控制指令或信息等,服务器可以将控制指令或输入信息同时发送给多个电子设备,实现对多个电子设备的控制。
以下结合具体实施例对本申请提供的多级控制方法进行详细说明。可以理解的是,下面这几个具体实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图2为本申请提供的一种多机控制方法的流程示意图。该方法包括:
S201、服务器响应于第一操作,从图形用户界面中显示的设备列表中获取至少一个电子设备。
服务器的图形用户界面中所显示的设备列表中显示了多个电子设备,每个电子设备均是安装了多机服务的应用程序的电子设备。服务器的图形用户界面可以是web页面,即用户可以通过服务器侧的显示器通过web页面打开多级服务的应用程序页面。第一操作可以是用于在图形用户界面上的选择操作、输入操作、对设备选择按钮的选中操作等。
服务器可以在启动多机服务的应用程序,渲染显示应用程序的图形用户界面后,获取并显示注册多机服务的设备列表,设备列表中包括多个电子设备标识和登陆状态,登陆状态用于表示电子设备在线或者离线。示例的,若电子设备中的应用程序处于打开状态,则该电子设备处于在线状态,若电子设备中的应用程序处于关闭状态,则该电子设备处于离线状态。用户可以选择设备列表中处于在线状态的电子设备对其进行控制。
可以理解的是,对于电子设备,其可以在运行应用程序时根据预设周期向服务器发送心跳信息,心跳信息包括电子设备的标识,用于确定电子设备的登陆状态,从而使得服务器可以根据接收到的电子设备发送的心跳信息,对设备列表中的电子设备的登陆状态进行更新。
S202、服务器获取待发送消息。
用户可以通过图形用户界面输入需要向电子设备发送的控制指令。例如图形用户界面上包括预设的多个控制指令的控件以及信息输入框,用户可以点击控制指令的控制以发送控制指令,或者在信息输入框输入文字或者粘贴文字以将文字发送给电子设备。相应的,服务器响应于用户对任一控制指令的控件的选中操作,生成控制指令,待发送消息包括控制指令;或者,服务器获取信息输入框中输入的信息,例如用户在信息输入框中键入文字,作为待发送消息。
S203、服务器将待发送消息通过应用程序,采用高级消息队列协议发送给至少一个电子设备。
电子设备与服务器通过应用程序,采用高级消息队列协议进行通信。服务器通过高级消息队列协议将待发送消息发送给所选中的至少一个电子设备,示例的,服务器可以采用RabbitMQ消息将待发送消息发送给所选中的至少一个电子设备,从而使得电子设备在接收到服务器发送的消息后,可以按照消息中所包括的信息执行相应的操作。例如若待发送消息中包括控制指令,例如调节音量,重启等等,则电子设备接收到消息后可以根据控制指令执行相应的操作。又如,若待发送消息中包括控制用户输入的信息,则电子设备接收到消息后可以执行信息输入,显示输入的信息。
本实施例提供的方法中,服务器将控制指令或输入信息同时发送给多个电子设备,即终端设备,从而实现了多机控制和多机同时输入,该方案无需额外的硬件成本,利用消息队列技术,节约了硬件成本,简化了部署难度,增加了方案的可用性和扩展性,并且可以兼容不同的手机,兼容性较好。同时,对于电子设备只需安装多机服务的应用程序,在服务器侧打开web页面即可实现多机控制和多机输入,部署配置简单方便,易于实现。
本申请提供的服务器可以包括前端模块和后端模块,其中前端模块用户在图形用户界面中显示信息,后端模块用于进行消息处理。以下以电子设备与服务器通过RabbitMQ消息进行通信为例对本申请的多机控制方法,以及,电子设备侧的应用程序,前端模块和后端模块之间的消息处理进行说明。
首先对RabbitMQ消息进行说明。使用RabbitMQ消息队列的方法实现电子设备端和服务器端的通信,基于RabbitMQ的优势,既可以很好的实现与设备的无线连接,又可以保证通信的稳定性和数据一致性。本申请中采用了两种RabbitMQ工作模式:直接(Direct)模式和主题(Topic)模式。
Direct模式用于服务器实时获取多台电子设备的状态信息,具体的,开启多机服务的电子设备作为生产者会按照预设间隔向指定的消息队列(Queue)minievent发送自己的心跳信息,包括设备序列码(serialno)、IP地址、MAC地址等信息,服务端作为该Queue的消费者,实时收集心跳信息,并更新数据库的设备列表,其工作模式如图3所示。
Topic模式用于服务器向电子设备发送控制指令,通过设计特定的topic,可以很好实现控制部分指定设备或者全部设备的功能,实现对连接的电子设备的管理。示例的,本申请中可以设计6个topic:“publisher minievent.#”、”publisher serialno.#”、”publisher mac.#”、”input minievent.#”、”input serialno.#””input mac.#”,其中input-*topic用于控制电子设备输入,而publisher-*topic用于其他控制操作。serialno和mac topic主要用于控制指定设备,由于Android SDK29及以上无法获取设备serialno,因此采用唯一的MAC地址作为topic来区分设备。所有启动服务的电子设备均会注册并监听以上topic,服务端根据用户在web页面的操作,向指定topic发送消息,则对应的电子设备会获得消息并执行相应操作,其工作模式如图4所示。从而上述实施例中的S203可以包括,服务器根据控制指令以及预先设置的指令和主题的对应关系,获取控制指令对应的指令主题;将待发送消息通过应用程序,采用高级消息队列协议中的指令主题发送给至少一个电子设备。相应的,对于电子设备,通过应用程序监听订阅的指令主题接收消息;消息包括控制指令或者控制用户输入的信息。
图5为本申请提供的一种服务器和电子设备的模块示意图。如图5中所示,电子设备侧的应用程序主要由IMEService和BackService两个主要服务组成。其中,IMEService为输入法服务,主要负责处理多机输入功能;BackService为后台服务进程,除非应用程序关闭,则服务一直启动。服务器的前端模块中包括设备展示模块和设备控制模块。其中,设备展示模块用于显示设备列表,设备控制模块用于接收用户输入的信息或控制指令。
结合图5,电子设备安装移动端应用程序,开启软件,该电子设备将注册成为一个RabbitMQ的消息消费者,消费来自服务端发来的消息,同时注册成为一个RabbitMQ的生产者,获取电子设备信息并发送给服务端;在服务器端打开多机控制web页面后,开启了应用程序的电子设备,其设备信息将显示在web页面上,并显示在线状态,用户在web页面的操作将通过socket实时发送到服务器后端模块;服务器后端一方面为RabbitMQ的生产者,当收到web页面发送过来的指令后,产生相应的消息队列并发送出去,另一方面作为RabbitMQ的消费者,收集待控制电子设备的信息;电子设备接收到服务器后端模块传来的消息并执行相应的操作。
以下分别对各个模块进行介绍。
对于电子设备的应用程序,IMEService服务用于在用户将电子设备的输入法切换为该应用程序的输入法时,启动一个RabbitMQ消费者(Consumer)进程进行监听,监听三个input相关的topic消息。用户在web页面的输入将被服务器后端实时发送到RabbitMQ中input相关的topic。订阅了相应topic的电子设备将获取到用户输入信息,该信息有两个属性构成{perIndex,value},其中,perIndex为web页面的光标位置,value为web页面的输入值。电子设备通过输入接口,将用户的的输入值和光标位置实时显示在电子设备上。
BackService为电子设备的应用程序后台服务进程,除非应用程序关闭,则服务一直启动。其工作流程为:BackService服务启动一个RabbitMQ的生产者(Producer)进程,自动获取电子设别的相关信息,包括IP地址、MAC地址、serialno等,并按照预设周期通过RabbitMQ的Queue:minievent向服务器发送该信息,作为该电子设备的心跳信息。服务还启动一个RabbitMQ的Consumer,实时监听三个publisher相关的topic。当所监听的topic收到新的消息后,对该消息进行分析,并对电子设备进行相应的控制,比如开关机控制、音量控制等。
对于服务器后端模块,主要包括Consumer模块和Producer模块,其中,Consumer模块用于接收电子设备的心跳信息,Producer模块用于向电子设备发送控制指令。
服务器启动后端程序时,将同时启动一个RabbitMQ Consumer、一个RabbitMQProducer和两个WebSocket Service。其中,Consumer实时监听Queue:minievent的消息,根据消息中的serialno来判断发送该消息的电子设备是否为新对象,若是,则更新服务器数据库中的设备列表;若否,则实时计算距离最近一次收到各电子设备的心跳信息是否大于预设周期间隔,若是则说明该电子设备的应用程序服务已关闭,不能再接收控制指令,则将该电子设备的状态设置为离线,直到该电子设备再次发送心跳信息,则将其状态设置为在线,将更新的设备列表信息通过显示接口,例如DeviceMap接口的WebSocket发送到web前端以在web页面中显示。
后端程序的DeviceCommand接口的WebSocket实时接收Web端发送的控制指令,控制指令形式为{devices:[],operation:{input:[],Command:[]}}。其中,devices用于指示控制指令的对象设备,operation用于指示输入指令或控制指令。
后端程序解析devices对象,若devices对象不为空,则表示用户在web页面选择了设备列表中的部分设备,针对input对象不为空的指令,依次向input devices.serialno.#或input devices.mac.#topic发送消息;针对command对象不为空的对象,依次向publisher devices.serialno.#或publisher devices.mac.#发送消息,如果devices对象为空,则表示用户用户选择向设备列表中的所有设备发送指令,根据input和command对象为空与否,向input minievent.#或publisher minievent.#topic发送消息。
对于服务器的前端模块,设备展示模块主要用于展示当前连接的可控的设备状态,方便用户直观的通过web页面查看可操作的电子设备的情况,其工作方式为:开启一个DeviceMap的WebSocket Client与服务器后端实时通信,获得实时更新的设备状态信息列表,并刷新前端显示。
设备控制模块主要用于向指定或全部设备发送控制指令,包括输入指令和其他便捷操作指令,其工作流程为:用户通过web页面的设备列表点选指定设备,并在发送快捷指令时选择指定设备,此时,前端模块会通过websocket向后端模块发送包含有指定devices数组和控制命令的对象;若选择全部设备,则发送的对象devices对象为空。用户通过前端特定的输入框输入信息后,实时获取输入框的值和光标值,生成{perIndex,value}键值对,并通过DeviceInput的WebSocket实时发送给后端模块处理。除了直接键入信息外,用户还可以在输入框内进行大文本的粘贴。
本申请的方案中,用户在待测试的电子设备上安装多级服务的应用程序,通过在服务器侧,例如个人计算机,打开统一管理web页面即可实现方便直观的多机控制和多机输入。图6为本申请提供的一种web页面示意图。如图6中所示,web页面中显示了设备列表所包括的多个电子设备,同时还显示了指定设备的按钮,web页面中展示了快捷命令便于用于快速发送控制指令,同时提供了指令面板供用户输入控制指令,设备输入框用于输入文本信息。通过设计RadditMQ消息队列来实现基于Web的服务器与电子设备的无线通信,只须保电子设备和服务器处于可以互相连通的网络环境即可,然后就可以通过Web平台对多台电子设备进行统一的控制。通过WebSocket技术、前端技术和Android技术,实现了实时将用户在web端的输入反映到手机上。该方案性能高效,可扩展性好,兼容不同手机,支持中英文的实时输入,便于在实际应用中进行推广。
图7为本申请提供的一种多机控制装置的结构示意图一。该装置运行多机服务的应用程序并在显示器上渲染显示应用程序的图形用户界面。如图7所示,装置70包括:
获取模块701,用于响应于第一操作,从图形用户界面中显示的设备列表中确定至少一个电子设备;以及获取待发送的消息;
发送模块702,用于将待发送消息通过应用程序,采用高级消息队列协议发送给至少一个电子设备。
本实施例的装置可用于执行上述任一方法实施例中服务器执行的方法,其实现原理和技术效果类似,此处不再赘述。
图8为本申请提供的一种多机控制装置的结构示意图二。该装置中安装有多机服务的应用程序。如图8所示,装置80包括:
发送模块801,用于在运行应用程序时,根据预设周期向服务器发送心跳信息,心跳信息包括电子设备的标识,用于确定电子设备的登陆状态;
接收模块802,用于接收服务器发送的消息;其中,电子设备与服务器通过应用程序,采用高级消息队列协议进行通信。
本实施例的装置可用于执行上述任一方法实施例中电子设备执行的方法,其实现原理和技术效果类似,此处不再赘述。
图9为本申请提供的一种服务器的结构示意图。如图9所示,服务器90包括存储器901和处理器902,存储器901和处理器902通过总线903连接。
存储器901用于存储计算机程序;
处理器902用于在计算机程序执行时,实现如上述任一实施例中服务器执行的方法。
图10为本申请提供的一种电子设备的结构示意图。如图10所示,电子设备100包括存储器1001和处理器1002,存储器1001和处理器1002通过总线1003连接。
存储器1001用于存储计算机程序;
处理器1002用于在计算机程序执行时,实现如上述任一实施例中电子设备的方法。
本申请提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,实现如上述任一实施例中服务器执行的方法。
本申请提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,实现如上述任一实施例中电子设备执行的方法。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
在本申请中,术语“包括”及其变形可以指非限制性的包括;术语“或”及其变形可以指“和/或”。本本申请中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本申请中,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (12)
1.一种多机控制方法,其特征在于,应用于服务器,所述服务器运行多机服务的应用程序并在显示器上渲染显示所述应用程序的图形用户界面,所述方法包括:
响应于第一操作,从所述图形用户界面中显示的设备列表中确定至少一个电子设备;
获取待发送的消息;
将所述待发送的消息通过所述应用程序,采用高级消息队列协议发送给所述至少一个电子设备;
其中,所述电子设备中安装有所述应用程序,所述电子设备与所述服务器通过所述应用程序,采用高级消息队列协议进行通信;
在启动多机服务的应用程序后,获取并显示注册所述多机服务的设备列表,所述设备列表中包括多个电子设备标识和登陆状态,所述登陆状态用于表示电子设备在线或者离线;
根据接收到的电子设备发送的心跳信息,对所述设备列表中的电子设备的登陆状态进行更新,所述心跳信息是所述电子设备根据预设周期向所述服务器发送的;
所述图形用户界面上包括预设的多个控制指令的控件以及信息输入框;
所述获取待发送的消息,包括:
响应于对任一控制指令的控件的选中操作,生成控制指令,所述待发送的消息包括所述控制指令;
或者,
获取所述信息输入框中输入的信息,作为所述待发送的消息。
2.根据权利要求1所述的方法,其特征在于,所述待发送的消息包括所述控制指令时,所述将所述待发送的消息通过所述应用程序,采用高级消息队列协议发送给所述至少一个电子设备,包括:
根据所述控制指令以及预先设置的指令和主题的对应关系,获取所述控制指令对应的指令主题;
将所述待发送的消息通过所述应用程序,采用所述高级消息队列协议中的所述指令主题发送给所述至少一个电子设备。
3.一种多机控制方法,其特征在于,应用于电子设备,所述电子设备中安装有多机服务的应用程序,所述方法包括:
运行所述应用程序时,根据预设周期向服务器发送心跳信息,所述心跳信息包括所述电子设备的标识,用于确定所述电子设备的登陆状态;
接收所述服务器发送的消息;其中,所述电子设备与所述服务器通过所述应用程序,采用高级消息队列协议进行通信;
其中,所述服务器运行所述应用程序并在显示器上渲染显示所述应用程序的图形用户界面,所述图形用户界面上包括预设的多个控制指令的控件以及信息输入框;所述消息是所述服务器响应于对任一控制指令的控件的选中操作,生成的控制指令,所述消息包括所述控制指令;
或者是所述服务器获取所述信息输入框中输入的信息,作为所述消息。
4.根据权利要求3所述的方法,其特征在于,接收所述服务器发送的消息,包括:
通过所述应用程序监听订阅的指令主题接收所述消息;所述消息包括控制指令或者接收到的输入信息。
5.根据权利要求3或4所述的方法,其特征在于,所述消息包括控制指令时,所述方法还包括:
根据所述控制指令执行对应的操作。
6.根据权利要求3或4所述的方法,其特征在于,所述消息包括用户输入的信息时,所述方法还包括:
在所述应用程序中显示所述信息。
7.一种多机控制装置,其特征在于,所述多机控制装置运行多机服务的应用程序并在显示器上渲染显示所述应用程序的图形用户界面,所述装置包括:
获取模块,用于响应于第一操作,从所述图形用户界面中显示的设备列表中确定至少一个电子设备;以及获取待发送的消息;
发送模块,用于将所述待发送的消息通过所述应用程序,采用高级消息队列协议发送给所述至少一个电子设备;
其中,所述电子设备中安装有所述应用程序,所述电子设备与所述装置通过所述应用程序,采用高级消息队列协议进行通信;
所述获取模块,还用于在启动多机服务的应用程序后,获取并显示注册所述多机服务的设备列表,所述设备列表中包括多个电子设备标识和登陆状态,所述登陆状态用于表示电子设备在线或者离线;
根据接收到的电子设备发送的心跳信息,对所述设备列表中的电子设备的登陆状态进行更新,所述心跳信息是所述电子设备根据预设周期向所述装置发送的;
所述图形用户界面上包括预设的多个控制指令的控件以及信息输入框;
所述获取模块,具体用于响应于对任一控制指令的控件的选中操作,生成控制指令,所述待发送的消息包括所述控制指令;
或者,获取所述信息输入框中输入的信息,作为所述待发送的消息。
8.一种电子设备,其特征在于,所述电子设备中安装有多机服务的应用程序,所述设备包括:
发送模块,用于运行所述应用程序时,根据预设周期向服务器发送心跳信息,所述心跳信息包括所述电子设备的标识,用于确定所述电子设备的登陆状态;
接收模块,用于接收所述服务器发送的消息;其中,所述电子设备与所述服务器通过所述应用程序,采用高级消息队列协议进行通信;
其中,所述服务器运行所述应用程序并在显示器上渲染显示所述应用程序的图形用户界面,所述图形用户界面上包括预设的多个控制指令的控件以及信息输入框;所述消息是所述服务器响应于对任一控制指令的控件的选中操作,生成的控制指令,所述消息包括所述控制指令;
或者是所述服务器获取所述信息输入框中输入的信息,作为所述消息。
9.一种服务器,其特征在于,包括存储器和处理器,所述存储器和所述处理器连接;
所述存储器用于存储计算机程序;
所述处理器用于在所述计算机程序执行时,实现如权利要求1-2中任一项所述的方法。
10.一种电子设备,其特征在于,包括存储器和处理器,所述存储器和所述处理器连接;
所述存储器用于存储计算机程序;
所述处理器用于在所述计算机程序执行时,实现如权利要求3-6中任一项所述的方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1-2中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求3-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010736418.4A CN111866160B (zh) | 2020-07-28 | 2020-07-28 | 多机控制方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010736418.4A CN111866160B (zh) | 2020-07-28 | 2020-07-28 | 多机控制方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111866160A CN111866160A (zh) | 2020-10-30 |
CN111866160B true CN111866160B (zh) | 2023-09-15 |
Family
ID=72948414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010736418.4A Active CN111866160B (zh) | 2020-07-28 | 2020-07-28 | 多机控制方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111866160B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113360783B (zh) * | 2021-06-21 | 2023-03-14 | 上海哔哩哔哩科技有限公司 | 用户在线列表更新方法、装置及计算机设备 |
CN115379309B (zh) * | 2022-08-16 | 2023-10-20 | 万物互动技术股份有限公司 | 消毒设备控制方法、电子设备及计算机可读存储介质 |
CN116366472B (zh) * | 2023-04-11 | 2023-10-13 | 广东保伦电子股份有限公司 | 一种减少服务器转发压力的前端控制、服务器转发方法 |
CN117270955A (zh) * | 2023-11-17 | 2023-12-22 | 福建天创信息科技有限公司 | 基于websocket的设备统一管理系统 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7228333B1 (en) * | 2000-04-25 | 2007-06-05 | Telecommunication Systems, Inc. | Wireless internet gateway |
WO2015074613A1 (zh) * | 2013-11-22 | 2015-05-28 | 华为技术有限公司 | 摄像机控制方法、用户设备及摄像机 |
CN105808425A (zh) * | 2016-02-24 | 2016-07-27 | 北京奇虎科技有限公司 | 一种实现移动端应用测试的方法、装置和系统 |
CN105975367A (zh) * | 2016-04-29 | 2016-09-28 | 腾讯科技(深圳)有限公司 | 移动设备的测试方法和装置 |
CN106055470A (zh) * | 2016-05-19 | 2016-10-26 | 网易(杭州)网络有限公司 | 游戏程序的性能测试方法、装置及系统 |
CN106484622A (zh) * | 2016-10-18 | 2017-03-08 | 网易(杭州)网络有限公司 | 测试方法、装置及系统 |
CN108769214A (zh) * | 2018-05-31 | 2018-11-06 | 北京百度网讯科技有限公司 | 用于控制边缘计算设备、用于更新数据的方法和装置 |
CN108984316A (zh) * | 2018-06-15 | 2018-12-11 | 广州视源电子科技股份有限公司 | 一种用于分布式数据处理的方法、装置、电子设备及计算机存储介质 |
CN109088723A (zh) * | 2018-10-26 | 2018-12-25 | 四川长虹电器股份有限公司 | 一种基于mqtt协议的远程控制方法 |
CN109600282A (zh) * | 2018-12-26 | 2019-04-09 | 世纪龙信息网络有限责任公司 | 基于云真机的测试系统及测试方法 |
CN109684218A (zh) * | 2018-12-26 | 2019-04-26 | 世纪龙信息网络有限责任公司 | 基于云真机的测试系统及测试方法 |
CN109936585A (zh) * | 2017-12-15 | 2019-06-25 | 蔚来汽车有限公司 | 基于智能设备来远程控制车辆的方法 |
CN110086636A (zh) * | 2019-04-17 | 2019-08-02 | 平安科技(深圳)有限公司 | 一种基于mqtt的消息分发方法、服务器及存储介质 |
CN110300126A (zh) * | 2019-07-30 | 2019-10-01 | 中电科华北网络信息安全有限公司 | 一种设施农业信息安全云服务系统及监控方法 |
CN110674039A (zh) * | 2019-09-20 | 2020-01-10 | 广州虎牙科技有限公司 | 多设备同步测试方法、装置、服务器及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8930492B2 (en) * | 2011-10-17 | 2015-01-06 | Blackberry Limited | Method and electronic device for content sharing |
US10630399B2 (en) * | 2017-05-05 | 2020-04-21 | Dell Products, L.P. | Testing distributed applications that have an established exchange in an advanced message queuing protocol (AMQP) message broker |
US10592315B2 (en) * | 2017-08-28 | 2020-03-17 | General Electric Company | Software container messaging mechanism |
-
2020
- 2020-07-28 CN CN202010736418.4A patent/CN111866160B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7228333B1 (en) * | 2000-04-25 | 2007-06-05 | Telecommunication Systems, Inc. | Wireless internet gateway |
WO2015074613A1 (zh) * | 2013-11-22 | 2015-05-28 | 华为技术有限公司 | 摄像机控制方法、用户设备及摄像机 |
CN105808425A (zh) * | 2016-02-24 | 2016-07-27 | 北京奇虎科技有限公司 | 一种实现移动端应用测试的方法、装置和系统 |
CN105975367A (zh) * | 2016-04-29 | 2016-09-28 | 腾讯科技(深圳)有限公司 | 移动设备的测试方法和装置 |
CN106055470A (zh) * | 2016-05-19 | 2016-10-26 | 网易(杭州)网络有限公司 | 游戏程序的性能测试方法、装置及系统 |
CN106484622A (zh) * | 2016-10-18 | 2017-03-08 | 网易(杭州)网络有限公司 | 测试方法、装置及系统 |
CN109936585A (zh) * | 2017-12-15 | 2019-06-25 | 蔚来汽车有限公司 | 基于智能设备来远程控制车辆的方法 |
CN108769214A (zh) * | 2018-05-31 | 2018-11-06 | 北京百度网讯科技有限公司 | 用于控制边缘计算设备、用于更新数据的方法和装置 |
CN108984316A (zh) * | 2018-06-15 | 2018-12-11 | 广州视源电子科技股份有限公司 | 一种用于分布式数据处理的方法、装置、电子设备及计算机存储介质 |
CN109088723A (zh) * | 2018-10-26 | 2018-12-25 | 四川长虹电器股份有限公司 | 一种基于mqtt协议的远程控制方法 |
CN109600282A (zh) * | 2018-12-26 | 2019-04-09 | 世纪龙信息网络有限责任公司 | 基于云真机的测试系统及测试方法 |
CN109684218A (zh) * | 2018-12-26 | 2019-04-26 | 世纪龙信息网络有限责任公司 | 基于云真机的测试系统及测试方法 |
CN110086636A (zh) * | 2019-04-17 | 2019-08-02 | 平安科技(深圳)有限公司 | 一种基于mqtt的消息分发方法、服务器及存储介质 |
CN110300126A (zh) * | 2019-07-30 | 2019-10-01 | 中电科华北网络信息安全有限公司 | 一种设施农业信息安全云服务系统及监控方法 |
CN110674039A (zh) * | 2019-09-20 | 2020-01-10 | 广州虎牙科技有限公司 | 多设备同步测试方法、装置、服务器及存储介质 |
Non-Patent Citations (1)
Title |
---|
基于MQTT的DALI照明扩展系统的设计与实现;张玉杰等;《照明工程学报》;20180831(第04期);第1-5节 * |
Also Published As
Publication number | Publication date |
---|---|
CN111866160A (zh) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111866160B (zh) | 多机控制方法、装置、设备及存储介质 | |
CN108804302B (zh) | 一种远程测试方法、系统及相关设备 | |
CN102752369B (zh) | 电视应用服务的提供方法及虚拟化内容服务平台 | |
CN106656743B (zh) | 消息展示方法、装置及系统 | |
CN108763086A (zh) | 基于远程真机的脚本录制方法、终端及计算机可读存储介质 | |
CN112286667A (zh) | 应用程序控制方法、装置、电子设备及介质 | |
CN109873867B (zh) | 快递柜信息传输方法、装置、系统、快递柜和储存介质 | |
CN107666406B (zh) | 智能卡片显示方法及装置 | |
CN111416756B (zh) | 协议测试方法、装置、计算机设备及存储介质 | |
CN113285866B (zh) | 信息发送方法、装置和电子设备 | |
TW201814609A (zh) | 一種資訊推送的方法和系統及用戶端和伺服器 | |
US8977968B2 (en) | Pseudo-remote terminal IOTA mobile diagnostics and electronic customer care | |
CN113608812A (zh) | 远程控制方法、装置、系统及存储介质 | |
CN112034732B (zh) | 一种半物理卫星仿真系统及仿真方法 | |
CN110781089A (zh) | 一种设备ui自动化测试方法、装置、电子设备和介质 | |
CN106815150B (zh) | 服务端接口测试系统及方法 | |
WO2022100075A1 (zh) | 性能检测方法、装置、电子设备和计算机可读介质 | |
CN105262880A (zh) | 一种应用于WiFi网络的手机控制演示系统 | |
CN112486797A (zh) | 接口测试方法和装置 | |
CN111176577B (zh) | 分布式块存储服务命令处理方法、装置、设备及介质 | |
CN110750453B (zh) | 基于html5的智能移动端测试方法、系统、服务器及存储介质 | |
EP1895794A2 (en) | Remote management system and method for portable electronic devices | |
CN108737337B (zh) | 设备处理方法、装置、服务器及系统 | |
CN111555894B (zh) | 数据处理方法、装置、设备和存储介质 | |
CN114417201A (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 |