EP3396665B1 - Voice data processing method and electronic device supporting the same - Google Patents
Voice data processing method and electronic device supporting the same Download PDFInfo
- Publication number
- EP3396665B1 EP3396665B1 EP18169657.6A EP18169657A EP3396665B1 EP 3396665 B1 EP3396665 B1 EP 3396665B1 EP 18169657 A EP18169657 A EP 18169657A EP 3396665 B1 EP3396665 B1 EP 3396665B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- task
- electronic device
- tasks
- execution
- sequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims description 14
- 230000006870 function Effects 0.000 claims description 125
- 238000004891 communication Methods 0.000 claims description 106
- 238000000034 method Methods 0.000 claims description 66
- 230000003111 delayed effect Effects 0.000 description 189
- 239000003795 chemical substances by application Substances 0.000 description 62
- 238000012545 processing Methods 0.000 description 31
- 230000008569 process Effects 0.000 description 21
- 238000005516 engineering process Methods 0.000 description 14
- 230000004044 response Effects 0.000 description 14
- 230000008859 change Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 230000001965 increasing effect Effects 0.000 description 7
- 238000013473 artificial intelligence Methods 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 6
- 238000011017 operating method Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 230000010267 cellular communication Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 230000000638 stimulation Effects 0.000 description 3
- WQZGKKKJIJFFOK-GASJEMHNSA-N Glucose Natural products OC[C@H]1OC(O)[C@H](O)[C@@H](O)[C@@H]1O WQZGKKKJIJFFOK-GASJEMHNSA-N 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 239000008280 blood Substances 0.000 description 2
- 210000004369 blood Anatomy 0.000 description 2
- 239000008103 glucose Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000002567 electromyography Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003155 kinesthetic effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
- 229910052724 xenon Inorganic materials 0.000 description 1
- FHNFHKCVQCLJFQ-UHFFFAOYSA-N xenon atom Chemical compound [Xe] FHNFHKCVQCLJFQ-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/038—Indexing scheme relating to G06F3/038
- G06F2203/0381—Multimodal input, i.e. interface arrangements enabling the user to issue commands by simultaneous use of input devices of different nature, e.g. voice plus gesture on digitizer
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1822—Parsing for meaning understanding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
- G10L15/30—Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Definitions
- the present disclosure relates to a technology for voice data processing, and more particularly, to voice data processing in an artificial intelligence (AI) system utilizing a machine learning algorithm and an application thereof.
- AI artificial intelligence
- Electronic devices such as smartphones, tablets, and computers are increasingly commonplace. Additionally, electronic devices include an ever-increasing number of functions and applications. With the increasing number of functions, it becomes more difficult for the user to select a desired function or application from the available applications or functions.
- the patent application EP3010015 discloses an implementation of a spoken interaction processing with an electronic device executing an application and communicating with an external server.
- the patent application US2016/0259623A1 discloses a method processing a user request with a predefined action of a set of predefined actions.
- the international application WO2016/111881A1 discloses techniques for executing headlessly a task of an application in the background of a digital personal assistant.
- the application EP0685791A2 discloses a computer system controlling the priorities of the execution of tasks requested by a user with a user tolerance level indicative of a delay the user is willing to tolerate before a task is assigned to a background manager.
- the application US2011/0202924A1 discloses techniques for asynchronous task execution. If a timeout for a low priority task expires without completing both the low priority task and a relatively higher priority task, then the low priority task may use the relatively higher priority task to extend execution time of the low priority task in order to allow additional time to perform the low priority task.
- the invention provides an electronic device according to claim 1 and a voice data processing method according to claim 10.
- An artificial intelligence system (or integrated intelligent system) can include a system that learns and judges by itself and improves a recognition rate as it is used.
- An artificial intelligence technology may include a machine learning (deep learning) technologies using an algorithm that classifies or learns the characteristics of input data by themselves, and an element technology that simulate, for example, recognition, determination, and the like, by using a machine learning algorithm.
- machine learning deep learning
- the element technology may include at least one of a language understanding technology that recognizes spoken language or written character, a visual understanding technology that recognizes objects like vision, an inference or prediction technology that determines information to logically infer and predict the determined information, a knowledge expression technology that processes experience information as knowledge data, and an operation control technology that controls autonomous driving of the vehicle and the motion of the robot.
- a language understanding technology that recognizes spoken language or written character
- a visual understanding technology that recognizes objects like vision
- an inference or prediction technology that determines information to logically infer and predict the determined information
- a knowledge expression technology that processes experience information as knowledge data
- an operation control technology that controls autonomous driving of the vehicle and the motion of the robot.
- the linguistic understanding among the above-described element technologies includes natural language processing, machine translation, dialogue system, query response, speech recognition/synthesis, and the like as a technology to recognize and apply/process human language/characters.
- an electronic device equipped with an artificial intelligence system may launch an intelligence app such as a speech recognition app (or application) and may enter a standby state for receiving a user's voice input through the intelligence app.
- the electronic device may display the user interface (UI) of the intelligence app on the screen of a display.
- the electronic device may receive the user's voice input through the microphone in the standby state. In this case, the electronic device may transmit voice data corresponding to the received voice input to an intelligence server.
- the intelligence server may convert the received voice data to text data and may determine a sequence of tasks including information about tasks (or operations) to perform the function of at least one application included in the electronic device or information about a parameter required to perform the tasks, based on the converted text data. Afterwards, the electronic device may receive the sequence of tasks from the intelligence server and may perform the tasks depending on the sequence of tasks.
- an electronic device that receives the sequence of tasks from an intelligence server to process the sequence of tasks, may wait for the execution completion of the corresponding task or may cancel the processing for the pass rule by the time-out set to the task.
- an aspect of the present disclosure is to provide a voice data processing method that increases the time-out time of the delayed task and switches the delayed task to the task in background in the case where the delayed task is present while tasks are performed depending on the sequence of tasks received from the intelligence server, and an electronic device supporting the same.
- an electronic device includes a display, a microphone configured to receive a voice input, a communication circuit configured to communicate with an external electronic device, a memory configured to store at least one application; and one or more processor(s) electrically connected to the microphone, the communication circuit, the display, and the memory, wherein the processor is configured to obtain voice data corresponding to the user's voice received through the microphone, transmit the voice data to the external electronic device through the communication circuit, receive a sequence of tasks for performing a first function of the at least one application, which is determined based on the voice data, from the external
- a voice data processing method of an electronic device comprises obtaining voice data corresponding to voice input received through a microphone; transmitting the voice data to an external electronic device through a communication circuit; receiving via the communication circuit, a sequence of tasks for performing a first function of at least one application, determined based on the voice data, from the external electronic device; and while performing the tasks based on the sequence of tasks, when it is determined that execution of a first task is not completed within a specified time, extending a time-out time of the first task and switching the execution of the first task to the execution in background.
- an electronic device comprising: a housing; a touch screen display disposed inside the housing and exposed through a first portion of the housing; a microphone disposed inside the housing and exposed through a second portion of the housing; at least one speaker disposed inside the housing and exposed through a third portion of the housing; a wireless communication circuit disposed inside the housing; one or more processor(s) disposed inside the housing and electrically connected to the touch screen display, the microphone, the speaker, and the wireless communication circuit; and a memory disposed inside the housing and electrically connected to the processor, wherein the memory stores a first application including a first user interface, and wherein the memory stores instructions that, when executed, cause the processor to: receive a user input including a request for performing a task by using the first application, through at least one of the touch screen display or the microphone; transmit data associated with the user input to an external server through the wireless communication circuit; receive a response including information about sequence of states of the electronic device for performing the task, from the external server via the wireless communication circuit,
- the time-out time of the delayed task may increase, and thus, it is possible to prevent the processing on the pass rule from being canceled.
- the delayed task may be switched to the task in background, thereby increasing the usability of the electronic device by providing a method of performing another function that another task or an electronic device supports.
- FIG. 1 is a view illustrating an integrated intelligent system, according to various embodiments of the present disclosure.
- an integrated intelligent system 10 may include a user terminal 100, an intelligence server 200, a personal information server 300, or a suggestion server 400.
- the user terminal 100 may provide a service necessary for a user through an app (or an application program) (e.g., an alarm app, a message app, a picture (gallery) app, or the like) stored in the user terminal 100.
- an app or an application program
- the user terminal 100 may execute and operate another app through an intelligence app (or a speech recognition app) stored in the user terminal 100.
- a user input for launching and operating the other app through the intelligence app of the user terminal 100 may be received.
- the user input may be received through a physical button, a touch pad, a voice input, a remote input, or the like.
- various types of terminal devices (or an electronic device), which are connected with Internet, such as a mobile phone, a smartphone, personal digital assistant (PDA), a notebook computer, and the like may correspond to the user terminal 100.
- PDA personal digital assistant
- the user terminal 100 may receive user utterance as a user input.
- the user terminal 100 may receive the user utterance and may generate an instruction for operating an app based on the user utterance. As such, the user terminal 100 may operate the app by using the instruction.
- the intelligence server 200 may receive a voice input of a user from the user terminal 100 over a communication network and may change the voice input to text data.
- the intelligence server 200 may generate (or select) a sequence of tasks based on the text data.
- the sequence of tasks may include information about a task (or an operation, function, or an action) for performing the function of an app or information about a parameter necessary to perform the task.
- the sequence of tasks may include the order of the task of the app.
- the user terminal 100 may receive the sequence of tasks, may select an app depending on the sequence of tasks, and may execute a task included in the sequence of tasks in the selected app.
- the user terminal 100 may execute the task and may display a screen corresponding to a state of the user terminal 100, which executes the task, in a display.
- the user terminal 100 may execute the task and may not display the result obtained by executing the task in the display.
- the user terminal 100 may execute a plurality of tasks and may display only the result of a part of the plurality of tasks in the display.
- the user terminal 100 may display only the result, which is obtained by executing the last task, in the display.
- the user terminal 100 may receive the user input to display the result obtained by executing the task in the display.
- the personal information server 300 may include a database in which user information is stored.
- the personal information server 300 may receive the user information (e.g., context information, information about execution of an app, or the like) from the user terminal 100 and may store the user information in the database.
- the intelligence server 200 may be used to receive the user information from the personal information server 300 over the communication network and to generate a sequence of tasks associated with the user input.
- the user terminal 100 may receive the user information from the personal information server 300 over the communication network, and may use the user information as information for managing the database.
- the suggestion server 400 may include a database storing information about a function in a terminal, introduction of an application, or a function to be provided.
- the suggestion server 400 may include a database associated with a function that a user utilizes by receiving the user information of the user terminal 100 from the personal information server 300.
- the user terminal 100 may receive information about the function to be provided from the suggestion server 400 over the communication network and may provide the information to the user.
- FIG. 2 is a block diagram illustrating a user terminal of an integrated intelligent system, according to an embodiment of the present disclosure.
- the user terminal 100 may include an input module 110, a display 120, a speaker 130, a memory 140, or a processor 150.
- the user terminal 100 may further include a housing, and elements of the user terminal 100 may be seated in the housing or may be positioned on the housing.
- the input module 110 may receive a user input from a user.
- the input module 110 may receive the user input from the connected external device (e.g., a keyboard or a headset).
- the input module 110 may include a touch screen (e.g., a touch screen display) coupled to the display 120.
- the input module 110 may include a hardware key (or a physical key) placed in the user terminal 100 (or the housing of the user terminal 100).
- the input module 110 may include a microphone (e.g., a microphone 111 of FIG. 3 ) that is capable of receiving user utterance as a voice input.
- the input module 110 may include a speech input system and may receive the utterance of the user as a voice input through the speech input system.
- the display 120 may display an image, a video, and/or an execution screen of an application.
- the display 120 may display a graphic user interface (GUI) of an app.
- GUI graphic user interface
- the speaker 130 may output the voice signal.
- the speaker 130 may output the voice signal generated in the user terminal 100 to the outside.
- the memory 140 may store a plurality of apps 141 and 143.
- the plurality of apps 141 and 143 stored in the memory 140 may be selected, launched, and executed depending on the user input.
- the memory 140 may include a database capable of storing information necessary to recognize the user input.
- the memory 140 may include a log database capable of storing log information.
- the memory 140 may include a personal database capable of storing information particular to a user.
- the memory 140 may store the plurality of apps 141 and 143, and the plurality of apps 141 and 143 may be loaded to operate.
- the plurality of apps 141 and 143 stored in the memory 140 may be loaded by an execution manager module 153 of the processor 150 to operate.
- the plurality of apps 141 and 143 may include execution services 141a and 143a performing a function or a plurality of tasks (or unit tasks) 141b and 143b.
- the execution services 141a and 143a may be generated by the execution manager module 153 of the processor 150 and then may execute the plurality of tasks 141b and 143b.
- an execution state screen when the tasks 141b and 143b of the apps 141 and 143 are executed, an execution state screen according to the execution of the tasks 141b and 143b may be displayed in the display 120.
- the execution state screen may be a screen in a state where the tasks 141b and 143b are completed.
- the execution state screen may be a screen where tasks 141b and 143b are in a scanning state (e.g., waiting for a necessary parameter or input).
- the execution services 141a and 143a may execute the tasks 141b and 143b depending on a sequence of tasks.
- the execution services 141a and 143a may be activated by the execution manager module 153, may receive an execution request from the execution manager module 153 depending on the sequence of tasks, and may execute the tasks 141b and 143b of the apps 141 and 143 depending on the execution request. If the execution of the tasks 141b and 143b is completed, the execution services 141a and 143a may transmit completion information to the execution manager module 153.
- the plurality of the tasks 141b and 143b may be sequentially executed.
- task 143b may be data dependent on task 141b.
- the execution services 141a and 143a may open the next task (task 2) and may transmit completion information to the execution manager module 153.
- opening an arbitrary task is to change a state of the arbitrary task to an executable state or to prepare the execution of the arbitrary task. In other words, if the arbitrary task is not opened, the corresponding task may be not executed.
- the execution manager module 153 may transmit an execution request for the next tasks 141b and 143b to an execution service (e.g., task 2).
- an execution service e.g., task 2
- the plurality of apps 141 and 143 may be sequentially executed. For example, if receiving the completion information after the execution of the last task of the first app 141 is executed, the execution manager module 153 may transmit the execution request of the first task of the second app 143 to the execution service 143a.
- a result screen according to the execution of each of the executed plurality of the tasks 141b and 143b may be displayed in the display 120.
- only a part of a plurality of result screens according to the executed plurality of the tasks 141b and 143b may be displayed in the display 120.
- the memory 140 may store an intelligence app (e.g., a speech recognition app) operating in conjunction with an intelligence agent 151.
- the app operating in conjunction with the intelligence agent 151 may receive and process the utterance of the user as a voice signal.
- the app operating in conjunction with the intelligence agent 151 may be triggered by a specific input (e.g., an input through a hardware key, an input through a touch screen, or a specific voice input) input through the input module 110.
- the processor 150 may control overall tasks of the user terminal 100.
- the processor 150 may control the input module 110 to receive the user input.
- the processor 150 may control the display 120 to display an image.
- the processor 150 may control the speaker 130 to output the voice signal.
- the processor 150 may control the memory 140 to read or store necessary information.
- the processor 150 may be electrically connected to the input module 110, including the microphone receiving the voice input, and may include the intelligence agent 151, the execution manager module 153, or an intelligence service module 155. In an embodiment, the processor 150 may drive the intelligence agent 151, the execution manager module 153, or the intelligence service module 155 by executing instructions stored in the memory 140. Modules described in various embodiments of the present disclosure may be implemented by hardware or by software. In various embodiments of the present disclosure, it is understood that the task executed by the intelligence agent 151, the execution manager module 153, or the intelligence service module 155 is an task executed by the processor 150.
- the intelligence agent 151 may generate an instruction for operating an app based on the voice signal received as the user input.
- the execution manager module 153 may receive the generated instruction from the intelligence agent 151, and may select, launch, and operate the apps 141 and 143 stored in the memory 140.
- the intelligence service module 155 may manage information of the user and may use the information of the user to process the user input.
- the intelligence agent 151 may transmit and process the user input received through the input module 110 to the intelligence server 200 through a communication circuit.
- the intelligence agent 151 may pre-process the user input.
- the intelligence agent 151 may include an adaptive echo canceller (AEC) module, a noise suppression (NS) module, an end-point detection (EPD) module, or an automatic gain control (AGC) module.
- the AEC may remove an echo included in the user input.
- the NS module may suppress a background noise included in the user input.
- the EPD module may detect an end-point of a user voice included in the user input to search for a part in which the user voice is present.
- the AGC module may adjust the volume of the user input so as to be suitable to recognize and process the user input.
- the intelligence agent 151 may include all the pre-processing elements for performance. However, in another embodiment, the intelligence agent 151 may include a part of the pre-processing elements to operate at low power.
- the intelligence agent 151 may include a wake up recognition module recognizing a call of a user.
- the wake up recognition module may recognize a wake up instruction of the user through the speech recognition module.
- the wake up recognition module may activate the intelligence agent 151 to receive the user input.
- the wake up recognition module of the intelligence agent 151 may be implemented with a low-power processor (e.g., a processor included in an audio codec).
- the intelligence agent 151 may be activated depending on the user input entered through a hardware key.
- an intelligence app e.g., a speech recognition app
- the wake up agent 151 can be woken in response to receiving a predetermined voice input. For example, a user utterance of a predetermined word(s) can cause the wake up agent 151 to wake up.
- the intelligence agent 151 may include a speech recognition module for performing the user input.
- the speech recognition module may recognize the user input for executing an task in an app.
- the speech recognition module may recognize a limited user (voice) input (e.g., utterance such as "click" for executing a capturing task when a camera app is being executed) for executing an task such as the wake up instruction in the apps 141 and 143.
- the speech recognition module for recognizing a user input while assisting the intelligence server 200 may recognize and rapidly process a user instruction capable of being processed in the user terminal 100.
- the speech recognition module for executing the user input of the intelligence agent 151 may be implemented in an app processor.
- the speech recognition module (including the speech recognition module of a wake up module) of the intelligence agent 151 may recognize the user input by using an algorithm for recognizing a voice.
- the algorithm for recognizing the voice may be at least one of a hidden Markov model (HMM) algorithm, an artificial neural network (ANN) algorithm, or a dynamic time warping (DTW) algorithm.
- HMM hidden Markov model
- ANN artificial neural network
- DTW dynamic time warping
- the intelligence agent 151 may change the voice input of the user to text data. According to an embodiment, the intelligence agent 151 may transmit the voice of the user to the intelligence server 200. Additionally, the intelligence agent 151 may display the text data in the display 120.
- the intelligence agent 151 may receive a sequence of taskssequence of tasks from the intelligence server 200. According to an embodiment, the intelligence agent 151 may transmit the sequence of taskssequence of tasks to the execution manager module 153.
- the intelligence agent 151 may transmit the execution result log according to the sequence of tasks (received from the intelligence server 200) to the intelligence service module 155, and the transmitted execution result log may be accumulated and managed in preference information of the user of a persona module 155b.
- the execution manager module 153 may receive the sequence of tasks from the intelligence agent 151 to execute the apps 141 and 143 and may allow the apps 141 and 143 to execute the tasks 141b and 143b included in the sequence of tasks. For example, the execution manager module 153 may transmit instruction information for executing the tasks 141b and 143b to the apps 141 and 143, respectively, and may receive completion information of the tasks 141b and 143b from the apps 141 and 143.
- the execution manager module 153 may transmit or receive the instruction information for executing the tasks 141b and 143b of the apps 141 and 143 between the intelligence agent 151 and the apps 141 and 143.
- the execution manager module 153 may bind the apps 141 and 143 to be executed depending on the sequence of tasks and may transmit the instruction information of the tasks 141b and 143b included in the sequence of tasks to the apps 141 and 143.
- the execution manager module 153 may sequentially transmit the tasks 141b and 143b included in the sequence of tasks to the apps 141 and 143 and may sequentially execute the tasks 141b and 143b of the apps 141 and 143 depending on the sequence of tasks.
- the execution manager module 153 may manage execution states of the tasks 141b and 143b of the apps 141 and 143. For example, the execution manager module 153 may receive information about the execution states of the tasks 141b and 143b from the apps 141 and 143. For example, in the case where the tasks 141b and 143b are in a scanning state (e.g., waiting for a parameter of input, necessary for the task), the execution manager module 153 may transmit information about the scan state to the intelligence agent 151. The intelligence agent 151 may make a request for an input of necessary information (e.g., parameter information) to the user by using the received information.
- necessary information e.g., parameter information
- processor 150 may cause a speaker output a voice prompt, asking the user for an additional utterance/voice input.
- the utterance/voice input may be received from the user, and the execution manager module 153 may transmit information about the apps 141 and 143 being executed and the execution states of the apps 141 and 143 to the intelligence agent 151.
- the intelligence agent 151 may receive parameter information from the voice input of the user through the intelligence server 200 and may transmit the received parameter information to the execution manager module 153.
- the execution manager module 153 may change a parameter of each of the tasks 141b and 143b to a new parameter by using the received parameter information.
- the execution manager module 153 may transmit the parameter information included in the sequence of tasks to the apps 141 and 143. In the case where the plurality of apps 141 and 143 are sequentially executed depending on the sequence of tasks, the execution manager module 153 may transmit the parameter information included in the sequence of tasks from one app to another app.
- the execution manager module 153 may receive a plurality of sequence of taskss.
- the execution manager module 153 may select a plurality of sequence of taskss based on the utterance/voice input of the user. For example, in the case where the user utterance specifies the app 141 executing a part of the task 141b but does not specify the app 143 executing any other task 143b, the execution manager module 153 may receive a plurality of different sequence of taskss in which the same app 141 (e.g., an gallery app) executing the part of the task 141b is executed and in which different apps 143 (e.g., a message app or a Telegram app) executing the other task 143b.
- apps 143 e.g., a message app or a Telegram app
- the execution manager module 153 may execute the same tasks 141b and 143b (e.g., the same successive tasks 141b and 143b) of the plurality of sequences of tasks. In the case where the execution manager module 153 executes the same task, the execution manager module 153 may display a state screen for selecting the different apps 141 and 143 included in the plurality of sequences of tasks in the display 120.
- the processor 150 while performing the tasks based on the sequence of tasks, when it is determined that a first task is not executed within a specified time, the processor 150 extends a time-out time of the first task and switch the execution of the first task to the execution in background.
- a time-out time shall be understood to refer to a time limit for a task that is being executed and waiting for an event, such as an input or parameter to detect the event.
- the intelligence service module 155 may include a context module 155a, a persona module 155b, or a suggestion module 155c.
- the context module 155a may collect current states of the apps 141 and 143 from the apps 141 and 143.
- the context module 155a may receive context information indicating the current states of the apps 141 and 143 to collect the current states of the apps 141 and 143.
- the persona module 155b may manage personal information of the user utilizing the user terminal 100. For example, the persona module 155b may collect the usage information and the execution result of the user terminal 100 to manage personal information of the user.
- the suggestion module 155c may predict the intent of the user to recommend an instruction to the user. For example, the suggestion module 155c may recommend an instruction to the user in consideration of the current state (e.g., a time, a place, context, or an app) of the user.
- the current state e.g., a time, a place, context, or an app
- FIG. 3 is view illustrating a user terminal while the intelligence app is executed, according to an embodiment of the present disclosure.
- FIG. 3 illustrates that the user terminal 100 receives a user input, e.g., 112, 116a, to execute an intelligence app (e.g., a speech recognition app) operating in conjunction with the intelligence agent 151.
- an intelligence app e.g., a speech recognition app
- the user terminal 100 may execute the intelligence app for recognizing a voice following pressing of a hardware key 112.
- the user terminal 100 may display a UI 121 of the intelligence app in the display 120.
- a user may touch a speech recognition button 121a of the UI 121 of the intelligence app for the purpose of entering a voice 113b in a state where the UI 121 of the intelligence app is displayed in the display 120.
- the user may enter the voice input 116b while continuously pressing the hardware key 112 to enter the voice input 116a.
- the user terminal 100 may execute the intelligence app for recognizing a voice through the microphone 111. For example, in the case where a specified word command (e.g., wake up! is entered 113a through the microphone 111, the user terminal 100 may display the UI 121 of the intelligence app in the display 120.
- a specified word command e.g., wake up
- FIG. 4 is a block diagram illustrating an intelligence server of an integrated intelligent system, according to an embodiment of the present disclosure.
- the intelligence server 200 may include an automatic speech recognition (ASR) module 210, a natural language understanding (NLU) module 220, a path planner module 230, a dialogue manager (DM) module 240, a natural language generator (NLG) module 250, or a text to speech (TTS) module 260.
- ASR automatic speech recognition
- NLU natural language understanding
- DM dialogue manager
- NLG natural language generator
- TTS text to speech
- the NLU module 220 or the path planner module 230 of the intelligence server 200 may generate a sequence of tasks.
- the ASR module 210 may change the user input received from the user terminal 100 to text data.
- the ASR module 210 may include an utterance recognition module.
- the utterance recognition module may include an acoustic model and a language model.
- the acoustic model may include information associated with utterance
- the language model may include unit phoneme information and information about a combination of unit phoneme information.
- the utterance recognition module may change user utterance to text data by using the information associated with utterance and unit phoneme information.
- the information about the acoustic model and the language model may be stored in an automatic speech recognition database (ASR DB) 211.
- ASR DB automatic speech recognition database
- the NLU module 220 may grasp user intent by performing syntactic analysis or semantic analysis.
- the syntactic analysis may divide the user input into syntactic units (e.g., words, phrases, morphemes, and the like) and determine which syntactic elements the divided units have.
- the semantic analysis may be performed by using semantic matching, rule matching, formula matching, or the like.
- the NLU module 220 may obtain a domain, intent, or a parameter (or a slot) necessary for the user input to express the intent.
- the NLU module 220 may determine the intent of the user and parameter by using a matching rule that is divided into a domain, intent, and a parameter (or a slot) necessary to grasp the intent.
- the one domain e.g., an alarm
- the one intent may include a plurality of parameters (e.g., a time, the number of iterations, an alarm sound, and the like).
- the plurality of rules may include one or more necessary parameters.
- the matching rule may be stored in a natural language understanding database (NLU DB) 221.
- the NLU module 220 may grasp the meaning of words extracted from a user input by using linguistic features (e.g., grammatical elements) such as morphemes, phrases, and the like and may match the meaning of the grasped words to the domain and intent to determine user intent. For example, the NLU module 220 may calculate how many words extracted from the user input is included in each of the domain and the intent, for the purpose of determining the user intent. According to an embodiment, the NLU module 220 may determine a parameter of the user input by using the words that are the basis for grasping the intent. According to an embodiment, the NLU module 220 may determine the user intent by using the NLU DB 221 storing the linguistic features for grasping the intent of the user input.
- linguistic features e.g., grammatical elements
- the NLU module 220 may determine how many words extracted from the user input is included in each of the domain and the intent, for the purpose of determining the user intent.
- the NLU module 220 may determine a parameter of the user
- the NLU module 220 may determine the user intent by using a personal language model (PLM).
- PLM personal language model
- the NLU module 220 may determine the user intent by using the personalized information (e.g., a contact list or a music list).
- the PLM may be stored in the NLU DB 221.
- the ASR module 210 as well as the NLU module 220 may recognize the voice of the user with reference to the PLM stored in the NLU DB 221.
- the NLU module 220 may generate a sequence of tasks based on the intent of the user input and the parameter. For example, the NLU module 220 may select an app to be executed, based on the intent of the user input and may determine a task to be executed, in the selected app. The NLU module 220 may determine the parameter corresponding to the determined task to generate the sequence of tasks. According to an embodiment, the sequence of tasks generated by the NLU module 220 may include information about the app to be executed, the task to be executed in the app, and a parameter necessary to execute the task.
- the NLU module 220 may generate one sequence of tasks, or a plurality of sequence of tasks based on the intent of the user input and the parameter. For example, the NLU module 220 may receive a sequence of tasks set corresponding to the user terminal 100 from the path planner module 230 and may map the intent of the user input and the parameter to the received sequence of tasks set for the purpose of determining the sequence of tasks.
- the NLU module 220 may determine the app to be executed, the task to be executed in the app, and a parameter necessary to execute the task based on the intent of the user input and the parameter for the purpose of generating one sequence of tasks or a plurality of sequence of tasks.
- the NLU module 220 may arrange the app to be executed and the task to be executed in the app by using information of the user terminal 100 depending on the intent of the user input in the form of ontology or a graph model for the purpose of generating the sequence of tasks.
- the generated sequence of tasks may be stored in a sequence of tasks database (PR DB) 231 through the path planner module 230.
- the generated sequence of tasks may be added to a sequence of tasks set of the PR DB 231.
- the NLU module 220 may select at least one sequence of tasks of the generated plurality of sequence of tasks. For example, the NLU module 220 may select an optimal sequence of tasks of the plurality of sequence of tasks. For another example, in the case where only a part of a task is specified based on the user utterance, the NLU module 220 may select a plurality of sequence of tasks. The NLU module 220 may determine one sequence of tasks of the plurality of sequence of taskss depending on an additional input of the user.
- the NLU module 220 may transmit the sequence of tasks to the user terminal 100 in response to a request for the user input. For example, the NLU module 220 may transmit one sequence of tasks corresponding to the user input to the user terminal 100. For another example, the NLU module 220 may transmit the plurality of sequence of taskss corresponding to the user input to the user terminal 100. For example, in the case where only a part of task is specified based on the user utterance, the plurality of sequence of tasks may be generated by the NLU module 220.
- the path planner module 230 may select at least one sequence of tasks of the plurality of sequence of tasks.
- the path planner module 230 may transmit a sequence of tasks set including the plurality of sequence of taskss to the NLU module 220.
- the plurality of sequence of taskss of the sequence of tasks set may be stored in the PR DB 231 connected to the path planner module 230 in the table form.
- the path planner module 230 may transmit a sequence of tasks set corresponding to information (e.g., OS information or app information) of the user terminal 100, which is received from the intelligence agent 151, to the NLU module 220.
- information e.g., OS information or app information
- a table stored in the PR DB 231 may be stored for each domain or for each version of the domain.
- the path planner module 230 may select one sequence of tasks or the plurality of sequence of tasks from the sequence of tasks set to transmit the selected one sequence of tasks or the selected plurality of sequence of taskss to the NLU module 220.
- the path planner module 230 may match the user intent and the parameter to the sequence of tasks set corresponding to the user terminal 100 to select one sequence of tasks or a plurality of sequence of taskss and may transmit the selected one sequence of tasks or the selected plurality of sequence of taskss to the NLU module 220.
- the path planner module 230 may generate the one sequence of tasks or the plurality of sequence of taskss by using the user intent and the parameter. For example, the path planner module 230 may determine the app to be executed and the task to be executed in the app based on the user intent and the parameter for the purpose of generating the one sequence of tasks or the plurality of sequence of taskss. According to an embodiment, the path planner module 230 may store the generated sequence of tasks in the PR DB 231.
- the path planner module 230 may store the sequence of tasks generated by the NLU module 220 in the PR DB 231. The generated sequence of tasks may be added to the sequence of tasks set stored in the PR DB 231.
- the table stored in the PR DB 231 may include a plurality of sequence of taskss or a plurality of sequence of tasks sets.
- the plurality of sequence of taskss or the plurality of sequence of tasks sets may reflect the kind, version, type, or characteristic of a device performing each sequence of tasks.
- the DM module 240 may determine whether the user intent grasped by the NLU module 220 is clear. For example, the DM module 240 may determine whether the user intent is clear, based on whether the information of a parameter is sufficient. The DM module 240 may determine whether the parameter grasped by the NLU module 220 is sufficient to perform a task. According to an embodiment, in the case where the user intent is not clear, the DM module 240 may perform a feedback for making a request for necessary information to the user. For example, the DM module 240 may perform a feedback for making a request for information about the parameter for grasping the user intent.
- the DM module 240 may include a content provider module.
- the content provider module executes an task based on the intent and the parameter grasped by the NLU module 220, the content provider module may generate the result obtained by performing a task corresponding to the user input.
- the DM module 240 may transmit the result generated by the content provider module as the response to the user input to the user terminal 100.
- the natural language generating module NLG 250 may change specified information to a text form.
- Information changed to the text form may be a form of a natural language utterance.
- the specified information may be information about an additional input, information for guiding the completion of a task corresponding to the user input, or information for guiding the additional input of the user (e.g., feedback information about the user input).
- the information changed to the text form may be displayed in the display 120 after being transmitted to the user terminal 100 or may be changed to a voice form after being transmitted to the TTS module 260.
- the TTS module 260 may change information of the text form to information of a voice form.
- the TTS module 260 may receive the information of the text form from the NLG module 250, may change the information of the text form to the information of a voice form, and may transmit the information of the voice form to the user terminal 100.
- the user terminal 100 may output the information of the voice form to the speaker 130
- the NLU module 220, the path planner module 230, and the DM module 240 may be implemented with one module.
- the NLU module 220, the path planner module 230 and the DM module 240 may be implemented with one module, may determine the user intent and the parameter, and may generate a response (e.g., a sequence of tasks) corresponding to the determined user intent and parameter. As such, the generated response may be transmitted to the user terminal 100.
- the ASR DB 211, NLU DB 221, and PR DB 231 can include a registry of each task 141b, 143b in each electronic device.
- Each task 141b, 143b can be associated with audible word data that is commonly associated with it.
- the ASR module 210, NLU module 220, and Path Planner Module 230 receive the voice data, the foregoing modules can identify tasks 141b, 143b, that are associated with portions of the voice data. The identified tasks 141b, 143b, can then be used to generate the sequence of tasks.
- FIG. 5 is a diagram illustrating a sequence of tasks generating method of an NLU module, according to an embodiment of the present disclosure.
- the NLU module 220 may divide the function of an app into unit tasks (e.g., A to F) and may store the divided unit tasks in the PR DB 231.
- the NLU module 220 may store a sequence of tasks set, which includes a plurality of sequence of taskss A-B1-C1, A-Bl-C2, A-B1-C3-D-F, and A-B1-C3-D-E-F divided into unit tasks, in the PR DB 231.
- the PR DB 231 of the path planner module 230 may store the sequence of tasks set for performing the function of an app.
- the sequence of tasks set may include a plurality of sequence of taskss each of which includes a plurality of tasks.
- a task executed depending on a parameter input to each of the plurality of tasks may be sequentially arranged in the plurality of sequence of taskss.
- the plurality of sequence of taskss implemented in a form of ontology or a graph model may be stored in the PR DB 231.
- the NLU module 220 may select an optimal sequence of tasks A-B1-C3-D-F of the plurality of sequence of taskss A-Bl-C1, A-B1-C2, A-B1-C3-D-F, and A-B1-C3-D-E-F corresponding to the intent of a user input and the parameter.
- the NLU module 220 may transmit a plurality of rules to the user terminal 100. For example, the NLU module 220 may select a sequence of tasks (e.g., A-Bl) partly corresponding to the user input. The NLU module 220 may select one or more sequence of taskss (e.g., A-B1-C1, A-B1-C2, A-B1-C3-D-F, and A-B1-C3-D-E-F) including the sequence of tasks (e.g., A-Bl) partly corresponding to the user input and may transmit the one or more sequence of taskss to the user terminal 100.
- a sequence of tasks e.g., A-Bl
- the NLU module 220 may select one or more sequence of taskss (e.g., A-B1-C1, A-B1-C2, A-B1-C3-D-F, and A-B1-C3-D-E-F) including the sequence of tasks (e.g., A-Bl)
- the NLU module 220 may select one of a plurality of sequence of taskss based on an input added by the user terminal 100 and may transmit the selected one sequence of tasks to the user terminal 100.
- the NLU module 220 may select one sequence of tasks (e.g., A-B1-C3-D-F) of the plurality of sequence of taskss (e.g., A-B1-C1, A-B1-C2, A-B1-C3-D-F, and A-B1-C3-D-E-F) depending on the user input (e.g., an input for selecting C3) additionally entered by the user terminal 100 for the purpose of transmitting the selected one sequence of tasks to the user terminal 100.
- A-B1-C3-D-F e.g., A-B1-C3-D-F
- the NLU module 220 may determine the intent of a user and the parameter corresponding to the user input (e.g., an input for selecting C3) additionally entered by the user terminal 100 for the purpose of transmitting the user intent or the parameter to the user terminal 100.
- the user terminal 100 may select one sequence of tasks (e.g., A-B1-C3-D-F) of the plurality of sequence of taskss (e.g., A-B1-C1, A-B1-C2, A-B1-C3-D-F, and A-B1-C3-D-E-F) based on the transmitted intent or the transmitted parameter.
- the user terminal 100 may complete the tasks of the apps 141 and 143 based on the selected one sequence of tasks.
- the NLU module 220 may generate a sequence of tasks partly corresponding to the received user input. For example, the NLU module 220 may transmit the partly corresponding sequence of tasks to the intelligence agent 151. The intelligence agent 151 may transmit the partly corresponding sequence of tasks to the execution manager module 153, and the execution manager module 153 may execute the first app 141 depending on the sequence of tasks. The execution manager module 153 may transmit information about an insufficient parameter to the intelligence agent 151 while executing the first app 141. The intelligence agent 151 may make a request for an additional input to a user by using the information about the insufficient parameter.
- the intelligence agent 151 may transmit and process the additional input to the intelligence server 200.
- the NLU module 220 may generate a sequence of tasks to be added, based on the intent of the user input additionally entered and parameter information and may transmit the sequence of tasks to be added, to the intelligence agent 151.
- the intelligence agent 151 may transmit the sequence of tasks to the execution manager module 153 and may execute the second app 143.
- the NLU module 220 may transmit a user information request to the personal information server 300.
- the personal information server 300 may transmit information of a user entering the user input stored in a persona database to the NLU module 220.
- the NLU module 220 may select a sequence of tasks corresponding to the user input in which a part of a task is missed, by using the user information.
- the NLU module 220 may make a request for the missed information to receive an additional input or may determine a sequence of tasks corresponding to the user input by using user information.
- FIG. 6 is a block diagram illustrating an electronic device associated with voice data processing, according to an embodiment of the present disclosure.
- the electronic device 600 illustrated in FIG. 6 may include a configuration that is the same as or similar to the configuration of the user terminal 100 of the above-mentioned drawings.
- a hardware key e.g., the hardware key 112 disposed on one surface of the housing of the electronic device 600 is pressed or a specified voice (e.g., wake up! is entered through a microphone 610 (e.g., the microphone 111)
- the electronic device 600 may launch an intelligence app such as a voice recognition app stored in a memory 670 (e.g., the memory 140).
- the electronic device 600 may display the UI (e.g., the UI 121) of the intelligence app on the screen of a display 630 (e.g., the display 120).
- a user may touch a voice input button (e.g., the speech recognition button 121a) included in the UI of the intelligence app for the purpose of entering a voice. If the voice input button included in the UI of the intelligence app is touched, the electronic device 600 may enter a standby state for receiving a user's voice input and may receive the user's voice input through the microphone 610 in the standby state.
- a voice input button e.g., the speech recognition button 121a
- the electronic device 600 may launch the intelligence app and may activate the microphone 610 so as to receive a voice input.
- the electronic device 600 may transmit voice data corresponding to the voice input to an external electronic device (e.g., the intelligence server 200) through a communication circuit 690.
- the external electronic device may convert the received voice data to text data, may determine a sequence of tasks including sequence information about tasks (or operations) for performing the function of at least one app included in the electronic device 600, based on the converted text data, and may transmit the determined sequence of tasks to the electronic device 600. Afterwards, the electronic device 600 may perform tasks depending on the sequence of tasks received from the external electronic device.
- the sequence information about the tasks may include identification information of each task, information about a parameter required to perform each task, information about the execution sequence of tasks, or the like.
- the electronic device 600 may increase the time-out time of the delayed task and may switch the execution of the delayed task to the task in background.
- the electronic device 600 may increase the time-out time of the delayed task and may display the execution state information (e.g., execution progress) of the delayed task on at least part of a screen and may provide a user interface such that a user input (e.g., touch) is possible. That is, the electronic device 600 may prevent the processing of the sequence of tasks from being canceled due to the time-out of the delayed task and may provide a method of performing another task or the function of another app installed in the electronic device 600.
- the electronic device 600 performing the above-described function may include the microphone 610, the display 630, a processor 650, the memory 670, and the communication circuit 690.
- a configuration of the electronic device 600 is not limited thereto.
- the electronic device 600 may further include at least other elements in addition to the aforementioned elements.
- the electronic device 600 may further include a speaker (e.g., the speaker 130) that outputs the voice signal generated in the electronic device 600 to the outside, for the purpose of notifying the user of the processing result of the voice input.
- the speaker may convert an electrical signal to vibration to transmit sound waves into the air.
- the microphone 610 may receive the user's utterance as the voice signal.
- the microphone 610 may convert the vibration energy caused by the user's utterance into an electrical signal and may transmit the converted electrical signal to the processor 650.
- the display 630 may display various content (e.g., texts, images, videos, icons, symbols, or the like) to a user.
- the display 630 may include a touch screen.
- the display 630 may obtain a touch, gesture, proximity, or hovering input using an electronic pen or a part of the user's body (e.g., finger).
- the processor 650 may perform data processing or an operation associated with control and/or communication of at least one other element(s) of the electronic device 600.
- the processor 650 may drive an operating system (OS) or an application program to control a plurality of hardware or software elements connected to the processor 650 and may process a variety of data or may perform an arithmetic operation.
- the processor 650 may include one or more of a central processing unit (CPU), an application processor (AP), or a communication processor (CP).
- the processor 650 may be implemented with a system-on-chip (SoC).
- the processor 650 may launch an app (e.g., intelligence app) stored in the memory 670 and may output the execution screen of an app to the display 630.
- an app e.g., intelligence app
- the processor 650 may organize the context (e.g., UI) associated with an app in a screen to output the content to the display 630.
- the processor 650 may enter a standby state for receiving a voice input.
- the standby state may be a state where the microphone 610 is activated such that a voice input is possible.
- the processor 650 may output a screen associated with the standby state to the display 630.
- the processor 650 may notify the display 630 that the microphone 610 has been activated, and thus, may notify the user that the voice input is possible.
- the processor 650 may transmit voice data corresponding to the voice input to an external electronic device (e.g., the intelligence server 200) through the communication circuit 690. Moreover, the processor 650 may receive the sequence of tasks determined based on text data generated by converting the voice data to data in the text format, from the external electronic device through the communication circuit 690. In any embodiment, if the voice input is received through the microphone 610, the processor 650 may transmit the text data generated by converting the voice data corresponding to the voice input to data in the text format, to the external electronic device through the communication circuit 690.
- the processor 650 may receive a sequence of tasks including sequence information about tasks that performs the function of at least one app stored in the memory 670, from the external electronic device (e.g., the intelligence server 200) through the communication circuit 690. If receiving the sequence of tasks, the processor 650 may execute the tasks based on the sequence of tasks. For example, the processor 650 may verify tasks to be executed by using identification information of each task included in the sequence of tasks and may sequentially execute the tasks based on execution sequence in the sequence of the tasks.
- the processor 650 may increase the time-out time of the delayed task.
- the processor 650 may increase the time-out time set such that the execution of the delayed task is completed.
- the processor 650 may differently set the time-out time depending on a type of a task and may differently set a time during which the time-out time increases, depending on a type of a task.
- the processor 650 may output information about the delay of the task to the display 630 and may re-extend the time-out time of the task or may provide a user interface for canceling the execution of the task.
- the processor 650 may switch the execution of the delayed task to the execution in background.
- the processor 650 may perform the delayed task in background and may perform another task associated with the delayed task in foreground or may perform the function of another app included in the memory 670 in foreground.
- the operation of performing the delayed task in background may include an operation in which the processor 650 restricts a system resource used associated with the delayed task so as not to occupy a user interface.
- Form processing shall refer to immediate current processing by the processor, while “Background” processing shall refer to a process that is in the list of processes to be processed by the processor, but is not currently being processed.
- the processor 650 may determine whether another task, which is executable regardless of the execution result of the delayed task, from among tasks included in the sequence of tasks is present. In this case, the processor 650 may switch the execution of the delayed task to the execution in background and may perform the other executable task in foreground.
- the processor 650 may proceed to a procedure for obtaining the parameter information.
- the processor 650 may output a user interface associated with the parameter information to the display 630.
- the user interface associated with the parameter information may include a button object requiring the user's touch input, a display object inducing the user's voice input, or the like.
- the processor 650 may receive a user input necessary to complete the processing of the sequence of tasks.
- the processor 650 may receive a plurality of sequence of tasks from the intelligence server 200; if a task included in a sequence of tasks among the sequence of tasks is delayed, the processor 650 may perform tasks included in another sequence of tasks while performing the delayed task in background.
- the processor 650 may perform a function similar to the delayed task. For example, in the case where the delayed task is performed as a stage for performing a first function, while performing the delayed task in background, the processor 650 may perform a second function similar to the first function. For example, in the case where the first function is a function to output a sound to a first output path (e.g., Bluetooth earphone), the processor 650 may perform the second function to output a sound to a second output path (e.g., speaker). In this case, the user may verify that the similar function is performed, and then the processor 650 may receive the verification result from the user.
- a first output path e.g., Bluetooth earphone
- the processor 650 may output an object for providing a notification of the presence of the delayed task, to the display 630.
- the object may include at least one of a text saying that the delayed task is present, and a specified icon (e.g., the icon of an intelligence app such as a speech recognition app, or the like).
- the object includes an icon
- the processor 650 may express the execution time of the delayed task or the remaining time until the time-out time of the delayed task by using an object (e.g., a progress bar) capable of expressing the flow of time.
- the processor 650 may determine whether other tasks to be executed are present; in the case where the tasks are present, the processor 650 may perform the tasks based on the sequence information of the tasks. In any embodiment, the processor 650 may exclude a task, which is already executed and then is completed, from among the tasks from the execution target. For example, in the case where another task, which is executed in foreground and then is completed, while the processor 650 performs the delayed task in background, the processor 650 may exclude the other task from the execution target.
- the memory 670 may store a command or data associated with at least one other element of the electronic device 600.
- the memory 670 may store software and/or a program.
- the memory 670 may store an app (e.g., intelligence app) associated with an artificial intelligence technology.
- the intelligence app may include instructions associated with a function to receive the user's utterance as a voice signal and to process the voice signal, instructions to receive sequence information about tasks for performing the function of at least one app stored in the memory 670 from an external electronic device, instructions to perform the tasks based on the sequence information, instructions to increase the time-out time of the delayed task in the case where the delayed task among the tasks is present, or instructions to switch the execution of the delayed task to the execution in background.
- instructions included in the intelligence app are not limited thereto.
- the intelligence app may further include at least another instruction in addition to the above-mentioned instructions, and at least one of the above-mentioned instructions may be omitted.
- instructions included in the software and/or program stored in the memory 670 may be loaded onto a volatile memory by the processor 650 and may be processed depending on a specified program routine.
- the communication circuit 690 may support the communication channel establishment between the electronic device 600 and an external electronic device (e.g., the intelligence server 200, the personal information server 300, or the suggestion server 400) and the execution of wired or wireless communication through the established communication channel.
- an external electronic device e.g., the intelligence server 200, the personal information server 300, or the suggestion server 400
- an electronic device may include a display (e.g., the display 630), a microphone (e.g., the microphone 610) configured to receive a user's voice, a communication circuit (e.g., the communication circuit 690) configured to communicate with an external electronic device, a memory (e.g., the memory 670) configured to store at least one application, and a processor (e.g., the processor 650) electrically connected to the microphone, the communication circuit, the display, and the memory.
- a display e.g., the display 630
- a microphone e.g., the microphone 610
- a communication circuit e.g., the communication circuit 690
- a memory e.g., the memory 670
- a processor e.g., the processor 650
- the processor may be configured to obtain voice data corresponding to the user's voice received through the microphone, transmit the voice data to the external electronic device through the communication circuit, receive sequence information of tasks for performing a first function of the at least one application, which is determined based on the voice data, from the external electronic device through the communication circuit, and while performing the tasks based on the sequence information, if it is determined that a first task, execution of which is not completed within a specified time, is present, extend a time-out time of the first task and switch the execution of the first task to the execution in background.
- the processor may be further configured to output an object for providing a notification of presence of the first task to the display if the execution of the first task is switched to the execution in background.
- the processor may be further configured to output state information about the first task to the display if a touch input to select the object occurs.
- the processor may be further configured to perform the second task if it is determined that a second task, which is executable regardless of the execution result of the first task, from among the tasks is present.
- the processor may be further configured to provide a user interface to obtain the user input if it is determined that the second task is a task requiring a user input.
- the processor may be further configured to output a screen including an object which allows a second function of the at least one application to be performed, to the display if it is determined that the second task, which is executable, from among the tasks is absent.
- the processor may be further configured to output an object which suggests the execution of a second function similar to the first function, to the display.
- the processor may be further configured to extend the extended time-out time again if the execution of the first task is not completed within the extended time-out time.
- the processor may be further configured to determine whether a second task, which is associated with the first task, from among the tasks is present if the execution of the first task is completed within the extended time-out time, and perform the second task if the second task is present.
- an electronic device may include a housing, a touch screen display (e.g., the display 630) disposed inside the housing and exposed through a first portion of the housing, a microphone (e.g., the microphone 610) disposed inside the housing and exposed through a second portion of the housing, at least one speaker (e.g., the speaker 130) disposed inside the housing and exposed through a third portion of the housing, a wireless communication circuit (e.g., the communication circuit 690) disposed inside the housing, a processor (e.g., the processor 650) disposed inside the housing and electrically connected to the touch screen display, the microphone, the speaker, and the wireless communication circuit, and a memory (e.g., the memory 670) disposed inside the housing and electrically connected to the processor.
- a touch screen display e.g., the display 630
- a microphone e.g., the microphone 610
- at least one speaker e.g., the speaker 130
- a wireless communication circuit e.g., the communication
- the memory may store a first application including a first user interface, and the memory may store instructions that, when executed, cause the processor to receive a user input including a request for performing a task by using the first application, through at least one of the touch screen display or the microphone, transmit data associated with the user input to an external server through the wireless communication circuit, receive a response including information about sequence of states of the electronic device for performing the task, from the external server through the wireless communication circuit, wherein the electronic device is in the sequence of states to perform the task such that each of the states is completed within a specified time, and extend the specified time for the selected state if one selected state associated with the first application lasts longer than the specified time.
- the memory may store instructions, when executed, causing the processor to display a second user interface if receiving the user input, and display at least part of the first user interface if the specified time for the selected state is extended.
- FIG. 7 is a flowchart illustrating an operating method of an electronic device associated with voice data processing, according to an embodiment of the present disclosure.
- an electronic device e.g., the processor (e.g., the processor 650) of the electronic device 600
- the processor may obtain the voice data corresponding to the voice input through a microphone (e.g., the microphone 610).
- the processor may transmit the obtained voice data to an external electronic device (e.g., the intelligence server 200) through a communication circuit (e.g., the communication circuit 690).
- the external electronic device may convert the received voice data to text data and may determine (or generate) sequence information about tasks for performing the function of at least one app installed in a memory (e.g., the memory 670), based on the converted text data.
- the processor may convert the obtained voice data to text data and may transmit the converted text data to an external electronic device through a communication circuit. In this case, the external electronic device may determine (or generate) the sequence information about the tasks based on the received text data.
- the processor may receive a sequence of tasks from the external electronic device through the communication circuit. That is, the processor may receive the sequence of tasks for performing the function of the at least one app, which is determined based on the voice data by the external electronic device, from the external electronic device through the communication circuit.
- the sequence information about the tasks may include identification information of each task, information about a parameter required to perform each task, information about the execution sequence of tasks, or the like.
- the processor may perform the tasks based on the sequence information. For example, the processor may sequentially perform the tasks based on the sequence of tasks.
- the processor may determine whether a task (i.e., the delayed task), which is not completed within a specified time (e.g., time-out time), from among the tasks is present in the sequence of tasks.
- a specified time e.g., time-out time
- an execution manager module e.g., the execution manager module 153 included in the processor may sequentially transmit an execution request for each of the tasks to the app and may receive an execution completion response to each of the tasks from the app. In this case, if not receiving the execution completion response to a task within the specified time, the execution manager module may verify that the corresponding task is delayed.
- the time-out time of a task may be set to a specific time per task unit and may be differently set depending on a type of task for each task. For example, in the case of a task of which the execution time is changed depending on the number of files such as file download, file deletion, or the like, the time-out time may be dynamically set in consideration of the number of files.
- the time-out time of a task may be set within the execution manager module, and the execution manager module may use the time-out time stored in a memory.
- the time-out time of the task may be stored in the intelligence server 200 for each task and may be managed.
- the intelligence server 200 may include the time-out time of each task in the sequence information about tasks included in a sequence of tasks and may transmit the sequence of tasks to the electronic device.
- the processor may increase the time-out time of the delayed task and may switch the execution of the delayed task to the execution in background. That is, the processor may increase the time-out time of the delayed task for the purpose of preventing the processing of the sequence of tasks from being canceled due to the time-out of the delayed task. Furthermore, the processor may support the execution of another task or the function of another application installed in a memory by switching the execution of the delayed task to the execution of in background.
- the time during which the time-out time is increased may be set to a specific time per task unit and may be differently set depending on a type of task for each task.
- the processor may determine whether a task to be performed is present. For example, the processor may determine whether another task associated with the last executed task among the tasks is present. In the case where another task to be performed is present, the processor may return to operation 740. That is, the processor may perform the other task to be performed, based on the sequence information. Afterwards, as described in operation 750, if the execution of the other task is not completed within a specified time, the processor may perform operation 760; if the execution of the other task is completed within a specified time, the processor may perform operation 770.
- the processor may determine whether the execution of the corresponding task is completed within the time-out time. For example, similarly to operation 750, the execution manager module included in the processor may transmit the execution request for the task to the app; however, if not receiving the execution completion response to the task within the time-out time, the execution manager module may determine whether the execution of the task is not completed.
- the processor may return to operation 770. For example, the processor may determine whether another task to be performed is present.
- the processor may cancel the execution of the task.
- the processor may cancel the processing of a sequence of tasks in which the task is included.
- the processor may provide a user with a user interface, through which the user determines whether to cancel the processing of the sequence of tasks.
- the processor may output a voice for querying whether to cancel the processing of the sequence of tasks, through a speaker (e.g., the speaker 130).
- the processor may cancel the processing of the sequence of tasks.
- the processor may cancel the execution of the task and may perform a task having a function similar to the function of the task.
- the user may determine whether the task having the similar function is performed, and then the processor may receive the determination result from the user.
- the processor may extend the time-out time of the task again.
- FIG. 8 is a flowchart illustrating an operating method of an electronic device associated with a switch to the background of a task, according to an embodiment of the present disclosure.
- a processor e.g., the processor 650 of an electronic device (e.g., the electronic device 600) may increase the time-out time of the delayed first task and may switch the execution of the first task to the first task in background.
- the processor may output an object for providing a notification that the delayed task is present, to a display (e.g., the display 630). That is, the processor may output an object for providing a notification of the presence of the first task.
- the object may include at least one of a text saying that the delayed task (e.g., the first task) is present, and a specified icon (e.g., the icon of an intelligence app such as a speech recognition app, or the like).
- the execution of the operation 830 may be omitted.
- the processor may output the identification information of the delayed task, the execution time of the delayed task, the time-out time of the delayed task, the remaining time until the time-out time of the delayed task, a button object for canceling the delayed task, or the like to the display.
- the processor may express the execution time of the delayed task or the remaining time until the time-out time of the delayed task by using an object (e.g., a progress bar) capable of expressing the flow of time.
- the processor may determine whether another executable task (e.g., a second task) is present, regardless of the execution result of the delayed task (e.g., a first task). In the case where the executable second task is present, in operation 870, the processor may perform the second task. In the case where the executable second task is not present, in operation 890, the processor according to an embodiment may output a screen, which allows the function of another app installed in a memory to be performed, to a display. For example, the processor may switch the output of the screen associated with the delayed task to the background and may output a screen (e.g., home screen) that allows the function of another app to be performed, in a foreground state to the display.
- another executable task e.g., a second task
- the processor may perform the second task.
- the processor may output a screen, which allows the function of another app installed in a memory to be performed, to a display. For example, the processor may switch the output of the screen associated with the delayed task to the background and
- the state where the output of the screen is output to the background of the screen may include a state where the process associated with the output of the screen is not terminated but a screen output is terminated, a state where at least part of a screen is overlapped with a screen output in foreground, a state where an object, which corresponds to a user interface, from among objects included in the screen is deactivated, or the like.
- a voice data processing method of an electronic device may include obtaining voice data corresponding to a user's voice received through a microphone, transmitting the voice data to an external electronic device connected through a communication circuit, receiving sequence information of tasks for performing a first function of at least one application, which is determined based on the voice data, from the external electronic device through the communication circuit, and while performing the tasks based on the sequence information, if it is determined that a first task, execution of which is not completed within a specified time, is present, extending a time-out time of the first task and switching the execution of the first task to the execution in background.
- the voice data processing method may further include outputting an object for providing a notification of presence of the first task to a display if the execution of the first task is switched to the execution in background.
- the voice data processing method may further include outputting state information about the first task to the display if a touch input to select the object occurs.
- the voice data processing method may further include performing the second task if it is determined that a second task, which is executable regardless of the execution result of the first task, from among the tasks is present.
- the voice data processing method may further include providing a user interface to obtain the user input if it is determined that the second task is a task requiring a user input.
- the voice data processing method may further include outputting a screen including an object which allows a second function of the at least one application to be performed, to a display if it is determined that the second task, which is executable, from among the tasks is absent.
- the voice data processing method may further include outputting an object which suggests the execution of a second function similar to the first function, to a display.
- the voice data processing method may further include extending the extended time-out time again if the execution of the first task is not completed within the extended time-out time.
- the voice data processing method may further include determining whether a second task, which is associated with the first task, from among the tasks is present if the execution of the first task is completed within the extended time-out time, and performing the second task if the second task is present.
- FIG. 9 is a view for describing a method of performing a task, which requires a user input, from among other tasks associated with a delayed task, according to an embodiment of the present disclosure.
- an electronic device may launch an intelligence app such as a speech recognition app stored in a memory (e.g., the memory 670).
- an electronic device may display the UI of the intelligence app on a screen 900 of a display (e.g., the display 630).
- the electronic device may enter a standby state for receiving a user's voice input and may receive the user's voice input through a microphone (e.g., the microphone 610) in the standby state.
- the electronic device may display a first object 910 for providing a notification that the user's voice input is being received ("Listening --), on the screen 900.
- the electronic device may include the first object 910 in the UI of the intelligence app and may output the first object 910 on the screen 900.
- the electronic device may launch the intelligence app and may activate the microphone so as to receive the voice input.
- the electronic device may transmit the voice data corresponding to the received voice input to an external electronic device (e.g., the intelligence server 200) through a communication circuit (e.g., the communication circuit 690).
- the external electronic device may convert the received voice data to text data, may determine a sequence of tasks including sequence information about tasks for performing the function of at least one app included in the memory of the electronic device, based on the converted text data, and may transmit the determined sequence of tasks to the electronic device.
- the electronic device may display a second object 920 indicating that the electronic device is in a standby state for receiving the sequence of tasks ("OK, Hold on"), on the screen 900.
- the electronic device may include the second object 920 in the UI of the intelligence app and may output the second object 920 on the screen 900.
- the electronic device may switch the first object 910 included in the UI of the intelligence app to the second object 920.
- the electronic device may determine whether the delayed task, the execution of which is not completed within a specified time, from among tasks included in the received sequence of tasks is present. In this case, as illustrated in a third state 905, the electronic device may output state information about the delayed task on the screen 900. For example, the electronic device may output a third object 951 indicating a type of the delayed task and a fourth object 953 indicating the execution time of the delayed task (BT Connecting ... 10 sec...), on the screen 900. In an embodiment, the electronic device may include the third object 951 and the fourth object 953 in the UI of the intelligence app and may output the third object 951 and the fourth object 953 on the screen 900. For example, the electronic device may switch the second object 920 included in the UI of the intelligence app to the third object 951 and the fourth object 953.
- the electronic device may extend the time-out time of the delayed task.
- the electronic device may output state information about the delayed task on the screen 900.
- the electronic device may output the third object 951 indicating a type of the delayed task and the fourth object 953 indicating the execution time of the delayed task, on the screen 900. That is, an electronic device according to an embodiment may continuously output the third object 951 and the fourth object 953, which are output in the third state 905, in the fourth state 907. However, the time elapsed with the passage of time may be applied to the fourth object 953 that is output in the fourth state 907.
- the electronic device 900 may perform the task of connecting the Bluetooth headset in the background while executing the task of retrieving desired media in the foreground.
- the electronic device may determine whether a task, which requires a user input, from among other tasks other than the delayed task is present. For example, the electronic device may determine whether a task, in which necessary parameter information is absent, from among tasks included in the sequence of tasks is present. In the case where there is a task not including parameter information even though the task requires the parameter information, the electronic device may output the user interface associated with the parameter information on the screen 900 for the purpose of obtaining the parameter information. In any embodiment, as illustrated in the fourth state 907, the electronic device may display a fifth object 970 for determining whether the user interface is output, on the screen 900.
- FIG. 10 is a view for describing another method of performing a task, which requires a user input, from among other tasks associated with a delayed task, according to an embodiment of the present disclosure.
- the electronic device in the case where a task, which requires a user input, from among other tasks associated with the delayed task is present, the electronic device (e.g., the electronic device 600) may proceed to a procedure to receive the user input.
- the electronic device may output a user interface associated with the parameter information on a screen 1000 of a display (e.g., the display 630) for the purpose of obtaining parameter information necessary to perform the task.
- the user interface may be differently organized depending on a type of the parameter information and may be output on the screen 1000.
- an electronic device may launch an intelligence app such as a speech recognition app stored in a memory (e.g., the memory 670).
- the electronic device may display the UI of the intelligence app on the screen 1000.
- the electronic device may enter a standby state for receiving a user's voice input and may receive the user's voice input through a microphone (e.g., the microphone 610) in the standby state.
- a microphone e.g., the microphone 610
- the electronic device may display a first object 1010 for providing a notification that the user's voice input is being received, on the screen 1000.
- the electronic device may launch the intelligence app and may activate the microphone so as to receive the voice input.
- the electronic device may transmit the voice data corresponding to the received voice input to an external electronic device (e.g., the intelligence server 200) through a communication circuit (e.g., the communication circuit 690).
- the external electronic device may convert the received voice data to text data, may determine a sequence of tasks including sequence information about tasks for performing the function of at least one app included in the memory of the electronic device, based on the converted text data, and may transmit the determined sequence of tasks to the electronic device.
- the electronic device may display a second object 1020 indicating that the electronic device is in a standby state for receiving the sequence of tasks, on the screen 1000.
- the electronic device may determine whether the delayed task, the execution of which is not completed within a specified time, from among tasks included in the received sequence of tasks is present. In this case, as illustrated in a third state 1003, the electronic device may output state information about the delayed task on the screen 1000. For example, the electronic device may output a third object 1031 indicating a type of the delayed task and the fourth object 1033 indicating the execution time of the delayed task, on the screen 1000.
- the electronic device may extend the time-out time of the delayed task.
- the electronic device may output state information about the delayed task on the screen 1000.
- the electronic device may output a third object 1031 indicating a type of the delayed task and the fourth object 1033 indicating the execution time of the delayed task, on the screen 1000. That is, an electronic device according to an embodiment may continuously output the third object 1031 and the fourth object 1033, which are output in the third state 1003, in the fourth state 1004. However, the time elapsed with the passage of time may be applied to the fourth object 1033 that is output in the fourth state 1004.
- the electronic device may output a fifth object 1040 for providing a notification that the execution is not completed within the extended time-out time, on the screen 1000. Furthermore, the electronic device may determine whether a task, which requires a user input, from among other tasks other than the delayed task is present. For example, the electronic device may determine whether a task, in which necessary parameter information is absent, from among tasks included in the sequence of tasks is present. In the case where there is a task not including parameter information even though the task requires the parameter information, the electronic device may output the user interface associated with the parameter information on the screen 1000 for the purpose of obtaining the parameter information. In any embodiment, as illustrated in the fifth state 1005, the electronic device may display a sixth object 1050 for determining whether the user interface is output, on the screen 1000.
- the electronic device 1000 may perform the task of connecting the Bluetooth headset in the background while executing the task of retrieving desired media in the foreground.
- the electronic device may differently organize the user interface depending on a type of parameter information to be obtained.
- the user's voice may be uttered as "play song A by using a BT headset"; the connection to the BT headset, the search for song A, and playback the selected song A may be set to a first task, a second task, and a third task, respectively; parameter information about "song A" may be needed to perform the second task and the third task among the tasks.
- the electronic device in FIG. 9 may provide a user interface that allows the user to select "song A".
- the electronic device may output a list including only song files, in each of which artist information is "A", from among all song files stored in a memory on a screen.
- the user's voice may be uttered as "play music by using a BT headset"; the connection to the BT headset, the search for the music, and playback the selected song A may be set to a first task, a second task, and a third task, respectively; parameter information about the "music" may be needed to perform the second task and the third task among the tasks.
- the electronic device in FIG. 10 may provide a user interface that allows the user to select the "music".
- the electronic device may output a list including all music files (or song files) stored in a memory, on the screen 1000.
- the list may include at least one item including information 1061 about each music file and a button 1063 (e.g., check box) that allows the user to select each music file.
- the electronic device may display an object 1065 for providing a notification of the presence of the delayed task, on the screen 1000.
- FIG. 11 is a view for describing another method of performing a task, which requires a user input, from among other tasks associated with a delayed task, according to an embodiment of the present disclosure.
- the electronic device may perform tasks to be performed after the delayed task, based on a separate sequence of tasks. For example, if receiving a sequence of tasks for performing the function of an app supporting data transmitting/receiving between electronic devices, such as a smart switch app or the like from the intelligence server 200, the electronic device may receive a separate sequence of tasks from the intelligence server 200 and may process tasks, which are to be executed after the delayed task, among tasks included in the sequence of tasks, based on the separate sequence of tasks.
- the electronic device may output a first execution screen of a smart switch app on a screen 1100 of a display (e.g., the display 630); if a send button 1111 or a receive button 1113 included in the first execution screen is selected by a user's touch input, the electronic device may search for data to be transmitted or received. In this case, as illustrated in a second state 1103, the electronic device may display an object 1130 for providing a notification that data is being found, on the screen 1100.
- the electronic device may perform tasks after the data is found (i.e., a task to receive a user input to select data to be transmitted or received, from the found data, a task to transmit or receive the selected data, and the like) based on the separate sequence of tasks.
- the separate sequence of tasks may be received from the intelligence server 200, and a point in time when the separate sequence of tasks is received may be different depending on the context such as a point in time when a user first makes a speech, a point in time when the delayed task is performed in background, or the like.
- the electronic device may output a list including information 1151 about a type of each found data, a button 1153 that allows each data to be selected, and the like, on the screen 1100.
- FIG. 12 is a view for describing a method of outputting an object for providing a notification of the presence of a delayed task, according to an embodiment of the present disclosure.
- an electronic device e.g., the electronic device 600
- the electronic device may output an object for providing a notification of the presence of the delayed task, on a screen 1200 of a display (e.g., the display 630).
- an electronic device may launch an intelligence app such as a speech recognition app stored in a memory (e.g., the memory 670).
- the electronic device may display the UI of the intelligence app on the screen 1200.
- the electronic device may enter a standby state for receiving a user's voice input and may receive the user's voice input through a microphone (e.g., the microphone 610) in the standby state.
- the electronic device may display a first object 1210 for providing a notification that the user's voice input is being received, on the screen 1200.
- the electronic device may launch the intelligence app and may activate the microphone so as to receive the voice input.
- the electronic device may transmit the voice data corresponding to the received voice input to an external electronic device (e.g., the intelligence server 200) through a communication circuit (e.g., the communication circuit 690).
- the external electronic device may convert the received voice data to text data, may determine a sequence of tasks including sequence information about tasks for performing the function of at least one app included in the memory of the electronic device, based on the converted text data, and may transmit the determined sequence of tasks to the electronic device.
- the electronic device may display a second object 1230 indicating that the electronic device is in a standby state for receiving the sequence of tasks, on the screen 1200.
- the electronic device may output state information about the delayed task on the screen 1200.
- the electronic device may output a third object 1250 indicating a type of the delayed task on the screen 1200.
- the third object 1250 may further include content for providing a notification that the size of an object (e.g., the third object 1250) for providing a notification of the execution time of the delayed task or the presence of the delayed task is capable of being minimized.
- the electronic device may display an object (e.g., the third object 1250) for providing a notification of the presence of the delayed task, in a partial area of the screen 1200.
- the electronic device may display a fourth object 1273, the size of which is minimized.
- the electronic device may allow the fourth object 1273 to partly overlap only the function execution screen 1271 of another app installed in a memory.
- the electronic device may output state information about the delayed task on the screen 1200. For example, in the case where the execution of the delayed task is completed, the electronic device may output the execution completion result of the delayed task on the screen 1200.
- FIG. 13 is a view for describing a method of performing another task associated with a delayed task, according to an embodiment of the present disclosure.
- the processor e.g., the processor 650 of an electronic device (e.g., the electronic device 600) may provide a user with a hint.
- the hint may include an object corresponding to an operation in which the user is capable of performing an additional input.
- the hint may be an example of a user input to be provided to the user for the purpose of obtaining parameter information.
- an electronic device may launch an intelligence app such as a speech recognition app stored in a memory (e.g., the memory 670).
- the electronic device may display the UI of the intelligence app on a screen 1300.
- the electronic device may enter a standby state for receiving a user's voice input and may receive the user's voice input through a microphone (e.g., the microphone 610) in the standby state.
- the electronic device may display a first object 1310 for providing a notification that the user's voice input is being received, on the screen 1300.
- the electronic device may launch the intelligence app and may activate the microphone so as to receive the voice input.
- the electronic device may transmit the voice data corresponding to the received voice input to an external electronic device (e.g., the intelligence server 200) through a communication circuit (e.g., the communication circuit 690).
- the external electronic device may convert the received voice data to text data, may determine a sequence of tasks including sequence information about tasks for performing the function of at least one app included in the memory of the electronic device, based on the converted text data, and may transmit the determined sequence of tasks to the electronic device.
- the electronic device may display a second object 1330 indicating that the electronic device is in a standby state for receiving the sequence of tasks, on the screen 1300.
- the electronic device may output state information about the delayed task on the screen 1300. For example, the electronic device may output a third object 1351 indicating a type of the delayed task and the fourth object 1353 indicating the execution time of the delayed task, on the screen 1300.
- the electronic device may determine a hint to be provided to a user. For example, in the case where a task, which requires the parameter information, from among other tasks other than the delayed task is present, the electronic device may determine the hint to be provided to a user for the purpose of obtaining the parameter information.
- an intelligence agent e.g., the intelligence agent 151 included in the processor may transmit a hint provision request to a suggestion module (e.g., the suggestion module 155c) included in the processor. If receiving the hint provision request from the intelligence agent, a hint provider in the suggestion module may receive the request and may request a contextual hint generator to generate a hint.
- the contextual hint generator may receive information from a context module (e.g., the context module 155a) or a persona module (e.g., the persona module 155b) by using a condition checker.
- the contextual hint generator may set a condition model in the suggestion module by using the received information and may verify the condition module to generate a hint matched to context. If the generated hint is transmitted to a hint provider, the hint provider may sort hints to be showed to the user according to internal rules and may display selected hints.
- the electronic device may output a fifth object 1370 indicating the determined hint on the screen 1300.
- a fifth object 1370 indicating the determined hint on the screen 1300.
- an object e.g., a UI for searching for another device
- an additional input may be displayed in the fifth object 1370.
- FIG. 14 is a view for describing a method of performing a task, which requires a user's voice input, from among other tasks associated with a delayed task, according to an embodiment of the present disclosure.
- the electronic device may proceed to a procedure to receive the user input.
- the electronic device may output a user interface associated with the parameter information on a screen 1400 of a display (e.g., the display 630) for the purpose of obtaining parameter information necessary to perform the task.
- the electronic device may receive a user input by using a voice input.
- the electronic device may request a user to enter the parameter information by using a voice and may activate a microphone (e.g., the microphone 610) to receive the user's voice input.
- an electronic device may launch an intelligence app such as a speech recognition app stored in a memory (e.g., the memory 670).
- the electronic device may display the UI of the intelligence app on the screen 1400.
- the electronic device may enter a standby state for receiving a user's voice input and may receive the user's voice input through a microphone in the standby state.
- the electronic device may display a first object 1410 for providing a notification that the user's voice input is being received, on the screen 1400.
- the electronic device may launch the intelligence app and may activate the microphone so as to receive the voice input.
- the electronic device may transmit the voice data corresponding to the received voice input to an external electronic device (e.g., the intelligence server 200) through a communication circuit (e.g., the communication circuit 690).
- the external electronic device may convert the received voice data to text data, may determine a sequence of tasks including sequence information about tasks for performing the function of at least one app included in the memory of the electronic device, based on the converted text data, and may transmit the determined sequence of tasks to the electronic device.
- the electronic device may display a second object 1420 indicating that the electronic device is in a standby state for receiving the sequence of tasks, on the screen 1400.
- the electronic device may output state information about the delayed task on the screen 1400.
- the electronic device may output a third object 1431 indicating a type of the delayed task and the fourth object 1433 indicating the execution time of the delayed task, on the screen 1400.
- the electronic device may determine whether a task, which requires parameter information, from among other tasks other than the delayed task is present. In the case where another task requiring the parameter information is present, as illustrated in a fourth state 1404, the electronic device may output a fifth object 1440, which allows the user to speak a voice associated with the parameter information, on the screen 1400 for the purpose of obtaining the parameter information.
- the electronic device may determine whether a task, which requires the parameter information, from among other tasks other than the delayed task is present; in the case where another task requiring the parameter information is present, the electronic device may output the fifth object 1440 on the screen 1400. Furthermore, the electronic device may activate the microphone for the purpose of receiving the user's voice. In this case, the electronic device may receive the user's voice input associated with the parameter information through the microphone; as illustrated in a first state 1405, the electronic device may display a sixth object 1450 for providing a notification that the user's voice input is being received, on the screen 1400.
- FIG. 15 is a view for describing a method to suggest a function similar to a delayed task, according to an embodiment.
- an electronic device may perform a function similar to the delayed task or may suggest the execution of the similar function to a user. For example, in the case where the delayed task is performed as a stage for performing a first function, while performing the delayed task in background, the electronic device may perform a second function similar to the first function.
- the electronic device may launch an intelligence app such as a speech recognition app stored in a memory (e.g., the memory 670).
- the electronic device may display the UI of the intelligence app on the screen 1500.
- the electronic device may enter a standby state for receiving a user's voice input and may receive the user's voice input through a microphone in the standby state.
- the electronic device may display a first object 1510 for providing a notification that the user's voice input is being received, on the screen 1500.
- a hardware key e.g., the hardware key 112
- the electronic device may launch the intelligence app and may activate the microphone so as to receive the voice input.
- the electronic device may transmit the voice data corresponding to the received voice input to an external electronic device (e.g., the intelligence server 200) through a communication circuit (e.g., the communication circuit 690).
- the external electronic device may convert the received voice data to text data, may determine a sequence of tasks including sequence information about tasks for performing the function of at least one app included in the memory of the electronic device, based on the converted text data, and may transmit the determined sequence of tasks to the electronic device.
- the electronic device may display a second object 1520 indicating that the electronic device is in a standby state for receiving the sequence of tasks, on the screen 1500.
- the electronic device may output state information about the delayed task on the screen 1500. For example, the electronic device may output a third object 1531 indicating a type of the delayed task and the fourth object 1533 indicating the execution time of the delayed task, on the screen 1500.
- the electronic device may suggest a function (e.g., second function) similar to a function (e.g., first function) to be performed by the delayed task, to the user.
- a function e.g., second function
- the electronic device may output a fifth object 1540 indicating the content suggesting the execution of the second function, on the screen 1500.
- the first function is a function to output a sound through a first output path (e.g., Bluetooth headphone)
- the electronic device may suggest the execution of the second function to output a sound through a second output path (e.g., speaker), to the user.
- the electronic device may suggest the execution of the second function to the user.
- the electronic device may suggest that the user should perform the second function similar to the first function to be performed by the delayed task. For example, before the Bluetooth headphone is connected, the electronic device may suggest to the user whether to listen to music through a speaker. In this case, if the Bluetooth headphone is connected, the electronic device may notify a user that the connection to the Bluetooth headphone is completed, and may output the music, which is output through the speaker, to the Bluetooth headphone.
- the electronic device may suggest the execution of the similar second function to the user, instead of the first function to be performed by the delayed task.
- the electronic device may suggest to the user to listen to the music through the speaker instead of the Bluetooth headphone.
- the electronic device may perform the second function. For example, the electronic device may output a sixth object 1550 associated with the execution of the second function, on the screen 1500.
- the electronic device may terminate the output of the sixth object 1550 associated with the execution of the second function and may output the execution completion result of the delayed task on the screen 1500.
- FIG. 16 is a view for describing another method to suggest a function similar to a delayed task, according to an embodiment.
- an electronic device may perform a function similar to the delayed task or may suggest the execution of the similar function to a user. For example, in the case where the delayed task is performed as a stage for performing a first function, while performing the delayed task in background, the electronic device may perform a second function similar to the first function.
- the electronic device may launch an intelligence app such as a speech recognition app stored in a memory (e.g., the memory 670).
- the electronic device may display the UI of the intelligence app on the screen 1600.
- the electronic device may enter a standby state for receiving a user's voice input and may receive the user's voice input through a microphone in the standby state.
- the electronic device may display a first object 1610 for providing a notification that the user's voice input is being received, on the screen 1600.
- a hardware key e.g., the hardware key 112
- the electronic device may launch the intelligence app and may activate the microphone so as to receive the voice input.
- the electronic device may transmit the voice data corresponding to the received voice input to an external electronic device (e.g., the intelligence server 200) through a communication circuit (e.g., the communication circuit 690).
- the external electronic device may convert the received voice data to text data, may determine a sequence of tasks including sequence information about tasks for performing the function of at least one app included in the memory of the electronic device, based on the converted text data, and may transmit the determined sequence of tasks to the electronic device.
- the electronic device may display a second object 1620 indicating that the electronic device is in a standby state for receiving the sequence of tasks, on the screen 1600.
- the electronic device may output state information about the delayed task on the screen 1600.
- the electronic device may output a third object 1631 indicating a type of the delayed task and the fourth object 1633 indicating the execution time of the delayed task, on the screen 1600.
- the electronic device may suggest a function (e.g., second function) similar to a function (e.g., first function) to be performed by the delayed task, to the user.
- a function e.g., second function
- the electronic device may output a fifth object 1640 indicating the content suggesting the execution of the second function, on the screen 1600.
- the first function is a function to output a sound through a first output path (e.g., Bluetooth headphone)
- the electronic device may suggest the execution of the second function to output a sound through a second output path (e.g., speaker), to the user.
- the electronic device may output the specified sound (e.g., background music) through the second output path.
- the electronic device may perform the second function. For example, the electronic device may output a sixth object 1650 associated with the execution of the second function, on the screen 1600.
- the electronic device may terminate the output of a sixth object 1650 associated with the execution of the second function and may output the execution completion result of the delayed task on the screen 1600.
- FIG. 17 is a view for describing a method of displaying a state of a delayed task, according to an embodiment of the present disclosure.
- an electronic device may launch an intelligence app such as a speech recognition app stored in a memory (e.g., the memory 670).
- an intelligence app such as a speech recognition app stored in a memory (e.g., the memory 670).
- the electronic device may launch the intelligence app.
- the electronic device may launch the intelligence app and may display the UI of the intelligence app on the screen 1700 of a display (e.g., the display 630).
- the electronic device may output the UI of the intelligence app to the partial area (e.g., lower end area) of the screen 1700.
- the electronic device may output the UI of the intelligence app to occupy most of the area of the screen 1700.
- the electronic device may enter a standby state for receiving a user's voice input, and may activate a microphone so as to receive a voice input in the standby state.
- the electronic device may display a first object 1710 indicating that the user's voice input is capable of being received, on the screen 1700.
- the electronic device may transmit the voice data corresponding to the received voice input to an external electronic device (e.g., the intelligence server 200) through a communication circuit (e.g., the communication circuit 690).
- the external electronic device may convert the received voice data to text data, may determine a sequence of tasks including sequence information about tasks for performing the function of at least one app included in the memory of the electronic device, based on the converted text data, and may transmit the determined sequence of tasks to the electronic device.
- the external electronic device may transmit the converted text data to an electronic device; and, as illustrated in a second state 1702, the electronic device may display a second object 1715 including the received text data, on the screen 1700.
- the electronic device may perform the tasks based on the sequence information of the tasks included in the sequence of tasks.
- the electronic device may display a third object 1720 for providing a notification of the execution of the tasks, on the screen 1700.
- the electronic device may extend the time-out time of the delayed task.
- the electronic device may minimize the UI of the intelligence app for the purpose of outputting state information (e.g., execution state information) about the delayed task on the screen 1700.
- state information e.g., execution state information
- the electronic device may terminate the output of the UI of the intelligence app, leaving only a specified icon 1770 (e.g., the icon of the intelligence app, or the like).
- the electronic device may not output the specified icon 1770 in the first state 1701 and the second state 1702, and, as illustrated in the third state 1703, may output the specified icon 1770 in a procedure of minimizing the UI of the intelligence app.
- the electronic device may display state information about the delayed task, for example, execution state information of the delayed task, on the screen 1700.
- state information about the delayed task for example, execution state information of the delayed task
- the electronic device may display a fourth object 1730 indicating an item corresponding to the specific data in the list of pieces of downloadable data.
- the fourth object 1730 may include an identification name 1731 of the specific data, an identification image 1733 of the specific data, a download state 1735 of the specific data, download progress rate 1737 of the specific data, or the like.
- the electronic device may display the execution completion result of the delayed task on the screen 1700. For example, as illustrated in a fourth state 1704, the electronic device may change the download state 1735 of the specific data to a completion state and may delete the download progress rate 1737 of the specific data.
- a method indicating the execution completion result of the delayed task is not limited thereto.
- the electronic device may change the download progress rate 1737 of the specific data to information (e.g., 100%) corresponding to the completion state without deleting the download progress rate 1737 of the specific data.
- the electronic device may perform another task (e.g., displaying downloaded data) associated with the delayed task.
- the electronic device may display the execution completion result of the other task on the screen 1700.
- the electronic device may display the fifth object 1750 corresponding to the downloaded data on the screen 1700.
- the electronic device may provide a user interface such that a user input is possible.
- the electronic device may interrupt the execution of the delayed task. In this case, the electronic device may cancel the processing of a sequence of tasks including the delayed task.
- FIG. 18 is a view illustrating an operating method of an electronic device associated with a method of displaying a state of a delayed task, according to an embodiment of the present disclosure.
- an electronic device may launch an intelligence app such as a speech recognition app stored in a memory (e.g., the memory 670).
- the intelligence app may include instructions associated with an intelligence agent 1850 (e.g., the intelligence agent 151) and an execution manager module 1830 (e.g., execution manager module 153).
- the processor e.g., the processor 650 of an electronic device may load instructions included in the intelligence app onto a memory and may execute the instructions so as to perform the functions of intelligence agent 1850 and execution manager module 1830.
- the intelligence agent 1850 may obtain voice data through a microphone (e.g., the microphone 610).
- the intelligence agent 1850 may transmit the voice data obtained through a communication circuit (e.g., the communication circuit 690), to an intelligence server 1870.
- the intelligence server 1870 may convert the received voice data to text data and may determine a sequence of tasks including sequence information about tasks for performing the function of at least one application 1810, which is installed in a memory of an electronic device, based on the converted text data. Furthermore, in operation 1872, the intelligence server 1870 may transmit the determined sequence of tasks to the intelligence agent 1850.
- the intelligence agent 1850 receiving the sequence of tasks from the intelligence server 1870 may transmit the sequence of tasks to the execution manager module 1830.
- the execution manager module 1830 receiving the sequence of tasks may transmit tasks to the corresponding application 1810 based on sequence information of the tasks included in the sequence of tasks. For example, as in operation 1831, the execution manager module 1830 may transmit a first task to the application 1810.
- the application 1810 receiving the first task may perform the first task.
- the application 1810 may transmit the execution completion response of the first task to the execution manager module 1830.
- the execution manager module 1830 receiving the execution completion response of the first task may determine whether another second task, which is associated with the first task, from among the tasks is present; in the case where the second task is present, as in operation 1832, the execution manager module 1830 may transmit the second task to the application 1810. In this case, in operation 1813, the application 1810 may perform the received second task.
- the application 1810 may request the execution manager module 1830 to extend the time-out time associated with the second task.
- the execution manager module 1830 may extend the time-out time associated with the second task. For example, the execution manager module 1830 may set the time-out time associated with the second task to the extended time again and may reset a time count.
- the application 1810 may request the intelligence agent 1850 to display the execution state of the second task.
- the intelligence agent 1850 may output the execution state information associated with the second task on the screen of a display (e.g., the display 630).
- the intelligence agent 1850 may minimize the UI of the intelligence app. For example, the intelligence agent 1850 may hide the UI of the intelligence app and may display the icon of the intelligence app in a specific area of the screen.
- the application 1810 may obtain an input to select the icon of the intelligence app. For example, in a state where the execution state information about the second task is displayed, the application 1810 may obtain a user input to select the icon of the intelligence app. In this case, the application 1810 may interrupt the execution of the second task. Furthermore, as in operation 1817, the application 1810 may notify the execution manager module 1830 or the intelligence agent 1850 that the execution of the second task is interrupted.
- the intelligence agent 1850 may interrupt or cancel the processing of the sequence of tasks including the second task.
- FIG. 19 illustrates an electronic device 1901 in a network environment 1900, according to various embodiments.
- the electronic device 1901 may include various types of devices.
- the electronic device 1901 may include at least one of a portable communication device (e.g., a smartphone), a computer device (e.g., a personal digital assistant (PDA), a tablet personal computers (PC), a laptop PC, a desktop PC, a workstation, or a server), a portable multimedia device (e.g., an e-book reader or an MP3 player), a portable medical device (e.g., a heart rate, blood glucose, blood pressure, or a thermometer), a camera, or a wearable device.
- a portable communication device e.g., a smartphone
- a computer device e.g., a personal digital assistant (PDA), a tablet personal computers (PC), a laptop PC, a desktop PC, a workstation, or a server
- a portable multimedia device e.g., an e-book reader
- a wearable device may include at least one of an accessory type of a device (e.g., a timepiece, a ring, a bracelet, an anklet, a necklace, glasses, a contact lens, or a head-mounted device (HMD)), one-piece fabric or clothes type of a device (e.g., electronic clothes), a body-attached type of a device (e.g., a skin pad or a tattoo), or a bio-implantable circuit.
- an accessory type of a device e.g., a timepiece, a ring, a bracelet, an anklet, a necklace, glasses, a contact lens, or a head-mounted device (HMD)
- one-piece fabric or clothes type of a device e.g., electronic clothes
- a body-attached type of a device e.g., a skin pad or a tattoo
- bio-implantable circuit e.g., a bio-implantable circuit.
- the electronic device may include at least one of, for example, televisions (TVs), digital versatile disc (DVD) players, audio devices, audio accessory devices (e.g., a speaker, a headphone, or a headset), a refrigerator, an air conditioner, a cleaner, an oven, a microwave oven, a washing machine, an air cleaner, a set-top box, a home automation control panel, a security control panel, a game console, an electronic dictionary, an electronic key, a camcorder, or an electronic picture frame.
- TVs televisions
- DVD digital versatile disc
- audio accessory devices e.g., a speaker, a headphone, or a headset
- a refrigerator e.g., a refrigerator, an air conditioner, a cleaner, an oven, a microwave oven, a washing machine, an air cleaner, a set-top box, a home automation control panel, a security control panel, a game console, an electronic dictionary, an electronic key, a camcorder, or an electronic picture frame.
- the electronic device may include at least one of a navigation device, a global navigation satellite system (GNSS), an event data recorder (EDR) (e.g., a black box for a car, a ship, or a plane), a vehicle infotainment device (e.g., a head-up display for a vehicle), an industrial or home robot, a drone, an automated teller machine (ATM), a point of sales (POS) device, a measurement device (e.g., a water meter, an electricity meter, or a gas meter), or Internet of things (e.g., a light bulb, a sprinkler device, a fire alarm, a thermostat, or a street lamp).
- GNSS global navigation satellite system
- EDR event data recorder
- vehicle infotainment device e.g., a head-up display for a vehicle
- ATM automated teller machine
- POS point of sales
- a measurement device e.g., a water meter, an electricity meter
- the electronic device is not limited to the above-described devices.
- the electronic device may provide functions of multiple devices in the complex manner.
- the term "user" used herein may refer to a person who uses the electronic device or may refer to a device (e.g., an artificial intelligence electronic device) that uses the electronic device.
- the electronic device 1901 may communicate with an electronic device 1902 through local wireless communication 1998 or may communication with an electronic device 1904 or a server 1908 through a network 1999. According to an embodiment, the electronic device 1901 may communicate with the electronic device 1904 through the server 1908.
- the electronic device 1901 may include a bus 1910, a processor 1920 (e.g., the processor 650) a memory 1930 (e.g., the memory 670), an input device 1950 (e.g., a microphone 610 or a mouse), a display 1960 (e.g., the display 630), an audio module 1970, a sensor module 1976, an interface 1977, a haptic module 1979, a camera module 1980, a power management module 1988, a battery 1989, a communication module 1990 (e.g., the communication circuit 690), and a subscriber identification module 1996.
- the electronic device 1901 may not include at least one (e.g., the display 1960 or the camera module 1980) of the above-described elements or may further include other element(s).
- the bus 1910 may interconnect the above-described elements 1920 to 1990 and may include a circuit for conveying signals (e.g., a control message or data) between the above-described elements.
- signals e.g., a control message or data
- the processor 1920 may include one or more of a central processing unit (CPU), an application processor (AP), a graphic processing unit (GPU), an image signal processor (ISP) of a camera or a communication processor (CP).
- the processor 1920 may be implemented with a system on chip (SoC) or a system in package (SiP).
- SoC system on chip
- SiP system in package
- the processor 1920 may drive an operating system (OS) or an application to control at least one of another element (e.g., hardware or software element) connected to the processor 1920 and may process and compute various data.
- OS operating system
- another element e.g., hardware or software element
- the processor 1920 may load a command or data, which is received from at least one of other elements (e.g., the communication module 1990), into a volatile memory 1932 to process the command or data and may store the process result data into a nonvolatile memory 1934. Further, the processor 1920 may include the intelligence agent 151, the intelligence service module 155, and execution manager module 153 as shown in Figure 2 .
- the memory 1930 may include, for example, the volatile memory 1932 or the nonvolatile memory 1934.
- the volatile memory 1932 may include, for example, a random access memory (RAM) (e.g., a dynamic RAM (DRAM), a static RAM (SRAM), or a synchronous dynamic RAM (SDRAM)).
- the nonvolatile memory 1934 may include, for example, a one-time programmable read-only memory (OTPROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a mask ROM, a flash ROM, a flash memory, a hard disk drive, or a solid-state drive (SSD).
- OTPROM one-time programmable read-only memory
- PROM programmable read-only memory
- EPROM erasable programmable read-only memory
- EEPROM electrically erasable programmable read-only memory
- nonvolatile memory 1934 may be configured in the form of an internal memory 1936 or the form of an external memory 1938 which is available through connection only if necessary, according to the connection with the electronic device 1901.
- the external memory 1938 may further include a flash drive such as compact flash (CF), secure digital (SD), micro secure digital (Micro-SD), mini secure digital (Mini-SD), extreme digital (xD), a multimedia card (MMC), or a memory stick.
- the external memory 1938 may be operatively or physically connected with the electronic device 1901 in a wired manner (e.g., a cable or a universal serial bus (USB)) or a wireless (e.g., Bluetooth) manner.
- the memory 1930 may store, for example, at least one different software element, such as an instruction or data associated with the program 1940, of the electronic device 1901.
- the program 1940 may include, for example, a kernel 1941, a library 1943, an application framework 1945 or an application program (interchangeably, "application") 1947.
- the memory 1930 may store a first app 141a associated with tasks 141b, and a second app 143a associated with tasks 143b.
- the input device 1950 may include a microphone, a mouse, or a keyboard.
- the keyboard may include a keyboard physically connected or a keyboard virtually displayed through the display 1960.
- the microphone may be configured to receive a voice input.
- the display 1960 may include a display, a hologram device or a projector, and a control circuit to control a relevant device.
- the screen may include, for example, a liquid crystal display (LCD), a light emitting diode (LED) display, an organic LED (OLED) display, a microelectromechanical systems (MEMS) display, or an electronic paper display.
- the display may be flexibly, transparently, or wearably implemented.
- the display may include a touch circuitry, which is able to detect a user's input such as a gesture input, a proximity input, or a hovering input or a pressure sensor (interchangeably, a force sensor) which is able to measure the intensity of the pressure by the touch.
- the touch circuit or the pressure sensor may be implemented integrally with the display or may be implemented with at least one sensor separately from the display.
- the hologram device may show a stereoscopic image in a space using interference of light.
- the projector may project light onto a screen to display an image.
- the screen may be located inside or outside the electronic device 1901.
- the display module may be configured to display objects such as the objects of Figures 9-17 .
- the audio module 1970 may convert, for example, from a sound into an electrical signal or from an electrical signal into the sound. According to an embodiment, the audio module 1970 may acquire sound through the input device 1950 (e.g., a microphone) or may output sound through an output device (not illustrated) (e.g., a speaker or a receiver) included in the electronic device 1901, an external electronic device (e.g., the electronic device 1902 (e.g., a wireless speaker or a wireless headphone)) or an electronic device 1906 (e.g., a wired speaker or a wired headphone) connected with the electronic device 1901
- an output device not illustrated
- an external electronic device e.g., the electronic device 1902 (e.g., a wireless speaker or a wireless headphone)
- an electronic device 1906 e.g., a wired speaker or a wired headphone
- the sensor module 1976 may measure or detect, for example, an internal operating state (e.g., power or temperature) or an external environment state (e.g., an altitude, a humidity, or brightness) of the electronic device 1901 to generate an electrical signal or a data value corresponding to the information of the measured state or the detected state.
- an internal operating state e.g., power or temperature
- an external environment state e.g., an altitude, a humidity, or brightness
- the sensor module 1976 may include, for example, at least one of a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor (e.g., a red, green, blue (RGB) sensor), an infrared sensor, a biometric sensor (e.g., an iris sensor, a fingerprint senor, a heartbeat rate monitoring (HRM) sensor, an e-nose sensor, an electromyography (EMG) sensor, an electroencephalogram (EEG) sensor, an electrocardiogram (ECG) sensor, a temperature sensor, a humidity sensor, an illuminance sensor, or an UV sensor.
- a gesture sensor e.g., a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor (e.g., a red, green, blue (RGB) sensor), an in
- the sensor module 1976 may further include a control circuit for controlling at least one or more sensors included therein.
- the sensor module 1976 may be controlled by using the processor 1920 or a processor (e.g., a sensor hub) separate from the processor 1920.
- a processor e.g., a sensor hub
- the separate processor may operate without awakening the processor 1920 to control at least a portion of the operation or the state of the sensor module 1976.
- the interface 1977 may include a high definition multimedia interface (HDMI), a universal serial bus (USB), an optical interface, a recommended standard 232 (RS-232), a D-subminiature (D-sub), a mobile high-definition link (MHL) interface, a SD card/MMC interface, or an audio interface.
- a connector 1978 may physically connect the electronic device 1901 and the electronic device 1906.
- the connector 1978 may include, for example, an USB connector, an SD card/MMC connector, or an audio connector (e.g., a headphone connector).
- the haptic module 1979 may convert an electrical signal into mechanical stimulation (e.g., vibration or motion) or into electrical stimulation.
- the haptic module 1979 may apply tactile or kinesthetic stimulation to a user.
- the haptic module 1979 may include, for example, a motor, a piezoelectric element, or an electric stimulator.
- the camera module 1980 may capture, for example, a still image and a moving picture.
- the camera module 1980 may include at least one lens (e.g., a wide-angle lens and a telephoto lens, or a front lens and a rear lens), an image sensor, an image signal processor, or a flash (e.g., a light emitting diode or a xenon lamp).
- the power management module 1988 which is to manage the power of the electronic device 1901, may constitute at least a portion of a power management integrated circuit (PMIC).
- PMIC power management integrated circuit
- the battery 1989 may include a primary cell, a secondary cell, or a fuel cell and may be recharged by an external power source to supply power at least one element of the electronic device 1901.
- the communication module 1990 may establish a communication channel between the electronic device 1901 and an external device (e.g., the first external electronic device 1902, the second external electronic device 1904, or the server 1908).
- the communication module 1990 may support wired communication or wireless communication through the established communication channel.
- the communication module 1990 may include a wireless communication module 1992 or a wired communication module 1994.
- the communication module 1990 may communicate with the external device through a first network 1998 (e.g. a wireless local area network such as Bluetooth or infrared data association (IrDA)) or a second network 1999 (e.g., a wireless wide area network such as a cellular network) through a relevant module among the wireless communication module 1992 or the wired communication module 1994.
- a first network 1998 e.g. a wireless local area network such as Bluetooth or infrared data association (IrDA)
- a second network 1999 e.g., a wireless wide area network such as a cellular network
- the wireless communication module 1992 may support, for example, cellular communication, local wireless communication, and global navigation satellite system (GNSS) communication.
- the cellular communication may include, for example, long-term evolution (LTE), LTE Advance (LTE-A), code division multiple access (CMA), wideband CDMA (WCDMA), universal mobile telecommunications system (UMTS), wireless broadband (WiBro), or global system for mobile communications (GSM).
- the local wireless communication may include wireless fidelity (Wi-Fi), Wi-Fi Direct, light fidelity (Li-Fi), Bluetooth, Bluetooth low energy (BLE), Zigbee, near field communication (NFC), magnetic secure transmission (MST), radio frequency (RF), or a body area network (BAN).
- the GNSS may include at least one of a global positioning system (GPS), a global navigation satellite system (Glonass), Beidou Navigation Satellite System (Beidou), the European global satellite-based navigation system (Galileo), or the like.
- GPS global positioning system
- Glonass global navigation satellite system
- Beidou Beidou Navigation Satellite System
- Galileo European global satellite-based navigation system
- the wireless communication module 1992 when the wireless communication module 1992 supports cellular communication, the wireless communication module 1992 may, for example, identify or authenticate the electronic device 1901 within a communication network using the subscriber identification module (e.g., a SIM card) 1996.
- the wireless communication module 1992 may include a communication processor (CP) separate from the processor 2820 (e.g., an application processor (AP).
- the communication processor may perform at least a portion of functions associated with at least one of elements 1910 to 1996 of the electronic device 1901 in substitute for the processor 1920 when the processor 1920 is in an inactive (sleep) state, and together with the processor 1920 when the processor 1920 is in an active state.
- the wireless communication module 1992 may include a plurality of communication modules, each supporting only a relevant communication scheme among cellular communication, short-range wireless communication, or a GNSS communication scheme.
- the wireless communications module 1992 may transmit voice data to an intelligence server 200 and receive a sequence of tasks from the intelligence server 200.
- the wired communication module 1994 may include, for example, include a local area network (LAN) service, a power line communication, or a plain old telephone service (POTS).
- LAN local area network
- POTS plain old telephone service
- the first network 1998 may employ, for example, Wi-Fi direct or Bluetooth for transmitting or receiving instructions or data through wireless direct connection between the electronic device 1901 and the first external electronic device 1902.
- the second network 1999 may include a telecommunication network (e.g., a computer network such as a LAN or a WAN, the Internet or a telephone network) for transmitting or receiving instructions or data between the electronic device 1901 and the second electronic device 1904.
- the first network 1998 can include the intelligence server 200.
- the instructions or the data may be transmitted or received between the electronic device 1901 and the second external electronic device 1904 through the server 1908 connected with the second network.
- Each of the external first and second external electronic devices 1902 and 1904 may be a device of which the type is different from or the same as that of the electronic device 1901.
- all or a part of operations that the electronic device 1901 will perform may be executed by another or a plurality of electronic devices (e.g., the electronic devices 1902 and 1904 or the server 1908).
- the electronic device 1901 may not perform the function or the service internally, but may alternatively or additionally transmit requests for at least a part of a function associated with the electronic device 1901 to any other device (e.g., the electronic device 1902 or 1904 or the server 1908).
- the other electronic device e.g., the electronic device 1902 or 1904 or the server 1908
- the electronic device 1901 may provide the requested function or service using the received result or may additionally process the received result to provide the requested function or service.
- cloud computing, distributed computing, or client-server computing may be used.
- first or “second,” and the like, may express their elements regardless of their priority or importance and may be used to distinguish one element from another element but is not limited to these components.
- an (e.g., first) element is referred to as being “(operatively or communicatively) coupled with/to” or “connected to” another (e.g., second) element, it may be directly coupled with/to or connected to the other element or an intervening element (e.g., a third element) may be present.
- a device configured to may mean that the device is “capable of' operating together with another device or other components.
- a “processor configured to (or set to) perform A, B, and C” may mean a dedicated processor (e.g., an embedded processor) for performing corresponding operations or a generic-purpose processor (e.g., a central processing unit (CPU) or an application processor) which performs corresponding operations by executing one or more software programs which are stored in a memory device (e.g., the memory 430).
- a dedicated processor e.g., an embedded processor
- a generic-purpose processor e.g., a central processing unit (CPU) or an application processor
- module used in this specification may include a unit implemented with hardware, or hardware programmed with software stored therein.
- module may be interchangeably used with the term “logic”, “logic block”, “component”, “circuit”, and the like.
- the “module” may be a minimum unit of an integrated component or a part thereof or may be a minimum unit for performing one or more functions or a part thereof.
- the “module” may be implemented mechanically or electronically and may include, for example, an application-specific IC (ASIC) chip, a field-programmable gate array (FPGA), and a programmable-logic device for performing some operations, which are known or will be developed.
- ASIC application-specific IC
- FPGA field-programmable gate array
- At least a part of an apparatus e.g., modules or functions thereof
- a method e.g., operations
- the instruction when executed by a processor (e.g., a processor 420), may cause the processor to perform a function corresponding to the instruction.
- the computer-readable recording medium may include a hard disk, a floppy disk, a magnetic media (e.g., a magnetic tape), an optical media (e.g., a compact disc read only memory (CD-ROM) and a digital versatile disc (DVD), a magneto-optical media (e.g., a floptical disk)), an embedded memory, and the like.
- the one or more instructions may contain a code made by a compiler or a code executable by an interpreter.
- Each element may be composed of single entity or a plurality of entities, a part of the above-described sub-elements may be omitted or may further include other elements.
- some elements e.g., a module or a program module
- operations executed by modules, program modules, or other elements may be executed by a successive method, a parallel method, a repeated method, or a heuristic method, or at least one part of operations may be executed in different sequences or omitted. Alternatively, other operations may be added.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- General Health & Medical Sciences (AREA)
- User Interface Of Digital Computer (AREA)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170055377A KR102298947B1 (ko) | 2017-04-28 | 2017-04-28 | 음성 데이터 처리 방법 및 이를 지원하는 전자 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
EP3396665A1 EP3396665A1 (en) | 2018-10-31 |
EP3396665B1 true EP3396665B1 (en) | 2019-09-18 |
Family
ID=62196303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP18169657.6A Active EP3396665B1 (en) | 2017-04-28 | 2018-04-26 | Voice data processing method and electronic device supporting the same |
Country Status (4)
Country | Link |
---|---|
US (1) | US10838765B2 (zh) |
EP (1) | EP3396665B1 (zh) |
KR (1) | KR102298947B1 (zh) |
CN (1) | CN108829235B (zh) |
Families Citing this family (140)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
US8676904B2 (en) | 2008-10-02 | 2014-03-18 | Apple Inc. | Electronic devices with voice command and contextual data processing capabilities |
US20120309363A1 (en) | 2011-06-03 | 2012-12-06 | Apple Inc. | Triggering notifications associated with tasks items that represent tasks to perform |
US10417037B2 (en) | 2012-05-15 | 2019-09-17 | Apple Inc. | Systems and methods for integrating third party services with a digital assistant |
CN104969289B (zh) | 2013-02-07 | 2021-05-28 | 苹果公司 | 数字助理的语音触发器 |
US10652394B2 (en) | 2013-03-14 | 2020-05-12 | Apple Inc. | System and method for processing voicemail |
US10748529B1 (en) | 2013-03-15 | 2020-08-18 | Apple Inc. | Voice activated device for use with a voice-based digital assistant |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
WO2015020942A1 (en) | 2013-08-06 | 2015-02-12 | Apple Inc. | Auto-activating smart responses based on activities from remote devices |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
WO2015184186A1 (en) | 2014-05-30 | 2015-12-03 | Apple Inc. | Multi-command single utterance input method |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
US10460227B2 (en) | 2015-05-15 | 2019-10-29 | Apple Inc. | Virtual assistant in a communication session |
US10200824B2 (en) | 2015-05-27 | 2019-02-05 | Apple Inc. | Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device |
US20160378747A1 (en) | 2015-06-29 | 2016-12-29 | Apple Inc. | Virtual assistant for media playback |
US10331312B2 (en) | 2015-09-08 | 2019-06-25 | Apple Inc. | Intelligent automated assistant in a media environment |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
US10740384B2 (en) | 2015-09-08 | 2020-08-11 | Apple Inc. | Intelligent automated assistant for media search and playback |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10956666B2 (en) | 2015-11-09 | 2021-03-23 | Apple Inc. | Unconventional virtual assistant interactions |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
US9947316B2 (en) | 2016-02-22 | 2018-04-17 | Sonos, Inc. | Voice control of a media playback system |
US10095470B2 (en) | 2016-02-22 | 2018-10-09 | Sonos, Inc. | Audio response playback |
US9772817B2 (en) | 2016-02-22 | 2017-09-26 | Sonos, Inc. | Room-corrected voice detection |
US9965247B2 (en) | 2016-02-22 | 2018-05-08 | Sonos, Inc. | Voice controlled media playback system based on user profile |
US10264030B2 (en) | 2016-02-22 | 2019-04-16 | Sonos, Inc. | Networked microphone device control |
US9811314B2 (en) | 2016-02-22 | 2017-11-07 | Sonos, Inc. | Metadata exchange involving a networked playback system and a networked microphone system |
US9978390B2 (en) | 2016-06-09 | 2018-05-22 | Sonos, Inc. | Dynamic player selection for audio signal processing |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
US10152969B2 (en) | 2016-07-15 | 2018-12-11 | Sonos, Inc. | Voice detection by multiple devices |
US10134399B2 (en) | 2016-07-15 | 2018-11-20 | Sonos, Inc. | Contextualization of voice inputs |
US10115400B2 (en) | 2016-08-05 | 2018-10-30 | Sonos, Inc. | Multiple voice services |
US9942678B1 (en) | 2016-09-27 | 2018-04-10 | Sonos, Inc. | Audio playback settings for voice interaction |
US9743204B1 (en) | 2016-09-30 | 2017-08-22 | Sonos, Inc. | Multi-orientation playback device microphones |
US10181323B2 (en) | 2016-10-19 | 2019-01-15 | Sonos, Inc. | Arbitration-based voice recognition |
US11204787B2 (en) | 2017-01-09 | 2021-12-21 | Apple Inc. | Application integration with a digital assistant |
US11183181B2 (en) | 2017-03-27 | 2021-11-23 | Sonos, Inc. | Systems and methods of multiple voice services |
US10726832B2 (en) | 2017-05-11 | 2020-07-28 | Apple Inc. | Maintaining privacy of personal information |
DK180048B1 (en) | 2017-05-11 | 2020-02-04 | Apple Inc. | MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
DK201770429A1 (en) | 2017-05-12 | 2018-12-14 | Apple Inc. | LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT |
DK201770411A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | MULTI-MODAL INTERFACES |
US20180336275A1 (en) | 2017-05-16 | 2018-11-22 | Apple Inc. | Intelligent automated assistant for media exploration |
US20180336892A1 (en) | 2017-05-16 | 2018-11-22 | Apple Inc. | Detecting a trigger of a digital assistant |
DK179560B1 (en) | 2017-05-16 | 2019-02-18 | Apple Inc. | FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES |
US10475449B2 (en) | 2017-08-07 | 2019-11-12 | Sonos, Inc. | Wake-word detection suppression |
US10048930B1 (en) | 2017-09-08 | 2018-08-14 | Sonos, Inc. | Dynamic computation of system response volume |
US10446165B2 (en) | 2017-09-27 | 2019-10-15 | Sonos, Inc. | Robust short-time fourier transform acoustic echo cancellation during audio playback |
US10482868B2 (en) | 2017-09-28 | 2019-11-19 | Sonos, Inc. | Multi-channel acoustic echo cancellation |
US10621981B2 (en) | 2017-09-28 | 2020-04-14 | Sonos, Inc. | Tone interference cancellation |
US10051366B1 (en) | 2017-09-28 | 2018-08-14 | Sonos, Inc. | Three-dimensional beam forming with a microphone array |
US10466962B2 (en) | 2017-09-29 | 2019-11-05 | Sonos, Inc. | Media playback system with voice assistance |
US10880650B2 (en) | 2017-12-10 | 2020-12-29 | Sonos, Inc. | Network microphone devices with automatic do not disturb actuation capabilities |
US10818290B2 (en) | 2017-12-11 | 2020-10-27 | Sonos, Inc. | Home graph |
US11410075B2 (en) * | 2018-01-15 | 2022-08-09 | Microsoft Technology Licensing, Llc | Contextually-aware recommendations for assisting users with task completion |
WO2019152722A1 (en) | 2018-01-31 | 2019-08-08 | Sonos, Inc. | Device designation of playback and network microphone device arrangements |
US10818288B2 (en) | 2018-03-26 | 2020-10-27 | Apple Inc. | Natural assistant interaction |
US10928918B2 (en) | 2018-05-07 | 2021-02-23 | Apple Inc. | Raise to speak |
US11145294B2 (en) | 2018-05-07 | 2021-10-12 | Apple Inc. | Intelligent automated assistant for delivering content from user experiences |
DE112018007578T5 (de) * | 2018-05-07 | 2021-07-01 | Bayerische Motoren Werke Aktiengesellschaft | Dialogsystem, das zu Semantik-Verständnis-Mapping zwischen Benutzerabsichten und Maschinenservices fähig ist |
US11175880B2 (en) | 2018-05-10 | 2021-11-16 | Sonos, Inc. | Systems and methods for voice-assisted media content selection |
US10490207B1 (en) * | 2018-05-11 | 2019-11-26 | GM Global Technology Operations LLC | Automated speech recognition using a dynamically adjustable listening timeout |
US10847178B2 (en) | 2018-05-18 | 2020-11-24 | Sonos, Inc. | Linear filtering for noise-suppressed speech detection |
US10959029B2 (en) | 2018-05-25 | 2021-03-23 | Sonos, Inc. | Determining and adapting to changes in microphone performance of playback devices |
DK180639B1 (en) | 2018-06-01 | 2021-11-04 | Apple Inc | DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT |
DK179822B1 (da) | 2018-06-01 | 2019-07-12 | Apple Inc. | Voice interaction at a primary device to access call functionality of a companion device |
US10892996B2 (en) | 2018-06-01 | 2021-01-12 | Apple Inc. | Variable latency device coordination |
US10681460B2 (en) | 2018-06-28 | 2020-06-09 | Sonos, Inc. | Systems and methods for associating playback devices with voice assistant services |
US11487409B2 (en) * | 2018-07-18 | 2022-11-01 | Sony Corporation | Appearance configuration of information processing terminal |
US11076035B2 (en) | 2018-08-28 | 2021-07-27 | Sonos, Inc. | Do not disturb feature for audio notifications |
US10461710B1 (en) | 2018-08-28 | 2019-10-29 | Sonos, Inc. | Media playback system with maximum volume setting |
US10587430B1 (en) | 2018-09-14 | 2020-03-10 | Sonos, Inc. | Networked devices, systems, and methods for associating playback devices based on sound codes |
US10878811B2 (en) | 2018-09-14 | 2020-12-29 | Sonos, Inc. | Networked devices, systems, and methods for intelligently deactivating wake-word engines |
US11024331B2 (en) | 2018-09-21 | 2021-06-01 | Sonos, Inc. | Voice detection optimization using sound metadata |
US10811015B2 (en) | 2018-09-25 | 2020-10-20 | Sonos, Inc. | Voice detection optimization based on selected voice assistant service |
US11100923B2 (en) | 2018-09-28 | 2021-08-24 | Sonos, Inc. | Systems and methods for selective wake word detection using neural network models |
US11462215B2 (en) | 2018-09-28 | 2022-10-04 | Apple Inc. | Multi-modal inputs for voice commands |
US10692518B2 (en) | 2018-09-29 | 2020-06-23 | Sonos, Inc. | Linear filtering for noise-suppressed speech detection via multiple network microphone devices |
US11899519B2 (en) | 2018-10-23 | 2024-02-13 | Sonos, Inc. | Multiple stage network microphone device with reduced power consumption and processing load |
US11475898B2 (en) | 2018-10-26 | 2022-10-18 | Apple Inc. | Low-latency multi-speaker speech recognition |
EP3654249A1 (en) | 2018-11-15 | 2020-05-20 | Snips | Dilated convolutions and gating for efficient keyword spotting |
KR20200058157A (ko) * | 2018-11-19 | 2020-05-27 | 삼성전자주식회사 | Ivi 서비스를 제공하기 위한 전자 장치 및 방법 |
US11183183B2 (en) * | 2018-12-07 | 2021-11-23 | Sonos, Inc. | Systems and methods of operating media playback systems having multiple voice assistant services |
US11132989B2 (en) | 2018-12-13 | 2021-09-28 | Sonos, Inc. | Networked microphone devices, systems, and methods of localized arbitration |
US10602268B1 (en) | 2018-12-20 | 2020-03-24 | Sonos, Inc. | Optimization of network microphone devices using noise classification |
US10867604B2 (en) | 2019-02-08 | 2020-12-15 | Sonos, Inc. | Devices, systems, and methods for distributed voice processing |
US11315556B2 (en) | 2019-02-08 | 2022-04-26 | Sonos, Inc. | Devices, systems, and methods for distributed voice processing by transmitting sound data associated with a wake word to an appropriate device for identification |
US11348573B2 (en) | 2019-03-18 | 2022-05-31 | Apple Inc. | Multimodality in digital assistant systems |
US11120794B2 (en) | 2019-05-03 | 2021-09-14 | Sonos, Inc. | Voice assistant persistence across multiple network microphone devices |
US11423908B2 (en) | 2019-05-06 | 2022-08-23 | Apple Inc. | Interpreting spoken requests |
US11307752B2 (en) | 2019-05-06 | 2022-04-19 | Apple Inc. | User configurable task triggers |
DK201970509A1 (en) | 2019-05-06 | 2021-01-15 | Apple Inc | Spoken notifications |
US11475884B2 (en) | 2019-05-06 | 2022-10-18 | Apple Inc. | Reducing digital assistant latency when a language is incorrectly determined |
US11140099B2 (en) | 2019-05-21 | 2021-10-05 | Apple Inc. | Providing message response suggestions |
DK201970510A1 (en) | 2019-05-31 | 2021-02-11 | Apple Inc | Voice identification in digital assistant systems |
US11289073B2 (en) | 2019-05-31 | 2022-03-29 | Apple Inc. | Device text to speech |
DK180129B1 (en) | 2019-05-31 | 2020-06-02 | Apple Inc. | USER ACTIVITY SHORTCUT SUGGESTIONS |
US11496600B2 (en) | 2019-05-31 | 2022-11-08 | Apple Inc. | Remote execution of machine-learned models |
US11360641B2 (en) | 2019-06-01 | 2022-06-14 | Apple Inc. | Increasing the relevance of new available information |
US11227599B2 (en) | 2019-06-01 | 2022-01-18 | Apple Inc. | Methods and user interfaces for voice-based control of electronic devices |
US10586540B1 (en) | 2019-06-12 | 2020-03-10 | Sonos, Inc. | Network microphone device with command keyword conditioning |
US11361756B2 (en) | 2019-06-12 | 2022-06-14 | Sonos, Inc. | Conditional wake word eventing based on environment |
US11200894B2 (en) | 2019-06-12 | 2021-12-14 | Sonos, Inc. | Network microphone device with command keyword eventing |
US11138975B2 (en) | 2019-07-31 | 2021-10-05 | Sonos, Inc. | Locally distributed keyword detection |
US11138969B2 (en) | 2019-07-31 | 2021-10-05 | Sonos, Inc. | Locally distributed keyword detection |
US10871943B1 (en) | 2019-07-31 | 2020-12-22 | Sonos, Inc. | Noise classification for event detection |
US11488406B2 (en) | 2019-09-25 | 2022-11-01 | Apple Inc. | Text detection using global geometry estimators |
US11189286B2 (en) | 2019-10-22 | 2021-11-30 | Sonos, Inc. | VAS toggle based on device orientation |
US11200900B2 (en) | 2019-12-20 | 2021-12-14 | Sonos, Inc. | Offline voice control |
US11562740B2 (en) | 2020-01-07 | 2023-01-24 | Sonos, Inc. | Voice verification for media playback |
CN111243587A (zh) * | 2020-01-08 | 2020-06-05 | 北京松果电子有限公司 | 语音交互方法、装置、设备及存储介质 |
US11556307B2 (en) | 2020-01-31 | 2023-01-17 | Sonos, Inc. | Local voice data processing |
US11308958B2 (en) | 2020-02-07 | 2022-04-19 | Sonos, Inc. | Localized wakeword verification |
US11061543B1 (en) | 2020-05-11 | 2021-07-13 | Apple Inc. | Providing relevant data items based on context |
US11183193B1 (en) | 2020-05-11 | 2021-11-23 | Apple Inc. | Digital assistant hardware abstraction |
US11755276B2 (en) | 2020-05-12 | 2023-09-12 | Apple Inc. | Reducing description length based on confidence |
US11308962B2 (en) | 2020-05-20 | 2022-04-19 | Sonos, Inc. | Input detection windowing |
US11482224B2 (en) | 2020-05-20 | 2022-10-25 | Sonos, Inc. | Command keywords with input detection windowing |
US11727919B2 (en) | 2020-05-20 | 2023-08-15 | Sonos, Inc. | Memory allocation for keyword spotting engines |
CN111633661B (zh) * | 2020-06-18 | 2023-12-26 | 深圳小牛黑科技有限公司 | 一种机器人联网的方法和电路 |
US11490204B2 (en) | 2020-07-20 | 2022-11-01 | Apple Inc. | Multi-device audio adjustment coordination |
US11438683B2 (en) | 2020-07-21 | 2022-09-06 | Apple Inc. | User identification using headphones |
US11698771B2 (en) | 2020-08-25 | 2023-07-11 | Sonos, Inc. | Vocal guidance engines for playback devices |
US11922372B2 (en) | 2020-08-31 | 2024-03-05 | Walgreen Co. | Systems and methods for voice assisted goods delivery |
US11663415B2 (en) * | 2020-08-31 | 2023-05-30 | Walgreen Co. | Systems and methods for voice assisted healthcare |
US11984123B2 (en) | 2020-11-12 | 2024-05-14 | Sonos, Inc. | Network device interaction by range |
CN112801148A (zh) * | 2021-01-14 | 2021-05-14 | 西安电子科技大学 | 基于深度学习的火情识别定位***及方法 |
US11551700B2 (en) | 2021-01-25 | 2023-01-10 | Sonos, Inc. | Systems and methods for power-efficient keyword detection |
JP2022124361A (ja) * | 2021-02-15 | 2022-08-25 | 富士通株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
CN113457154B (zh) * | 2021-06-29 | 2024-04-12 | 网易(杭州)网络有限公司 | 游戏中虚拟对象控制方法、装置、电子设备及存储介质 |
US12021806B1 (en) | 2021-09-21 | 2024-06-25 | Apple Inc. | Intelligent message delivery |
CN113949767B (zh) * | 2021-09-24 | 2023-11-28 | 阿波罗智联(北京)科技有限公司 | 实现车载交互的方法、装置、电子设备和介质 |
EP4198711A1 (en) * | 2021-12-16 | 2023-06-21 | InterDigital CE Patent Holdings, SAS | System and method for time management in voice control applications |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5542088A (en) * | 1994-04-29 | 1996-07-30 | Intergraph Corporation | Method and apparatus for enabling control of task execution |
US8028060B1 (en) * | 2007-01-05 | 2011-09-27 | Apple Inc. | Background task execution over a network based on network activity idle time |
US8713571B2 (en) * | 2010-02-17 | 2014-04-29 | Microsoft Corporation | Asynchronous task execution |
US9232044B2 (en) * | 2010-03-03 | 2016-01-05 | Lg Electronics Inc. | Mobile terminal and control method thereof |
WO2012001835A1 (ja) | 2010-07-02 | 2012-01-05 | パナソニック株式会社 | マルチプロセッサシステム |
US9003102B2 (en) * | 2011-08-26 | 2015-04-07 | Sandisk Technologies Inc. | Controller with extended status register and method of use therewith |
US20130122480A1 (en) * | 2011-11-14 | 2013-05-16 | Linda Louise Hanrahan | System and method of applying intermitent reinforcement to student during instructional activity |
US10156455B2 (en) * | 2012-06-05 | 2018-12-18 | Apple Inc. | Context-aware voice guidance |
US9542947B2 (en) * | 2013-03-12 | 2017-01-10 | Google Technology Holdings LLC | Method and apparatus including parallell processes for voice recognition |
US9146870B2 (en) * | 2013-07-24 | 2015-09-29 | Arm Limited | Performance of accesses from multiple processors to a same memory location |
EP2921933B1 (en) * | 2014-02-26 | 2018-12-19 | LG Electronics Inc. | Digital device and method of processing screensaver thereof |
US9678797B2 (en) | 2014-03-10 | 2017-06-13 | Microsoft Technology Licensing, Llc | Dynamic resource management for multi-process applications |
US9774410B2 (en) * | 2014-06-10 | 2017-09-26 | PB, Inc. | Radiobeacon data sharing by forwarding low energy transmissions to a cloud host |
KR102301880B1 (ko) * | 2014-10-14 | 2021-09-14 | 삼성전자 주식회사 | 전자 장치 및 이의 음성 대화 방법 |
US9812126B2 (en) * | 2014-11-28 | 2017-11-07 | Microsoft Technology Licensing, Llc | Device arbitration for listening devices |
US9959129B2 (en) * | 2015-01-09 | 2018-05-01 | Microsoft Technology Licensing, Llc | Headless task completion within digital personal assistants |
US10671954B2 (en) * | 2015-02-23 | 2020-06-02 | Google Llc | Selective reminders to complete interrupted tasks |
US9865280B2 (en) | 2015-03-06 | 2018-01-09 | Apple Inc. | Structured dictation using intelligent automated assistants |
US10152299B2 (en) * | 2015-03-06 | 2018-12-11 | Apple Inc. | Reducing response latency of intelligent automated assistants |
US10042416B2 (en) * | 2015-07-20 | 2018-08-07 | Sandisk Technologies Llc | Memory system and method for adaptive auto-sleep and background operations |
KR102313395B1 (ko) | 2015-09-18 | 2021-10-15 | 삼성전자주식회사 | 사용자 계정에 기반한 통신 처리 방법 및 장치 |
US9858927B2 (en) * | 2016-02-12 | 2018-01-02 | Amazon Technologies, Inc | Processing spoken commands to control distributed audio outputs |
JP2018022345A (ja) * | 2016-08-03 | 2018-02-08 | 東芝メモリ株式会社 | 情報処理システム |
US10181323B2 (en) * | 2016-10-19 | 2019-01-15 | Sonos, Inc. | Arbitration-based voice recognition |
US10311573B2 (en) * | 2017-05-02 | 2019-06-04 | Techcyte, Inc. | Training and machine learning classification of mold in digital microscopy images |
-
2017
- 2017-04-28 KR KR1020170055377A patent/KR102298947B1/ko active IP Right Grant
-
2018
- 2018-04-26 EP EP18169657.6A patent/EP3396665B1/en active Active
- 2018-04-27 US US15/964,483 patent/US10838765B2/en active Active
- 2018-04-28 CN CN201810399802.2A patent/CN108829235B/zh active Active
Non-Patent Citations (1)
Title |
---|
None * |
Also Published As
Publication number | Publication date |
---|---|
KR102298947B1 (ko) | 2021-09-08 |
CN108829235A (zh) | 2018-11-16 |
KR20180121097A (ko) | 2018-11-07 |
US10838765B2 (en) | 2020-11-17 |
US20180314552A1 (en) | 2018-11-01 |
CN108829235B (zh) | 2021-10-26 |
EP3396665A1 (en) | 2018-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3396665B1 (en) | Voice data processing method and electronic device supporting the same | |
US10978048B2 (en) | Electronic apparatus for recognizing keyword included in your utterance to change to operating state and controlling method thereof | |
EP3392877B1 (en) | Device for performing task corresponding to user utterance | |
US11435980B2 (en) | System for processing user utterance and controlling method thereof | |
US10706847B2 (en) | Method for operating speech recognition service and electronic device supporting the same | |
US10825453B2 (en) | Electronic device for providing speech recognition service and method thereof | |
EP3586333B1 (en) | Method for operating speech recognition service and electronic device supporting the same | |
EP3531416A1 (en) | System for processing user utterance and controlling method thereof | |
US10788955B2 (en) | Method for controlling display and electronic device supporting the same | |
US11042703B2 (en) | Method and device for generating natural language expression by using framework | |
US20200075008A1 (en) | Voice data processing method and electronic device for supporting same | |
US10996922B2 (en) | Electronic apparatus for processing user utterance | |
US11170764B2 (en) | Electronic device for processing user utterance | |
US20180308489A1 (en) | Electronic device for providing speech recognition service and method thereof | |
US10929009B2 (en) | Electronic device for outputting graphic indication | |
US11194545B2 (en) | Electronic device for performing operation according to user input after partial landing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN PUBLISHED |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20190131 |
|
RBV | Designated contracting states (corrected) |
Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G10L 15/22 20060101AFI20190430BHEP Ipc: G10L 15/18 20130101ALN20190430BHEP Ipc: G06F 3/0488 20130101ALN20190430BHEP Ipc: G06F 3/038 20130101ALI20190430BHEP Ipc: G10L 15/30 20130101ALN20190430BHEP Ipc: G06F 9/48 20060101ALI20190430BHEP Ipc: G06F 3/16 20060101ALN20190430BHEP |
|
INTG | Intention to grant announced |
Effective date: 20190521 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602018000678 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 1182243 Country of ref document: AT Kind code of ref document: T Effective date: 20191015 |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: FP |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20191218 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20191218 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG4D |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: AL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20191219 Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 1182243 Country of ref document: AT Kind code of ref document: T Effective date: 20190918 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20200120 Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20200224 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602018000678 Country of ref document: DE |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
PG2D | Information on lapse in contracting state deleted |
Ref country code: IS |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20200119 |
|
26N | No opposition filed |
Effective date: 20200619 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20200426 Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20200430 |
|
REG | Reference to a national code |
Ref country code: BE Ref legal event code: MM Effective date: 20200430 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20200430 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20200426 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20210430 Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20210430 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: TR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: MT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20190918 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: NL Payment date: 20240321 Year of fee payment: 7 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20240320 Year of fee payment: 7 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20240320 Year of fee payment: 7 |