Voice interaction method and device, terminal and storage medium
By establishing communication connections between multiple smart terminals, analyzing and forwarding voice commands, the problem of users' cumbersome operation in a multi-device environment is solved, and the function of users to efficiently control multiple terminals through a single terminal is realized.
Patent Information
- Application Number
- CN202311690290.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-08
- Publication Date
- 2025-06-10
AI Technical Summary
In an environment where multiple intelligent devices exist at the same time, users need to remember the functions of different devices to wake up the corresponding devices to realize the corresponding functions. The operation is complicated and complicated, making it difficult to efficiently control multiple intelligent devices.
By establishing a communication connection between the first terminal and the plurality of second terminals, a user's voice input signal is received, and the target function of the voice command is analyzed and determined. If the first terminal does not have the target function, the voice command is forwarded to the second terminal having the function to execute the voice command.
Users only need to wake up any terminal to control multiple terminals efficiently and conveniently through voice commands, improving the voice interaction efficiency between users and multiple terminals.
Smart Images

Figure CN120126468A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and particularly to a voice interaction method, apparatus, terminal, and storage medium. Background Art
[0002] With the development of speech recognition technology, voice assistants have gradually become one of the important tools in intelligent devices. Users can control intelligent devices through voice assistants. Due to different application scenarios, there are significant differences in the functions of different voice assistants. For example, the voice assistant in a smart speaker mainly has functions such as music playback, and the voice assistant in a vehicle terminal mainly has functions such as vehicle control and map navigation. Therefore, when a user is in an environment where multiple intelligent devices coexist, the user needs to remember the functions of different intelligent devices to wake up the corresponding intelligent device to achieve the corresponding functions, and the operation is rather cumbersome and complex. Therefore, how to improve the voice interaction efficiency between the user and multiple intelligent devices so that the user can efficiently control multiple intelligent devices through voice commands is a technical problem that needs to be solved. Summary of the Invention
[0003] Embodiments of this application provide a voice interaction method, apparatus, terminal, and storage medium. When multiple terminals are interconnected, the user only needs to wake up any one of the multiple terminals, and then can efficiently and conveniently control the interconnected multiple terminals through voice commands, improving the voice interaction efficiency between the user and the multiple terminals. The technical solutions are as follows:
[0004] According to one aspect of the embodiments of this application, a voice interaction method is provided. The method includes:
[0005] In response to receiving a voice input signal, parsing the voice input signal to obtain the voice command indicated by the voice input signal;
[0006] Determining whether there is a target function indicated by the voice command;
[0007] In the case where there is no such target function, forwarding the voice command to at least one second terminal to instruct the second terminal to execute the voice command, where the second terminal is a terminal that has established a communication connection with the first terminal.
[0008] According to another aspect of the embodiments of this application, a voice interaction apparatus is provided. The apparatus includes:
[0009] A parsing module, configured to parse the voice input signal in response to receiving the voice input signal to obtain the voice command indicated by the voice input signal;
[0010] A first determination module, configured to determine whether there is a target function indicated by the voice command;
[0011] A forwarding module, configured to forward the voice command to at least one second terminal to instruct the second terminal to execute the voice command when the target function is not available, where the second terminal is a terminal that has established a communication connection with the first terminal.
[0012] In some embodiments, the parsing module is configured to, in response to receiving a voice input signal, perform voice text processing on the voice input signal to obtain a plurality of intent keywords. The voice text processing includes at least one of speech-to-text conversion, natural language understanding, natural language processing, dialogue state tracking, and action candidate ranking. The intent keywords are used to represent the intent of the voice input signal; determine a voice command corresponding to the plurality of intent keywords, where the text of the voice command includes at least one of the plurality of intent keywords.
[0013] In some embodiments, the forwarding module is configured to, when the target function is not available, obtain a function list of the first terminal, where the function list records function identifiers of a plurality of second terminals; determine whether there is a second terminal having the target function by querying the function identifiers of the plurality of second terminals in the function list; and forward the voice command to any one of the at least one second terminal when there is at least one second terminal having the target function.
[0014] In some embodiments, the apparatus further includes:
[0015] A first broadcast module, configured to broadcast a first prompt message when there is no second terminal having the target function, where the first prompt message is used to prompt that the voice command cannot be executed.
[0016] In some embodiments, the apparatus further includes:
[0017] A sending module, configured to, in response to successfully establishing a communication connection with any second terminal, send the function identifier of the first terminal to the second terminal, and the second terminal adds the function identifier of the first terminal to a second function list to update the second function list. The second function list is the function list of the second terminal, and the second function list records the function identifier of the second terminal. The second terminal is further configured to synchronize the second function list to the first terminal after updating the second function list;
[0018] A second determination module, configured to, in response to receiving the second function list synchronized by the second terminal, determine the second function list as the function list of the first terminal.
[0019] In some embodiments, the device further includes:
[0020] An adding module, configured to, when a communication connection is established between the first terminal and any second terminal, in response to receiving a function identifier sent by the second terminal, add the function identifier to a first function list to update the first function list, where the first function list is the function list of the first terminal, and the first function list records function identifiers of the first terminal;
[0021] A synchronizing module, configured to, when the first function list is updated, synchronize the first function list to the second terminal to instruct the second terminal to determine the first function list as the function list of the second terminal.
[0022] In some embodiments, the device further includes:
[0023] A deleting module, configured to, when the communication connection with any second terminal is disconnected, delete the function identifier of the second terminal from the function list of the first terminal.
[0024] In some embodiments, the forwarding module is configured to, when not having the target function, send the voice instruction to multiple second terminals, and each of the multiple second terminals determines whether it has the target function respectively; when a notification message returned by any second terminal is received within a preset time, play a second prompt message, where the notification message is used to indicate that the second terminal has the target function, and the second prompt message is used to prompt the second terminal to execute the voice instruction.
[0025] In some embodiments, the device further includes:
[0026] A second playing module, configured to, when no notification message returned by any second terminal is received within the preset time, play a third prompt message, where the third prompt message is used to prompt that the voice instruction cannot be executed.
[0027] In some embodiments, the first determining module is configured to, when the voice instruction indicates multiple target functions, query the priority of each target function, where the priority is positively correlated with the priority of the target function being implemented; retain the target function with the highest priority, and determine whether it has the target function with the highest priority.
[0028] In some embodiments, the first determining module is configured to, when the voice instruction indicates multiple target functions, query the priority of each target function, where the priority is positively correlated with the priority of the target function being implemented; in the order from high to low of the priority, determine whether it has the multiple target functions in sequence.
[0029] In some embodiments, the device further includes:
[0030] An execution module, configured to execute the voice instruction when having the target function;
[0031] A third broadcast module, configured to broadcast a fourth prompt message for prompting an execution result of the voice instruction.
[0032] According to another aspect of the embodiments of the present application, a terminal is provided. The terminal includes a processor and a memory; the memory stores at least one program code, and the at least one program code is configured to be executed by the processor to implement the voice interaction method as described in the above aspect.
[0033] According to another aspect of the embodiments of the present application, a chip is provided. The chip includes programmable logic circuits and / or program instructions, and is configured to implement the voice interaction method as described in the above aspect when the chip runs on a terminal.
[0034] According to another aspect of the embodiments of the present application, a computer-readable storage medium is provided. The storage medium stores at least one program code, and the at least one program code is configured to be executed by a processor to implement the voice interaction method as described in the above aspect.
[0035] According to another aspect of the embodiments of the present application, a computer program product is provided. The computer program product stores at least one program code, and the at least one program code is configured to be executed by a processor to implement the voice interaction method as described in the above aspect.
[0036] The embodiments of the present application provide a voice interaction solution. When a first terminal establishes a communication connection with a plurality of second terminals, after the first terminal receives a voice input signal of a user, the first terminal determines a voice instruction indicated by the voice input signal. When the first terminal does not have the target function indicated by the voice instruction, the first terminal cannot execute the voice instruction. Therefore, the first terminal forwards the voice instruction to at least one second terminal to instruct any second terminal having the target function to execute the voice instruction. Therefore, the user only needs to wake up any one of the interconnected multiple terminals, and can efficiently and conveniently control the multiple terminals through voice instructions, improving the efficiency of voice interaction between the user and the multiple terminals. Description of the Drawings
[0037] To more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the accompanying drawings required for the description of the embodiments. Obviously, the accompanying drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other accompanying drawings can be obtained based on these drawings.
[0038] Figure 1 is a schematic diagram of an implementation environment provided by an embodiment of the present application;
[0039] Figure 2 is a flowchart of a voice interaction method provided by an embodiment of the present application;
[0040] Figure 3 is a flowchart of another voice interaction method provided by an embodiment of the present application;
[0041] Figure 4 is a schematic diagram of synchronizing device identifiers provided by an embodiment of the present application;
[0042] Figure 5 is a schematic diagram of multi-terminal interconnection provided by an embodiment of the present application;
[0043] Figure 6 is a flowchart of a voice interaction provided by an embodiment of the present application;
[0044] Figure 7 is a schematic structural diagram of a voice interaction device provided by an embodiment of the present application;
[0045] Figure 8 is a schematic structural diagram of another voice interaction device provided by an embodiment of the present application;
[0046] Figure 9 is a block diagram of the structure of a terminal provided by an embodiment of the present application. Detailed implementation manners
[0047] To make the objectives, technical solutions, and advantages of the present application clearer, the following will further describe the embodiments of the present application in detail in conjunction with the accompanying drawings.
[0048] As used herein, "at least one" means one or more, and "a plurality" means two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally represents an "or" relationship between the associated objects before and after.
[0049] It should be noted that the information involved in this application (including but not limited to user device information, user personal information, etc.), data (including but not limited to data for analysis, stored data, displayed data, etc.), and signals are all authorized by the user or fully authorized by all parties, and the collection, use, and processing of relevant data need to comply with the relevant laws, regulations, and standards of relevant countries and regions. For example, the voice input signals and function lists involved in this application are obtained under full authorization.
[0050] Figure 1 is a schematic diagram of an implementation environment provided by an embodiment of this application. Refer to Figure 1 As shown, this implementation environment includes a first terminal 101 and a second terminal 102. The first terminal 101 and the second terminal 102 can be directly or indirectly connected through wired or wireless communication means.
[0051] In some embodiments, both the first terminal 101 and the second terminal 102 can be various types of terminals such as mobile phones, smart watches, desktop computers, laptop computers, tablet computers, smart speakers, vehicle-mounted terminals, and smart homes. Among them, both the first terminal 101 and the second terminal 102 are installed with voice assistants. The user can wake up the voice assistant of the first terminal 101 and control the first terminal 101 to execute voice commands through this voice assistant. Alternatively, the user can also wake up the voice assistant of the second terminal 102 and control the second terminal 102 to execute voice commands through this voice assistant. When a communication connection is established between the first terminal 101 and the second terminal 102, the user can also control the second terminal 102 to execute voice commands through the voice assistant of the first terminal 101.
[0052] For example, when the first terminal 101 is a mobile phone and the second terminal 102 is a vehicle-mounted terminal, after the user wakes up the voice assistant of the mobile phone and inputs the command "open the sunroof" to the voice assistant of the mobile phone, the voice assistant of the mobile phone replies to the user "I don't have this function. Let the vehicle-mounted terminal execute it for you." Then, the mobile phone sends the voice command "open the sunroof" to the vehicle-mounted terminal through the communication connection with the vehicle-mounted terminal to instruct the vehicle-mounted terminal to open the sunroof, thus realizing that the user controls the vehicle-mounted terminal to execute voice commands through the voice assistant of the mobile phone.
[0053] Figure 2 is a flowchart of a voice interaction method provided by an embodiment of this application. This method is executed by the first terminal. Refer to Figure 2 As shown, this method includes:
[0054] 201. In response to receiving a voice input signal, the first terminal parses the voice input signal to obtain the voice command indicated by the voice input signal.
[0055] In the embodiments of the present application, the first terminal is a terminal of various types such as a smart phone, a smart watch, a computer, a smart speaker, a vehicle-mounted terminal, and a smart home. The user can control the first terminal to execute the corresponding voice command through a voice command. Correspondingly, after the first terminal receives the voice command input by the user, the first terminal analyzes the collected voice input signal to obtain the user's behavioral intention. Then, the first terminal determines the voice command indicated by the voice input signal according to the user's behavioral intention. Among them, the voice input signal can be a piece of voice input by the user into the first terminal. The voice command indicated by the voice input signal can be a background command for realizing the user's behavioral intention.
[0056] For example, in response to receiving the voice of "call xx" input by the user, the first terminal analyzes the voice to determine that the user's behavioral intention is "make a call with the contact xx". Then, the first terminal determines that the voice command indicated by the voice is "make a call to the contact xx".
[0057] 202. The first terminal determines whether it has the target function indicated by the voice command.
[0058] In the embodiments of the present application, since the first terminal can be a terminal of various types, and the functions of different types of terminals vary greatly. Therefore, after the first terminal determines the voice command, the first terminal determines whether it currently has the target function indicated by the voice command. The target function is used to execute the voice command. When the first terminal has the target function, the first terminal can execute the voice command. When the first terminal does not have the target function, the first terminal cannot execute the voice command.
[0059] For example, when the voice command is "make a call to the contact xx", the target function indicated by the voice command is "make a call". When the first terminal is a vehicle-mounted terminal, a smart speaker or a smart home, the first terminal does not have the target function of "make a call", and the first terminal cannot execute the voice command. When the first terminal is a mobile phone or a smart watch, the first terminal has the target function of "make a call", and the first terminal can execute the voice command.
[0060] 203. When the first terminal does not have the target function, the first terminal forwards the voice command to at least one second terminal to instruct the second terminal to execute the voice command, and the second terminal is a terminal that has established a communication connection with the first terminal.
[0061] In an embodiment of the present application, after the first terminal determines that it does not have the target function currently, the first terminal forwards the voice command to at least one second terminal to instruct the second terminal to execute the voice command. Wherein, a communication connection is established between the second terminal and the first terminal. Similar to the first terminal, the second terminal can also be various types of terminals such as a smart phone, a smart watch, a computer, a smart speaker, a vehicle-mounted terminal, and a smart home. Accordingly, after receiving the voice command, when the second terminal has the target function, the second terminal executes the voice command, thereby realizing the user's behavioral intention through the second terminal.
[0062] For example, when the first terminal is a vehicle-mounted terminal and the second terminal is a mobile phone, after the vehicle-mounted terminal determines that it does not have the target function of "making a call", the vehicle-mounted terminal forwards the voice command "call the contact xx" to the mobile phone. After receiving the voice command, the mobile phone searches for the contact xx in the mobile phone address book and makes a call to the contact xx so that the user can make a call with the contact xx through the mobile phone.
[0063] The embodiment of the present application provides a voice interaction method. When a communication connection is established between the first terminal and multiple second terminals, after the first terminal receives a voice input signal from the user, the first terminal determines the voice command indicated by the voice input signal. When the first terminal does not have the target function indicated by the voice command, the first terminal cannot execute the voice command. Therefore, the first terminal forwards the voice command to at least one second terminal to instruct any second terminal having the target function to execute the voice command. Therefore, the user only needs to wake up any one of the interconnected multiple terminals to efficiently and conveniently control the multiple terminals through voice commands, improving the efficiency of the user's voice interaction with the multiple terminals.
[0064] Figure 3 is a flowchart of another voice interaction method provided by the embodiment of the present application. This method is executed by the first terminal. Refer to Figure 3 and this method includes:
[0065] 301. In response to receiving the voice input signal, the first terminal parses the voice input signal to obtain the voice command indicated by the voice input signal.
[0066] In the embodiments of the present application, the first terminal is a variety of types of terminals such as a smart phone, a smart watch, a computer, a smart speaker, a vehicle-mounted terminal, and a smart home equipped with a voice assistant. Among them, the voice assistant usually has functions such as voice collection, speech recognition, natural language understanding, and natural language generation. Therefore, the user can control the first terminal through the voice assistant. After the voice assistant of the first terminal is awakened, the voice assistant can collect the voice input signal input by the user through the voice collection function, and parse the voice input signal through functions such as speech recognition and natural language understanding to obtain the voice command indicated by the voice input signal. Then, the voice assistant sends a notification message for executing the voice command to the first terminal to notify the first terminal to execute the voice command.
[0067] For example, when the first terminal is a smart phone, the user can wake up the voice assistant of the smart phone and control the smart phone to open application A by inputting a voice command of "open application A" to the voice assistant. After the voice assistant of the smart phone collects the voice input signal "open application A", the voice assistant parses the voice input signal to obtain that the voice command indicated by the voice input signal is "start application A". Then, the voice assistant will send a notification message for executing the voice command to the smart phone. In addition, when the smart phone successfully starts application A, the voice assistant can also generate and broadcast a feedback voice of "successfully opened application A for you" through natural language generation technology.
[0068] In some embodiments, the voice assistant can also parse the voice input signal to obtain the user's behavioral intention. Then, the voice assistant determines the voice command indicated by the voice input signal according to the user's behavioral intention. Among them, the voice command is a background command that can achieve the user's behavioral intention.
[0069] In some embodiments, the voice assistant of the first terminal processes the voice input signal into voice text to obtain the user's behavioral intention. When the voice assistant is in the wake-up state, upon receiving the voice input signal, that is, when the voice assistant collects the voice command input by the user, the voice assistant performs at least one voice text processing on the voice input signal to obtain multiple intention keywords. Among them, the voice text processing includes at least one of speech-to-text conversion, natural language understanding, natural language processing, dialogue state tracking, and action candidate ranking. The intention keywords are used to represent the behavioral intention contained in the voice input signal. Therefore, the above-mentioned multiple intention keywords can reflect the user's behavioral intention. Then, the voice assistant determines the voice command corresponding to the above-mentioned multiple intention keywords. The text of the voice command includes the above-mentioned at least one intention keyword. By performing at least one voice text processing on the voice input signal, the user's behavioral intention can be understood more accurately, and the voice command that best fits the user's behavioral intention can be determined efficiently, thereby improving the interaction efficiency between the user and the voice assistant.
[0070] To more clearly illustrate the process of voice text processing for the voice input signal, the following first briefly introduces technologies such as speech-to-text conversion, natural language understanding, natural language processing, dialogue state tracking, and action candidate ranking. Then, the process of the voice assistant performing voice text processing on the voice input signal through the above-mentioned several technologies will be described.
[0071] Speech-to-text conversion refers to using automatic speech recognition (ASR) technology to recognize the lexical content in the voice input signal and convert the lexical content into computer-readable input, such as text content or character sequences, etc.
[0072] Natural language understanding (NLU) refers to using an artificial intelligence model or natural language processing algorithm to process the input text content to understand the semantics of the text content and the behavioral intention contained in the text content, etc.
[0073] Natural language processing refers to the process of using an artificial intelligence model or natural language processing algorithm to understand and process the input text content. Through natural language processing technology, functions such as summarizing, abstracting, and expanding the input text content can be achieved.
[0074] Dialogue state tracking technology is an important technology in dialogue management (DM). Dialogue state tracking technology is used to track and judge the current dialogue state based on the input text content and the context information of the dialogue, so that the voice assistant can understand the user's behavioral intention and make a correct response. Among them, the dialogue can be the dialogue between the voice assistant and the user.
[0075] Action candidate sorting technology is also an important technology in dialogue management. Action candidate sorting technology refers to that the voice assistant generates a series of possible actions (voice commands) according to the input text content and the current dialogue state, and then sorts these actions according to certain rules, and finally selects a better action to execute. Through action candidate sorting technology, the voice assistant can select the most appropriate voice command among multiple possible voice commands, thus improving the accuracy of the voice assistant's understanding of the user's intention and the accuracy of determining the voice command.
[0076] For example, when the user wakes up the voice assistant of the smart phone and inputs the voice command "Play a lively song through application A" to the voice assistant, the voice assistant performs speech-to-text processing on the collected voice input signal to obtain the corresponding text content. Then, the voice assistant processes the text content through natural language understanding and natural language processing technologies to obtain multiple intent keywords that can reflect the user's intention: "application A", "play", "lively", and "song". Then, through dialogue state tracking technology and action candidate sorting technology, the voice assistant determines 3 voice commands that match the above multiple intent keywords, and sorts the 3 voice commands to obtain the sorting result: 1) Open application A. 2) Search for songs with a lively genre in application A. 3) Play songs with a lively genre through application A. The above 3 voice commands are all the voice commands indicated by the voice input signal.
[0077] 302. The first terminal determines whether it has the target function indicated by the voice command.
[0078] In the embodiments of the present application, since the first terminal can be various types of terminals such as smart phones, smart watches, computers, smart speakers, vehicle-mounted terminals, and smart homes, and the functions of different types of terminals vary greatly. For example, when the first terminal is a vehicle-mounted terminal, the first terminal mainly has functions such as controlling in-vehicle devices and road navigation, and does not have functions such as controlling home devices, making calls, and sending text messages. Therefore, after the first terminal receives the notification message sent by the voice assistant, the first terminal first determines whether it currently has the target function indicated by the voice command. Herein, the target function is the function used to execute the voice command. When the first terminal has the target function, the first terminal can execute the voice command indicated by the notification message through the target function. When the first terminal does not have the target function, the first terminal cannot execute the voice command.
[0079] For example, when the voice command indicated to be executed by the notification message is "call contact xx", the target function indicated by the voice command is "make a call". When the first terminal is a vehicle-mounted terminal, a smart speaker, or a smart home, the first terminal does not have the target function of "making a call", and the first terminal cannot execute the voice command. When the first terminal is a mobile phone or a smart watch, the first terminal has the target function of "making a call", and the first terminal can execute the voice command.
[0080] 303. When the first terminal has the target function, execute the voice command and broadcast a fourth prompt message, where the fourth prompt message is used to prompt the execution result of the voice command.
[0081] In the embodiments of the present application, when the first terminal has the target function, the first terminal executes the corresponding voice command through the target function. In response to the operation of the first terminal executing the voice command, the first terminal broadcasts a fourth prompt message to the user through the voice assistant to prompt the user of the execution result of the voice command. By broadcasting the execution result of the voice command to the user through the voice assistant when the first terminal executes the voice command through the target function, it is convenient for the user to timely perceive the execution situation of the voice command and improves the voice interaction experience between the user and the voice assistant.
[0082] For example, when the first terminal is a smart phone, in response to the operation of the smart phone making a call to contact xx, the smart phone broadcasts through the voice assistant "The call to xx has been successfully made. Please pay attention to answering."
[0083] In some embodiments, a voice command can also indicate multiple target functions. When the voice command indicates multiple target functions, the first terminal can break down the voice command into multiple secondary voice commands. Among them, the multiple secondary voice commands correspond to the multiple target functions one by one. Then, the first terminal queries the priority of each target function. Among them, the priority of the target function is positively correlated with the priority of the implementation of the secondary voice command corresponding to the target function. Then, the first terminal retains the target function with the highest priority according to the priorities of the respective target functions and discards the other target functions. Then, the first terminal only needs to determine whether it has the target function with the highest priority. When the first terminal has the target function with the highest priority, the first terminal executes the secondary voice command with the highest priority. By breaking down the voice command into multiple secondary voice commands and executing the secondary voice command with the highest priority when the voice command indicates multiple target functions, the number of times the first terminal queries the target function and the number of times it executes the voice command can be reduced, and the efficiency of the first terminal in executing the voice command can be improved.
[0084] For example, when the voice command is "initiate a hands-free call to contact xx", the first terminal can break down the voice command into two secondary voice commands: "make a hands-free call to contact xx" and "call contact xx". The target functions corresponding to the above two secondary voice commands are "hands-free call" and "default call" respectively. Among them, the priority of "hands-free call" is greater than the priority of "default call". Therefore, the first terminal executes the secondary voice command "make a hands-free call to contact xx".
[0085] In some embodiments, the first terminal can also retain multiple target functions indicated by the voice command. When the voice command indicates multiple target functions, the first terminal determines whether it has multiple target functions in order from highest to lowest priority, so as to execute the secondary voice commands corresponding to at least one target function in sequence according to the determined results. By breaking down the voice command into multiple secondary voice commands and executing the multiple secondary voice commands in order from highest to lowest priority when the voice command indicates multiple target functions, not only can the order in which the first terminal executes the secondary voice commands be arranged more reasonably, but also the multiple behavioral intentions of the user can be realized, improving the user experience.
[0086] For example, after the first terminal queries the priorities of the two target functions of "make a call" and "record", when the priority of "make a call" is greater than the priority of "record", the first terminal first executes the secondary voice command "make a call to contact xx", and then executes the secondary voice command "record the call content" to realize the two behavioral intentions of the user.
[0087] It should be noted that among the multiple functions of the first terminal, the priority of each function can be configured by the user through the first terminal itself, or can be configured by the first terminal according to the type of the function. The embodiments of the present application do not limit this.
[0088] 304. When the first terminal does not have the target function, obtain the function list of the first terminal. The function list records the function identifiers of multiple second terminals, and the second terminal is a terminal that establishes a communication connection with the first terminal.
[0089] In the embodiments of the present application, when the first terminal does not have the target function, the first terminal cannot execute the voice instruction indicated by the notification message. The first terminal can control other terminals that establish a communication connection with the first terminal to execute the voice instruction. For the convenience of description, the terminal that establishes a communication connection with the first terminal is hereinafter referred to as the second terminal. Similar to the first terminal, the second terminal can also be various types of terminals such as a smart phone, a smart watch, a computer, a smart speaker, a vehicle-mounted terminal, and a smart home.
[0090] The first terminal obtains the function list. Among them, the function list records the function identifiers of multiple second terminals. The function identifier of the second terminal is used to represent the multiple functions of the second terminal. In addition, the function list of the first terminal also records the function identifier of the first terminal. Correspondingly, the function identifier of the first terminal is used to represent the multiple functions of the first terminal. Therefore, in the process of the first terminal executing the above step 302, the first terminal can determine whether the first terminal has the target function by querying the function identifier of the first terminal in the function list.
[0091] 305. The first terminal determines whether there is a second terminal that has the target function by querying the function identifiers of multiple second terminals in the function list.
[0092] In the embodiments of the present application, since the first terminal records the multiple functions of the second terminal through the function identifier in the function list. Therefore, by querying the function identifiers of multiple second terminals in the function list, the first terminal can determine whether the multiple functions of the second terminal include the target function, that is, can determine whether there is a second terminal that has the target function.
[0093] 306. When there is at least one second terminal that has the target function, the first terminal forwards the voice instruction to any one of the at least one second terminal to instruct the second terminal to execute the voice instruction.
[0094] In the embodiments of the present application, when at least one second terminal with a target function is recorded in the function list of the first terminal, the first terminal forwards the voice command to any second terminal with the target function, and the second terminal executes the received voice command through the target function. After the second terminal successfully executes the voice command, the second terminal can also broadcast the execution result of the voice command to the user through the voice assistant. By controlling the second terminal to execute the voice command through the target function when the first terminal does not have the target function and the second terminal has the target function, the functions of multiple interconnected terminals can be fully utilized, enabling the user to interact with any terminal and use the functions of all terminals. Therefore, the user does not need to re-awaken the second terminal or input the voice command to the second terminal again, simplifying the steps of the user's voice interaction with multiple terminals and improving the efficiency of the user's voice interaction with multiple terminals.
[0095] In some embodiments, when there are multiple second terminals with the target function, the first terminal can also screen out the target second terminal from the multiple second terminals according to at least one of the user's historical preference information, the resource occupancy rate of the second terminal, the battery status of the second terminal, and the network status, and forward the voice command to the target second terminal. The historical preference information is used to represent the voice commands that the user controls the second terminal to execute through the voice assistant in the historical process.
[0096] For example, when the first terminal is a vehicle-mounted terminal and the target function is "make a call", after the vehicle-mounted terminal determines through querying the function list that both the smart phone and the smart watch, the two second terminals, have the target function, the vehicle-mounted terminal forwards the voice command to the second terminal with a smaller resource occupancy rate and a higher remaining battery power according to the resource occupancy rate and the battery status of the smart phone and the smart watch. Optionally, the vehicle-mounted terminal can also recommend multiple second terminals with the target function to the user for the user to select by themselves. In response to the user's selection operation on any second terminal, the vehicle-mounted terminal forwards the voice command to the second terminal. For example, the vehicle-mounted terminal displays the identification of the smart phone and the identification of the smart watch on the vehicle-mounted screen and broadcasts through the voice assistant to the user "I do not have the ability to make a call. You can select the smart phone or the smart watch to execute for you". When the user selects the smart watch, the vehicle-mounted terminal sends the voice command "make a call to contact xx" to the smart watch, and the smart watch executes the voice command.
[0097] 307. When there is no second terminal with the target function, the first terminal broadcasts a first prompt message, and the first prompt message is used to prompt that the voice command cannot be executed.
[0098] In the embodiments of the present application, in the absence of a second terminal with a target function, it indicates that neither the first terminal nor the multiple second terminals connected to the first terminal can execute the voice command. Therefore, the second terminal broadcasts a first prompt message to the user through the voice assistant to prompt the user that the voice command cannot be executed currently. By broadcasting a prompt message to the user when neither the first terminal nor the multiple second terminals can execute the voice command, it is convenient for the user to adjust the behavioral intention in a timely manner or take other means to achieve the behavioral intention by themselves, avoiding the inconvenience caused to the user due to the inability to execute the voice command.
[0099] As can be seen from the content introduced in the above embodiments, the function identifier of the second terminal is recorded in the function list of the first terminal. In some embodiments, the function identifier of the first terminal is also recorded in the function list of the second terminal. The process of synchronizing the function identifiers between the first terminal and the second terminal will be described below in the following two ways.
[0100] Method 1: The first terminal synchronizes the function identifier to the second terminal. In response to the successful establishment of a communication connection between the first terminal and any second terminal, the first terminal sends the function identifier of the first terminal to the second terminal through the communication connection, and the second terminal adds the function identifier of the first terminal to the second function list to update the second function list. Among them, the second function list is the function list of the second terminal, and the second function list records the function identifier of the second terminal. After the second terminal completes the update of the second function list, it synchronizes the second function list to the first terminal through the communication connection established with the first terminal. In response to receiving the second function list synchronized by the second terminal, the first terminal determines the second function list as the function list of the first terminal. Through the above Method 1, after the first terminal and the second terminal successfully establish a communication connection, the first terminal is responsible for synchronizing the function identifier to the second terminal, and the second terminal is responsible for updating the second function list according to the received function identifier and synchronizing the updated second function list to the first terminal, which can quickly realize the synchronization of function identifiers between the first terminal and the second terminal and improve the efficiency of synchronizing function identifiers.
[0101] Method 2: The second terminal synchronizes the function identifier to the first terminal. When the first terminal establishes a communication connection with any second terminal, in response to receiving the function identifier sent by the second terminal, the first terminal adds the function identifier to the first function list to update the first function list. Here, the first function list is the function list of the first terminal, and the first function list records the function identifiers of the first terminal. After the first terminal finishes updating the first function list, it synchronizes the first function list to the second terminal through the established communication connection with the second terminal, so as to instruct the second terminal to determine the first function list as the function list of the second terminal. Through the above Method 2, after the first terminal and the second terminal successfully establish a communication connection, the second terminal is responsible for synchronizing the function identifier to the first terminal, and the first terminal is responsible for updating the first function list according to the received function identifier and synchronizing the updated first function list to the first terminal, which can quickly realize the synchronization of the function identifier between the first terminal and the second terminal and improve the efficiency of synchronizing the function identifier.
[0102] In some embodiments, when the connection state between the first terminal and the second terminal changes, the first terminal can also update the function list. For example, when the first terminal disconnects the communication connection with any second terminal, the first terminal deletes the function identifier of the second terminal from the function list. By timely deleting the function identifier of the second terminal from the function list when disconnecting the communication connection with the second terminal, it can avoid the situation that after the first terminal determines that the second terminal can execute the voice instruction, the first terminal cannot forward the voice instruction to the second terminal through the communication connection.
[0103] It should be noted that the communication connection established between the first terminal and the second terminal can be a wired connection or a wireless connection, and the embodiments of the present application do not limit this. For example, the first terminal and the second terminal can establish a wired connection through USB (Universal Serial Bus), or can also establish a wireless connection through means such as Bluetooth, NFC (Near Field Communication), and wireless network.
[0104] To more clearly illustrate the process of synchronizing the device identifier between the first terminal and the second terminal through the communication connection, the following takes the first terminal as a smart phone and the second terminal as a vehicle terminal as an example, combined with Figure 4 the schematic diagram of synchronizing the device identifier shown, to illustrate the process of synchronizing the device identifier between the smart phone and the vehicle terminal.
[0105] As Figure 4 shown, both the smart phone and the vehicle terminal include a voice assistant module, an instruction decision module, an instruction execution module, a function management module, and a device connection module.
[0106] Among them, the device connection module is used to establish and maintain communication connections between devices. For example, a communication connection can be established between a smartphone and a vehicle-mounted terminal through the device connection module.
[0107] The voice assistant module is used to receive voice input signals. The voice assistant module is used to convert voice input signals into corresponding voice commands by performing operations such as speech-to-text conversion, natural language understanding, natural language processing, dialogue state tracking, and action candidate ranking on the voice input signals. The voice assistant module is also used to broadcast the execution results of the feedback voice commands to the user.
[0108] The instruction decision module is used to determine the target function indicated by the voice command. The instruction execution module is used to execute the voice command through the target function. In the case where the voice command indicates a single target function, the instruction decision module sends the voice command to the instruction execution module, and the instruction execution module executes the voice command. In the case where the voice command indicates multiple target functions, the instruction decision module decides the target function with the highest priority and sends the voice command corresponding to the target function with the highest priority to the instruction execution module, and the instruction execution module executes the voice command.
[0109] The function management module is used to manage and maintain the function list of the terminal. For example, the function list of the smartphone is stored in the function management module of the smartphone, that is, the first function list. The function list of the vehicle-mounted terminal is stored in the function management module of the vehicle-mounted terminal, that is, the second function list.
[0110] In some embodiments, the function management module also provides a registerVoiceInten interface and a notifyVoiceIntentChanged interface. Among them, the registerVoiceInten interface is used to add a function identifier to the function list. Correspondingly, the function management module can add the function indicated by the function identifier and the terminal corresponding to the function to the function list by calling the registerVoiceInten interface, writing the function name in the queryText parameter of the interface and writing the terminal corresponding to the function in the voiceIntent parameter of the interface. The notifyVoiceIntentChanged interface is used to notify the terminal of the update information of the function list. Correspondingly, in response to the operation of adding a function identifier or deleting a function identifier in the function list, the function management module calls the notifyVoiceIntentChanged interface and writes the identifier of the function list in the voiceIntentList parameter of the interface to notify the terminal that the function list has been updated, so as to instruct the terminal to query functions in the latest function list.
[0111] In some embodiments, the instruction execution module further provides an executeRemoteVoiceIntent interface, which is used to call the instruction execution module of other terminals to execute voice instructions. For example, during the process of the first terminal forwarding a voice instruction to the second terminal, the first terminal can call the executeRemoteVoiceIntent interface, fill in the identifier of the second terminal in the device parameter of the interface, and fill in the voice instruction to be executed in the voiceIntent parameter of the interface, so as to control the second terminal to execute the voice instruction through the instruction execution module.
[0112] The process of synchronizing device identifiers between a smartphone and a vehicle terminal will be described below. In response to a successful establishment of a communication connection between the smartphone and the vehicle terminal, the smartphone synchronizes the function identifier of the smartphone to the vehicle terminal through the communication connection with the vehicle terminal, and the vehicle terminal adds the function identifier of the smartphone to the second function list. After the vehicle terminal updates the second function list, the vehicle terminal synchronizes the second function list to the smartphone through the communication connection. Therefore, through the above synchronization process, the function identifiers of the smartphone and the vehicle terminal are both recorded in the first function list and the second function list.
[0113] The above Figure 4 shows the situation where two terminals are interconnected. In some embodiments, in the case of multiple terminals being interconnected, function identifier synchronization can also be achieved among the multiple terminals. Figure 5 is a schematic diagram of multi-terminal interconnection provided by an embodiment of the present application. As Figure 5 shown, in response to a successful establishment of a communication connection between terminal 2 and terminal 3, function identifier synchronization is performed between terminal 2 and terminal 3, so that the function identifier of terminal 3 is recorded in the function list of terminal 2. Then, in response to a successful establishment of a communication connection between terminal 2 and terminal 1, function identifier synchronization is performed between terminal 2 and terminal 1. During the process of synchronizing function identifiers between terminal 2 and terminal 1, terminal 2 not only synchronizes the function identifier of terminal 2 to terminal 1, but also can synchronize the function identifier of terminal 3 to terminal 1, so that the function identifiers of terminal 2 and terminal 3 are recorded in the function list of terminal 1. The process of synchronizing function identifiers between any other two terminals is the same and will not be elaborated here.
[0114] 308. When the first terminal does not have a target function, it sends a voice instruction to multiple second terminals, and each of the multiple second terminals determines whether it has the target function.
[0115] In the embodiments of the present application, when the first terminal does not have the target function, the first terminal can also send a voice command to multiple connected second terminals. After receiving the voice command, the second terminal determines by itself whether it has the target function indicated by the voice command.
[0116] 309. When the first terminal receives the notification information returned by any second terminal within the preset time, the first terminal broadcasts a second prompt message. The notification information is used to indicate that the second terminal has the target function, and the second prompt message is used to prompt that the voice command is to be executed by the second terminal.
[0117] In the embodiments of the present application, when the second terminal has the target function, the second terminal executes the voice command and returns a notification message to the first terminal to notify that the second terminal can execute the voice command. Therefore, when the first terminal receives the notification information returned by any second terminal within the preset time, it indicates that this second terminal can execute the voice command. Therefore, the first terminal broadcasts a second prompt message to the user through the voice assistant to prompt the user that the voice command is currently executed by the second terminal. Among them, the preset time can be a preset time interval, such as 30 seconds, 60 seconds or 90 seconds, and the embodiments of the present application do not limit this.
[0118] For example, when the first terminal is a smart phone and the second terminal is a vehicle-mounted terminal, in response to the smart phone receiving the voice command of "open the sunroof", since the smart phone does not have the target function of opening the sunroof, the smart phone forwards the voice command of "open the sunroof" to multiple second terminals. After the vehicle-mounted terminal receives the voice command of "open the sunroof", since the vehicle-mounted terminal has the target function of opening the sunroof, the vehicle-mounted terminal returns a notification message to the smart phone. After receiving the notification message, the smart phone broadcasts to the user through the voice assistant "I don't have this ability, the vehicle-mounted terminal will open the sunroof for you". After the vehicle-mounted terminal opens the sunroof, the vehicle-mounted terminal broadcasts to the user through the voice assistant "The sunroof has been successfully opened for you".
[0119] 310. When the first terminal does not receive the notification information returned by any second terminal within the preset time, the first terminal broadcasts a third prompt message, and the third prompt message is used to prompt that the voice command cannot be executed.
[0120] In an embodiment of the present application, when the first terminal does not receive a notification message returned by the second terminal within a preset time, it indicates that no terminal can execute the voice command currently. Therefore, the first terminal broadcasts a third prompt message to the user through the voice assistant to prompt the user that the language command cannot be executed currently. By broadcasting the voice command to multiple connected second terminals when the first terminal cannot execute the voice command, the second terminal can determine by itself whether it can execute the received voice command. The above method can make more comprehensive use of the functions of multiple interconnected terminals, and avoid the situation that after the first terminal establishes a connection with the second terminal, the functions of the second terminal are missed due to the first terminal not yet synchronizing the function identifiers of the second terminal.
[0121] To more clearly illustrate the process of voice interaction between the user and multiple interconnected terminals, the following takes the first terminal as a mobile phone and the second terminal as a vehicle-mounted terminal (car computer) as an example, and combines Figure 6 the flowchart of the voice interaction shown below to illustrate the above process.
[0122] As Figure 6 shown, after the user gets in the car with the mobile phone, a communication connection is automatically established between the mobile phone and the car computer, or the user manually connects the mobile phone and the car computer. Then, the function identifiers of each other are synchronized between the mobile phone and the car computer through the communication connection. The user can wake up the voice assistant of the car computer and input a voice command to the voice assistant. Correspondingly, the voice assistant of the car computer recognizes the collected voice signal to obtain the voice command indicated by the voice signal. The car computer can also display the text content obtained by voice recognition on the car computer screen. Then, the car computer determines whether there is a terminal with the target function indicated by the voice command by querying the function list. If not, the voice assistant of the car computer broadcasts "The voice command cannot be executed". If there is a terminal with the target function in the function list, the car computer determines whether the voice command indicates multiple target functions. If the voice command indicates multiple target functions, the car computer filters out the target function with the highest priority according to the priority of the target function. Then, when the car computer has the target function with the highest priority, or the car computer has one of the target functions indicated by the voice command, the car computer executes the voice command through the target function and broadcasts the execution result. If the car computer does not have the target function, it indicates that the mobile phone has the target function. Therefore, the car computer forwards the voice command to the mobile phone, and the mobile phone executes the voice command and broadcasts the execution result.
[0123] An embodiment of the present application provides a voice interaction method. When a first terminal establishes a communication connection with multiple second terminals, after the first terminal receives a voice input signal from a user, the first terminal determines the voice command indicated by the voice input signal. When the first terminal does not have the target function indicated by the voice command, the first terminal cannot execute the voice command. Therefore, the first terminal forwards the voice command to at least one second terminal to instruct any second terminal having the target function to execute the voice command. Therefore, the user only needs to wake up any one of the interconnected multiple terminals to efficiently and conveniently control the multiple terminals through voice commands, improving the efficiency of voice interaction between the user and the multiple terminals.
[0124] All of the above optional technical solutions can be combined arbitrarily to form optional embodiments of the present application, which will not be elaborated one by one here.
[0125] The following is an embodiment of the device of the present application, which can be used to execute the method embodiment of the present application. For details not disclosed in the device embodiment of the present application, please refer to the method embodiment of the present application.
[0126] Figure 7 is a schematic structural diagram of a voice interaction device provided by an embodiment of the present application. Refer to Figure 7 The device includes: a parsing module 701, a first determination module 702, and a forwarding module 703.
[0127] The parsing module 701 is configured to, in response to receiving a voice input signal, parse the voice input signal to obtain the voice command indicated by the voice input signal;
[0128] The first determination module 702 is configured to determine whether it has the target function indicated by the voice command;
[0129] The forwarding module 703 is configured to, when it does not have the target function, forward the voice command to at least one second terminal to instruct the second terminal to execute the voice command, where the second terminal is a terminal that has established a communication connection with the first terminal.
[0130] In some embodiments, the parsing module 701 is configured to, in response to receiving a voice input signal, perform voice text processing on the voice input signal to obtain multiple intent keywords. The voice text processing includes at least one of speech-to-text conversion, natural language understanding, natural language processing, dialogue state tracking, and action candidate ranking. The intent keywords are used to represent the intent of the voice input signal; determine the voice command corresponding to the multiple intent keywords, and the text of the voice command includes at least one of the multiple intent keywords.
[0131] In some embodiments, the forwarding module 703 is configured to, when the target function is not available, obtain the function list of the first terminal, where the function list records the function identifiers of multiple second terminals; determine whether there is a second terminal with the target function by querying the function identifiers of the multiple second terminals in the function list; and forward the voice command to any one of the at least one second terminal when there is at least one second terminal with the target function.
[0132] In some embodiments, Figure 8 is a schematic structural diagram of another voice interaction device provided by an embodiment of the present application. Refer to Figure 8 The device further includes:
[0133] The first broadcast module 704 is configured to broadcast a first prompt message when there is no second terminal with the target function, and the first prompt message is used to prompt that the voice command cannot be executed.
[0134] In some embodiments, the device further includes:
[0135] The sending module 705 is configured to, in response to successfully establishing a communication connection with any second terminal, send the function identifier of the first terminal to the second terminal, and the second terminal adds the function identifier of the first terminal to the second function list to update the second function list. The second function list is the function list of the second terminal, and the second function list records the function identifier of the second terminal. The second terminal is further configured to synchronize the second function list to the first terminal after updating the second function list;
[0136] The second determination module 706 is configured to, in response to receiving the second function list synchronized by the second terminal, determine the second function list as the function list of the first terminal.
[0137] In some embodiments, the device further includes:
[0138] The adding module 707 is configured to, when the first terminal establishes a communication connection with any second terminal, in response to receiving the function identifier sent by the second terminal, add the function identifier to the first function list to update the first function list. The first function list is the function list of the first terminal, and the first function list records the function identifier of the first terminal;
[0139] The synchronization module 708 is configured to, after updating the first function list, synchronize the first function list to the second terminal to instruct the second terminal to determine the first function list as the function list of the second terminal.
[0140] In some embodiments, the device further includes:
[0141] A deletion module 709, configured to delete the function identifier of a second terminal from the function list of the first terminal when the communication connection with any second terminal is disconnected.
[0142] In some embodiments, a forwarding module 703 is configured to send a voice instruction to multiple second terminals when the target function is not available, and the multiple second terminals respectively determine whether they have the target function; when a notification message returned by any second terminal is received within a preset time, a second prompt message is broadcast, where the notification message is used to indicate that the second terminal has the target function, and the second prompt message is used to prompt the second terminal to execute the voice instruction.
[0143] In some embodiments, the apparatus further includes:
[0144] A second broadcast module 710, configured to broadcast a third prompt message when a notification message returned by any second terminal is not received within a preset time, where the third prompt message is used to prompt that the voice instruction cannot be executed.
[0145] In some embodiments, a first determination module 702 is configured to query the priority of each target function when the voice instruction indicates multiple target functions, where the priority is positively correlated with the priority degree of the target function being implemented; retain the target function with the highest priority, and determine whether the target function with the highest priority is available.
[0146] In some embodiments, a first determination module 702 is configured to query the priority of each target function when the voice instruction indicates multiple target functions, where the priority is positively correlated with the priority degree of the target function being implemented; in the order from high to low of the priority, determine whether multiple target functions are available in sequence.
[0147] In some embodiments, the apparatus further includes:
[0148] An execution module 711, configured to execute the voice instruction when the target function is available;
[0149] A third broadcast module 712, configured to broadcast a fourth prompt message, where the fourth prompt message is used to prompt the execution result of the voice instruction.
[0150] An embodiment of the present application provides a voice interaction device. When a first terminal establishes a communication connection with multiple second terminals, after the first terminal receives a voice input signal from a user, the first terminal determines a voice command indicated by the voice input signal. When the first terminal does not have a target function indicated by the voice command, the first terminal cannot execute the voice command. Therefore, the first terminal forwards the voice command to at least one second terminal to instruct any second terminal having the target function to execute the voice command. Therefore, the user only needs to wake up any one of the interconnected multiple terminals to efficiently and conveniently control the multiple terminals through voice commands, improving the efficiency of voice interaction between the user and the multiple terminals.
[0151] It should be noted that, when implementing its functions, the voice interaction device provided in the above embodiment is only illustrated by dividing the above-mentioned functional modules. In an actual application program, the above functions can be allocated to different functional modules according to needs, that is, the internal structure of the terminal is divided into different functional modules to complete all or part of the functions described above. In addition, the voice interaction device provided in the above embodiment and the embodiment of the voice interaction method belong to the same concept. For the specific implementation process, please refer to the method embodiment and will not be elaborated here.
[0152] An embodiment of the present application provides a terminal, which includes a processor and a memory; the memory stores at least one program code, and the at least one program code is used to be executed by the processor to implement the voice interaction method provided in each of the above method embodiments.
[0153] Figure 9 It is a block diagram of the structure of a terminal provided in an embodiment of the present application. In some embodiments, the terminal 900 is a terminal such as a smart phone, a tablet computer, or a wearable device that can access a wireless local area network as a wireless station. The terminal 900 in the present application includes at least one or more of the following components: a processor 910, a memory 920, and at least two wireless links 930.
[0154] In some embodiments, the processor 910 includes one or more processing cores. The processor 910 connects various parts within the entire terminal 900 through various interfaces and lines, and by running or executing program codes stored in the memory 920 and calling data stored in the memory 920, it performs various functions of the terminal 900 and processes data. In some embodiments, the processor 910 is implemented in at least one hardware form of digital signal processing (DSP), field-programmable gate array (FPGA), or programmable logic array (PLA). The processor 910 can integrate a combination of one or several of a central processing unit (CPU), a graphics processing unit (GPU), a neural-network processing unit (NPU), and a modem. Among them, the CPU mainly processes the operating system, user interface, application programs, etc.; the GPU is responsible for rendering and drawing the content to be displayed on the display screen; the NPU is used to implement artificial intelligence (AI) functions; the modem is used to process wireless communications. It can be understood that the above-mentioned modem can also not be integrated into the processor 910 and be implemented separately by a single chip.
[0155] In some embodiments, the processor 910 is used to control the operating conditions of at least two wireless links 930. Correspondingly, the processor 910 is a processor integrated with a wireless fidelity (Wi-Fi) chip. Among them, the Wi-Fi chip is a chip with dual Wi-Fi processing capabilities. For example, the Wi-Fi chip is a dual-band dual concurrent (DBDC) chip, or a dual-band simultaneous (DBS) chip, etc.
[0156] In some embodiments, the memory 920 includes a Random Access Memory (RAM). In some embodiments, the memory 920 includes a Read-Only Memory (ROM). In some embodiments, the memory 920 includes a non-transitory computer-readable storage medium. The memory 920 can be used to store program codes. The memory 920 may include a program storage area and a data storage area. Among them, the program storage area can store instructions for implementing the operating system, instructions for at least one function (such as touch function, sound playback function, image playback function, etc.), instructions for implementing the following various method embodiments, etc.; the data storage area can store data created according to the use of the terminal 900 (such as audio data, phone book, etc.).
[0157] In some embodiments, the memory 920 stores receiving schemes for received beacon frames of different wireless links 930. Also, the identifiers of access nodes connected to different wireless links 930, the identifiers of the wireless links 930, etc.
[0158] The at least two wireless links 930 are used to connect to different Access Points (APs) and receive downlink data sent by the APs. Among them, the different access nodes are access nodes in the same router or access nodes in different routers.
[0159] In some embodiments, the terminal 900 further includes a display screen. The display screen is a display component for displaying a user interface. In some embodiments, the display screen is a display screen with a touch function. Through the touch function, the user can perform touch operations on the display screen with any suitable object such as a finger or a stylus. In some embodiments, the display screen is usually arranged on the front panel of the terminal 900. In some embodiments, the display screen is designed as a full-screen, curved-screen, irregular-shaped screen, double-sided screen or foldable screen. In some embodiments, the display screen is also designed as a combination of a full-screen and a curved-screen, a combination of an irregular-shaped screen and a curved-screen, etc., and this embodiment does not limit this.
[0160] In addition, those skilled in the art can understand that the structure of the terminal 900 shown in the above drawings does not constitute a limitation on the terminal 900. The terminal 900 includes more or fewer components than shown in the drawings, or combines some components, or has different component arrangements. For example, the terminal 900 further includes components such as a microphone, a speaker, an input unit, a sensor, an audio circuit, a module, a power supply, a Bluetooth module, etc., which will not be elaborated here.
[0161] The present application also provides a computer-readable storage medium storing at least one program code, which is loaded and executed by the processor to implement the voice interaction method shown in each of the above embodiments.
[0162] The present application also provides a chip, which includes programmable logic circuits and / or program instructions, and is used to implement the voice interaction method shown in each of the above embodiments when the chip runs on a terminal.
[0163] The present application also provides a computer program product storing at least one program code, which is used to be executed by a processor to implement the voice interaction method shown in each of the above embodiments.
[0164] The serial numbers of the embodiments of the present application above are only for description and do not represent the superiority or inferiority of the embodiments.
[0165] Those of ordinary skill in the art can understand that all or part of the steps in implementing the voice interaction method of the above embodiments can be completed by hardware or by a program instructing relevant hardware. The program can be stored in a computer-readable storage medium. The storage medium mentioned above can be a read-only memory, a magnetic disk, an optical disc, etc. The above are only optional embodiments of the present application and are not intended to limit the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.
Claims
1. A voice interaction method, characterized in that, applied to a first terminal, the method includes: responding to receiving a voice input signal, parsing the voice input signal to obtain a voice command indicated by the voice input signal; determining whether there is a target function indicated by the voice command; in the case of not having the target function, forwarding the voice command to at least one second terminal to instruct the second terminal to execute the voice command, where the second terminal is a terminal that has established a communication connection with the first terminal.
2. The method according to claim 1, characterized in that, the responding to receiving a voice input signal, parsing the voice input signal to obtain a voice command indicated by the voice input signal includes: responding to receiving a voice input signal, performing voice text processing on the voice input signal to obtain a plurality of intent keywords, where the voice text processing includes at least one of speech-to-text conversion, natural language understanding, natural language processing, dialogue state tracking, and action candidate ranking, and the intent keywords are used to represent the intent of the voice input signal; determining a voice command corresponding to the plurality of intent keywords, where the text of the voice command includes at least one of the plurality of intent keywords.
3. The method according to claim 1, characterized in that, the forwarding the voice command to at least one second terminal in the case of not having the target function includes: in the case of not having the target function, obtaining a function list of the first terminal, where the function list records function identifiers of a plurality of second terminals; determining whether there is a second terminal having the target function by querying the function identifiers of the plurality of second terminals in the function list; in the case of there being at least one second terminal having the target function, forwarding the voice command to any one of the at least one second terminal.
4. The method according to claim 3, characterized in that, the method further includes: in the case of there being no second terminal having the target function, broadcasting a first prompt message, where the first prompt message is used to prompt that the voice command cannot be executed.
5. The method according to claim 3, characterized in that, the method further includes: in the case of the first terminal establishing a communication connection with any second terminal, in response to receiving a function identifier sent by the second terminal, adding the function identifier to a first function list to update the first function list, where the first function list is the function list of the first terminal and records the function identifier of the first terminal; in the case of completing the update of the first function list, synchronizing the first function list to the second terminal to instruct the second terminal to determine the first function list as the function list of the second terminal.
6. The method according to claim 3, characterized in that, the method further includes: In response to successfully establishing a communication connection with any second terminal, send the function identifier of the first terminal to the second terminal, and the second terminal adds the function identifier of the first terminal to the second function list to update the second function list. The second function list is the function list of the second terminal, and the second function list records the function identifiers of the second terminal. The second terminal is further configured to synchronize the second function list to the first terminal when the update of the second function list is completed; In response to receiving the second function list synchronized by the second terminal, determine the second function list as the function list of the first terminal.
7. The method according to claim 3, wherein, the method further includes: When disconnecting the communication connection with any second terminal, delete the function identifier of the second terminal from the function list of the first terminal.
8. The method according to claim 1, wherein, the forwarding the voice command to at least one second terminal when not having the target function includes: When not having the target function, send the voice command to multiple second terminals, and each of the multiple second terminals determines whether it has the target function; When receiving the notification information returned by any second terminal within a preset time, play a second prompt message. The notification information is used to indicate that the second terminal has the target function, and the second prompt message is used to prompt the second terminal to execute the voice command.
9. The method according to claim 8, wherein, the method further includes: When not receiving the notification information returned by any second terminal within the preset time, play a third prompt message. The third prompt message is used to prompt that the voice command cannot be executed.
10. The method according to claim 1, wherein, the determining whether having the target function indicated by the voice command includes: When the voice command indicates multiple target functions, query the priority of each target function. The priority is positively correlated with the priority degree of the target function being realized; Retain the target function with the highest priority and determine whether having the target function with the highest priority.
11. The method according to claim 1, wherein, the determining whether having the target function indicated by the voice command includes: When the voice command indicates multiple target functions, query the priority of each target function. The priority is positively correlated with the priority degree of the target function being realized; Determine whether having the multiple target functions in turn in the order from high to low of the priority.
12. The method according to claim 1, wherein, the method further includes: When having the target function, execute the voice command; Play a fourth prompt message. The fourth prompt message is used to prompt the execution result of the voice command.
13. A voice interaction device, wherein, the device includes: A parsing module, configured to parse the voice input signal in response to receiving the voice input signal, and obtain a voice command indicated by the voice input signal; A first determination module, configured to determine whether there is a target function indicated by the voice command; A forwarding module, configured to forward the voice command to at least one second terminal to instruct the second terminal to execute the voice command when the target function is not available, where the second terminal is a terminal that has established a communication connection with the first terminal.
14. A terminal, characterized in that, the terminal includes a processor and a memory; the memory stores at least one program code, and the at least one program code is used to be executed by the processor to implement the voice interaction method according to any one of claims 1 to 12.
15. A computer-readable storage medium, characterized in that, the storage medium stores at least one program code, and the at least one program code is used to be executed by a processor to implement the voice interaction method according to any one of claims 1 to 12.
16. A computer program product, including a computer program, characterized in that, the computer program product stores at least one program code, and the at least one program code is used to be executed by a processor to implement the voice interaction method according to any one of claims 1 to 12.