Patent Abstract:
A method of controlling an electronic device by voice of user includes establishing a central control tree for the electronic device. User voice is obtained and deciphered and is recognized if content of voice is in accordance with textual commands stored in device. Device may also speak to user offering options that user may vocally select an confirm. Execution of operations to the electronic device is controlled according to the central control tree based upon the recognized voice content.

Full Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application claims priority to Chinese Patent Application No. 201610200324.9 filed on Apr. 5, 2016, the contents of which are incorporated by reference herein. This application is related to a commonly-assigned application entitled, “SMART CAP AND VOICE CONTROLLING METHOD”, filed ______ (Atty. Docket No. US59860). 
       FIELD 
       [0002]    The subject matter herein generally relates to controlling technology, and particularly to an electronic device and a method for controlling the electronic device using voices. 
       BACKGROUND 
       [0003]    Generally, when a user uses an electronic device such as a mobile phone, or a smart watch, the user needs to operate the electronic device manually. However, this kind of operating method is not suitable for all users. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0004]    Many aspects of the disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily drawn to scale, the emphasis instead being placed upon clearly illustrating the principles of the disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views. 
           [0005]      FIG. 1  is a block diagram of one embodiment of an electronic device including a voice controlling system. 
           [0006]      FIG. 2  is a block diagram of one embodiment of modules of the voice controlling system of  FIG. 1 . 
           [0007]      FIG. 3  illustrates an example of establishing a single control tree for an application of the electronic device of  FIG. 1 . 
           [0008]      FIG. 4  illustrates an example of establishing a central control tree for the electronic device of  FIG. 1 . 
           [0009]      FIG. 5  illustrates a flowchart of one embodiment of a method for controlling the electronic device of  FIG. 1  using voice. 
       
    
    
     DETAILED DESCRIPTION 
       [0010]    It will be appreciated that for simplicity and clarity of illustration, where appropriate, reference numerals have been repeated among the different figures to indicate corresponding or analogous elements. In addition, numerous specific details are set forth in order to provide a thorough understanding of the embodiments described herein. However, it will be understood by those of ordinary skill in the art that the embodiments described herein can be practiced without these specific details. In other instances, methods, procedures, and components have not been described in detail so as not to obscure the related relevant feature being described. Also, the description is not to be considered as limiting the scope of the embodiments described herein. The drawings are not necessarily to scale and the proportions of certain parts may be exaggerated to better illustrate details and features of the present disclosure. 
         [0011]    The present disclosure, including the accompanying drawings, is illustrated by way of examples and not by way of limitation. It should be noted that references to “an” or “one” embodiment in this disclosure are not necessarily to the same embodiment, and such references mean “at least one.” 
         [0012]    Furthermore, the term “module”, as used herein, refers to logic embodied in hardware or firmware, or to a collection of software instructions, written in a programming language, such as, Java, C, or assembly. One or more software instructions in the modules can be embedded in firmware, such as in an EPROM. The modules described herein can be implemented as either software and/or hardware modules and can be stored in any type of non-transitory computer-readable medium or other storage device. Some non-limiting examples of non-transitory computer-readable media include CDs, DVDs, BLU-RAY, flash memory, and hard disk drives. 
         [0013]      FIG. 1  is a block diagram of one embodiment of an electronic device. Depending on the embodiment, an electronic device  100  includes a voice controlling system  10 . The voice controlling system  10  is used to control the electronic device  100  according to voice of a user. The electronic device  100  further includes, but is not limited to, a voice inputting device  11 , an airflow sensor  12 , a display screen  13 , a storage device  14 , and at least one processor  15 . The electronic device  100  can be a smart phone, a smart watch, a personal digital assistant (PDA), a tablet computer, or any other suitable electronic device. 
         [0014]    In at least one embodiment, the voice inputting device  11  can be a microphone that is internally or externally connected to the electronic device  100 . In other embodiments, the voice inputting device  11  can also be an earpiece microphone that is configured on an earphone, which is connected to the electronic device  100 . 
         [0015]    In at least one embodiment, the airflow sensor  12  is used to monitor airflow of a mouth and/or a nose of the user. 
         [0016]    In at least one embodiment, when the airflow of the mouth or nose of the user is detected by the airflow sensor  12 , the voice controlling system  10  can obtain voice data of the user from the voice inputting device  11 , and control the electronic device  100  based upon the voice data of the user. In other embodiments, the electronic device  100  does not include the airflow sensor  12 , and the voice controlling system  10  can directly obtain voice data from the voice inputting device  11 . 
         [0017]    It should be noted that the purpose of the voice controlling system  10  obtaining the voice data when the airflow is detected is for avoiding mistaken instructions. For example, when the airflow of the mouth and nose of the user is not taken into consideration, the voice controlling system  100  can directly obtain the voice data from the voice inputting device  11 . If the voice data is inputted by a person around the electronic device  100  who is not the user, then the electronic device  100  is likely to be mistakenly controlled by the person that is around the electronic device  100 . In other words, the voice controlling system  10  obtains the voice data when the airflow is detected can render the electronic device  100  being controlled more accurately. 
         [0018]    In at least one embodiment, the display screen  13  can be a normal screen or a touch screen that is configured with a function of touch input. 
         [0019]    In at least one embodiment, the storage device  14  can be an internal storage device, such as a flash memory, a random access memory (RAM) for temporary storage of information, and/or a read-only memory (ROM) for permanent storage of information. The storage device  14  can also be an external storage device, such as an external hard disk, a storage card, or a data storage medium. In at least one embodiment, the storage device  14  stores a number of applications of the electronic device  100 . The number of applications may include, but is not limited to, a telephone application, a music application, a power management application, and a short messaging service (SMS) application. 
         [0020]    In at least one embodiment, the at least one processor  15  can be a central processing unit (CPU), a microprocessor, or other data processor chip that performs functions of the electronic device  100 . 
         [0021]      FIG. 2  shows one embodiment of modules of the voice controlling system  10 . In at least one embodiment, the voice controlling system  10  can include an establishing module  101 , an obtaining module  102 , a recognizing module  103 , and a control module  104 . The modules  101 - 104  can include computerized codes in the form of one or more programs, which are stored in the storage device  14 , and are executed by the at least one processor  15  of the electronic device  100 . 
         [0022]    In at least one embodiment, the establishing module  101  can establish a central control tree for the electronic device  100 . 
         [0023]    In at least one embodiment, the establishing module  101  can establish a single control tree for each of the number of applications of the electronic device  100 , to obtain a number of single control trees. The establishing module  101  can further establish the central control tree by merging the number of single control trees according to a tree structure. 
         [0024]    In at least one embodiment, a single control tree can be defined to be a rule used for controlling an application of the electronic device  100 . Similarly, the central control tree can be defined to be a rule used for controlling operations performed by the electronic device  100 . The rules can be set according to the tree structure that may be defined by a trunk of a tree, one or more branches of the trunk, and one or more leaves of each of the one or more branches. 
         [0025]    In at least one embodiment, the establishing module  101  establishes the number of single control trees according to the following four steps. 
         [0026]    First, the establishing module  101  sets first text information corresponding to a first function of the electronic device  100 . The establishing module  101  creates a root node of a single control tree, and establishes a first relationship between the root node and the first text information. 
         [0027]    In at least one embodiment, the first function includes, but is not limited to, a function of powering off the electronic device  100 , a function of rebooting the electronic device  100 , a function of locking the electronic device  100 , a function of controlling the electronic device  100  to enter a sleep state, and the like. In other embodiments, the first function can be executed after a predetermined time period such as 5 minutes. 
         [0028]    In at least one embodiment, the first text information can be information describing the first function. For example, when the first function is power off the electronic device  100 , the first text information can be such as “power off the electronic device”. In at least one embodiment, the establishing module  101  can set the first text function according to user&#39;s requirement. For example, the establishing module  101  can set the first text function in response to user&#39;s input through the display screen  13 . 
         [0029]    In at least one embodiment, the establishing module  101  can provide the user a setting interface for setting the first function and the corresponding first text information. 
         [0030]    For example, on the setting interface, the user can set the first function including locking the display screen  13  of the electronic device  100 . The user can further set the first text information including text “lock display screen”. 
         [0031]    Second, the establishing module  101  can set second text information corresponding to one of the number of applications. The establishing module  101  can further create a father node of the single control tree, and establish a second relationship between the second text information and the father node. 
         [0032]    In at least one embodiment, the establishing module  101  can display icons of the number of applications on the setting interface when the first relationship is established. The establishing module  101  can set one of the number of applications is selected by the user in response to touch input received from the display screen  13 . 
         [0033]    In at least one embodiment, the establishing module  101  can set a name of the selected application to be text information corresponding to the selected application. For example, when the user selects the telephone application, the establishing module  101  can set “telephone” as the text information corresponding to the telephone application. 
         [0034]    Third, the establishing module  101  can set a number of function options of the one of the number of applications, and set third text information corresponding to each of the number of function options. The establishing module  101  can create a number of child nodes for the father node according to a number of the number of function options. In at least one embodiment, a quantity of the number of the child nodes equals the quantity of the number of function options. The establishing module  101  can further establish a third relationship between each of the number of child node and corresponding third text information. 
         [0035]    In at least one embodiment, when the second relationship is established, the establishing module  101  can display the number of function options on the setting interface, and determine the third text information corresponding to each of the number of function options, in response to user&#39;s input. In other embodiments, the establishing module  101  can determine a name of each of the number of function options to be the corresponding third text information. 
         [0036]    For example, it is assumed that the telephone application is selected by the user. When the second relationship is established, the establishing module  101  can display the number of function options of the telephone application on the setting interface. The number of functions options of the telephone application may include, but is not limited to, a first function option of making a call, a second function option of querying all received calls, a third function option of querying all answered calls, and a fourth function option of querying missed calls. The establishing module  101  can set “make call” as the text information corresponding to the first function option. Similarly, the establishing module  101  can set “query received calls” as the text information corresponding to the second function option, set “query answered calls” as the text information corresponding to the third function option, and set “query missed calls” as the text information corresponding to the fourth function option. 
         [0037]    Fourth, the establishing module  101  can establish a single control tree for each of other applications of the number of applications according to the above steps. Therefore, the establishing module  101  can obtain the number of single control trees, each of which corresponds to one of the number of the applications. 
         [0038]    In at least one embodiment, the establishing module  101  can further set a serial number for each node (i.e., the root node, the father node, the child nodes) of each of the number of single control trees. In other words, the root node, the father node, and each of the child nodes of each of the number of single control trees can have a serial number. 
         [0039]    In at least one embodiment, the establishing module  101  can set the serial number for the each node of each of the number of single control trees, according to an order of creating each of the number of single control trees. In at least one embodiment, the establishing module  101  can set the serial number of the root node of each of the number of single control trees to be a same number such as “0”. 
         [0040]    For example, it is assumed that the establishing module  101  establishes three single control trees for three applications of the electronic device  100 . The three applications include an application “A”, an application “B”, and an application “C”. As shown in  FIG. 3 , the establishing module  101  establishes a single control tree “A1” for the application “A”. The establishing module  101  further sets a serial number “0” for the root node of the single control tree “A1”, sets a serial number “1” for the father node of the single control tree “A1”, and respectively sets serial numbers “11”, “12”, “13” for three child nodes of the single control tree “A1”. Similarly, the establishing module  101  establishes a single control tree “B1” for the application “B”. The establishing module  101  further sets the serial number “0” for the root node of the single control tree “B1”, sets a serial number “2” for the father node of the single control tree “B1”, and respectively sets serial numbers “21”, “22”, “23” for three child nodes of the single control tree “B1”. Similarly, the establishing module  101  establishes a single control tree “C1” for the application “C”. The establishing module  101  further sets the serial number “0” for the root node of the single control tree “C1”, sets a serial number “3” for the father node of the single control tree “C1”, and respectively sets serial numbers “31”, “32”, “33” for three child nodes of the single control tree “C1”. 
         [0041]    In at least one embodiment, when the establishing module  101  establishes the central control tree according to the tree structure, the establishing module  101  first merges all the root nodes of the number of single control trees to be one root node, and then merges each father node and merges each child node of each of the number of single control trees on one single control tree to obtain a merged control tree. The establishing module  101  can set the merged control tree to be the central control tree. 
         [0042]    In at least one embodiment, the establishing module  101  can establish the central control tree by merging the number of single control trees according to the tree structure based upon the serial number of each node of each of the number of single control trees. In at least one embodiment, the establishing module  101  can merge the nodes having the same serial number to be one node. For example, the establishing module  101  can merge the root nodes having the same serial number “0” to be one root node of the central control tree. The establishing module  101  can further merge the father node and child nodes of each of the number of single control trees not having the same serial numbers on the central control tree. 
         [0043]    For example, as shown in  FIG. 4 , the establishing module  101  can merge the single control trees “A1”, “B1”, and “C1” to be a central control tree  200  according to the tree structure, based upon the serial number of each node of each of the three single control trees “A1”, “B1”, and “C1”. 
         [0044]    In at least one embodiment, the establishing module  101  can display the central control tree on the display screen  13  in response to user&#39;s input, and adjust the central control tree in response to user&#39;s operations to the central control tree. 
         [0045]    In at least one embodiment, the establishing module  101  can delete a single control tree corresponding to one of the number of applications from the central control tree. The establishing module  101  can also add to the central control tree a single control tree corresponding to a new application. The new application can be an application of the electronic device  100  of which a single control tree has not been added to the central control tree. For example, the new application may be a new application that is recently installed in the electronic device  100 . 
         [0046]    In at least one embodiment, when a first signal is received, the establishing module  101  can delete from the central control tree the single control tree corresponding to one of the number of applications. When a second signal is received, the establishing module  101  can add to the central control tree the single control tree corresponding to the new application. In at least one embodiment, the first signal is generated when the user touches a father node of a single control tree corresponding to one of the number of applications, for a predetermined time period (e.g., 5 seconds). The second signal is generated when the user double clicks the central control tree. 
         [0047]    For one example, when the user touches the father node “2” corresponding to application “B” on the central control tree  200  for the predetermined time period, the establishing module  101  can issue a prompt for user to select whether a voice controlling method corresponding to the application “B” is to be deleted. If the voice controlling method corresponding to the application “B” is determined to be deleted in response to user&#39;s input, the establishing module  101  can delete the father node and child nodes corresponding to the application “B” from the central control tree  200 . That is, the signal control tree “B1” corresponding to the application “B” is deleted from the central control tree  200 . 
         [0048]    For another example, when the user double clicks on the central control tree  200 , the establishing module  101  can display all applications of the electronic device  100  which have single control trees not added to the central control tree  200  on the display screen  13 . The establishing module  101  can determine which application is selected by the user, and set text information corresponding to the selected application and text information corresponding to each of function options of the selected application. The establishing module  101  can create a father node on the central control tree  200 , and establish a relationship between the father node and the text information corresponding to the selected application. The establishing module  101  can create a number of child notes for the father node according to the function options of the selected application. The establishing module  101  can further establish a relationship between each of the child nodes and the text information of each of the function options of the selected application. In at least one embodiment, the establishing module  101  can further set a serial number for the father node and each of the child nodes corresponding to the selected application. 
         [0049]    In at least one embodiment, when a single control tree of one of the number of applications is deleted from the central control tree, the establishing module  101  can correspondingly adjust the serial numbers of other applications of the number of applications on the central control tree. 
         [0050]    For example, when the single control tree corresponding to the application “B” is deleted from the central control tree  200 , the establishing module  101  can adjust the serial number of the father node corresponding to the application “C” by replacing “3” with “2”, and adjust the serial number of the child nodes corresponding to the application “C” by respectively replacing “31”, “32”, and “33” with “21”, “22”, and “23”. 
         [0051]    In at least one embodiment, the obtaining module  102  can obtain voice data. 
         [0052]    In at least one embodiment, the obtaining module  102  can obtain the voice data from the voice inputting device  11  when the airflow sensor  12  detects airflow of the mouth or nose of the user. 
         [0053]    It should be noted that the obtaining module  102  obtains the voice data when the airflow of the mouth or nose of the user is detected, is to avoid mistakenly obtaining voice data of people except the user who are around the electronic device  100 . In other words, more accurate voice data can be obtained if the obtaining module  102  obtains the voice data when the airflow of the mouth or nose of the user is detected. 
         [0054]    In other embodiments, the obtaining module  102  can directly obtain the voice data from the voice inputting device  11 . In other words, the obtaining module  102  may not require airflow of the mouth or nose of the user to be detected as a precondition for obtaining voice. The electronic device  100  may not include the airflow sensor  12 . 
         [0055]    In at least one embodiment, the voice inputting device  11  can be a microphone that is internally or externally connected to the electronic device  100 . In other embodiments, the voice inputting device  11  can also be an earpiece microphone that is configured on an earphone, which is connected to the electronic device  100 . 
         [0056]    In at least one embodiments, the obtaining module  102  can further de-noise noise in the obtained voice data to obtain de-noised voice data. 
         [0057]    In at least one embodiment, the obtaining module  102  can de-noise the noise in the obtained voice data using an anti-aliasing filter, a pre-emphasis filter, and/or an end point detector. 
         [0058]    In at least one embodiments, the recognizing module  103  can recognize the de-noised voice data to obtain recognized voice data. It should be noted that if the obtained voice data is not de-noised, the recognizing module  103  can also recognize the obtained voice data that is not de-noised. 
         [0059]    In at least one embodiment, the recognized voice data is obtained by converting the de-noised voice data to text information. In other words, the recognized voice data is the converted text information. In at least one embodiments, the recognizing module  103  can convert the de-noised voice data to the text information using a voice recognizing technology. 
         [0060]    In at least one embodiments, the controlling module  104  can control an operation to the electronic device  100  according to the central control tree based upon the recognized voice data. 
         [0061]    In at least one embodiment, the controlling module  104  can determine whether there is a node of the central control tree corresponding to the converted text information, by comparing the converted text information with the text information corresponding to each node of the central control tree. When the converted text information matches the text information corresponding one node of the central control tree, the controlling module  104  can determine the one node of the central control tree which corresponds to the converted text information, and obtain a determined node. The controlling module  104  can trigger a function corresponding to the determined node. 
         [0062]    In at least one embodiment, when the determined node is the root node of the central control tree, the controlling module  104  controls the electronic device  100  to execute a first function, such as power off the electronic device  100 , or boot the electronic device  100 , or lock the electronic device  100 , or control the electronic device  100  to enter a sleep state. 
         [0063]    In at least one embodiment, when the determined node is a father node of the central control tree, the controlling module  104  controls the electronic device  100  to run the application corresponding to the father node. 
         [0064]    For one example, when the determined node is the father node “1” of the central control tree, and the father node “1” corresponds to the telephone application, the controlling module  104  can control the electronic device  100  to run the telephone application. 
         [0065]    For another example, when the application corresponding to the father node is run, the controlling module  104  can further broadcast text information corresponding to each of the child nodes of the father node using voices. Then the user can know which function options are included in the application. The obtaining module  102  can further obtain current voice data. The recognizing module  103  can further convert the current voice data to current text information. The controlling module  104  can further determine a current child node corresponding to the current text information by comparing the current text information with the text information of each of the child nodes of the father node. The controlling module  104  can further trigger a function corresponding to the current child node. 
         [0066]    For example, when the telephone application of the electronic device is run, the controlling module  104  broadcasts the text information of the function options of the telephone application such as “make a call”, “query received calls”, “query answered calls”, and the “query missed calls” using voices. When the recognizing module  103  recognizes the text information of the current voice data obtained from the voice inputting device  11  is the “query missed calls”, the controlling module  104  controls the telephone application to list phone numbers of all missed calls, and display all the phone numbers on the display screen  13 . 
         [0067]    In at least one embodiment, when one application such as a music application of the electronic device  100  is run, if the electronic device  100  receives an incoming call from another electronic device, the controlling module  104  can broadcast the incoming call using voices, and determine whether to answer the incoming call or not according to voice data inputted by the user. 
         [0068]      FIG. 5  illustrates a flowchart which is presented in accordance with an example embodiment. The example method  500  is provided by way of example, as there are a variety of ways to carry out the method. The method  500  described below can be carried out using the configurations illustrated in  FIG. 1 , for example, and various elements of these figures are referenced in explaining example method  500 . Each block shown in  FIG. 5  represents one or more processes, methods, or subroutines, carried out in the exemplary method  500 . Additionally, the illustrated order of blocks is by example only and the order of the blocks can be changed according to the present disclosure. The exemplary method  500  can begin at block  51 . Depending on the embodiment, additional steps can be added, others removed, and the ordering of the steps can be changed. 
         [0069]    At block  51 , the establishing module  101  can establish a central control tree for the electronic device  100 . 
         [0070]    In at least one embodiment, the establishing module  101  can establish a single control tree for each of the number of applications of the electronic device  100 , to obtain a number of single control trees. The establishing module  101  can further establish the central control tree by merging the number of single control trees according to a tree structure. 
         [0071]    In at least one embodiment, a single control tree can be defined to be a rule used for controlling an application of the electronic device  100 . Similarly, the central control tree can be defined to be a rule used for controlling operations performed by the electronic device  100 . The rules can be set according to the tree structure that may be defined by a trunk of a tree, one or more branches of the trunk, and one or more leaves of each of the one or more branches. 
         [0072]    In at least one embodiment, the establishing module  101  establishes the number of single control trees according to the following four steps. 
         [0073]    First, the establishing module  101  sets first text information corresponding to a first function of the electronic device  100 . The establishing module  101  creates a root node of a single control tree, and establishes a first relationship between the root node and the first text information. 
         [0074]    In at least one embodiment, the first function includes, but is not limited to, a function of powering off the electronic device  100 , a function of rebooting the electronic device  100 , a function of locking the electronic device  100 , a function of controlling the electronic device  100  to enter a sleep state, and the like. In other embodiments, the first function can be executed after a predetermined time period such as 5 minutes. 
         [0075]    In at least one embodiment, the first text information can be information describing the first function. For example, when the first function is power off the electronic device  100 , the first text information can be such as “power off the electronic device”. In at least one embodiment, the establishing module  101  can set the first text function according to user&#39;s requirement. For example, the establishing module  101  can set the first text function in response to user&#39;s input through the display screen  13 . 
         [0076]    In at least one embodiment, the establishing module  101  can provide the user a setting interface for setting the first function and the corresponding first text information. 
         [0077]    For example, on the setting interface, the user can set the first function including locking the display screen  13  of the electronic device  100 . The user can further set the first text information including text “lock display screen”. 
         [0078]    Second, the establishing module  101  can set second text information corresponding to one of the number of applications. The establishing module  101  can further create a father node of the single control tree, and establish a second relationship between the second text information and the father node. 
         [0079]    In at least one embodiment, the establishing module  101  can display icons of the number of applications on the setting interface when the first relationship is established. The establishing module  101  can set one of the number of applications is selected by the user in response to touch input received from the display screen  13 . 
         [0080]    In at least one embodiment, the establishing module  101  can set a name of the selected application to be text information corresponding to the selected application. For example, when the user selects the telephone application, the establishing module  101  can set “telephone” as the text information corresponding to the telephone application. 
         [0081]    Third, the establishing module  101  can set a number of function options of the one of the number of applications, and set third text information corresponding to each of the number of function options. The establishing module  101  can create a number of child nodes for the father node according to a number of the number of function options. In at least one embodiment, a quantity of the number of the child nodes equals the quantity of the number of function options. The establishing module  101  can further establish a third relationship between each of the number of child node and corresponding third text information. 
         [0082]    In at least one embodiment, when the second relationship is established, the establishing module  101  can display the number of function options on the setting interface, and determine the third text information corresponding to each of the number of function options, in response to user&#39;s input. In other embodiments, the establishing module  101  can determine a name of each of the number of function options to be the corresponding third text information. 
         [0083]    For example, it is assumed that the telephone application is selected by the user. When the second relationship is established, the establishing module  101  can display the number of function options of the telephone application on the setting interface. The number of functions options of the telephone application may include, but is not limited to, a first function option of making a call, a second function option of querying all received calls, a third function option of querying all answered calls, and a fourth function option of querying missed calls. The establishing module  101  can set “make call” as the text information corresponding to the first function option. Similarly, the establishing module  101  can set “query received calls” as the text information corresponding to the second function option, set “query answered calls” as the text information corresponding to the third function option, and set “query missed calls” as the text information corresponding to the fourth function option. 
         [0084]    Fourth, the establishing module  101  can establish a single control tree for each of other applications of the number of applications according to the above steps. Therefore, the establishing module  101  can obtain the number of single control trees, each of which corresponds to one of the number of the applications. 
         [0085]    In at least one embodiment, the establishing module  101  can further set a serial number for each node (i.e., the root node, the father node, the child nodes) of each of the number of single control trees. In other words, the root node, the father node, and each of the child nodes of each of the number of single control trees can have a serial number. 
         [0086]    In at least one embodiment, the establishing module  101  can set the serial number for the each node of each of the number of single control trees, according to an order of creating each of the number of single control trees. In at least one embodiment, the establishing module  101  can set the serial number of the root node of each of the number of single control trees to be a same number such as “0”. 
         [0087]    For example, it is assumed that the establishing module  101  establishes three single control trees for three applications of the electronic device  100 . The three applications include an application “A”, an application “B”, and an application “C”. As shown in  FIG. 3 , the establishing module  101  establishes a single control tree “A1” for the application “A”. The establishing module  101  further sets a serial number “0” for the root node of the single control tree “A1”, sets a serial number “1” for the father node of the single control tree “A1”, and respectively sets serial numbers “11”, “12”, “13” for three child nodes of the single control tree “A1”. Similarly, the establishing module  101  establishes a single control tree “B1” for the application “B”. The establishing module  101  further sets the serial number “0” for the root node of the single control tree “B1”, sets a serial number “2” for the father node of the single control tree “B1”, and respectively sets serial numbers “21”, “22”, “23” for three child nodes of the single control tree “B1”. Similarly, the establishing module  101  establishes a single control tree “C1” for the application “C”. The establishing module  101  further sets the serial number “0” for the root node of the single control tree “C1”, sets a serial number “3” for the father node of the single control tree “C1”, and respectively sets serial numbers “31”, “32”, “33” for three child nodes of the single control tree “C1”. 
         [0088]    In at least one embodiment, when the establishing module  101  establishes the central control tree according to the tree structure, the establishing module  101  first merges all the root nodes of the number of single control trees to be one root node, and then merges each father node and merges each child node of each of the number of single control trees on one single control tree to obtain a merged control tree. The establishing module  101  can set the merged control tree to be the central control tree. 
         [0089]    In at least one embodiment, the establishing module  101  can establish the central control tree by merging the number of single control trees according to the tree structure based upon the serial number of each node of each of the number of single control trees. In at least one embodiment, the establishing module  101  can merge the nodes having the same serial number to be one node. For example, the establishing module  101  can merge the root nodes having the same serial number “0” to be one root node of the central control tree. The establishing module  101  can further merge the father node and child nodes of each of the number of single control trees not having the same serial numbers on the central control tree. 
         [0090]    For example, as shown in  FIG. 4 , the establishing module  101  can merge the single control trees “A1”, “B1”, and “C1” to be a central control tree  200  according to the tree structure, based upon the serial number of each node of each of the three single control trees “A1”, “B1”, and “C1”. 
         [0091]    In at least one embodiment, the establishing module  101  can display the central control tree on the display screen  13  in response to user&#39;s input, and adjust the central control tree in response to user&#39;s operations to the central control tree. 
         [0092]    In at least one embodiment, the establishing module  101  can delete a single control tree corresponding to one of the number of applications from the central control tree. The establishing module  101  can also add to the central control tree a single control tree corresponding to a new application. The new application can be an application of the electronic device  100  of which a single control tree has not been added to the central control tree. For example, the new application may be a new application that is recently installed in the electronic device  100 . 
         [0093]    In at least one embodiment, when a first signal is received, the establishing module  101  can delete from the central control tree the single control tree corresponding to one of the number of applications. When a second signal is received, the establishing module  101  can add to the central control tree the single control tree corresponding to the new application. In at least one embodiment, the first signal is generated when the user touches a father node of a single control tree corresponding to one of the number of applications, for a predetermined time period (e.g., 5 seconds). The second signal is generated when the user double clicks the central control tree. 
         [0094]    For one example, when the user touches the father node “2” corresponding to application “B” on the central control tree  200  for the predetermined time period, the establishing module  101  can issue a prompt for user to select whether a voice controlling method corresponding to the application “B” is to be deleted. If the voice controlling method corresponding to the application “B” is determined to be deleted in response to user&#39;s input, the establishing module  101  can delete the father node and child nodes corresponding to the application “B” from the central control tree  200 . That is, the signal control tree “B1” corresponding to the application “B” is deleted from the central control tree  200 . 
         [0095]    For another example, when the user double clicks on the central control tree  200 , the establishing module  101  can display all applications of the electronic device  100  which have single control trees not added to the central control tree  200  on the display screen  13 . The establishing module  101  can determine which application is selected by the user, and set text information corresponding to the selected application and text information corresponding to each of function options of the selected application. The establishing module  101  can create a father node on the central control tree  200 , and establish a relationship between the father node and the text information corresponding to the selected application. The establishing module  101  can create a number of child notes for the father node according to the function options of the selected application. The establishing module  101  can further establish a relationship between each of the child nodes and the text information of each of the function options of the selected application. In at least one embodiment, the establishing module  101  can further set a serial number for the father node and each of the child nodes corresponding to the selected application. 
         [0096]    In at least one embodiment, when a single control tree of one of the number of applications is deleted from the central control tree, the establishing module  101  can correspondingly adjust the serial numbers of other applications of the number of applications on the central control tree. 
         [0097]    For example, when the single control tree corresponding to the application “B” is deleted from the central control tree  200 , the establishing module  101  can adjust the serial number of the father node corresponding to the application “C” by replacing “3” with “2”, and adjust the serial number of the child nodes corresponding to the application “C” by respectively replacing “31”, “32”, and “33” with “21”, “22”, and “23”. 
         [0098]    At block  52 , the obtaining module  102  can obtain voice data. 
         [0099]    In at least one embodiment, the obtaining module  102  can obtain the voice data from the voice inputting device  11  when the airflow sensor  12  detects airflow of the mouth or nose of the user. 
         [0100]    It should be noted that the obtaining module  102  obtains the voice data when the airflow of the mouth or nose of the user is detected, is to avoid mistakenly obtaining voice data of people except the user who are around the electronic device  100 . In other words, more accurate voice data can be obtained if the obtaining module  102  obtains the voice data when the airflow of the mouth or nose of the user is detected. 
         [0101]    In other embodiments, the obtaining module  102  can directly obtain the voice data from the voice inputting device  11 . In other words, the obtaining module  102  may not require airflow of the mouth or nose of the user to be detected as a precondition for obtaining voice. The electronic device  100  may not include the airflow sensor  12 . 
         [0102]    In at least one embodiment, the voice inputting device  11  can be a microphone that is internally or externally connected to the electronic device  100 . In other embodiments, the voice inputting device  11  can also be an earpiece microphone that is configured on an earphone, which is connected to the electronic device  100 . 
         [0103]    In at least one embodiments, the obtaining module  102  can further de-noise noise in the obtained voice data to obtain de-noised voice data. 
         [0104]    In at least one embodiment, the obtaining module  102  can de-noise the noise in the obtained voice data using an anti-aliasing filter, a pre-emphasis filter, and/or an end point detector. 
         [0105]    At block  53 , the recognizing module  103  can recognize the de-noised voice data to obtain recognized voice data. It should be noted that if the obtained voice data is not de-noised, the recognizing module  103  can also recognize the obtained voice data that is not de-noised. 
         [0106]    In at least one embodiment, the recognized voice data is obtained by converting the de-noised voice data to text information. In other words, the recognized voice data is the converted text information. In at least one embodiments, the recognizing module  103  can convert the de-noised voice data to the text information using a voice recognizing technology. 
         [0107]    At block  54 , the controlling module  104  can control an operation to the electronic device  100  according to the central control tree based upon the recognized voice data. 
         [0108]    In at least one embodiment, the controlling module  104  can determine whether there is a node of the central control tree corresponding to the converted text information, by comparing the converted text information with the text information corresponding to each node of the central control tree. When the converted text information matches the text information corresponding one node of the central control tree, the controlling module  104  can determine the one node of the central control tree which corresponds to the converted text information, and obtain a determined node. The controlling module  104  can trigger a function corresponding to the determined node. 
         [0109]    In at least one embodiment, when the determined node is the root node of the central control tree, the controlling module  104  controls the electronic device  100  to execute a first function, such as power off the electronic device  100 , or boot the electronic device  100 , or lock the electronic device  100 , or control the electronic device  100  to enter a sleep state. 
         [0110]    In at least one embodiment, when the determined node is a father node of the central control tree, the controlling module  104  controls the electronic device  100  to run the application corresponding to the father node. 
         [0111]    For one example, when the determined node is the father node “1” of the central control tree, and the father node “1” corresponds to the telephone application, the controlling module  104  can control the electronic device  100  to run the telephone application. 
         [0112]    For another example, when the application corresponding to the father node is run, the controlling module  104  can further broadcast text information corresponding to each of the child nodes of the father node using voices. Then the user can know which function options are included in the application. The obtaining module  102  can further obtain current voice data. The recognizing module  103  can further convert the current voice data to current text information. The controlling module  104  can further determine a current child node corresponding to the current text information by comparing the current text information with the text information of each of the child nodes of the father node. The controlling module  104  can further trigger a function corresponding to the current child node. 
         [0113]    For example, when the telephone application of the electronic device is run, the controlling module  104  broadcasts the text information of the function options of the telephone application such as “make a call”, “query received calls”, “query answered calls”, and the “query missed calls” using voices. When the recognizing module  103  recognizes the text information of the current voice data obtained from the voice inputting device  11  is the “query missed calls”, the controlling module  104  controls the telephone application to list phone numbers of all missed calls, and display all the phone numbers on the display screen  13 . 
         [0114]    In at least one embodiment, when one application such as a music application of the electronic device  100  is run, if the electronic device  100  receives an incoming call from another electronic device, the controlling module  104  can broadcast the incoming call using voices, and determine whether to answer the incoming call or not according to voice data inputted by the user. 
         [0115]    It should be emphasized that the above-described embodiments of the present disclosure, including any particular embodiments, are merely possible examples of implementations, set forth for a clear understanding of the principles of the disclosure. Many variations and modifications can be made to the above-described embodiment(s) of the disclosure without departing substantially from the spirit and principles of the disclosure. All such modifications and variations are intended to be included herein within the scope of this disclosure and protected by the following claims.

Technology Classification (CPC): 6