Device control method, device, storage medium, and electronic device
By setting a code value group set in the remote control device, determining the current code value group, and sending a matching control command, the accuracy problem of infrared remote control controlling multiple terminal devices is solved, and the target device with precise control of multiple terminal devices is realized.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- GUANGZHOU SHIYUAN ELECTRONICS CO LTD
- Filing Date
- 2021-12-15
- Publication Date
- 2026-05-19
AI Technical Summary
In existing technologies, infrared remote controls are prone to inaccurate control when controlling multiple terminal devices, causing multiple terminal devices to respond simultaneously and affecting control accuracy.
By setting a code value group set in the remote control device, the current code value group is determined, and the target code value of the target function key is obtained based on the operation command. The code value is then sent to the terminal device to execute the matching control command, ensuring that the target terminal device matches the current code value group.
This technology enables a single remote control device to precisely control a target terminal device among multiple terminal devices, thereby improving control accuracy.
Smart Images

Figure CN116264032B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of intelligent control technology, and in particular to a device control method, apparatus, storage medium, and electronic device. Background Technology
[0002] Currently, users primarily interact with large-screen devices, such as smart interactive tablets and smart TVs, via remote controls. Users simply need to operate the corresponding buttons on the remote to remotely control the device, providing a more convenient experience. Each button on the remote has a fixed function, which is determined at the factory when the large-screen device is manufactured. Summary of the Invention
[0003] This application provides a device control method, apparatus, computer storage medium, and electronic device, which can improve the control accuracy of remote control device control terminal devices. The technical solution is as follows:
[0004] In a first aspect, embodiments of this application provide a device control method applied to a remote-controlled device, the method comprising:
[0005] The current code value group is determined from the preset code value group set. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key in the preset function keys on the remote control device.
[0006] Receive the first operation command for the target function key;
[0007] Based on the first operation instruction, the target code value corresponding to the target function key is obtained from the current code value group, and the target code value and the current code value group are sent to at least one terminal device to control the target terminal device in the at least one terminal device to execute the control instruction corresponding to the target code value based on the target code value and the current code value group, wherein the code value group corresponding to the target terminal device matches the current code value group.
[0008] Secondly, embodiments of this application provide a device control method applied to a terminal device, the method comprising:
[0009] Receive the target code value and the code value group to which the target code value belongs, sent by the remote control device;
[0010] When the locally preset code value group matches the code value group to which the target code value belongs, the control command corresponding to the target code value is executed based on the target code value.
[0011] Thirdly, embodiments of this application provide a device control apparatus for use in remote-controlled devices, the apparatus comprising:
[0012] The group determination module is used to determine the current code value group in a preset code value group set. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key in the preset function keys on the remote control device.
[0013] The instruction receiving module is used to receive the first operation instruction for the target function key;
[0014] The device control module is configured to obtain the target code value corresponding to the target function key in the current code value group based on the first operation instruction, and send the target code value and the current code value group to at least one terminal device, so as to control the target terminal device in the at least one terminal device to execute the control instruction corresponding to the target code value based on the target code value and the current code value group, wherein the code value group corresponding to the target terminal device matches the current code value group.
[0015] Fourthly, embodiments of this application provide a device control apparatus applied to a terminal device, the apparatus comprising:
[0016] The code value receiving module is used to receive the target code value and the code value group to which the target code value belongs, sent by the remote control device;
[0017] The function execution module is used to execute control instructions corresponding to the target code value based on the target code value when the locally preset code value group matches the code value group to which the target code value belongs.
[0018] Fifthly, embodiments of this application provide a computer storage medium having multiple instructions adapted for loading by a processor and executing the above-described method steps.
[0019] In a sixth aspect, embodiments of this application provide a terminal device, which may include: a memory and a processor; wherein the memory stores a computer program, the computer program being adapted to be loaded by the memory and to execute the above-described method steps.
[0020] The beneficial effects of the technical solutions provided in this application include at least the following:
[0021] When the solution of this application embodiment is executed, the remote control device determines the current code value group from a preset code value group set. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key among preset function keys on the remote control device. The device receives a first operation command for a target function key, obtains the target code value corresponding to the target function key from the current code value group based on the first operation command, and sends the target code value and the current code value group to at least one terminal device. This controls the target terminal device among the at least one terminal devices to execute a control command corresponding to the target code value based on the target code value and the current code value group. The code value group corresponding to the target terminal device matches the current code value group. By setting the code value group corresponding to the remote control device to match the code value group corresponding to the target terminal device, this application can achieve precise control of a target terminal device among multiple terminal devices by a single remote control device, thereby improving the control accuracy of the remote control device controlling the terminal devices. Attached Figure Description
[0022] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0023] Figure 1 This is an exemplary scenario diagram of an application of a device control method provided in an embodiment of this application;
[0024] Figure 2 This is a schematic flowchart of a device control method provided in an embodiment of this application;
[0025] Figure 3 This is a schematic flowchart of another device control method provided in an embodiment of this application;
[0026] Figure 4 This is a flowchart illustrating another device control method provided in an embodiment of this application;
[0027] Figure 5 This is a flowchart illustrating another device control method provided in an embodiment of this application;
[0028] Figure 6 This is a schematic diagram of the structure of a device control apparatus provided in an embodiment of this application;
[0029] Figure 7 This is a schematic diagram of the structure of a device control apparatus provided in an embodiment of this application;
[0030] Figure 8 This is a schematic diagram of the structure of a remote control device provided in an embodiment of this application;
[0031] Figure 9 This is a schematic diagram of the structure of a terminal device provided in an embodiment of this application. Detailed Implementation
[0032] To make the inventive objectives, features, and advantages of the embodiments of this application more apparent and understandable, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0033] In the description of this application, it should be understood that the terms "first," "second," etc., are used for descriptive purposes only and should not be construed as indicating or implying relative importance. In the description of this application, it should be noted that, unless otherwise expressly specified and limited, "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or devices. Those skilled in the art can understand the specific meaning of the above terms in this application based on the specific circumstances. Furthermore, in the description of this application, unless otherwise stated, "multiple" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist; for example, A and / or B can represent: A alone, A and B simultaneously, and B alone. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship.
[0034] In related technologies, large-screen devices such as smart interactive flat panels and smart TVs can be controlled via physical remote controls. When users control terminal devices using physical remote controls, the control protocols used may be infrared, Bluetooth, or wireless protocols. However, when using infrared remote controls to control any one of multiple terminal devices in the same space, multiple terminal devices may respond simultaneously, leading to inaccurate control during use.
[0035] Please see Figure 1 It illustrates an exemplary scenario diagram of a device control method or device control apparatus to which embodiments of this application can be applied.
[0036] like Figure 1 As shown, it may include one or more of terminal devices 102, 104, 106, and 108, and remote control device 101.
[0037] It should be understood that Figure 1 The number of terminal devices and remote control devices shown is merely illustrative. Depending on the implementation requirements, any number of terminal devices and remote control devices can be included.
[0038] In this embodiment, terminal devices 102, 104, 106, and 108 can be various electronic devices with displays, including but not limited to smart interactive tablets, smart TVs, etc., and remote control device 101 can be a remote control, such as an infrared remote control. At least one terminal device and a remote control device are in the same space, and the user can use remote control device 101 to control terminal devices 102, 104, 106, and 108. When the user presses a button on remote control device 101, only one of terminal devices 102, 104, 106, and 108 can respond to the remote control device.
[0039] The present application will now be described in detail with reference to specific embodiments.
[0040] Please see Figure 2 This is a flowchart illustrating a device control method provided in an embodiment of this application. For ease of explanation, only the remote-controlled device is used as the executing entity for each step in the description. Figure 2 As shown, the method described in this application embodiment may include the following steps:
[0041] S201, determine the current code value group from the preset code value group set.
[0042] The code value group set refers to a set of infrared code value groups. The code value group set may include at least one infrared code value group, and each code value group may include multiple infrared code values. Each code value group may also include a group identifier, which is used to distinguish different code value groups. In the embodiments of this application, the infrared code value refers to the infrared code value corresponding to each function key in the preset function keys on the remote control device. The preset function keys may be some or all of the preset function keys on the remote control device. Typically, function keys on the remote control device can be categorized into setting type keys, number type keys, direction type keys, and other types of keys. It is understood that the preset function keys can be some or more types of keys; for example, the preset function keys can be 10 keys, which can be any 10 keys from the above types.
[0043] The current code value group refers to the code value group of the infrared code value emitted by the remote control device in the future.
[0044] Understandably, developers can pre-configure the infrared code value corresponding to each function button on the remote control device, and each function button can be configured with at least one corresponding infrared code value. When each function button is configured with multiple corresponding infrared code values, these multiple infrared code values can be grouped, with each infrared code value belonging to a different group. Therefore, multiple groups of infrared code values can be configured for all function buttons, allowing the remote control device to send different code values by switching between different code value groups during actual application.
[0045] According to some embodiments, determining the current code value group from a preset set of code value groups can be understood as the remote control device determining the current code value group from the preset set of code value groups based on the code value group selection command when it recognizes the code value group selection command. The code value group selection command can be triggered by a user performing an action. For example, it could be the user pressing a function key, and that function key corresponds to a group. That is, developers can pre-set the correspondence between different function keys and different groups, with one function key corresponding to one group. Alternatively, it could be the user pressing multiple function keys, which correspond to a key combination. Developers can pre-set the correspondence between different key combinations and different groups, without specifying the pressing order or duration of each key in the key combination; one key combination corresponds to one group.
[0046] S202, receives the first operation command for the target function key.
[0047] The target function key refers to the function key that the user is currently pressing.
[0048] The first operation instruction is used to instruct the remote control device to obtain the target code value corresponding to the target function key in the current code value group.
[0049] According to some embodiments, when a user presses a target function button on a remote control device, the action can correspond to a first operation command. The remote control device can receive the first operation command, parse the first operation command, and further, the remote control device can perform a corresponding task based on the content obtained from parsing the first operation command.
[0050] S203, based on the first operation instruction, obtain the target code value corresponding to the target function key in the current code value group, and send the target code value and the current code value group to at least one terminal device, so as to control the target terminal device in the at least one terminal device to execute the control instruction corresponding to the target code value based on the target code value and the current code value group.
[0051] The target code value refers to the infrared code value corresponding to the target function key in the current code value group.
[0052] According to some embodiments, after the remote control device receives the first operation command, it can parse the first operation command to obtain that the button corresponding to the first operation command is a target function button. Furthermore, the remote control device can search for the target code value corresponding to the target function button in the current code value group. Further, the remote control device can send the target code value and the current code value group to at least one terminal device in the same space, so that one of the at least one terminal devices can identify the target code value and the current code value group. The target terminal can determine whether the current code value group matches its locally set code value group, that is, whether the current code value group is the same as the locally set code value group. If the current code value group is the same as the locally set code value group of the target terminal device, the target terminal device can execute the control command corresponding to the target code value based on the target code value. It is understood that the application scenario of this application embodiment can be that, in the current space, there is a remote control device and at least one terminal device. A user can use a remote control device to control only one terminal device for a period of time. The premise for realizing the function of controlling only the terminal device is that the code value group corresponding to the terminal device at present needs to match the current code value group in the remote control device, while the code value groups corresponding to other terminal devices in the current space do not match the current code value group in the remote control device.
[0053] For example, in a conference room, there may be a remote control device A1, a smart interactive whiteboard B1 (terminal device), a smart interactive whiteboard B2 (terminal device), and a smart interactive whiteboard B3 (terminal device). The remote control device A1 may have pre-configured code value groups a1, a2, a3, a4, and a5. The currently configured code value group in remote control device A1 is a2, the currently configured code value group in smart interactive whiteboard B1 is a1, the currently configured code value group in smart interactive whiteboard B2 is a2, and the currently configured code value group in smart interactive whiteboard B3 is a3. Therefore, the code value group of smart interactive whiteboard B2 matches the code value group of remote control device A1. When a user presses a target function button on remote control device A1, A1 searches for the target code value corresponding to the function button in code value group a2. Further, A1 sends the target code value and code value group a2 to the smart interactive flat panel B2. Upon receiving the target code value and code value group a2, B2 identifies the code value group a2. If it determines that code value group a2 is the same as the currently configured code value group a2, B2 can identify the function button corresponding to the target code value within B2. Furthermore, B2 can execute the control function corresponding to that function button. It is understood that B2 can also have function buttons, which can be virtual buttons on the interface or physical buttons on the physical casing. These function buttons can correspond to different control functions and can also have different infrared code values. The infrared code values corresponding to these function buttons can form code value group a2.
[0054] When the solution of this application embodiment is executed, the remote control device determines the current code value group from a preset code value group set. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key among preset function keys on the remote control device. The device receives a first operation command for a target function key, obtains the target code value corresponding to the target function key from the current code value group based on the first operation command, and sends the target code value and the current code value group to at least one terminal device. This controls the target terminal device among the at least one terminal devices to execute a control command corresponding to the target code value based on the target code value and the current code value group. The code value group corresponding to the target terminal device matches the current code value group. By setting the code value group corresponding to the remote control device to match the code value group corresponding to the target terminal device, this application can achieve precise control of a target terminal device among multiple terminal devices by a single remote control device, thereby improving the control accuracy of the remote control device controlling the terminal devices.
[0055] Please see Figure 3 This is a flowchart illustrating a device control method provided in an embodiment of this application. For ease of explanation, only the remote-controlled device is used as the executing entity for each step in the description. Figure 3 As shown, the method described in this application embodiment may include the following steps:
[0056] S301, based on the configuration instructions of each function key in the preset function keys on the remote control device, determine the code value corresponding to each function key, obtain the code value group from each code value, and add the code value group to the code value group set.
[0057] The configuration command is used to configure the infrared code value corresponding to each function button in the preset function buttons on the remote control device.
[0058] It is understood that each function key in the preset function keys on the remote control device can correspond to multiple code values. In the embodiments of this application, when the developer executes the configuration command for configuring each function key on the remote control device, the remote control device can assign multiple code values to each function key, so that each code value belongs to a different code value group. For example, for the "volume +" key, its corresponding code value can be 02, 12, 22, 32, 42, 52, 62, 72, 82, 92. 02 can be assigned to code value group 1, 12 to code value group 2, 22 to code value group 3, and so on, so that the 10 code values corresponding to the "volume +" key can be assigned to 10 different code value groups. According to the above code value group allocation method, other keys can also be grouped into code value groups, resulting in multiple code value groups. Multiple code value groups can form a code value group set, and each code value group includes the infrared code value corresponding to each function key.
[0059] S302, receive the code value update instruction for each function key, determine the update code value corresponding to each function key, obtain the update code value group from each update code value, and add the update code value group to the code value group set.
[0060] Understandably, the code value update command is used to instruct the remote control device to update the code values of each function button, so as to obtain the new code value corresponding to each function button.
[0061] According to some embodiments, when a user executes a code value update command on a remote control device, the infrared code values corresponding to each function key in the code value group configured in S301 can be updated. The updated infrared code values of each function key can form a new code value group. For ease of description, the new code value group can be called the updated code value group. The updated code value group can be added to the code value group set in S301.
[0062] It is understood that the code value update instruction can be an instruction generated by the user pressing a preset update button or a combination of update buttons on the remote control device. In the embodiments of this application, the preset update button can be a pre-set function button for updating button code values, and the preset update button combination can be a pre-set combination of function buttons for updating button code values. That is, when the user presses the preset update button on the remote control device, or when the user presses the preset update button combination on the remote control device, the update code value corresponding to each function button can be determined, and the update code value group can be obtained from these update code values. Furthermore, the update code value group can be added to the code value group set.
[0063] For example, the preset function buttons on the remote control device can be up, down, left, right, and confirm. The code value group set configured in S301 can include 5 code value groups. The code values corresponding to each function button in each code value group are shown in Table 1. The first column of Table 1 represents the code value group, and the first row represents each function button. The preset update button combination is "first button" + "second button" + "confirm button" + "exit button". The corresponding operation sequence for this update button combination is: press "first button" + "second button" simultaneously, then press "confirm button" (the first two operations can be performed multiple times), and finally press "exit button" (this operation can only be performed once). The corresponding update instruction for this update button combination and operation sequence is: change the code values of "first button" and "second button". If the user simultaneously presses the "Up" button + "Left" button, then presses the "OK" button, then simultaneously presses the "Down" button + "Right" button, then presses the "OK" button again, and finally presses the "Exit" button, the remote control device will be instructed to change the code values of the "Up" button and "Left" button, and the code values of the "Down" button and "Right" button. Furthermore, after the remote control device generates a new code value group (i.e., an updated code value group), it can add the updated code value group to the code value group set. The code values corresponding to each function button in the updated code value group can be found in Table 2. The first column of Table 2 represents the code value group, and the first row represents each function button.
[0064] Table 1 shows the code values of each function key in the code value group.
[0065] Upper key code value Key code value Left-click code value Right-click code value Determine key value Group 1 11 12 13 14 15 2 groups 21 22 23 24 25 3 groups 31 32 33 34 35 4 groups 41 42 43 44 45 5 groups 51 52 53 54 55
[0066] Table 2 shows the code values of each function key in each code value group.
[0067] Upper key code value Key code value Left-click code value Right-click code value Determine key value Group 1 13 14 11 12 15 2 groups 23 24 21 22 25 3 groups 33 34 31 32 35 4 groups 43 44 41 42 45 5 groups 53 54 51 52 55
[0068] S303, receive a second operation instruction for each function key in the preset function keys on the remote control device, and determine the operation time and operation sequence corresponding to each function key.
[0069] The second operation instruction is used to inform the remote control device which function keys have been pressed, as well as the order in which each key has been pressed and its duration. The operation time refers to the duration of each key being pressed, and the operation sequence refers to the order in which each key has been pressed.
[0070] According to some embodiments, when a user performs a continuous action of pressing each of the preset function keys on a remote control device, the continuous action can correspond to an operation command. The remote control device can receive the operation command, parse the operation command, and obtain the multiple function keys that were pressed, the duration of each key being pressed, and the order in which they were pressed.
[0071] S304, determine the current code value group from the preset code value group set based on the operation time and the operation sequence.
[0072] According to some embodiments, developers can pre-set the correspondence between the pressing order, continuous pressing duration and code value group of multiple function keys. One code value group corresponds to a group of function keys (and the pressing order and continuous pressing duration of each function key). Therefore, when the operation command corresponding to the user's action of pressing a group of function keys is received by the remote control device, the remote control device can determine the code value group corresponding to the operation command from the code value group set and can use the code value group as the current code value group. For example, the remote control device can be configured with 10 code value groups, each corresponding to a set of function buttons: pressing "Up" + "Confirm" simultaneously for 5 seconds is set to group 0; pressing "Down" + "Confirm" simultaneously for 5 seconds is set to group 1; pressing "Left" + "Confirm" simultaneously for 5 seconds is set to group 2; pressing "Right" + "Confirm" simultaneously for 5 seconds is set to group 3; pressing "Up" + "Down" simultaneously for 5 seconds is set to group 4; pressing "Up" + "Left" simultaneously for 5 seconds is set to group 5; pressing "Up" + "Right" simultaneously for 5 seconds is set to group 6; pressing "Down" + "Left" simultaneously for 5 seconds is set to group 7; pressing "Down" + "Right" simultaneously for 5 seconds is set to group 8; and pressing "Left" + "Right" simultaneously for 5 seconds is set to group 9.
[0073] S305 receives the first operation command for the target function key.
[0074] S306, based on the first operation instruction, search for the target code value corresponding to the target function key in each code value corresponding to the current code value group.
[0075] Specifically, S304 to S305 in the embodiments of this application can be found in [reference needed]. Figure 2 S201 to S203 in the above will not be described in detail here.
[0076] S307, the target code value and the current code value group are sent to at least one terminal device through a communication protocol, so as to control the target terminal device among the at least one terminal device to execute the control command corresponding to the target code value based on the target code value and the current code value group.
[0077] It is understandable that the communication protocol can be an infrared communication protocol, which is a transmission technology based on infrared light. Commonly used infrared communication protocols include NEC protocol, Philips RC5 protocol, Sony SIRC protocol, ITT protocol, Nokia NRC17 protocol, RCA protocol, Sharp protocol, etc.
[0078] According to some embodiments, the remote control device and the terminal device can communicate using an infrared communication protocol. The remote control device can use the infrared communication protocol to send a target code value and the code value group to which the target code value belongs to at least one terminal device, thereby controlling the target terminal device in at least one terminal device to execute a control command corresponding to the target code value based on the target code value. The premise that the target terminal device can execute the control command is that the code value group corresponding to the target terminal device matches the code value group to which the target code value belongs.
[0079] When the solution of this application embodiment is executed, firstly, the remote control device determines the current code value group from a preset code value group set. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key in the preset function keys on the remote control device. Then, it can receive code value update instructions for each function key in the preset function keys on the remote control device, determine the update code value corresponding to each function key, obtain the update code value group from each update code value, and add the update code value group to the code value group set. Using this method, the code values of each function key can be updated according to user needs, and the updated code value group can be obtained, making the updated code value group conform to user habits and improving user experience. Then, it can receive second operation instructions for each function key in the preset function keys on the remote control device, determine the operation time and operation sequence corresponding to each function key, and determine the current code value group from the preset code value group set based on the operation time and operation sequence. Using this method, the user can select the currently used code value group, conforming to user habits and improving user experience. Then, a first operation command for a target function key can be received. Based on the first operation command, the target code value corresponding to the target function key is obtained from the current code value group. The target code value and the current code value group are then sent to at least one terminal device to control the target terminal device among the at least one terminal device to execute the control command corresponding to the target code value based on the target code value and the current code value group. The prerequisite for the target terminal device to execute the control command is that the code value group corresponding to the target terminal device matches the current code value group. Therefore, by setting the code value group corresponding to the remote control device to match the code value group corresponding to the target terminal device, this application can achieve precise control of the target terminal device among multiple terminal devices by one remote control device, thereby improving the control accuracy of the remote control device in controlling the terminal devices.
[0080] Please see Figure 4 This is a flowchart illustrating a device control method provided in an embodiment of this application. For ease of explanation, only the terminal device is used as the executing entity for each step in the description. Figure 3 As shown, the method described in this application embodiment may include the following steps:
[0081] S401, Receive the target code value and the code value group to which the target code value belongs, sent by the remote control device.
[0082] In this context, "remote control device" refers to a physical infrared remote control, and "target code value" refers to an infrared code value. The code value group to which the target code value belongs can include multiple infrared code values, each corresponding to a function button. These function buttons can be virtual buttons displayed on the terminal device's screen or physical buttons located on the terminal device's physical casing. These function buttons can correspond to different control functions.
[0083] According to some embodiments, in the embodiments of this application, since the terminal device and the remote control device are in the same space, the terminal device can be configured with an infrared receiver, and the remote control device can be configured with an infrared transmitter and an infrared receiver. When the remote control device sends out a target code value and the code value group to which the target code value belongs, the terminal device can receive the target code value and the code value group.
[0084] S402, when the locally preset code value group matches the code value group to which the target code value belongs, execute the control command corresponding to the target code value based on the target code value.
[0085] Each infrared code value group can contain multiple infrared code values. For infrared code values in a terminal device, each infrared code value corresponds to a function button on the terminal device. For infrared code values in a remote control device, each infrared code value corresponds to a function button on the remote control device.
[0086] According to some embodiments, after the terminal device receives the target code value and the code value group to which the target code value belongs from the remote control device, the terminal device can match the code value group to which the target code value belongs with a locally preset code value group. That is, it determines whether the locally preset code value group is the same as the code value group to which the target code value belongs. If they are the same code value group, it means that the locally preset code value group matches the code value group to which the target code value belongs. Furthermore, the terminal device can find the function key corresponding to the target code value on the terminal device, determine the control function corresponding to the function key, and then execute the control command corresponding to the control function. For example, the locally preset code value group in the terminal device is a1. The code values contained in a1 are 01, 02, 03, 04, 05, 06, 07, and 08. The target code value sent by the remote control is 03. The function key corresponding to the code value 03 in the terminal device is "Program Channel -". Its corresponding control function is to switch back to the previous program channel. The processor in the terminal device can generate the control command corresponding to this control function and send the control command to the corresponding processing module in the terminal device to execute the function of switching back to the previous program channel.
[0087] When the solution of this application embodiment is executed, the terminal device receives the target code value and the code value group to which the target code value belongs from the remote control device. When the locally preset code value group matches the code value group to which the target code value belongs, the control command corresponding to the target code value is executed based on the target code value. By setting the code value group corresponding to the remote control device and the code value group corresponding to the terminal device to match, this application can realize the precise control of one target terminal device by one remote control device among multiple terminal devices, and can improve the control accuracy of the remote control device controlling the terminal device.
[0088] Please see Figure 5 This is a flowchart illustrating a device control method provided in an embodiment of this application. For ease of explanation, only the terminal device is used as the executing entity for each step in the description. Figure 5 As shown, the method described in this application embodiment may include the following steps:
[0089] S501, on the page containing the code value group set, a selection instruction for the target code value group is received, and the target code value group is used as the locally preset code value group. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key in the preset function keys on the terminal device.
[0090] It is understandable that the preset function buttons on the terminal device can be virtual function buttons displayed on the terminal device interface, or physical function buttons on the terminal device casing. For example, virtual function buttons can be directional buttons such as "Up", "Down", "Left", "Right", and "OK"; physical function buttons can also be buttons such as "Up", "Down", "Left", "Right", and "OK".
[0091] According to some embodiments, the locally preset code value groups in the terminal device can be manually configured by the user. The terminal device can provide a page for users to manually configure code value groups. This page can be invoked by a corresponding application or by a physical button on the terminal device. When the terminal device displays this page, it can display a set of code value groups. The set of code value groups can contain multiple code value groups, and the user can select any one of them as the locally preset code value group. It is understood that any code value group can include the code values corresponding to each function key in the preset function keys on the terminal device, and the code values in the code value group can be displayed on the page.
[0092] S502, in response to the update instruction for the locally preset code value group, in the displayed interface containing the code value group set, a selection instruction for the updated code value group is received, and the updated code value group is used as the updated locally preset code value group.
[0093] It is understandable that update commands are used to instruct terminal devices to change the locally preset code value group. Update commands can be commands generated by update operations entered by the user on the terminal device. For example, the entered update operation can be clicking a virtual button on the terminal device to change the code value group, the entered update operation can be the user entering a voice command to change the code value group on the terminal device, or the entered update operation can be clicking a physical button on the terminal device to change the code value group.
[0094] According to some embodiments, after setting a locally preset code value group in S501, the user can execute an update command for the locally preset code value group on the terminal device. In response to the update command, the terminal device can receive the user's selection command for the updated code value group in the displayed interface containing the code value group set. Furthermore, the terminal device can use the updated code value group as the updated locally preset code value group. It should be noted that the updated locally preset code value group on the terminal device needs to match the current code value group on the remote control device.
[0095] It is understandable that the set of code value groups displayed on the terminal device can contain multiple code value groups. When a user executes an update command and then selects a new code value group from the set, this new code value group can be referred to as the updated code value group. Therefore, after receiving the user's selection command for the updated code value group, the terminal device can use the updated code value group as the updated locally preset code value group.
[0096] S503, receive an input instruction for a target code value group, and use the target code value group as a locally preset code value group, wherein the target code value group includes the code value corresponding to each function key in the preset function keys on the terminal device.
[0097] It is understandable that input commands can be commands generated by the user entering target code value groups on the terminal device.
[0098] According to some embodiments, the locally preset code value group can be input by the user onto the terminal device, specifically through touch input or voice input. After the user inputs the target code value group into the terminal device, the terminal device can obtain the target code value group and use it as the locally preset code value group. The target code value group may include the infrared code values corresponding to each function key in a set of preset function keys on the terminal device. It should be noted that the locally preset code value group on the terminal device needs to match the current code value group on the remote control device.
[0099] S504, in response to the update instruction for the locally preset code value group, receive the input instruction for the updated code value group, and use the updated code value group as the updated locally preset code value group.
[0100] It is understandable that update commands are used to instruct terminal devices to change the locally preset code value group. Update commands can be commands generated by update operations entered by the user on the terminal device. For example, the entered update operation can be clicking a virtual button on the terminal device to change the code value group, the entered update operation can be the user entering a voice command to change the code value group on the terminal device, or the entered update operation can be clicking a physical button on the terminal device to change the code value group.
[0101] According to some embodiments, after setting a locally preset code value group in S503, the user can execute an update command for the locally preset code value group on the terminal device. In response to the update command, the terminal device can receive the user's input command for the updated code value group. Furthermore, the terminal device can use the updated code value group as the updated locally preset code value group. It should be noted that the updated locally preset code value group on the terminal device needs to match the current code value group on the remote control device.
[0102] It is understandable that both the target code value group and the update code value group can include a set of infrared code values corresponding to each function key in the preset function keys on the terminal device, and the code values for the same function key in the target code value group and the update code value group can be different.
[0103] It should be noted that in some embodiments, the execution method is not limited to the above. S501 and S504 can be combined as an implementation method, and S502 and S503 can be combined as an implementation method. These are all executable implementation methods, and will not be described in detail here.
[0104] S505, receive the target code value and the code value group to which the target code value belongs, sent by the remote control device through the communication protocol.
[0105] It is understandable that the communication protocol can be an infrared communication protocol, which is a transmission technology based on infrared light. Commonly used infrared communication protocols include NEC protocol, Philips RC5 protocol, Sony SIRC protocol, ITT protocol, Nokia NRC17 protocol, RCA protocol, Sharp protocol, etc.
[0106] According to some embodiments, the terminal device and the remote control device can communicate using an infrared communication protocol. The remote control device can encapsulate the target code value and the code value group to which the target code value belongs using the infrared communication protocol and then send them to the terminal device. The terminal device can decapsulate the target code value and the code value group to which the target code value belongs using the same infrared communication protocol.
[0107] S506, when the locally preset code value group matches the code value group to which the target code value belongs, the target function key corresponding to the target code value is determined from the preset function keys on the terminal device, the control function corresponding to the target function key is determined, and the control command corresponding to the control function is executed.
[0108] Specifically, S506 in the embodiments of this application can be found here. Figure 4 The details of S402 will not be elaborated here.
[0109] When the solution of this application embodiment is executed, firstly, the terminal device receives a selection instruction for a target code value group on a page displaying a set of code value groups, and sets the target code value group as a locally preset code value group. The set of code value groups includes at least one code value group, and each code value group includes the code value corresponding to each function key among the preset function keys on the terminal device. Alternatively, it receives an input instruction for a target code value group, and sets the target code value group as a locally preset code value group. The target code value group includes the code value corresponding to each function key among the preset function keys on the terminal device. Using either of these methods, the user can set the locally preset code value group according to their usage habits. Then, in response to an update instruction for the locally preset code value group, the terminal device receives a selection instruction for an updated code value group on the displayed interface containing the set of code value groups, and sets the updated code value group as the updated locally preset code value group. Alternatively, in response to an update command for the locally preset code value group, an input command for updating the code value group is received, and the updated code value group is used as the updated locally preset code value group. Using either of these methods, users can change the locally preset code value group, thus meeting user needs and improving user experience. Then, the terminal device can receive the target code value and its corresponding code value group sent by the remote control device via an infrared communication protocol. When the locally preset code value group matches the target code value group, the target function key corresponding to the target code value can be determined from the preset function keys on the terminal device. Then, the control function corresponding to the target function key can be determined, and the control command corresponding to that control function can be executed. Therefore, by setting the code value group corresponding to the remote control device and the code value group corresponding to the terminal device to match, this application can achieve precise control of one target terminal device from multiple terminal devices by a single remote control device, improving the control accuracy of the remote control device controlling the terminal device.
[0110] Please see Figure 6 This is a schematic diagram of a device control apparatus provided in an embodiment of this application. The device control apparatus 600 can be implemented as all or part of a control device through software, hardware, or a combination of both. The apparatus 600 includes:
[0111] The group determination module 610 is used to determine the current code value group in a preset code value group set. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key in the preset function keys on the remote control device.
[0112] The instruction receiving module 620 is used to receive the first operation instruction for the target function key;
[0113] The device control module 630 is configured to obtain the target code value corresponding to the target function key in the current code value group based on the first operation instruction, and send the target code value and the current code value group to at least one terminal device, so as to control the target terminal device in the at least one terminal device to execute the control instruction corresponding to the target code value based on the target code value and the current code value group, wherein the code value group corresponding to the target terminal device matches the current code value group.
[0114] Optionally, device 630 also includes:
[0115] The first configuration module is used to determine the code value corresponding to each function key based on the configuration instructions of each function key in the preset function keys on the remote control device, and to obtain the code value group from each code value;
[0116] The second configuration module is used to add the code value group to the code value group set.
[0117] Optionally, device 630 also includes:
[0118] The first update module is used to receive the code value update instruction for each function key, determine the update code value corresponding to each function key, and obtain the update code value group from each update code value;
[0119] The second update module is used to add the update code value group to the code value group set.
[0120] Optionally, the group determination module 610 includes:
[0121] The first receiving unit is used to receive a second operation instruction for each function key among the preset function keys on the remote control device, and to determine the operation time and operation sequence corresponding to each function key.
[0122] The second processing unit is used to determine the current code value group from a preset code value group set based on the operation time and the operation sequence.
[0123] Optionally, the device control module 630 includes:
[0124] The device control unit is used to search for the target code value corresponding to the target function key in each code value corresponding to the current code value group based on the first operation instruction.
[0125] Optionally, the device control module 630 includes:
[0126] An infrared communication unit is used to send the target code value and the current code value group to at least one terminal device via a communication protocol.
[0127] When the solution of this application embodiment is executed, the remote control device determines the current code value group from a preset code value group set. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key among preset function keys on the remote control device. The device receives a first operation command for a target function key, obtains the target code value corresponding to the target function key from the current code value group based on the first operation command, and sends the target code value and the current code value group to at least one terminal device. This controls the target terminal device among the at least one terminal devices to execute a control command corresponding to the target code value based on the target code value and the current code value group. The code value group corresponding to the target terminal device matches the current code value group. By setting the code value group corresponding to the remote control device to match the code value group corresponding to the target terminal device, this application can achieve precise control of a target terminal device among multiple terminal devices by a single remote control device, thereby improving the control accuracy of the remote control device controlling the terminal devices.
[0128] Please see Figure 7 This is a schematic diagram of a device control apparatus provided in an embodiment of this application. The device control apparatus 700 can be implemented as all or part of a terminal device through software, hardware, or a combination of both. The apparatus 700 includes:
[0129] The code value receiving module 710 is used to receive the target code value and the code value group to which the target code value belongs, sent by the remote control device;
[0130] The function execution module 720 is used to execute control instructions corresponding to the target code value based on the target code value when the locally preset code value group matches the code value group to which the target code value belongs.
[0131] Optionally, the device 700 also includes:
[0132] The first group configuration module is used to receive a selection instruction for a target code value group on the page containing the code value group set, and to use the target code value group as a locally preset code value group. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key in the preset function keys on the terminal device.
[0133] or,
[0134] The second group configuration module is used to receive input instructions for a target code value group, and to use the target code value group as a locally preset code value group. The target code value group includes the code values corresponding to each function key in the preset function keys on the terminal device.
[0135] Optionally, the device 700 also includes:
[0136] The first group update module is used to respond to the update instruction for the locally preset code value group, and in the displayed interface containing the code value group set, receive the selection instruction for the updated code value group, and use the updated code value group as the updated locally preset code value group.
[0137] or,
[0138] The second group update module is used to respond to the update instruction for the locally preset code value group, receive the input instruction for the updated code value group, and use the updated code value group as the updated locally preset code value group.
[0139] Optionally, the function execution module 720 includes:
[0140] The function execution unit is used to determine the target function key corresponding to the target code value from the preset function keys on the terminal device, determine the control function corresponding to the target function key, and execute the control command corresponding to the control function.
[0141] Optionally, the code value receiving module 710 includes:
[0142] An infrared communication unit is used to receive the target code value and the code value group to which the target code value belongs, sent by the remote control device through a communication protocol.
[0143] When the solution of this application embodiment is executed, the terminal device receives the target code value and the code value group to which the target code value belongs from the remote control device. When the locally preset code value group matches the code value group to which the target code value belongs, the control command corresponding to the target code value is executed based on the target code value. By setting the code value group corresponding to the remote control device and the code value group corresponding to the terminal device to match, this application can realize the precise control of one target terminal device by one remote control device among multiple terminal devices, and can improve the control accuracy of the remote control device controlling the terminal device.
[0144] Please refer to Figure 8 , Figure 8 This is a schematic diagram of a remote control device provided in an embodiment of this application. Figure 8 As shown, the remote control device may include: an infrared transmitting structure, a receiver 12, and a power module 13. The infrared transmitting structure mainly includes an infrared transmitter 111, a controller 112, and a feedback module 113.
[0145] Receiver 12 receives key presses and other information from the user, converts them into remote control commands, and sends them to controller 112. Controller 112, based on the commands from receiver 12, controls multiple infrared transmitters 111 to convert electrical signals into light signals and transmit them sequentially. The infrared transmitters 111 can use lenses to transmit infrared light signals in various directions to the infrared remote controller 1, sending them into the outside world. When controlling an appliance via the infrared remote controller 1, after the infrared remote controller 1 sends a control command, the buzzer of the terminal device will send an audio signal to the feedback module 113, and controller 112 will then stop the infrared transmitters 111 from sending infrared codes.
[0146] Receiver 12 is used to receive the button inputs of infrared remote control 1, such as power on / off button, timer button and other function buttons.
[0147] The power module 14 is used to provide the electrical energy required for the operation of the entire infrared remote controller 1.
[0148] Please refer to Figure 9 , Figure 9 This is a schematic diagram of the structure of a terminal device provided in an embodiment of this application. Figure 9 As shown, the terminal device 1300 may include: at least one processor 1301, at least one network interface 1304, a user interface 1303, a memory 1305, and at least one communication bus 1302.
[0149] The communication bus 1302 is used to realize the connection and communication between these components.
[0150] The user interface 1303 may include a display screen and a camera. Optionally, the user interface 1303 may also include a standard wired interface and a wireless interface.
[0151] The network interface 1304 may optionally include a standard wired interface or a wireless interface (such as a Wi-Fi interface).
[0152] The processor 1301 may include one or more processing cores. The processor 1301 connects to various parts within the terminal 1300 using various interfaces and lines, and performs various functions and processes data by running or executing instructions, programs, code sets, or instruction sets stored in the memory 1305, and by calling data stored in the memory 1305. Optionally, the processor 1301 may be implemented using at least one hardware form of Digital Signal Processing (DSP), Field-Programmable Gate Array (FPGA), or Programmable Logic Array (PLA). The processor 1301 may integrate one or a combination of several of the following: a Central Processing Unit (CPU) and a modem. The CPU primarily handles the operating system and applications. It is understood that the modem may also be implemented as a separate chip, rather than integrated into the processor 1301.
[0153] The memory 1305 may include random access memory (RAM) or read-only memory. Optionally, the memory 1305 may include a non-transitory computer-readable storage medium. The memory 1305 can be used to store instructions, programs, code, code sets, or instruction sets. The memory 1305 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system, instructions for at least one function (such as touch function, sound playback function, image playback function, etc.), instructions for implementing the above-described method embodiments, etc.; the data storage area may store data involved in the above-described method embodiments, etc. Optionally, the memory 1305 may also be at least one storage device located remotely from the aforementioned processor 1301. Figure 9 As shown, the memory 1305, which serves as a computer storage medium, may include an operating system, a network communication module, a user interface module, and a program for device control methods.
[0154] In addition, those skilled in the art will understand that the structure of the terminal device 1300 shown in the above figures does not constitute a limitation on the terminal device 1300. The terminal device may include more or fewer components than shown, or combine certain components, or have different component arrangements. For example, the terminal device 1300 also includes radio frequency circuits, audio circuits, WiFi components, power supplies, Bluetooth components, etc., which will not be described in detail here.
[0155] This application also provides a computer-readable storage medium storing at least one instruction that is executed by a processor to implement the device control method as described in the above embodiments.
[0156] This application also provides a computer program product that stores at least one instruction, which is loaded and executed by the processor to implement the device control method described in the above embodiments.
[0157] Those skilled in the art will recognize that the functions described in the embodiments of this application in one or more of the above examples can be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or code on a computer-readable medium. Computer-readable media include computer storage media and communication media, wherein communication media include any medium that facilitates the transfer of a computer program from one place to another. Storage media can be any available medium that can be accessed by a general-purpose or special-purpose computer.
[0158] The above description is merely an optional embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A device control method, applied to a remote-controlled device, characterized in that, The method includes: The current code value group is determined from the preset code value group set. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key in the preset function keys on the remote control device. Receive the first operation command for the target function key; Based on the first operation instruction, the target code value corresponding to the target function key is obtained from the current code value group, and the target code value and the current code value group are sent to at least one terminal device in the same space to control the target terminal device in the at least one terminal device to execute the control instruction corresponding to the target code value based on the target code value and the current code value group, wherein the code value group corresponding to the target terminal device matches the current code value group; The method for determining the code value group corresponding to the target terminal device includes: receiving a selection instruction for a target code value group on a page displaying a set of code value groups, and using the target code value group as a locally preset code value group. The page is used for users to manually configure code value groups, and the locally preset code value group is any code value group selected by the user from the set of code value groups; or, receiving an input instruction for a target code value group, and using the target code value group as a locally preset code value group. The locally preset code value group is input by the user to the terminal device, and the user input is either touch input or voice input.
2. The method according to claim 1, characterized in that, Before determining the current code value group from the preset code value group set, the process also includes: Based on the configuration instructions of each function key in the preset function keys on the remote control device, the code value corresponding to each function key is determined, and the code value group is obtained from each code value; Add the code value group to the code value group set.
3. The method according to claim 2, characterized in that, After adding the code value group to the code value group set, the method further includes: Receive code value update instructions for each function key, determine the update code value corresponding to each function key, and obtain the update code value group from each update code value; Add the updated code value group to the code value group set.
4. The method according to any one of claims 1-3, characterized in that, Determining the current code value group from the preset code value group set includes: Receive a second operation instruction for each function key among the preset function keys on the remote control device, and determine the operation time and operation sequence corresponding to each function key; The current code value group is determined from a preset set of code value groups based on the operation time and the operation sequence.
5. The method according to any one of claims 1-3, characterized in that, The step of obtaining the target code value corresponding to the target function key in the current code value group based on the first operation instruction includes: Based on the first operation instruction, search for the target code value corresponding to the target function key in each code value corresponding to the current code value group.
6. The method according to any one of claims 1-3, characterized in that, Sending the target code value and the current code value group to at least one terminal device includes: The target code value and the current code value group are sent to at least one terminal device via a communication protocol.
7. A device control method applied to a terminal device, characterized in that, The method includes: In the displayed page containing a set of code value groups, a selection instruction for a target code value group is received, and the target code value group is used as a locally preset code value group. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key in the preset function keys on the terminal device. The page is used for users to manually configure code value groups, and the locally preset code value group is any code value group selected by the user from the code value group set. Alternatively, an input instruction for a target code value group is received, and the target code value group is used as a locally preset code value group. The target code value group includes the code value corresponding to each function key in the preset function keys on the terminal device. The locally preset code value group is input by the user to the terminal device, and the user input is touch input or voice input. The terminal device is one of at least one terminal device within the same space. Receive the target code value and the code value group to which the target code value belongs, sent by the remote control device; When the locally preset code value group matches the code value group to which the target code value belongs, the control command corresponding to the target code value is executed based on the target code value.
8. The method according to claim 7, characterized in that, Before receiving the target code value and group identifier sent by the remote control device, the method further includes: On the page containing the set of code value groups, a selection instruction for a target code value group is received, and the target code value group is used as a locally preset code value group. The set of code value groups includes at least one code value group, and each code value group includes the code value corresponding to each function key in the preset function keys on the terminal device. or, Receive an input command for a target code value group, and use the target code value group as a locally preset code value group. The target code value group includes the code values corresponding to each function key in the preset function keys on the terminal device.
9. The method according to claim 8, characterized in that, After setting the target code value group as a locally preset code value group, the method further includes: In response to an update instruction for the locally preset code value group, in the displayed interface containing the code value group set, a selection instruction for the updated code value group is received, and the updated code value group is used as the updated locally preset code value group. or, In response to an update instruction for the locally preset code value group, an input instruction for updating the code value group is received, and the updated code value group is used as the updated locally preset code value group.
10. The method according to claim 7, characterized in that, The execution of control instructions corresponding to the target code value based on the target code value includes: The target function key corresponding to the target code value is determined from the preset function keys on the terminal device, the control function corresponding to the target function key is determined, and the control command corresponding to the control function is executed.
11. The method according to claim 7, characterized in that, The target code value sent by the receiving remote control device and the code value group to which the target code value belongs include: The target code value and the code value group to which the target code value belongs are sent by the remote control device through the communication protocol.
12. A device control apparatus for use in remote-controlled equipment, characterized in that, The device includes: The group determination module is used to determine the current code value group in a preset code value group set. The code value group set includes at least one code value group, and each code value group includes the code value corresponding to each function key in the preset function keys on the remote control device. The instruction receiving module is used to receive the first operation instruction for the target function key; The device control module is configured to obtain the target code value corresponding to the target function key in the current code value group based on the first operation instruction, and send the target code value and the current code value group to at least one terminal device in the same space, so as to control the target terminal device in the at least one terminal device to execute the control instruction corresponding to the target code value based on the target code value and the current code value group, wherein the code value group corresponding to the target terminal device matches the current code value group; The method for determining the code value group corresponding to the target terminal device includes: receiving a selection instruction for a target code value group on a page displaying a set of code value groups, and using the target code value group as a locally preset code value group. The page is used for users to manually configure code value groups, and the locally preset code value group is any code value group selected by the user from the set of code value groups; or, receiving an input instruction for a target code value group, and using the target code value group as a locally preset code value group. The locally preset code value group is input by the user to the terminal device, and the user input is either touch input or voice input.
13. A device control apparatus, applied to a terminal device, characterized in that, The device includes: The first group configuration module is used to receive a selection instruction for a target code value group on a page displaying a set of code value groups, and to set the target code value group as a locally preset code value group. The set of code value groups includes at least one code value group, and each code value group includes the code value corresponding to each function key in the preset function keys on the terminal device. The page is used for users to manually configure code value groups, and the locally preset code value group is any code value group selected by the user from the set of code value groups. Alternatively, the second group configuration module is used to receive an input instruction for a target code value group, and to set the target code value group as a locally preset code value group. The target code value group includes the code value corresponding to each function key in the preset function keys on the terminal device. The locally preset code value group is input by the user to the terminal device, and the user input is touch input or voice input. The terminal device is one of at least one terminal device within the same space. The code value receiving module is used to receive the target code value and the code value group to which the target code value belongs, sent by the remote control device; The function execution module is used to execute control instructions corresponding to the target code value based on the target code value when the locally preset code value group matches the code value group to which the target code value belongs.
14. A computer storage medium, characterized in that, The computer storage medium stores a plurality of instructions, which are adapted to be loaded by a processor and executed as method steps as claimed in any one of claims 1 to 6 or 7 to 11.
15. An electronic device, characterized in that, include: A processor and a memory; wherein the memory stores a computer program adapted to be loaded by the processor and executed the method steps as claimed in any one of claims 1 to 6 or 7 to 11.