Device control method and apparatus, electronic device, and storage medium

By creating virtual devices and utilizing multicast transmission, synchronous control of multiple smart devices is achieved, solving the problem of high network latency when multiple devices perform actions and improving the user experience.

CN114967485BActive Publication Date: 2026-01-13SHENZHEN LUMIUNITED TECH CO LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202210423101.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-21
Publication Date
2026-01-13
Estimated Expiration
2042-04-21

AI Technical Summary

Technical Problem

In existing technologies, network latency is significant when multiple devices perform actions, which affects user experience.

Method used

By creating virtual devices, at least two smart devices can be allowed to perform the same action simultaneously. Device control commands can be sent using multicast transmission, enabling multiple smart devices to respond to the commands at the same time.

Benefits of technology

It effectively reduces network latency when multiple devices perform actions, thus improving the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114967485B_ABST
    Figure CN114967485B_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a device control method and device, electronic equipment and storage medium, and relate to the technical field of Internet of Things. The device control method comprises: displaying at least one control entry for a virtual device, the virtual device being created by at least two smart devices allowing at least one same action to be performed; in response to a triggering operation on the control entry, generating a device control instruction, the device control instruction being used to instruct the virtual device to perform a set action corresponding to the control entry, the set action belonging to the actions allowed to be performed by the at least two smart devices creating the virtual device; and sending the device control instruction to the virtual device, so that the at least two smart devices creating the virtual device perform the set action synchronously in response to the device control instruction. The embodiments of the present application solve the problem of large network delay of multiple devices performing actions in the related art.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of Internet of Things (IoT) technology, and more specifically, to a device control method, apparatus, electronic device, and storage medium. Background Technology

[0002] With the rapid development of IoT technology, smart devices are being used more and more widely. In order to improve the ease of operation of smart devices for users, not only can device linkage be set up, such as automatically turning on the lights if someone is detected in the living room, but various modes can also be set up, such as automatically turning off the air conditioner, lights, socket switches, etc. when the user leaves home.

[0003] However, currently, controlling multiple smart devices, such as multiple smart devices in the away-from-home mode, often requires controlling them one by one based on multiple commands. In other words, multiple smart devices need to execute their corresponding set actions in sequence, which generates significant network latency and can easily affect the user experience.

[0004] As can be seen from the above, how to reduce network latency when multiple devices perform actions remains to be solved. Summary of the Invention

[0005] This application provides a device control method, apparatus, system, electronic device, and storage medium, which can solve the problem of large network latency when multiple devices perform actions in related technologies. The technical solution is as follows:

[0006] According to one aspect of the embodiments of this application, a device control method includes: displaying at least one control entry for a virtual device, the virtual device being created by at least two smart devices that are allowed to perform at least one identical action; generating a device control instruction in response to a triggering operation of the control entry, the device control instruction instructing the virtual device to perform a preset action corresponding to the control entry, the preset action being an action allowed to be performed by the at least two smart devices that created the virtual device; and sending the device control instruction to the virtual device, causing the at least two smart devices that created the virtual device to respond to the device control instruction and synchronously execute the preset action.

[0007] According to one aspect of the embodiments of this application, a device control method is provided, the method comprising: receiving a device control instruction sent by a user terminal, the device control instruction being used to instruct a virtual device to perform a set action, the virtual device being created by at least two smart devices that are allowed to perform at least one identical action, the set action being an action that is allowed to be performed by at least two smart devices; and sending the device control instruction to the at least two smart devices that created the virtual device in a multicast transmission manner, such that the at least two smart devices that created the virtual device respond to the device control instruction and synchronously execute the set action.

[0008] According to one aspect of the embodiments of this application, a device control apparatus includes: an entry display module for displaying at least one control entry for a virtual device, the virtual device being created by at least two smart devices that are allowed to perform at least one identical action; a control instruction generation module for generating a device control instruction in response to a triggering operation of the control entry, the device control instruction instructing the virtual device to perform a preset action corresponding to the control entry, the preset action being an action allowed to be performed by the at least two smart devices that created the virtual device; and a control instruction sending module for sending the device control instruction to the virtual device, causing the at least two smart devices that created the virtual device to respond to the device control instruction and synchronously execute the preset action.

[0009] In one exemplary embodiment, of the at least two smart devices that create the virtual device, one smart device is designated as the target device, and the remaining smart devices are designated as candidate devices. The apparatus further includes: a device display module for displaying the target device on a device list page; a device determination module for determining at least one candidate device based on a virtual device creation instruction for the target device; and a device creation module for displaying the virtual device created by the target device and at least one candidate device on the device list page.

[0010] In one exemplary embodiment, the apparatus further includes: an entry display module for displaying a virtual device creation entry corresponding to the target device; and a creation instruction generation module for generating a virtual device creation instruction in response to a triggering operation on the virtual device creation entry.

[0011] In one exemplary embodiment, the entry display module includes: a first page display unit, configured to display a device details page of the target device in response to a first selection operation of the target device displayed on the device list page; and an entry display unit, configured to display the virtual device creation entry on the device details page of the target device.

[0012] In one exemplary embodiment, the device determination module includes: a device display unit, configured to display at least one recommended device in response to the virtual device creation instruction, the recommended device being a smart device that is allowed to perform at least one of the same actions as the target device; and a device determination unit, configured to determine the selected recommended device as the candidate device in response to a second selection operation on the displayed at least one recommended device.

[0013] In one exemplary embodiment, the entry display module includes: a second page display unit, configured to display a device details page of the virtual device in response to a third selection operation of the virtual device displayed on the device list page; and an entry display unit, configured to display at least one of the control entry points on the device details page of the virtual device.

[0014] In one exemplary embodiment, the set actions corresponding to different control entry points have different action types, so that at least two smart devices that create the virtual device respond to the device control command and synchronously execute the set actions that match the action types they support. The action types supported by the smart devices themselves are used to indicate the actions that the smart devices are allowed to execute.

[0015] According to one aspect of the embodiments of this application, a device control apparatus includes: an instruction receiving module, configured to receive a device control instruction sent by a user terminal, the device control instruction being used to instruct a virtual device to perform a set action, the virtual device being created by at least two smart devices that are allowed to perform at least one identical action, the set action being an action allowed to be performed by at least two smart devices; and an instruction sending module, configured to send the device control instruction to at least two smart devices that created the virtual device in a multicast transmission manner, such that the at least two smart devices that created the virtual device respond to the device control instruction and synchronously execute the set action.

[0016] In one exemplary embodiment, the apparatus further includes: a configuration detection module, configured to perform virtual device configuration detection on at least two smart devices that create the virtual device based on the device control command, and determine at least one first device that has completed the virtual device configuration; the command sending module includes: a multicast transmission unit, configured to send the device control command to the multicast member, with at least one first device as a multicast member.

[0017] In one exemplary embodiment, the apparatus further includes: a configuration data receiving module, configured to receive virtual device configuration data sent by the user terminal, the virtual device configuration data being used to indicate that the virtual device is created by at least two smart devices that are allowed to perform at least one identical action; and a configuration request module, configured to request the smart device that created the virtual device to perform virtual device configuration based on the virtual device configuration data.

[0018] In one exemplary embodiment, the apparatus further includes: an instruction distribution module, configured to send the device control instruction to each of the at least one second device that has not completed virtual device configuration, in a unicast transmission manner, such that each second device responds to the device control instruction and performs the set action.

[0019] In one exemplary embodiment, the apparatus further includes: a data receiving module, configured to receive device status data reported by each smart device that created the virtual device, the device status data being generated by the smart device performing the set action in response to the device control command, and used to indicate the device status of the smart device after performing the set action; and a command retransmission module, configured to retransmit the device control command to at least two smart devices that created the virtual device in a multicast transmission manner if a timeout is detected in the device status data reporting.

[0020] In one exemplary embodiment, the apparatus further includes a state synchronization module, configured to perform virtual device marking processing on at least two smart devices that create the virtual device based on the device control instructions, so as to control the at least two smart devices to maintain the same device state when the device states of the at least two smart devices are different.

[0021] According to one aspect of the embodiments of this application, a device control system includes a user terminal, a gateway, and a smart device. The user terminal is used to send device control instructions to a virtual device, the virtual device being created by at least two smart devices authorized to perform at least one identical action. The device control instructions instruct the virtual device to perform a predetermined action, the predetermined action being an action authorized to be performed by the at least two smart devices that created the virtual device. The gateway is used to receive the device control instructions sent by the user terminal and to send the device control instructions to the at least two smart devices that created the virtual device via multicast transmission. The smart device is used to create the virtual device, and if it receives the device control instructions sent by the gateway, it responds to the device control instructions and synchronously executes the predetermined action.

[0022] According to one aspect of the present application, an electronic device includes: at least one processor, at least one memory, and at least one communication bus, wherein a computer program is stored in the memory, and the processor reads the computer program from the memory via the communication bus; when the computer program is executed by the processor, it implements the device control method described above.

[0023] According to one aspect of the embodiments of this application, a storage medium stores a computer program thereon, which, when executed by a processor, implements the device control method as described above.

[0024] According to one aspect of the embodiments of this application, a computer program product includes a computer program stored in a storage medium. A processor of a computer device reads the computer program from the storage medium and executes the computer program, causing the computer device to implement the device control method as described above when executed.

[0025] The beneficial effects of the technical solution provided in this application are:

[0026] In the above technical solution, the virtual device display has at least one control entry point. The virtual device is created by at least two smart devices that are allowed to perform at least one identical action. A device control command is generated in response to a trigger operation on the control entry point. The device control command is used to instruct the virtual device to perform the set action corresponding to the control entry point and send the device control command to the virtual device, so that the at least two smart devices that created the virtual device respond to the device control command and synchronously execute the set action. Thus, at least two smart devices that are allowed to perform at least one identical action can create a virtual device. By controlling the virtual device to execute the set action, it is essentially controlling the at least two smart devices to execute the set action synchronously, avoiding the at least two smart devices from executing the set action sequentially. This reduces the network latency of multiple devices executing actions, thereby effectively solving the problem of large network latency of multiple devices executing actions in related technologies. Attached Figure Description

[0027] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments of this application will be briefly introduced below.

[0028] Figure 1 This is a schematic diagram of the implementation environment according to the embodiments of this application;

[0029] Figure 2 This is a flowchart illustrating a device control method according to an exemplary embodiment;

[0030] Figure 3 This is a schematic diagram illustrating a device details page of a virtual device according to an exemplary embodiment;

[0031] Figure 4 This is a flowchart illustrating a method for creating a virtual device according to an exemplary embodiment;

[0032] Figure 5 This is a schematic diagram illustrating a device list page displaying smart devices according to an exemplary embodiment;

[0033] Figure 6 yes Figure 2 The flowchart of one embodiment shows step 330 corresponding to the example.

[0034] Figure 7 This is a schematic diagram illustrating the device details page of a target device and its redirection process according to an exemplary embodiment;

[0035] Figure 8 This is a schematic diagram illustrating the virtual device creation page of a target device and its redirection process according to an exemplary embodiment;

[0036] Figure 9 yes Figure 2 Step 350, as shown in the corresponding embodiment, is illustrated in a flowchart of one embodiment;

[0037] Figure 10 This is a schematic diagram illustrating the addition of a virtual device according to an exemplary embodiment;

[0038] Figure 11 This is a schematic diagram illustrating a page navigation process for a virtual device according to an exemplary embodiment;

[0039] Figure 12 This is a timing interaction diagram of a device control method in an application scenario according to an exemplary embodiment;

[0040] Figure 13 This is a schematic diagram illustrating, according to an exemplary embodiment, how a gateway sends device control commands to a first device and a second device respectively;

[0041] Figure 14 This is a structural block diagram of a device control apparatus according to an exemplary embodiment;

[0042] Figure 15 This is a structural block diagram of a device control apparatus according to an exemplary embodiment;

[0043] Figure 16 This is a hardware structure diagram of a terminal according to an exemplary embodiment;

[0044] Figure 17 This is a hardware structure diagram of a gateway according to an exemplary embodiment;

[0045] Figure 18 This is a structural block diagram of an electronic device according to an exemplary embodiment. Detailed Implementation

[0046] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain this application, and should not be construed as limiting this application.

[0047] Those skilled in the art will understand that, unless explicitly stated otherwise, the singular forms “a,” “an,” “the,” and “the” used herein may also include the plural forms. It should be further understood that the term “comprising” as used in this application’s specification means the presence of the stated features, integers, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. It should be understood that when we say an element is “connected” or “coupled” to another element, it can be directly connected or coupled to the other element, or there may be intermediate elements. Furthermore, “connected” or “coupled” as used herein can include wireless connections or wireless coupling. The term “and / or” as used herein includes all or any units and all combinations of one or more associated listed items.

[0048] The following is an introduction and explanation of several terms used in this application:

[0049] Multicast: also known as multitarget broadcast or multicast, is a point-to-multipoint network communication method. It is also considered a network communication method in which data is transmitted between one sender and multiple receivers. The sender sends only one copy of the data, and the data received by multiple receivers are all copies of that data, i.e., the same data.

[0050] Unicast: A point-to-point network communication method, mainly used for data transmission between a sender and a receiver. If it is required to transmit the same data between a sender and multiple receivers, the difference from multicast is that the sender needs to send multiple copies of the same data.

[0051] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.

[0052] Figure 1 This is a schematic diagram of the implementation environment involved in the embodiments of this application. The implementation environment includes a user terminal 110, a smart device 130, a gateway 150, a server 170, and a router 190.

[0053] Specifically, user terminal 110, which can also be considered as user terminal or terminal, can deploy (or install) the client associated with smart device 130. This user terminal 110 can be an electronic device such as a smartphone, tablet, laptop, desktop computer, smart control panel, or other device with display and control functions, without limitation here.

[0054] The client, associated with the smart device 130, is essentially where the user registers an account and configures the smart device 130. For example, the configuration includes adding a device identifier to the smart device 130, so that when the client runs on the user terminal 110, it can provide the user with functions such as device display and device control of the smart device 130. This client can be in the form of an application or a webpage. Correspondingly, the page displayed by the client can be in the form of a program window or a webpage, and there is no limitation here.

[0055] Smart device 130 is deployed in gateway 150 and communicates with gateway 150 through its own configured communication module, thereby being controlled by gateway 150. It should be understood that smart device 130 generally refers to one of multiple smart devices 130. This application embodiment only uses smart device 130 as an example; that is, this application embodiment does not limit the number or type of smart devices deployed in gateway 150. In one application scenario, smart device 130 is deployed in gateway 150 by accessing it through a local area network. The process of smart device 130 accessing gateway 150 through a local area network includes: gateway 150 first establishes a local area network, and smart device 130 joins the local area network established by gateway 150 by connecting to it. This local area network includes, but is not limited to, ZIGBEE or Bluetooth. Among them, the smart device 130 can be a smart printer, smart fax machine, smart camera, smart air conditioner, smart door lock, smart light, smart fan, smart speaker, or electronic devices such as human body sensor, door and window sensor, temperature and humidity sensor, water immersion sensor, natural gas alarm, smoke alarm, wall switch, wall socket, wireless switch, wireless wall sticker switch, cube controller, curtain motor, etc., equipped with a communication module.

[0056] The interaction between user terminal 110 and smart device 130 can be achieved through a local area network (LAN) or a wide area network (WAN). In one application scenario, user terminal 110 establishes a wired or wireless communication connection with gateway 150 via router 190, such as Wi-Fi, allowing user terminal 110 and gateway 150 to be deployed on the same LAN, thus enabling user terminal 110 to interact with smart device 130 via the LAN path. In another application scenario, user terminal 110 establishes a wired or wireless communication connection with gateway 150 via server 170, such as 2G, 3G, 4G, 5G, or Wi-Fi, allowing user terminal 110 and gateway 150 to be deployed on the same WAN, thus enabling user terminal 110 to interact with smart device 130 via the WAN path.

[0057] The server-side 170 can also be considered as the cloud, cloud platform, platform side, server side, etc. This server-side 170 can be a single server, a server cluster consisting of multiple servers, or a cloud computing center consisting of multiple servers, in order to better provide backend services to a massive number of user terminals 110. For example, backend services include, but are not limited to, device control services, etc.

[0058] With the interaction between user terminal 110, gateway 150, server 170, and smart devices 130, the user can use user terminal 110 to generate device control commands for controlling virtual devices to perform set actions. The user can then send the device control commands to at least two smart devices 130 that created the virtual device via gateway 150 / server 170 in a multicast transmission manner. This allows the at least two smart devices 130 to respond to the device control commands and synchronously execute the set actions, thereby conveniently enabling the user to synchronously control multiple smart devices 130.

[0059] Please see Figure 2 This application provides a device control method, applicable to electronic devices, for example, the electronic device may be... Figure 1 The user terminal 110 shown in the implementation environment is described below. For ease of description, the execution subject of each step of the method is an electronic device, but this does not constitute a specific limitation.

[0060] like Figure 2 As shown, the method may include the following steps:

[0061] Step 210: Display at least one control entry point for the virtual device.

[0062] First, it should be noted that a virtual device is created by at least two smart devices that are allowed to perform at least one identical action.

[0063] For example, consider a bathroom with two smart devices: a smart fan and a smart light. When entering the bathroom, both the fan and light turn on simultaneously; when leaving, they turn off simultaneously. In this smart home scenario, the smart fan and light are allowed to perform the same actions. Therefore, to reduce network latency during these actions, the smart fan and light can be created as a virtual device, allowing them to synchronously perform actions such as turning on and off.

[0064] Secondly, a control entry point is provided to control at least two smart devices that create the virtual device to synchronously execute set actions. In one possible implementation, at least one control entry point for the virtual device is displayed on the virtual device's device details page.

[0065] For at least one control entry point of a virtual device, in one possible implementation, each control entry point corresponds to a set action, causing at least two smart devices that created the virtual device to synchronously execute the set action corresponding to the control entry point. In another possible implementation, the set actions corresponding to different control entry points have different action types, causing at least two smart devices that created the virtual device to synchronously execute set actions that match the action types they support, wherein the action types supported by the smart devices themselves are used to indicate the actions that the smart devices are allowed to execute.

[0066] Figure 3 A schematic diagram of a virtual device's device details page in one embodiment is shown, such as... Figure 3As shown, on the device details page 201 of the virtual device "Brightness Lamp," at least three control entry points are displayed: brightness control entry point 202, on control entry point 203, and off control entry point 204. Assuming the virtual device "Brightness Lamp" is created by four smart devices—two switches and two smart lights electrically connected to the switches—then brightness control entry point 202 controls the two smart lights to synchronously adjust their brightness; on control entry point 203 controls the two switches and two smart lights to synchronously turn on; and off control entry point 204 controls the two switches and two smart lights to synchronously turn off. Therefore, in this smart home scenario, the setting action corresponding to the brightness control entry point is brightness adjustment, the setting action corresponding to the on control entry point is turning on, and the setting action corresponding to the off control entry point is turning off. For the four smart devices that created the virtual device, the switches support actions including on and off, meaning the switches are allowed to perform actions such as on and off; the smart lights support actions including on, off, and brightness adjustment, meaning the smart lights are allowed to perform actions such as on, off, and brightness adjustment. This can also be understood as the set actions that match the action types supported by the switch itself, including actions such as turning on and off, and the set actions that match the action types supported by the smart light itself, including actions such as turning on, turning off, and adjusting brightness.

[0067] Step 230: In response to the trigger operation of the control entry, generate device control commands.

[0068] Among them, the device control command is used to instruct the virtual device to perform the set action corresponding to the control entry. The set action belongs to the action that is allowed to be performed by at least two smart devices that created the virtual device.

[0069] Taking the virtual device "brightness light" as an example, the four smart devices that create the virtual device are allowed to perform actions such as turning it on, turning it off, and adjusting its brightness. Correspondingly, the settings for the control entry also include actions such as turning it on, turning it off, and adjusting its brightness. Thus, if a trigger operation is performed on the "on" control entry, a device control command is generated to control the virtual device to perform the "on" action; if a trigger operation is performed on the "off" control entry, a device control command is generated to control the virtual device to perform the "off" action; and if a trigger operation is performed on the "brightness" control entry, a device control command is generated to control the virtual device to perform the "adjust brightness" action.

[0070] Step 250: Send a device control command to the virtual device, so that at least two smart devices that created the virtual device respond to the device control command and synchronously execute the set actions.

[0071] Combination Figure 1The following description explains the process of transmitting device control commands between user terminal 110, gateway 150, and smart device 130 in the illustrated implementation environment:

[0072] As for gateway 150, after user terminal 110 sends a device control command to the virtual device, it can receive the device control command and then send the device control command to at least two smart devices 130 that created the virtual device according to the multicast transmission method. Thus, for the smart device 130 that created the virtual device, if it receives the device control command sent by gateway 150, it will respond to the device control command and synchronously execute the set action.

[0073] Continuing with the example of the virtual device "brightness light," for the four smart devices that created the virtual device, if they receive a device control command from gateway 150 to control the virtual device to perform an "on" action, then both switches and both smart lights will simultaneously perform the "on" action. If they receive a device control command from gateway 150 to control the virtual device to perform a "off" action, then both switches and both smart lights will simultaneously perform the "off" action. If they receive a device control command from gateway 150 to control the virtual device to perform a "brightness adjustment" action, then both smart lights will simultaneously perform the "brightness adjustment" action. It should be noted that since the switches themselves support both "on" and "off" action types, the switches only perform the set actions that match their supported action types, i.e., "on" and "off" actions.

[0074] Through the above process, unified and rapid control of multiple devices is achieved. That is, at least two smart devices that can perform at least one identical action can create a virtual device. By controlling the virtual device to perform a set action, it is essentially controlling the at least two smart devices to perform the set action synchronously, avoiding the at least two smart devices from performing the set action sequentially. This reduces the network latency of multiple devices performing actions, thereby effectively solving the problem of large network latency of multiple devices performing actions in related technologies.

[0075] Figure 4 A flowchart illustrating a method for creating a virtual device in one embodiment is shown, such as... Figure 4 As shown, the method may include the following steps:

[0076] Step 310: Display the target device on the device list page.

[0077] The device list page displays multiple smart devices deployed on the gateway, including but not limited to the target device. It should be noted that each smart device is uniquely identified by a device identifier. For example, smart device A is uniquely identified by device identifier A. Therefore, displaying device identifier A on the device list page indicates that smart device A deployed on the gateway is shown on the device list page.

[0078] Figure 5 (a) illustrates a schematic diagram of a smart device display in one embodiment, such as Figure 5 As shown in (a), device identifier A and device identifier B are displayed on the device list page 301, representing smart device A and smart device B deployed on the gateway, respectively. Among them, smart device A is the target device.

[0079] Step 330: Based on the virtual device creation instructions for the target device, determine at least one candidate device.

[0080] In this context, a candidate device refers to a smart device that is allowed to perform at least one action that is the same as the action performed by the target device.

[0081] In one possible implementation, candidate devices are randomly selected by the user. Specifically, based on the virtual device creation instruction for the target device, the system prompts the user to select a candidate device from multiple smart devices displayed on the device list page. In response to a selection operation of at least one smart device among the multiple smart devices, the selected smart device is designated as a candidate device. In other words, candidate devices for creating the virtual device alongside the target device can be randomly selected by the user, thereby increasing the flexibility of virtual device creation and consequently improving the flexibility of device control.

[0082] In one possible implementation, candidate devices are recommended by the gateway / server. Specifically, based on the virtual device creation instruction for the target device, device recommendation data is requested from the gateway / server. This device recommendation data indicates at least one recommended device, which is a smart device that allows at least one action to be performed identically to the action performed by the target device. At least one candidate device is determined based on the device recommendation data returned by the gateway / server. The method for determining at least one candidate device based on the device recommendation data returned by the gateway / server can be random selection by the user terminal or random selection by the user; no limitation is imposed here. In this implementation, the candidate devices that co-create the virtual device with the target device can be recommended by the gateway / server based on historical scenario data, thereby ensuring the accuracy of candidate device determination, improving the accuracy of virtual device creation, and ultimately increasing the success rate of device control.

[0083] For example, if a smart fan and a smart light are deployed in a bathroom, and the smart fan and smart light perform the same actions, then if the smart fan is the target device, the gateway / server can determine, based on historical scenario data, that the smart light is the smart device performing the same actions as the smart fan. The smart light is then recommended as a device, and device recommendation data is generated and returned to the user terminal. In one possible implementation, the device recommendation data includes at least one device identifier for the recommended device.

[0084] After identifying at least one candidate device, a virtual device can be created from the target device and at least one candidate device and displayed on the device list page, i.e., step 350 is executed.

[0085] Step 350: On the device list page, display the virtual devices created by the target device and at least one candidate device.

[0086] In one possible implementation, a virtual device is automatically created based on the target device and at least one candidate device, including: randomly generating a device identifier for the virtual device to display the virtual device on a device list page. This implementation significantly improves the user experience, for example, by enhancing the ease of user operation.

[0087] In one possible implementation, a virtual device is created based on a target device and at least one candidate device, triggered by an operation. This operation includes at least one of the following: a first confirmation operation to confirm that the virtual device was created by the target device and at least one candidate device; an input operation to input a device identifier for the virtual device; and a selection operation to select a deployment location for the virtual device, including but not limited to: master bedroom, guest bedroom, bathroom, dining room, living room, study, storage room, dressing room, balcony, kitchen, corridor, etc.; and a second confirmation operation to confirm that the virtual device has been created. This implementation not only facilitates user configuration of the virtual device's device identifier but also facilitates configuration of the virtual device's deployment location, enriches the types of virtual devices, greatly improves the flexibility of virtual device creation, and enhances the user experience, such as increasing human-computer interaction.

[0088] After the virtual device is created, it will be displayed on the device list page. Figure 5 (b) A schematic diagram of a virtual device display in one embodiment is shown, such as Figure 5As shown in (b), the device list page 301 displays multiple smart devices, specifically including: smart device A represented by device identifier A, smart device B represented by device identifier B, and virtual device C represented by device identifier C. Through the above process, the creation of a virtual device is achieved, that is, multiple smart devices allowed to perform at least one identical action are created as a single virtual device. By controlling this virtual device to execute a set action, it is essentially controlling multiple smart devices to execute the set action synchronously, avoiding the sequential execution of the set action by multiple smart devices. This reduces the network latency of multiple devices executing actions, thereby effectively solving the problem of large network latency when multiple devices execute actions in related technologies.

[0089] Please see Figure 6 In one exemplary embodiment, step 330 may include the following steps:

[0090] Step 331: In response to the first selection operation of the target device displayed on the device list page, display the device details page of the target device.

[0091] In one possible implementation, the user is redirected from the device list page to the device details page of the target device to display the device details page of the target device; in another possible implementation, the device details page of the target device is displayed in the device list page.

[0092] Step 332: Display the virtual device creation entry on the target device's device details page.

[0093] Of course, in some other possible implementations, the device details page of the target device may also display at least one of the following device details: the device status of the target device; and a control entry point for controlling the target device to perform set actions.

[0094] Figure 7 This diagram illustrates the device details page of a target device and its redirection process in one embodiment. Figure 7 As shown, on the device list page 301, if the user clicks on device identifier A, it means the user has selected smart device 302 as the target device. At this time, the user is redirected from the device list page 301 to the device details page 401 of smart device 302. The user's click action is the first selection action for the target device.

[0095] It is worth mentioning that the specific behavior of the first selection operation can vary depending on the input components configured in the electronic device (such as a touch layer covering the display screen, a mouse, a keyboard, etc.). For example, if the electronic device is a smartphone with a touch layer, the first selection operation can be a gesture operation such as clicking or swiping; while for a laptop computer with a mouse, the first selection operation can be a mechanical operation such as dragging, clicking, or double-clicking. This embodiment does not limit this.

[0096] exist Figure 7 In the process, the device details page 401 of the smart device 302 displays at least: the device status 402 of the smart device 302, the control entry 403 of the smart device 302, and the virtual device creation entry 404 of the smart device 302. Among them, the device status 402 is used to indicate the current device status of the smart device 302; the control entry 403 is used to instruct the smart device 302 to perform a set action; and the virtual device creation entry 404 is used to create a virtual device.

[0097] Step 333: In response to the triggering operation of the virtual device creation entry, generate a virtual device creation instruction for the target device.

[0098] Step 334: Based on the virtual device creation instructions for the target device, request device recommendation data from the server.

[0099] The device recommendation data is used to indicate at least one recommended device, which is a smart device that is allowed to perform at least one of the same actions as the target device.

[0100] Step 335: In response to the virtual device creation instruction, display the virtual device creation page of the target device.

[0101] Step 336: On the virtual device creation page of the target device, display the target device and / or at least one recommended device indicated by device recommendation data. In one possible implementation, display at least one recommended device on the virtual device creation page of the target device. In another possible implementation, display both the target device and at least one recommended device on the virtual device creation page of the target device.

[0102] Figure 8 A schematic diagram illustrating the virtual device creation page of the target device and its redirection process in one embodiment is shown. Figure 8 As shown, on the device details page 401 of the target device, if a user clicks the virtual device creation entry 404, a virtual device creation instruction for the target device is generated, thereby requesting device recommendation data from the server. In one possible implementation, the device recommendation data includes at least: the device identifier of at least one recommended device. For example, in Figure 8In the diagram, device identifier A represents target device 302, device identifier D represents recommended device 503, device identifier E represents recommended device 504, and device identifier F represents recommended device 505. The user's click action triggers the virtual device creation entry point.

[0103] Furthermore, in Figure 8 In response to the virtual device creation command, the system jumps from the target device's device details page 401 to the virtual device creation page 501, and displays the target device 302, recommended device 503, recommended device 504, and recommended device 505, which are represented by device identifiers A, D, E, and F, respectively.

[0104] Of course, in other embodiments, at least one recommended device indicated by the device recommendation data may still be displayed on the target device's device details page, for example, in the blank space below the virtual device creation entry, which is not a specific limitation.

[0105] Step 337, in response to a second selection operation on at least one of the displayed recommended devices, determines the selected recommended device as a candidate device.

[0106] Continue reading Figure 8 If the user clicks on device identifier E, it means the user has selected recommended device 504 as a candidate device. The user's click action constitutes a second selection operation on at least one of the displayed recommended devices.

[0107] Through the cooperation of the above embodiments, combining gateway / server-side recommendations and user random selection, candidate devices are determined, ensuring that the candidate devices for creating virtual devices with the target device not only come from the recommended devices of the gateway / server, thus ensuring the accuracy of candidate device determination and improving the accuracy of virtual device creation, but also satisfying user selection, thereby improving the flexibility of virtual device creation. This, in turn, helps to improve the success rate and flexibility of device control, and ultimately helps to ensure the stability of device control.

[0108] Please see Figure 9 In one exemplary embodiment, step 350 may include the following steps:

[0109] Step 351: The operation triggers the generation of virtual device addition instructions.

[0110] The operation includes at least one of the following: a first confirmation operation, used to confirm that the virtual device was created by the target device and at least one candidate device; an input operation, used to input a device identifier for the virtual device; a third selection operation, used to select a deployment location for the virtual device; and a second confirmation operation, used to confirm that the virtual device has been created.

[0111] Figure 10 A schematic diagram illustrating the addition of a virtual device in one embodiment is shown. Figure 10 If the user clicks device identifier E, it means that the user has selected recommended device 504 as a candidate device. Furthermore, if the user clicks the "Next" control 502, it means that the user confirms that the virtual device is created by the target device 302 represented by device identifier A and the candidate device 504. That is, the user's confirmation operation is regarded as the first confirmation operation.

[0112] In one possible implementation, in response to the first confirmation operation, a virtual device add instruction is generated to display the virtual device on the device list page. In this implementation, the device identifier and deployment location of the virtual device are randomly generated by the electronic device, avoiding excessive manual operation by the user, thus improving user convenience and enhancing the user experience.

[0113] In one possible implementation, in response to a first confirmation operation, the user is redirected from the virtual device creation page to the virtual device addition page, where a virtual device addition instruction is generated based on the operation triggered on the virtual device addition page. See also... Figure 10 In the input control 602, the user can input "brightness light" as the device identifier for the virtual device. This user's input is considered an input operation. In the selection control 603, the user can select a "default room" (e.g., the system default living room) as the deployment location for the virtual device. This user's selection is considered a third selection operation. If the user clicks the "complete" control 604, it indicates that the user confirms the completion of the virtual device creation. That is, the user's click operation is considered a second confirmation operation. Based on at least one of the above operations, a virtual device addition instruction can be generated.

[0114] Step 353: In response to the virtual device add command, display the virtual device on the device list page.

[0115] Figure 11 A schematic diagram of a page navigation process for a virtual device in one embodiment is shown, such as... Figure 11 As shown, the virtual device 305, represented by the device identifier "brightness light", is displayed on the device list page 301.

[0116] As virtual devices are displayed on the device list page, at least one control entry for the virtual device can be further displayed. In one possible implementation, at least one control entry for the virtual device is displayed on the device list page. In another possible implementation, at least one control entry for the virtual device is displayed on the device details page of the virtual device. Specifically, in response to a third selection operation on the virtual device displayed on the device list page, the device details page of the virtual device is displayed; at least one control entry is displayed on the device details page of the virtual device.

[0117] Of course, in other embodiments, the device details page of the virtual device may display at least one of the following device details: the device status of the virtual device; the target device for creating the virtual device and at least one candidate device; a virtual device creation entry for creating the virtual device; and a control entry for controlling at least two smart devices that create the virtual device to synchronously execute set actions.

[0118] Continuing with the example of the aforementioned virtual device "brightness light", such as... Figure 11 As shown, in the device list page 301, the device identifier "Brightness Light" represents virtual device 305, i.e., virtual device "Brightness Light". After the user clicks on the device identifier "Brightness Light", the device list page 301 will redirect to the device details page 701 of the virtual device "Brightness Light". On the device details page 701, there are: brightness control entry 702, on control entry 703, off control entry 704, and virtual device creation entry 705. For example, if the user wants to add a new smart light to participate in the creation of the virtual device "Brightness Light", or if the user wants to adjust the deployment position of the virtual device "Brightness Light", they can click on the virtual device creation entry 705. In addition, the device details page 701 of the virtual device "Brightness Light" also displays the smart devices that created the virtual device "Brightness Light", specifically including: smart light 302 represented by device identifier A and smart switch 504 represented by device identifier E.

[0119] Under the above embodiments, the creation of virtual devices is based on operation triggering, which not only makes it convenient for users to configure the device identifier of virtual devices, but also makes it convenient for users to configure the deployment location of virtual devices, enriches the types of virtual devices, greatly improves the flexibility of virtual device creation, and helps to improve the user experience, such as increasing the human-computer interaction rate.

[0120] The following describes an application scenario involving an embodiment of this application, based on an implementation environment described in the present application.

[0121] like Figure 12As shown, in an application scenario, the process of achieving device control between user terminal 110, gateway 150, and smart device 130 may include the following steps:

[0122] Step 801: User terminal 110 determines at least one candidate device based on the virtual device creation instruction for the target device, and creates a virtual device using the target device and at least one candidate device.

[0123] Step 802: Send virtual device configuration data to gateway 150.

[0124] Step 803: Gateway 150 generates virtual device configuration instructions based on virtual device configuration data and sends them to smart device 130.

[0125] In step 804, the smart device 130 responds to the virtual device configuration command and performs virtual device configuration.

[0126] The virtual device configuration data is used to indicate that the virtual device is created by a target device and at least one candidate device. In one possible implementation, the virtual device configuration data includes at least: the device identifier of the virtual device, the device identifier of the target device, and the device identifier of at least one candidate device.

[0127] Therefore, for gateway 150, based on the virtual device configuration data, it can determine the target device and at least one candidate device for creating the virtual device, and then generate a virtual device configuration instruction, which is sent to the corresponding smart device 130, i.e., the target device and at least one candidate device. In one possible implementation, the virtual device configuration instruction includes at least: the device identifier of the virtual device.

[0128] Regarding smart device 130, upon receiving a virtual device configuration command, it can respond to the command and perform virtual device configuration. In one possible implementation, virtual device configuration refers to storing the device identifier of the virtual device. For example, if smart device B stores the device identifier A of virtual device A, then smart device B knows that it participated in the creation of virtual device A. Subsequently, when controlling virtual device A to perform a set action, smart device B will synchronously execute the set action with other smart devices that participated in the creation of virtual device A.

[0129] Therefore, after completing the virtual device configuration of the smart device 130, the smart device 130 can be controlled by controlling the virtual device, specifically including the following steps:

[0130] Step 805: Gateway 150 receives device control commands sent by user terminal 110.

[0131] In one possible implementation, the device control instructions include at least: the device identifier of the virtual device and the action identifier of the set action.

[0132] Step 806: Based on the device control instructions, perform virtual device configuration detection on the target device and at least one candidate device for creating the virtual device, and determine at least one first device that has completed the virtual device configuration.

[0133] In one possible implementation, virtual device configuration detection refers to determining whether a device identifier for a virtual device is stored in the smart device. For example, gateway 150 performs virtual device configuration detection on smart device B, including: gateway 150 sending a virtual device configuration detection request to smart device B; smart device B responding to the virtual device configuration detection request by returning a corresponding request response to gateway 150, wherein the request response carries the device identifier A of virtual device A. At this time, gateway 150 can determine that smart device B has completed the virtual device configuration of virtual device A.

[0134] The smart device 130 that has completed the virtual device configuration is taken as the first device, and step 807 is executed.

[0135] The smart device 130 that has not completed virtual device configuration is used as the second device, and the following steps are performed: according to the unicast transmission method, device control commands are sent to each second device respectively, so that each second device responds to the device control commands and performs the set actions.

[0136] Step 807: Designate at least one first device as a multicast member and send device control commands to the multicast members so that each multicast member synchronously executes the set action in response to the device control commands.

[0137] Figure 13 This diagram illustrates how a gateway sends device control commands to a first device and a second device, respectively. Figure 13 Since the two first devices have completed the virtual device configuration, meaning they participated in the creation of the virtual device, the two first devices are essentially controlled via a single device control command (command ①) using multicast transmission, thereby enabling them to synchronously execute the set actions. Since the two second devices have not completed the virtual device configuration, the gateway 150 sends two device control commands (command ② and command ③) to each of the two second devices sequentially using unicast transmission, so that the two second devices execute the set actions in the order they receive the virtual control commands.

[0138] Step 808: Gateway 150 receives device status data reported by multicast members.

[0139] Device status data is generated when multicast members perform a set action and is used to indicate the device status after the multicast member performs the set action. For example, if a smart fan and a smart light are deployed in a bathroom, and the smart fan performs a turn-off action, the device status data is used to indicate that the smart fan's device status is off; or, if the smart light performs a turn-on action, the device status data is used to indicate that the smart light's device status is on.

[0140] Step 809: Check if the device status data reporting timeout has occurred.

[0141] If at least one multicast member is detected to have timed out reporting device status data, proceed to step 210. Conversely, if none of the multicast members are detected to have timed out reporting device status data, confirm that all multicast members have synchronously executed the set actions.

[0142] Step 810: Resend device control commands to multicast members.

[0143] In one possible implementation, the device control command is resent to all multicast members. In another possible implementation, the device control command is resent to the multicast member that reported the timeout, until it is confirmed that all multicast members have returned device status data on time, that is, it is confirmed that all multicast members have synchronously executed the set action. In this way, not only can the success rate of action execution be maximized, thereby ensuring the success rate of device control, but also the stability of device control can be fully guaranteed.

[0144] It should be noted that for each multicast member, some multicast members may have already performed the set action and reported the device status data without timeout. In this case, the multicast member can ignore the device control command that has been received again. However, for multicast members that have not performed the set action or whose device status data has timed out, they need to respond to the device control command that has been received again and re-perform the set action.

[0145] In the above process, for the second device that did not participate in the creation of the virtual device, device control remains unchanged, still requiring the gateway to send multiple commands sequentially to control multiple smart devices one by one. However, for the first device that participated in the creation of the virtual device, device control has been significantly improved. The gateway only needs to send one command to control multiple smart devices simultaneously. For example, it can control multiple smart devices that created the virtual device to simultaneously perform the "on" action, or control multiple smart devices that created the virtual device to simultaneously perform the "adjust brightness" action, thus avoiding multiple smart devices executing set actions sequentially according to the order of command reception. The responsiveness to commands and the success rate of multi-device control are greatly improved. In addition, as the number of smart devices increases, it is more conducive to reducing the network latency of multiple devices performing actions, achieving the effect of simultaneous and rapid control of multiple devices, which greatly improves the user experience. For example, users want multiple smart devices to perform actions in a unified manner, rather than sequentially.

[0146] Furthermore, the process of realizing device control between user terminal 110, gateway 150, and smart device 130 may include the following steps after step 210:

[0147] Based on device control instructions, virtual device marking is performed on at least two smart devices that create virtual devices, so as to control at least two smart devices to maintain the same device state when the device states of at least two smart devices are different.

[0148] As mentioned earlier, for smart fans and smart lights deployed in the bathroom, they perform the same actions; for example, when entering the bathroom, both the smart fan and smart light turn on simultaneously, and when leaving the bathroom, they turn off simultaneously. However, the inventors realized that these two smart devices are not limited to being controlled by the client associated with the smart devices, but can also be controlled by the user's manual operation, or by other smart devices such as smart speakers. This may lead to asynchronous actions performed by the two smart devices, thus affecting the control of these two smart devices based on virtual devices. For example, if the smart fan is in the "on" state and the smart light is in the "off" state, and the user wants to control the virtual device created by the smart fan and smart light to turn off, it may result in the user's needs not being met.

[0149] Therefore, in this embodiment, starting from the gateway level, the synchronization of set actions performed by multiple smart devices that create virtual devices is achieved. Specifically, virtual device marking processing is performed on the multiple smart devices that create virtual devices. This virtual device marking processing essentially involves the gateway recording that the virtual device was created by a target device and at least one candidate device. Alternatively, it can be considered that the target device and at least one candidate device are "bound" as a single virtual device within the gateway, ensuring that the gateway controls the target device and at least one candidate device to always synchronously perform actions and synchronously report device status data.

[0150] Using the previous example, suppose a virtual device A is created by a smart fan and a smart light. The client associated with the smart device can then send a device control command to the gateway, instructing virtual device A to perform an on / off action. This allows the gateway to control the smart fan and smart light to simultaneously perform the on / off action, ensuring that the smart fan and smart light turn on at the same time.

[0151] However, if one of the smart devices is controlled by the user's manual operation, for example, the user manually turns on the smart fan while the smart light remains off, this will affect the subsequent control of virtual device A. In this case, the gateway determines the smart fan's device status as on and the smart light's device status as off based on the device status data reported synchronously by the smart fan and the smart light. Thus, it learns that the smart fan is on while the smart light is off. At this time, the gateway will send a device control command to the smart light to instruct it to perform the turn-on action, so as to ensure that the smart light and the smart fan can maintain the same device status, that is, to ensure that the smart light and the smart fan perform the turn-on action synchronously.

[0152] Of course, depending on actual operational needs, in other application scenarios, the device control process can also be implemented between the user terminal 110, the server 170, the gateway 150, and the smart device 130. For example, virtual device configuration data and device control commands are forwarded from the server 170 to the gateway 150. Figure 13 The dashed line indicates that this is not a specific limitation.

[0153] In the above process, the action execution synchronization through the gateway layer fully ensures that multiple intelligent devices that create virtual devices execute actions synchronously. This not only effectively enhances the stability of device control but also helps improve the speed of multiple devices executing actions, achieving the goal of unified user control of multiple devices, reducing network latency of multiple devices executing actions, and thus improving the user experience.

[0154] The following are embodiments of the apparatus described in this application, which can be used to execute the device display method involved in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the method embodiments of the device display method involved in this application.

[0155] Please see Figure 14 This application provides a device control apparatus 900, including but not limited to: an entrance display module 910, a control command generation module 930, and a control command sending module 950.

[0156] The entry display module 910 is used to display at least one control entry for a virtual device, which is created by at least two smart devices that are allowed to perform at least one identical action;

[0157] The control instruction generation module 930 is used to generate a device control instruction in response to a trigger operation on the control entry. The device control instruction is used to instruct the virtual device to perform a set action corresponding to the control entry. The set action is an action that is allowed to be performed by at least two smart devices that created the virtual device.

[0158] The control command sending module 950 is used to send the device control command to the virtual device, so that at least two smart devices that created the virtual device respond to the device control command and synchronously execute the set action.

[0159] In one exemplary embodiment, among at least two smart devices that create a virtual device, one smart device is designated as the target device, and the remaining smart devices are designated as candidate devices. The apparatus further includes: a device display module for displaying the target device on a device list page; a device determination module for determining at least one candidate device based on a virtual device creation instruction for the target device; and a device creation module for displaying the virtual device created by the target device and at least one candidate device on the device list page.

[0160] In one exemplary embodiment, the apparatus further includes: an entry display module for displaying a virtual device creation entry corresponding to the target device; and a creation instruction generation module for generating a virtual device creation instruction in response to a triggering operation on the virtual device creation entry.

[0161] In one exemplary embodiment, the entry display module includes: a first page display unit, configured to display the device details page of the target device in response to a first selection operation on the target device displayed in the device list page; and an entry display unit, configured to display a virtual device creation entry on the device details page of the target device.

[0162] In one exemplary embodiment, the device determination module includes: a device display unit, configured to display at least one recommended device in response to a virtual device creation instruction, wherein the recommended device is a smart device that is allowed to perform at least one of the same actions as the target device; and a device determination unit, configured to determine a selected recommended device as a candidate device in response to a second selection operation on the displayed at least one recommended device.

[0163] In one exemplary embodiment, the entry display module includes: a second page display unit, configured to display a device details page of a virtual device in response to a third selection operation on a virtual device displayed in a device list page; and an entry display unit, configured to display at least one control entry on the device details page of the virtual device.

[0164] In one exemplary embodiment, the set actions corresponding to different control entry points have different action types, so that at least two smart devices that create the virtual device respond to the device control command and synchronously execute the set actions that match the action types they support. The action types supported by the smart devices themselves are used to indicate the actions that the smart devices are allowed to execute.

[0165] Please see Figure 15 This application provides a device control apparatus 1000, including but not limited to: an instruction receiving module 1010 and an instruction sending module 1050.

[0166] The instruction receiving module 1010 is used to receive device control instructions sent by the user terminal. The device control instructions are used to instruct the virtual device to perform a set action. The virtual device is created by at least two smart devices that are allowed to perform at least one identical action. The set action belongs to the actions that are allowed to be performed by at least two smart devices.

[0167] The instruction sending module 1030 is used to send device control instructions to at least two smart devices that create the virtual device in a multicast transmission mode, so that the at least two smart devices that create the virtual device respond to the device control instructions and synchronously execute the set actions.

[0168] In one exemplary embodiment, the apparatus further includes: a configuration detection module, configured to perform virtual device configuration detection on at least two smart devices that create a virtual device based on device control instructions, and determine at least one first device that has completed virtual device configuration; the instruction sending module includes: a multicast transmission unit, configured to send device control instructions to the multicast members, with at least one first device as a multicast member.

[0169] In one exemplary embodiment, the apparatus further includes: a configuration data receiving module, configured to receive virtual device configuration data sent by a user terminal, the virtual device configuration data being used to indicate that the virtual device is created by at least two smart devices that are allowed to perform at least one identical action; and a configuration request module, configured to request the smart device that created the virtual device to perform virtual device configuration based on the virtual device configuration data.

[0170] In one exemplary embodiment, the apparatus further includes: an instruction distribution module, configured to send device control instructions to at least one second device that has not completed virtual device configuration, respectively, in a unicast transmission manner, so that each second device responds to the device control instructions and performs a set action.

[0171] In one exemplary embodiment, the apparatus further includes: a data receiving module, configured to receive device status data reported by each smart device that creates the virtual device, the device status data being generated by the smart device performing a set action in response to a device control command, and used to indicate the device status after the smart device performs the set action; and a command retransmission module, configured to retransmit the device control command to at least two smart devices that created the virtual device in a multicast transmission manner if a timeout is detected in the device status data reporting.

[0172] In one exemplary embodiment, the apparatus further includes a state synchronization module, configured to perform virtual device marking processing on at least two smart devices that create virtual devices based on device control instructions, so as to control at least two smart devices to maintain the same device state when the device states of at least two smart devices are different.

[0173] It should be noted that the device control device provided in the above embodiments is only illustrated by the division of the above functional modules when controlling the device. In actual applications, the above functions can be assigned to different functional modules as needed. That is, the internal structure of the device control device will be divided into different functional modules to complete all or part of the functions described above.

[0174] Furthermore, the device control apparatus and device control method embodiments provided in the above embodiments belong to the same concept, and the specific way in which each module performs operations has been described in detail in the method embodiments, and will not be repeated here.

[0175] Please see Figure 16 , Figure 16 This is a schematic diagram illustrating the structure of a terminal according to an exemplary embodiment. The terminal is suitable for… Figure 1 The user terminal 110 shown in the implementation environment can serve as the execution subject of the device display method.

[0176] It should be noted that this terminal is merely an example adapted to this application and should not be construed as providing any limitation on the scope of use of this application. Furthermore, this terminal should not be interpreted as requiring or depending on any specific feature. Figure 16 One or more components of the exemplary terminal 1100 shown.

[0177] like Figure 16 As shown, terminal 1100 includes memory 101, memory controller 103, and one or more ( Figure 16 (Only one is shown) Processor 105, peripheral interface 107, radio frequency module 109, positioning module 111, camera module 113, audio module 115, touch screen 117, and button module 119. These components communicate with each other through one or more communication buses / signal lines 121.

[0178] The memory 101 can be used to store computer programs and modules, such as the computer programs and modules corresponding to the device display method and apparatus in the exemplary embodiment of this application. The processor 105 executes various functions and data processing by running the computer programs stored in the memory 101, thereby completing the device display method.

[0179] The memory 101, as a carrier for resource storage, can be random access memory, such as high-speed random access memory, non-volatile memory, such as one or more magnetic storage devices, flash memory, or other solid-state memory. The storage method can be temporary storage or permanent storage.

[0180] The peripheral interface 107 may include at least one wired or wireless network interface, at least one serial-to-parallel conversion interface, at least one input / output interface, and at least one USB interface, etc., for coupling various external input / output devices to the memory 101 and the processor 105 to realize communication with various external input / output devices.

[0181] The radio frequency module 109 is used to transmit and receive electromagnetic waves, realizing the mutual conversion between electromagnetic waves and electrical signals, thereby enabling communication with other devices through a communication network. The communication network includes cellular telephone networks, wireless local area networks, or metropolitan area networks, and these communication networks can use various communication standards, protocols, and technologies.

[0182] The positioning module 111 is used to obtain the current geographical location of the terminal 1100. Examples of positioning modules 111 include, but are not limited to, Global Positioning System (GPS), positioning technologies based on wireless local area networks or mobile communication networks.

[0183] The camera module 113 is part of the camera and is used to capture pictures or videos. The captured pictures or videos can be stored in the memory 101 or transmitted to the host computer via the radio frequency module 109.

[0184] The audio module 115 provides an audio interface to the user, which may include one or more microphone jacks, one or more speaker jacks, and one or more headphone jacks. Audio data is exchanged with other devices through the audio interface. Audio data can be stored in the memory 101 and can also be transmitted via the radio frequency module 109.

[0185] The touchscreen 117 provides an input / output interface between the terminal 1100 and the user. Specifically, the user can perform input operations through the touchscreen 117, such as clicking, touching, and swiping gestures, so that the terminal 1100 can respond to the input operations. The terminal 1100 then displays the output content, which can be text, images, or videos in any form or combination thereof, to the user through the touchscreen 117.

[0186] The button module 119 includes at least one button, providing an interface for users to input information into the terminal 1100. Users can press different buttons to enable the terminal 1100 to perform different functions. For example, the volume adjustment button allows users to adjust the volume of the sound played by the terminal 1100.

[0187] In some embodiments, the terminal 1100 further includes one or more sensors ( Figure 16 (not shown in the image), the one or more sensors include, but are not limited to: accelerometer, gyroscope, pressure sensor, fingerprint sensor, optical sensor, and proximity sensor, etc.

[0188] Understandable. Figure 16 The structure shown is for illustrative purposes only; terminal 1100 may also include components that are more advanced than those shown. Figure 16 The more or fewer components shown, or having the same Figure 16 The different components are shown. Figure 16 The components shown can be implemented using hardware, software, or a combination thereof.

[0189] Please see Figure 17 , Figure 17 A schematic diagram of the structure of a gateway is shown according to an exemplary embodiment. This gateway is suitable for... Figure 1 The gateway 150 shown in the implementation environment can serve as the execution subject of the device control method.

[0190] It should be noted that this gateway is merely an example adapted to this application and should not be construed as providing any limitation on the scope of use of this application. Furthermore, this gateway should not be interpreted as requiring or depending on any specific feature. Figure 17 One or more components of the exemplary gateway 2000 shown.

[0191] The hardware architecture of the Gateway 2000 can vary significantly due to differences in configuration or performance, such as... Figure 17 As shown, the gateway 2000 includes: a power supply 210, an interface 230, at least one memory 250, and at least one central processing unit (CPU) 270.

[0192] Specifically, power supply 210 is used to provide operating voltage for the various hardware devices on gateway 2000.

[0193] Interface 230 includes at least one wired or wireless network interface for interacting with external devices. For example, to perform... Figure 1 The diagram illustrates the interaction between user terminal 110 and gateway 150 in the implementation environment.

[0194] Of course, in other examples adapted in this application, interface 230 may further include at least one serial-to-parallel conversion interface 233, at least one input / output interface 235, and at least one USB interface 237, etc. Figure 17 As shown, this does not constitute a specific limitation.

[0195] The memory 250 serves as a carrier for resource storage and can be a read-only memory, random access memory, disk, or optical disk, etc. The resources stored on it include the operating system 251, application programs 253, and data 255, etc., and the storage method can be temporary storage or permanent storage.

[0196] The operating system 251 is used to manage and control the various hardware devices and application programs 253 on the gateway 2000, so as to enable the central processing unit 270 to perform calculations and processing on the massive data 255 in the memory 250. It can be Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, etc.

[0197] Application 253 is a computer program that performs at least one specific task based on operating system 251, and may include at least one module ( Figure 17 (Not shown in the image), each module can contain a computer program for the gateway 2000. For example, the device control device can be considered as application 253 deployed on the gateway 2000.

[0198] Data 255 can be photos, pictures, etc. stored on a disk, or device control commands, device status data, etc., stored in memory 250.

[0199] The central processing unit 270 may include one or more processors and is configured to communicate with the memory 250 via at least one communication bus to read computer programs stored in the memory 250, thereby performing operations and processing on massive amounts of data 255 stored in the memory 250. For example, a device control method may be implemented by the central processing unit 270 reading a series of computer programs stored in the memory 250.

[0200] Furthermore, this application can also be implemented through hardware circuits or a combination of hardware circuits and software. Therefore, the implementation of this application is not limited to any specific hardware circuit, software, or combination thereof.

[0201] Please see Figure 18 This application provides an electronic device that is suitable for use in various applications. Figure 1 The user terminal 110, gateway 150, etc. are shown in the implementation environment.

[0202] exist Figure 18 The electronic device 4000 includes at least one processor 4001, at least one communication bus 4002, and at least one memory 4003.

[0203] The processor 4001 and memory 4003 are connected, for example, via a communication bus 4002. Optionally, the electronic device 4000 may also include a transceiver 4004, which can be used for data interaction between the electronic device and other electronic devices, such as sending and / or receiving data. It should be noted that in practical applications, the transceiver 4004 is not limited to one, and the structure of the electronic device 4000 does not constitute a limitation on the embodiments of this application.

[0204] Processor 4001 may be a CPU (Central Processing Unit), a general-purpose processor, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It can implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. Processor 4001 may also be a combination that implements computational functions, such as including one or more microprocessor combinations, a combination of a DSP and a microprocessor, etc.

[0205] The communication bus 4002 may include a path for transmitting information between the aforementioned components. The communication bus 4002 may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus, etc. The communication bus 4002 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 18 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0206] The memory 4003 may be ROM (Read Only Memory) or other types of static storage devices capable of storing static information and instructions, RAM (Random Access Memory) or other types of dynamic storage devices capable of storing information and instructions, or EEPROM (Electrically Erasable Programmable Read Only Memory), CD-ROM (Compact Disc Read Only Memory) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited thereto.

[0207] The memory 4003 stores a computer program, and the processor 4001 reads the computer program stored in the memory 4003 through the communication bus 4002.

[0208] When the computer program is executed by the processor 4001, it implements the methods in the above embodiments.

[0209] Furthermore, this application provides a storage medium storing a computer program, which, when executed by a processor, implements the methods described in the above embodiments.

[0210] This application provides a computer program product comprising a computer program stored in a storage medium. A processor of a computer device reads the computer program from the storage medium and executes the computer program, causing the computer device to perform the methods described in the above embodiments.

[0211] Compared with related technologies, by creating a virtual device from multiple smart devices that are allowed to perform at least one identical action, controlling the virtual device to perform a set action, i.e. controlling multiple smart devices to perform the set action synchronously, not only solves the popcorn problem (non-rapid unified control), success rate problem (control failure), and consistency problem (non-synchronous actions, but sequential actions) in the process of multiple devices performing actions, but also significantly and effectively improves the convenience and flexibility of user operation, thereby effectively enhancing the user experience.

[0212] It should be understood that although the steps in the flowcharts of the accompanying figures are shown sequentially as indicated by the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the accompanying figures may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times, and their execution order is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.

[0213] The above description is only a partial embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.

Claims

1. A device control method, characterized in that, The method includes: Display at least one control entry for a virtual device, which is created by at least two smart devices that are allowed to perform at least one identical action; In response to a trigger operation on the control entry, a device control command is generated, which instructs the virtual device to perform a set action corresponding to the control entry. The set action is an action that is allowed to be performed by at least two smart devices that created the virtual device. Send the device control command to the virtual device, so that the gateway receives the device control command and sends the device control command to at least two smart devices that created the virtual device, so that the at least two smart devices that created the virtual device respond to the device control command and synchronously execute the set action; The gateway receives the device control command and sends the device control command to at least two smart devices that created the virtual device, including: Based on the device control command, virtual device configuration detection is performed on at least two smart devices that create the virtual device to determine at least one first device that has completed virtual device configuration and at least one second device that has not completed virtual device configuration. The virtual device configuration detection includes determining whether the device identifier of the virtual device is stored in the smart device. For the at least one second device, the device control command is sent to each second device in a unicast transmission manner, so that each second device responds to the device control command and executes the set action. At least one of the first devices is used as a multicast member, and the device control command is sent to the multicast member in accordance with the multicast transmission method; The method further includes: Based on the device control instructions, virtual device marking processing is performed on at least two smart devices that create the virtual device, so as to control the at least two smart devices to maintain the same device state when the device states of the at least two smart devices are different.

2. The method as described in claim 1, characterized in that, Of the at least two smart devices used to create the virtual device, one smart device is designated as the target device and the other smart devices are designated as candidate devices. Before displaying at least one control entry point for the virtual device, the method further includes: The target device is displayed on the device list page; Based on the virtual device creation instructions for the target device, at least one candidate device is determined; The device list page displays the virtual devices created by the target device and at least one of the candidate devices.

3. The method as described in claim 2, characterized in that, Before determining at least one candidate device based on the virtual device creation instructions for the target device, the method further includes: Displays the virtual device creation entry point corresponding to the target device; In response to a trigger operation on the virtual device creation entry, a virtual device creation instruction is generated.

4. The method as described in claim 3, characterized in that, The entry point for displaying the virtual device creation corresponding to the target device includes: In response to a first selection operation of the target device displayed on the device list page, the device details page of the target device is displayed; The virtual device creation entry will be displayed on the device details page of the target device.

5. The method as described in claim 2, characterized in that, The step of determining at least one candidate device based on the virtual device creation instructions for the target device includes: In response to the virtual device creation instruction, at least one recommended device is displayed, which is a smart device that is allowed to perform at least one of the same actions as the target device; In response to a second selection operation on at least one of the recommended devices displayed, the selected recommended device is determined as the candidate device.

6. The method as described in claim 1, characterized in that, The display targets at least one control entry point for the virtual device, including: In response to a third selection operation on the virtual device displayed on the device list page, the device details page of the virtual device is displayed; At least one of the aforementioned control entry points will be displayed on the device details page of the virtual device.

7. The method as described in claim 1, characterized in that, Different control entry points correspond to different action types, enabling at least two smart devices that create the virtual device to respond to the device control command and synchronously execute the set action that matches the action type they support. The action type supported by the smart device itself is used to indicate the action that the smart device is allowed to execute.

8. A device control method, characterized in that, The method includes: The device control command sent by the user terminal is used to instruct the virtual device to perform a set action. The virtual device is created by at least two smart devices that are allowed to perform at least one identical action. The set action is an action that is allowed to be performed by at least two smart devices. According to the multicast transmission method, the device control command is sent to at least two smart devices that created the virtual device, so that the at least two smart devices that created the virtual device respond to the device control command and synchronously execute the set action; Before sending the device control command to at least two smart devices that created the virtual device according to the multicast transmission method, the method further includes: Based on the device control command, virtual device configuration detection is performed on at least two smart devices that created the virtual device to determine at least one first device that has completed virtual device configuration and at least one second device that has not completed virtual device configuration. The virtual device configuration detection includes determining whether the device identifier of the virtual device is stored in the smart device. For the at least one second device, the device control command is sent to each second device in a unicast transmission manner, so that each second device responds to the device control command and executes the set action. Sending the device control commands to at least two smart devices that created the virtual device via multicast transmission includes: At least one of the first devices is used as a multicast member, and the device control command is sent to the multicast member in accordance with the multicast transmission method; The method further includes: Based on the device control instructions, virtual device marking processing is performed on at least two smart devices that create the virtual device, so as to control the at least two smart devices to maintain the same device state when the device states of the at least two smart devices are different.

9. The method as described in claim 8, characterized in that, Before determining at least one first device that has completed virtual device configuration by performing virtual device configuration detection on at least two smart devices that created the virtual device based on the device control command, the method further includes: The system receives virtual device configuration data sent by the user terminal, the virtual device configuration data being used to indicate that the virtual device is created by at least two smart devices that are allowed to perform at least one identical action; Based on the virtual device configuration data, the smart device that created the virtual device is requested to perform virtual device configuration.

10. The method as described in claim 8, characterized in that, After sending the device control command to at least two smart devices that created the virtual device according to the multicast transmission method, the method further includes: For each smart device that creates the virtual device, device status data reported by the smart device is received. The device status data is generated by the smart device in response to the device control command and executing the set action, and is used to indicate the device status after the smart device executes the set action. If the device status data reporting timeout is detected, the device control command is resent to at least two smart devices that created the virtual device via multicast transmission.

11. A device control apparatus, characterized in that, The device includes: An entry display module is used to display at least one control entry for a virtual device, said virtual device being created by at least two smart devices that are allowed to perform at least one identical action; A control command generation module is used to generate a device control command in response to a trigger operation on the control entry point. The device control command is used to instruct the virtual device to perform a set action corresponding to the control entry point. The set action is an action that is allowed to be performed by at least two smart devices that created the virtual device. A control command sending module is used to send the device control command to the virtual device so that the gateway can receive the device control command and send the device control command to at least two smart devices that created the virtual device, so that at least two smart devices that created the virtual device respond to the device control command and synchronously execute the set action. The gateway receives the device control command and sends the device control command to at least two smart devices that created the virtual device, including: Based on the device control command, virtual device configuration detection is performed on at least two smart devices that create the virtual device to determine at least one first device that has completed virtual device configuration and at least one second device that has not completed virtual device configuration. The virtual device configuration detection includes determining whether the device identifier of the virtual device is stored in the smart device. For the at least one second device, the device control command is sent to each second device in a unicast transmission manner, so that each second device responds to the device control command and executes the set action. At least one of the first devices is used as a multicast member, and the device control command is sent to the multicast member in accordance with the multicast transmission method; The control command generation module is further configured to instruct the gateway to perform virtual device marking processing on at least two smart devices that created the virtual device based on the device control command, so as to control the at least two smart devices to maintain the same device state when the device states of the at least two smart devices are different.

12. A device control apparatus, characterized in that, The device includes: The instruction receiving module is used to receive device control instructions sent by a user terminal. The device control instructions are used to instruct a virtual device to perform a set action. The virtual device is created by at least two smart devices that are allowed to perform at least one identical action. The set action is an action that is allowed to be performed by at least two smart devices. The instruction sending module is used to send the device control instruction to at least two smart devices that created the virtual device in a multicast transmission mode, so that the at least two smart devices that created the virtual device respond to the device control instruction and synchronously execute the set action; A configuration detection module is configured to perform virtual device configuration detection on at least two smart devices that create the virtual device based on the device control command, determine at least one first device that has completed virtual device configuration, and determine at least one second device that has not completed virtual device configuration, wherein the virtual device configuration detection includes determining whether the smart device stores a device identifier of the virtual device; The instruction distribution module is used to send the device control instruction to each of the at least one second device in a unicast transmission manner, so that each second device responds to the device control instruction and executes the set action. The state synchronization module is used to perform virtual device marking processing on at least two smart devices that create virtual devices based on device control commands, so as to control at least two smart devices to maintain the same device state when the device states of at least two smart devices are different. The instruction sending module includes a multicast transmission unit, which is used to send the device control instruction to at least one of the first devices as multicast members in accordance with the multicast transmission method.

13. An electronic device, characterized in that, include: At least one processor, at least one memory, and at least one communication bus, wherein, The memory stores a computer program, and the processor reads the computer program from the memory via the communication bus; When the computer program is executed by the processor, it implements the device control method according to any one of claims 1 to 10.

14. A storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the device control method as described in any one of claims 1 to 10.

Citation Information

Patent Citations

  • Device and method for controlling multiple sets of electronic equipment to switch on or shut down at same time

    CN101968677A

  • Virtual device creating method, system and device

    CN104765275A

  • Intelligent equipment control method and device

    CN107154868A

  • Method, device and equipment for realizing group control through group virtual equipment and medium

    CN111953520A

  • Method for controlling and reporting equipment in contextual model of whole-house intelligent system

    CN113485129A