WO2019078608A1 - 외부 장치를 이용하여 음성 기반 서비스를 제공하기 위한 전자 장치, 외부 장치 및 그의 동작 방법 - Google Patents

외부 장치를 이용하여 음성 기반 서비스를 제공하기 위한 전자 장치, 외부 장치 및 그의 동작 방법 Download PDF

Info

Publication number
WO2019078608A1
WO2019078608A1 PCT/KR2018/012243 KR2018012243W WO2019078608A1 WO 2019078608 A1 WO2019078608 A1 WO 2019078608A1 KR 2018012243 W KR2018012243 W KR 2018012243W WO 2019078608 A1 WO2019078608 A1 WO 2019078608A1
Authority
WO
WIPO (PCT)
Prior art keywords
electronic device
information
module
server
voice
Prior art date
Application number
PCT/KR2018/012243
Other languages
English (en)
French (fr)
Inventor
이요한
류정균
박준호
송원식
원종찬
이승용
이영수
Original Assignee
삼성전자주식회사
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US16/757,075 priority Critical patent/US11392346B2/en
Publication of WO2019078608A1 publication Critical patent/WO2019078608A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0412Digitisers structurally integrated in a display
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/04Segmentation; Word boundary detection
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J50/00Circuit arrangements or systems for wireless supply or distribution of electric power
    • H02J50/80Circuit arrangements or systems for wireless supply or distribution of electric power involving the exchange of data, concerning supply or distribution of electric power, between transmitting devices and receiving devices
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J7/00Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
    • H02J7/02Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries for charging batteries from ac mains by converters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/225Feedback of the input speech
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • Various embodiments of the present invention are directed to an electronic device and a server device for providing a voice-based service to a user by additionally using an input / output function of an external device connected by close range communication, and an operation method thereof.
  • An Internet of things (IOT) technology for connecting a plurality of electronic devices (e.g., household appliances, portable devices, etc.) having sensors and communication functions to a network is attracting attention.
  • Each of a plurality of networked electronic devices includes an input / output module (e.g., a microphone, a speaker) capable of processing at least a part of input / output functions.
  • each of a plurality of networked electronic devices may control the input / output module to provide a voice-based service to the user.
  • Each of a plurality of networked electronic devices can basically control an input / output module for itself in order to provide a voice-based service to the user.
  • Each of the plurality of electronic devices connected to the network may not control the input / output module of the external device in order to process the input / output data of the external device and to process the input / output data of the external device.
  • the microphone and the speaker are used only for processing input / output data concerning wireless charging.
  • the microphone and the speaker can not be used to process input / output data for an external device.
  • An electronic device includes a housing, a display exposed through a portion of the housing, a speaker, a microphone, a wireless charging circuit, a wireless communication circuit, a battery, a display, a speaker, a microphone, A processor operatively coupled to the battery; and a memory operatively coupled to the processor, wherein the processor is operative to cause the processor to receive information from the external wireless charging device, via the charging circuit, And controls the charging circuit to charge the battery with the electric power received from the external wireless charging device and transmits at least a part of the received information to the external server via the communication circuit, Receives a response from an external server, and the response includes a microphone, a speaker, and / While being associated with a voice-based service using the display, charging the battery, the voice-based services based on at least a part of the response may store the instructions of (instructions) at least to partially activate, deactivate or change.
  • An electronic device in accordance with various embodiments of the present invention includes a housing, a microphone and output module exposed through a portion of the housing, a wireless communication circuit, a microprocessor located within the housing and connected to the microphone, the output module, A processor operably coupled to the processor and operable to establish a short range communication with an external device using the wireless communication circuit, Recognizing a voice utterance including a trigger voice and a voice command by using the microphone, and transmitting feedback data for the voice command to the server by transmitting identification information of the apparatus to the server, activating a function for the voice recognition function, The feedback data for the voice command and the feedback data The can receiving the output information, and to store the receiving based on the output information, the command that is to be output by the output module, the received feedback data (instructions).
  • An electronic device in accordance with various embodiments of the present invention includes a housing, a speaker, a microphone, a wireless charging circuit, a wireless communication circuit, a speaker, a microphone, a charging circuit, a processor operatively coupled to the communication circuit, Wherein the processor is operable, when executed, to cause the processor to receive information from the external mobile device, including the display, via the charging circuit for the mobile device, Circuitry to transmit the received information to the external server via the communications circuitry and to transmit at least a portion of the received information to the external server via the communications circuitry and receive a response from the external server via the communications circuitry, / ≪ / RTI > or a voice based service using a display, During charging, it may store instructions to at least partially activate, deactivate or change the voice-based service based on at least a portion of the response.
  • an input / output module of an external device may be additionally used to process input / output data to provide an extended voice-based service to a user.
  • the electronic device can process the input / output data by additionally using the input / output module of the external device which is not currently used, thereby improving the processing performance of the input / output data and extending the processing function of the input / output data.
  • FIG. 1 is a diagram of an integrated intelligence system in accordance with various embodiments of the present invention.
  • FIG. 2 is a block diagram illustrating a user terminal of an integrated intelligent system according to an embodiment of the present invention.
  • FIG. 3 is a diagram illustrating execution of an intelligent app of a user terminal according to an embodiment of the present invention.
  • FIG. 4 is a diagram illustrating the context module of the intelligent service module collecting current status according to an embodiment of the present invention.
  • FIG. 5 is a block diagram illustrating a proposal module of an intelligent service module according to an embodiment of the present invention.
  • FIG. 6 is a block diagram illustrating an intelligent server of an integrated intelligent system according to an embodiment of the present invention.
  • FIG. 7 is a diagram illustrating a method of generating a path rule by a natural language understanding (NLU) module according to an embodiment of the present invention.
  • NLU natural language understanding
  • FIG. 8 is a diagram illustrating that a persona module of an intelligent service module manages information of a user according to an exemplary embodiment of the present invention.
  • FIG. 9 is a block diagram of an electronic device in a network environment, in accordance with various embodiments.
  • FIG. 10 is a block diagram of a wireless communication module, a power management module, and an antenna module of an electronic device, in accordance with various embodiments.
  • Figure 11 shows a system according to various embodiments of the present invention.
  • Figure 12 illustrates the functional configuration of a first electronic device in accordance with various embodiments of the present invention.
  • Figure 13 illustrates the functional configuration of a second electronic device in accordance with various embodiments of the present invention.
  • FIG. 14 shows a circuit of a wireless charging module of a first electronic device and a wireless charging module of a second electronic device according to various embodiments of the present invention.
  • Figures 15A and 15B illustrate two aspects of the appearance of a second electronic device according to various embodiments of the present invention.
  • FIG. 16 illustrates a functional configuration of a server according to various embodiments of the present invention.
  • 17 is a flow chart illustrating the operational sequence of a first electronic device according to various embodiments of the present invention.
  • FIG. 18 is a flow chart illustrating the operational sequence of a second electronic device according to various embodiments of the present invention.
  • 19 is a flowchart illustrating an operational sequence of a first electronic device according to various embodiments of the present invention.
  • Figure 20 is a flow diagram illustrating the operational sequence of a second electronic device in accordance with various embodiments of the present invention.
  • 21 is a flowchart illustrating an operation procedure of a server according to various embodiments of the present invention.
  • Figure 22 is a cross-sectional signaling diagram illustrating the operational sequence of a first electronic device, a second electronic device, and a server in accordance with various embodiments of the present invention.
  • FIG. 23 is a cross-sectional signal flow diagram illustrating the operational sequence of a first electronic device, a second electronic device, and a server in accordance with various embodiments of the present invention.
  • 24 is a cross-sectional signal flow diagram illustrating the operational sequence of a first electronic device, a second electronic device, and a server in accordance with various embodiments of the present invention.
  • 25 is a detailed flowchart of an operation in which a server estimates a position of a user according to various embodiments of the present invention.
  • 26 is a cross-sectional signal flow diagram illustrating the operational sequence of a first electronic device, a second electronic device, and a server in accordance with various embodiments of the present invention.
  • FIG. 1 is a diagram of an integrated intelligence system in accordance with various embodiments of the present invention.
  • the integrated intelligent system 10 may include a user terminal 100, an intelligent server 200, a personalization information server 300, or a proposal server 400.
  • the user terminal 100 can receive a service required by the user through an app stored in the user terminal 100 (or an application program) (e.g., an alarm app, a message app, a photo (gallery) Can be provided.
  • the user terminal 100 may execute and operate another application through an intelligent app (or a voice recognition app) stored in the user terminal 100.
  • the user terminal 100 can receive the user input for executing the other application and executing the operation through the intelligent app.
  • the user input may be received via, for example, a physical button, a touchpad, a voice input, a remote input, or the like.
  • the user terminal 100 may correspond to various terminal devices (or electronic devices) such as a mobile phone, a smart phone, a personal digital assistant (PDA), or a notebook computer.
  • PDA personal digital assistant
  • the user terminal 100 may receive the user's utterance as a user input.
  • the user terminal 100 may receive a user's utterance and generate an instruction to operate the app based on the utterance of the user. Accordingly, the user terminal 100 can operate the application using the command.
  • the intelligent server 200 can receive user voice input from the user terminal 100 through a communication network and change the text data into text data.
  • the intelligent server 200 may generate (or select) a path rule based on the text data.
  • the pass rule may include information about an action (or an operation) for performing the function of the app or information about a parameter necessary for executing the action.
  • the pass rule may include a sequence of the actions of the app.
  • the user terminal 100 may receive the pass rule, select an app according to the pass rule, and execute the action included in the pass rule in the selected app.
  • path rule in this document may generally refer to a sequence of states for an electronic device to perform a task requested by a user, but is not limited thereto.
  • the pass rule may include information about a sequence of states.
  • the task may be, for example, any action an intelligent app can provide.
  • the task may include creating a schedule, sending a photo to a desired party, or providing weather information.
  • the user terminal 100 can perform the task by sequentially having at least one state (e.g., an operating state of the user terminal 100).
  • the pass rules may be provided or generated by an artificial intelligent (AI) system.
  • the artificial intelligence system may be a rule-based system, a neural network-based system such as a feedforward neural network (FNN), a recurrent neural network (RNN) ))). Or a combination of the foregoing or any other artificial intelligence system.
  • a path rule may be selected from a set of predefined path rules, or may be generated in real time in response to a user request.
  • the artificial intelligence system can select at least a path rule out of a plurality of predefined path rules, or generate a pass rule in a dynamic (or real time) manner.
  • the user terminal 100 may use a hybrid system to provide path rules.
  • the user terminal 100 may execute the operation and display a screen corresponding to the state of the user terminal 100 that performed the operation on the display.
  • the user terminal 100 may execute the operation and may not display the result of performing the operation on the display.
  • the user terminal 100 may, for example, execute a plurality of operations and display only some of the results of the operations on the display.
  • the user terminal 100 can display, for example, only the result of executing the last sequence of operations on the display.
  • the user terminal 100 may receive a user's input and display the result of performing the operation on the display.
  • the personalization information server 300 may include a database storing user information.
  • the personalization information server 300 may receive user information (e.g., context information, application execution, etc.) from the user terminal 100 and store the information in the database.
  • the intelligent server 200 can be used when receiving the user information from the personalization information server 300 through a communication network and generating a pass rule for user input.
  • the user terminal 100 can receive user information from the personalization information server 300 via a communication network and use the information as information for managing the database.
  • the proposal server 400 may include a database in which information about an introduction of a function or an application or a function to be provided is stored in the terminal.
  • the proposal server 400 may receive a user information of the user terminal 100 from the personalization information server 300 and include a database of functions that the user can use.
  • the user terminal 100 may receive information on the function to be provided from the proposal server 400 through a communication network and provide 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 invention.
  • a 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 the configurations of the user terminal 100 may be placed on the inside of the housing or on the housing.
  • the user terminal 100 may further include a communication circuit located inside the housing.
  • the user terminal 100 can exchange data (or information) with an external server (e.g., the intelligent server 200) through the communication circuit.
  • input module 110 may receive user input from a user.
  • input module 110 may receive user input from a connected external device (e.g., keyboard, headset).
  • input module 110 may include a touch screen (e.g., a touch screen display) coupled with display 120.
  • the input module 110 may include a hardware key (or physical key) located at the user terminal 100 (or the housing of the user terminal 100).
  • the input module 110 may include a microphone capable of receiving a user's utterance as a speech signal.
  • the input module 110 may include a speech input system, and may receive a speech of a user via the speech input system.
  • the microphone may be exposed, for example, through a portion (e.g., a first portion) of the housing.
  • the display 120 may display an image of an image, video, and / or application executable.
  • the display 120 may display a graphical user interface (GUI) of the app.
  • GUI graphical user interface
  • the display 120 may be exposed through a portion (e.g., a second portion) of the housing.
  • the speaker 130 may output a voice signal.
  • the speaker 130 may output a voice signal generated inside the user terminal 100 to the outside.
  • the speaker 130 may be exposed through a portion (e.g., a third portion) of the housing.
  • the memory 140 may store a plurality of applications (or application program application programs) 141 and 143.
  • the plurality of apps 141 and 143 may be, for example, a program for performing a function corresponding to a user input.
  • the memory 140 may store the intelligent agent 145, the execution manager module 147, or the intelligent service module 149.
  • the intelligent agent 145, the execution manager module 147 and the intelligent service module 149 may be implemented as a framework for processing received user input (e.g., user utterances) (application framework).
  • the memory 140 may include a database capable of storing information necessary to recognize user input.
  • the memory 140 may include a log database capable of storing log information.
  • the memory 140 may include a persona database capable of storing user information.
  • the memory 140 stores a plurality of apps 141 and 143, and a plurality of apps 141 and 143 can be loaded and operated.
  • a plurality of applications 141 and 143 stored in the memory 140 can be loaded and operated by the execution manager module 147.
  • the plurality of apps 141 and 143 may include execution service modules 141a and 143a that perform functions.
  • a plurality of apps 141, 143 may execute a plurality of actions (e.g., sequences of states) 141b, 143b through execution service modules 141a, 143a to perform a function.
  • the execution service modules 141a and 143a are activated by the execution manager module 147 and can execute a plurality of operations 141b and 143b.
  • the execution status screen when the operations 141b and 143b of the applications 141 and 143 are executed, the execution status screen according to the execution of the operations 141b and 143b may be displayed on the display 120.
  • the execution status screen may be, for example, a screen in which operations 141b and 143b are completed.
  • the execution status screen may be, for example, a screen in which partial execution of operations 141b and 143b is stopped (e.g., when parameters necessary for operations 141b and 143b are not input) .
  • the execution service module 141a, 143a may execute operations 141b, 143b in accordance with a path rule.
  • the execution service module 141a, 143a is activated by the execution manager module 147, receives an execution request according to the pass rule from the execution manager module 147, And 143b, the functions of the apps 141 and 143 can be executed.
  • the execution service modules 141a and 143a may transmit the completion information to the execution manager module 147 when the operations 141b and 143b are completed.
  • the plurality of operations 141b and 143b can be executed sequentially.
  • the execution service modules 141a and 143a perform the following operations (for example, the first application 141 and the second application 143) when execution of one operation (for example, operation 1 of the first application 141 and operation 1 of the second application 143) (Operation 2 of the second application 143 and operation 2 of the second application 143) and transmits the completion information to the execution manager module 147.
  • opening an arbitrary operation can be understood as transitioning an arbitrary operation to an executable state or preparing for execution of an arbitrary operation. In other words, if an operation is not opened, the operation can not be executed.
  • the execution manager module 147 can transmit an execution request for the next operation (for example, operation 2 of the first application 141 and operation 2 of the second application 143) to the execution service module when the completion information is received .
  • a plurality of apps 141 and 143 can be sequentially executed. For example, when the execution of the last operation of the first application 141 (for example, operation 3 of the first application 141) is completed and the completion information is received, the execution manager module 147 transmits the completion information to the second application 143, (E.g., operation 1 of the second application 143) to the execution service 143a.
  • a result screen corresponding to execution of each of the plurality of executed operations 141b and 143b is displayed on the display 120 Can be displayed.
  • only a part of a plurality of result screens resulting from the execution of the plurality of executed operations 141b and 143b may be displayed on the display 120.
  • the memory 140 may store an intelligent app (e.g., a voice recognition app) associated with the intelligent agent 145.
  • An application associated with the intelligent agent 145 can receive and process a user's utterance as a voice signal.
  • an application associated with the intelligent agent 145 is operated by a particular input (e.g., input via a hardware key, input via a touch screen, specific voice input) input via the input module 110 .
  • the intelligent agent 145, execution manager module 147, or intelligent service module 149 stored in the memory 140 may be executed by the processor 150.
  • the functions of the intelligent agent 145, execution manager module 147, or intelligent service module 149 may be implemented by the processor 150.
  • the functions of the intelligent agent 145, the execution manager module 147 and the intelligent service module 149 will be described by the operation of the processor 150.
  • the intelligent agent 145, execution manager module 147, or intelligent service module 149 stored in the memory 140 may be implemented in hardware as well as software.
  • the processor 150 may control the overall operation of the user terminal 100.
  • the processor 150 may control the input module 110 to receive user input.
  • the processor 150 may control the display 120 to display an image.
  • the processor 150 may control the speaker 130 to output a voice signal.
  • the processor 150 may control the memory 140 to execute the program and retrieve or store the necessary information.
  • the processor 150 may execute the intelligent agent 145, the execution manager module 147, or the intelligent service module 149 stored in the memory 140. Accordingly, the processor 150 may implement the functions of the intelligent agent 145, the execution manager module 147, or the intelligent service module 149.
  • the processor 150 may execute the intelligent agent 145 to generate an instruction to operate the app based on the voice signal received at the user input.
  • the processor 150 may execute the execution manager module 147 to execute the apps 141 and 143 stored in the memory 140 according to the generated command.
  • the processor 150 may execute the intelligent service module 149 to manage user information and process user input using the information of the user.
  • Processor 150 may execute intelligent agent 145 to send user input received via input module 110 to intelligent server 200 and process the user input through intelligent server 200.
  • the processor 150 may execute the intelligent agent 145 to pre-process the user input before transmitting the user input to the intelligent server 200.
  • the intelligent agent 145 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 adaptive echo canceller may remove an echo included in the user input.
  • the noise suppression module may suppress background noise included in the user input.
  • the end point detection module detects the end point of the user voice included in the user input and can use the detected end point to find the portion where the user's voice exists.
  • the automatic gain control module may recognize the user input and adjust the volume of the user input to be suitable for processing the recognized user input.
  • the processor 150 may execute all of the preprocessing configurations for performance, while in other embodiments, the processor 150 may execute some of the preprocessing configurations to operate at low power.
  • the intelligent agent 145 may execute a wake up recognition module stored in the memory 140 to recognize the user's call. Accordingly, the processor 150 can recognize the wake-up command of the user via the wake-up recognition module and execute the intelligent agent 145 to receive the user input when the wakeup command is received .
  • the wake-up recognition module may be implemented with a low-power processor (e.g., a processor included in an audio codec).
  • the processor 150 may execute the intelligent agent 145 when it receives user input via a hardware key.
  • an intelligent app e.g., a voice recognition app associated with the intelligent agent 145 may be executed.
  • the intelligent agent 145 may include a speech recognition module for performing user input.
  • the processor 150 may recognize a user input to cause the application to perform an action through the speech recognition module.
  • the processor 150 may receive a limited user (voice) input (e.g., a photographing operation when the camera app is running) that performs an action, such as the wake-up command, Such as " click "
  • the processor 150 may assist the intelligent server 200 and recognize the user command that can be processed in the user terminal 100 through the voice recognition module and perform quick processing.
  • the voice recognition module of the intelligent agent 145 for executing user input may be implemented in an app processor.
  • the voice recognition module of the intelligent agent 145 may recognize the user input using an algorithm for voice recognition.
  • the algorithm used to recognize the speech may be at least one of, for example, 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 processor 150 may execute the intelligent agent 145 to convert the user's speech input into text data. For example, the processor 150 may transmit the user's voice to the intelligent server 200 via the intelligent agent 145 and may receive the textual data corresponding to the user's voice from the intelligent server 200. [ Accordingly, the processor 150 may display the converted text data on the display 120. [
  • the processor 150 may execute the intelligent agent 145 to receive path rules from the intelligent server 200. According to one embodiment, the processor 150 may communicate the pass rule to the execution manager module 147 via the intelligent agent 145.
  • the processor 150 executes the intelligent agent 145 to pass an execution result log according to the path rules received from the intelligent server 200 to the intelligence service module 149 And the delivered execution result log may be accumulated and managed in the preference information of the user of the persona manager 149b.
  • the processor 150 executes the execution manager module 147 to receive the path rules from the intelligent agent 145 to execute the apps 141 and 143, It is possible to execute the operations 141b and 143b included in the rule. For example, the processor 150 can transmit command information (e.g., path rule information) for executing operations 141b and 143b to the apps 141 and 143 via the execution manager module 147, The completion information of the operations 141b and 143b can be received from the apps 141 and 143.
  • command information e.g., path rule information
  • the processor 150 executes the execution manager module 147 to execute the operations 141b and 143b of the applications 141 and 143 between the intelligent agent 145 and the applications 141 and 143 (E.g., path rule information) to be transmitted.
  • the processor 150 binds the applications 141 and 143 to be executed according to the path rule through the execution manager module 147 and sets the command information of the operations 141b and 143b included in the path rule Path rule information) to the apps 141 and 143.
  • the processor 150 sequentially transmits the actions 141b and 143b included in the pass rule to the apps 141 and 143 through the execution manager module 147, (141b, 143b) can be sequentially executed in accordance with the path rule.
  • the processor 150 may execute the execution manager module 147 to manage the execution states of the operations 141b and 143b of the applications 141 and 143.
  • the processor 150 may receive information on the execution status of the operations 141b and 143b from the apps 141 and 143 via the execution manager module 147.
  • the processor 150 executes
  • the manager module 147 may pass information about the suspended state to the intelligent agent 145.
  • the processor 150 may request the user to input necessary information (e.g., parameter information) using the received information through the intelligent agent 145.
  • the processor 150 may receive speech from the user via the intelligent agent 145 if the execution state of the actions 141b and 143b is another, for example, an operational state.
  • the processor 150 may communicate information about the execution status of the applications 141 and 143 and the applications 141 and 143 to the intelligent agent 145 through the execution manager module 147.
  • the processor 150 may send the user utterance to the intelligent server 200 via the intelligent agent 145.
  • the processor 150 may receive parameter information of the user's utterance from the intelligent server 200 via the intelligent agent 145.
  • the processor 150 may communicate the received parameter information to the execution manager module 147 via the intelligent agent 145.
  • the execution manager module 147 can change the parameters of the operations 141b and 143b to new parameters using the received parameter information.
  • the processor 150 may execute the execution manager module 147 to transfer the parameter information contained in the path rule to the apps 141 and 143.
  • the execution manager module 147 can transmit parameter information included in the path rule from one application to another.
  • the processor 150 may execute the execution manager module 147 to receive a plurality of pass rules.
  • the processor 150 may select a plurality of pass rules based on the user's utterance via the execution manager module 147.
  • the processor 150 may determine that the user's utterance via the execution manager module 147 specifies some apps 141 that will perform some actions 141a, but other apps 143 that will execute the remaining actions 143b If not specified, a different app 143 (e.g., a message app, a telegram app) that can execute the same app 141 (e.g., a gallery app) ) Can be received, respectively.
  • a different app 143 e.g., a message app, a telegram app
  • the same app 141 e.g., a gallery app
  • the processor 150 may execute the same operations 141b and 143b (e.g., the same successive operations 141b and 143b) of the plurality of pass rules via the execution manager module 147, for example.
  • the processor 150 displays a status screen on the display 120 through which the different applications 141 and 143 included in the plurality of path rules can be selected through the execution manager module 147 Can be displayed.
  • the intelligent service module 149 may include a context module 149a, a persona module 149b, or a suggestion module 149c.
  • the processor 150 may execute the context module 149a to collect the current status of the apps 141 and 143 from the apps 141 and 143.
  • the processor 150 executes the context module 149a to receive the context information indicating the current status of the apps 141 and 143, and displays the current status of the apps 141 and 143 Can be collected.
  • the processor 150 may execute the persona module 149b to manage the personal information of the user using the user terminal 100.
  • the processor 150 executes the persona module 149b to collect usage information and performance results of the user terminal 100, and collects usage information and performance results of the user terminal 100, The personal information of the user can be managed.
  • the processor 150 may execute the proposal module 149c to predict the user's intention and recommend the command to the user based on the intention of the user.
  • the processor 150 may run the suggestion module 149c to recommend commands to the user based on the user's current state (e.g., time, location, context, app).
  • FIG. 3 is a diagram illustrating execution of an intelligent app of a user terminal according to an embodiment of the present invention.
  • the user terminal 100 receives user input and executes an intelligent application (e.g., a voice recognition application) associated with the intelligent agent 145.
  • an intelligent application e.g., a voice recognition application
  • the user terminal 100 may execute an intelligent app for voice recognition via the hardware key 112.
  • the user terminal 100 may display the user interface (UI) 121 of the intelligent app on the display 120 when the user input is received via the hardware key 112.
  • the user can touch the voice recognition button 121a to the UI 121 of the intelligent app to input (111b) voice, for example, while the UI 121 of the intelligent app is displayed on the display 120 .
  • the user may, for example, continue to press the hardware key 112 to enter voice 120b to enter voice 120b.
  • the user terminal 100 may execute an intelligent app for recognizing voice through the microphone 111.
  • the user terminal 100 displays the UI 121 of the intelligent app on the display 120 when a voice (e.g., wake up!) Designated via the microphone 111 is input 111a can do.
  • FIG. 4 is a diagram illustrating the context module of the intelligent service module collecting current status according to an embodiment of the present invention.
  • the processor 150 when the context request is received from the intelligent agent 145 (1), the processor 150 requests the context information indicating the current status of the applications 141 and 143 through the context module 149a )can do. According to one embodiment, the processor 150 may receive (3) the context information from the applications 141 and 143 via the context module 149a and transmit (4) it to the intelligent agent 145.
  • the processor 150 may receive a plurality of context information from the applications 141 and 143 via the context module 149a.
  • the context information may be, for example, information on the most recently executed apps 141 and 143.
  • the context information may, for example, be information about the current state in the apps 141 and 143 (e.g., information about the photo if the user is viewing the photo in the gallery).
  • the processor 150 can receive context information indicating the current state of the user terminal 100 from the device platform as well as the applications 141 and 143 via the context module 149a have.
  • the context information may include general context information, user context information, or device context information.
  • the general context information may include general information of the user terminal 100.
  • the general context information may be received through the sensor hub of the device platform or the like and may be confirmed through an internal algorithm.
  • the general context information may include current time and space information.
  • the information on the current time and space may include information on the current time or the current position of the user terminal 100, for example.
  • the current time can be confirmed through time on the user terminal 100, and information on the current position can be confirmed through a global positioning system (GPS).
  • GPS global positioning system
  • the general context information may include information about physical motion.
  • the information on the physical movement may include information on, for example, walking, running, driving, and the like.
  • the physical motion information may be identified through a motion sensor.
  • the information on the driving operation can be confirmed not only through the motion sensor but also through the Bluetooth connection in the vehicle to confirm boarding and parking.
  • the general context information may include user activity information.
  • the user activity information may include information on commute, shopping, trip, and the like, for example.
  • the user activity information can be confirmed using information about a place where a user or an application registers in the database.
  • the user context information may include information about a user.
  • the user context information may include information on a user's emotional state.
  • the information on the emotional state may include, for example, information about a user's happiness, sadness, anger, etc.
  • the user context information may include information on the current state of the user.
  • the information on the current state may include information on, for example, interest, intention, etc. (e.g., shopping).
  • the device context information may include information on the status of the user terminal 100.
  • the device context information may include information about a path rule executed by the execution manager module 147.
  • the device information may include information about the battery. The information on the battery can be confirmed through, for example, the state of charge and discharge of the battery.
  • the device information may include information about connected devices and networks. Information about the connected device can be ascertained, for example, via a communication interface to which the device is connected.
  • FIG. 5 is a block diagram illustrating a proposal module of an intelligent service module according to an embodiment of the present invention.
  • the proposal module 149c includes a hint providing module 149c_1, a context hint generating module 149c_2, a condition checking module 149c_3, a condition model module 149c_4, a reuse hint generating module 149c_5, And a hint generation module 149c_6.
  • the processor 150 may execute a hint providing module 149c_1 to provide a hint to the user.
  • the processor 150 receives a hint generated from the context hint generation module 149c_2, the reuse hint generation module 149c_5 or the introduction hint generation module 149c_6 via the hint providing module 149c_1, Can be provided.
  • the processor 150 may execute the condition checking module 149c_3 or the condition model module 149c_4 to generate a hint that may be recommended according to the current state.
  • the processor 150 executes the condition checking module 149c_3 to receive the information corresponding to the current state, executes the condition model module 149c_4, and sets a condition model using the received information .
  • the processor 150 executes the condition model module 149c_4 to identify a time, a location, an application in use, and the like at the time of providing a hint to the user, Can be provided to the user in descending order.
  • the processor 150 may execute a reuse hint generation module 149c_5 to generate a hint that can be recommended according to frequency of use.
  • the processor 150 may execute a reuse hint generation module 149c_5 to generate a hint based on the usage pattern of the user.
  • the introductory hint generation module 149c_6 may generate a hint that introduces the user to a new feature or a feature often used by another user.
  • hints to introduce the new functionality may include an introduction to the intelligent agent 145 (e.g., how it works).
  • the context hint generation module 149c_2, the condition checking module 149c_3, the condition model module 149c_4, the reuse hint generation module 149c_5 or the introduction hint generation module 149c_6 of the proposal module 149c And may be included in the personalization information server 300.
  • the processor 150 may generate the context hint generation module 149c_2, the reuse hint generation module 149c_5, or the introduction hint generation module 149c_5 of the user personalization information server 300 through the hint providing module 149c_1 of the proposal module 149c May receive a hint from module 149c_6 and provide the received hint to the user.
  • the user terminal 100 may provide hints in accordance with the following sequence of processes. For example, when the processor 150 receives a request for providing a hint from the intelligent agent 145, the processor 150 may transmit the request for hint generation to the context hint generation module 149c_2 via the hint providing module 149c_1. Upon reception of the hint generation request, the processor 150 may receive information corresponding to the current state from the context module 149a and the persona module 149b through the condition checking module 149c_3.
  • the processor 150 transfers the received information to the condition model module 149c_4 through the condition checking module 149c_3 and notifies the condition model module 149c_4 of the hints provided to the user using the information through the condition model module 149c_4 Hints can be prioritized in order of high availability.
  • the processor 150 can confirm the condition (6) through the context hint generation module 149c_2 and generate a hint corresponding to the current state.
  • the processor 150 may forward the generated hint to the hint providing module 149c_1 via the context hint generation module 149c_2.
  • the processor 150 may arrange the hint according to the rules specified via the hint providing module 149c_1 and forward the hint to the intelligent agent 145.
  • the processor 150 may generate a plurality of context hints through the hint providing module 149c_1, and may assign a priority to a plurality of context hints according to a specified rule. According to one embodiment, the processor 150 may first provide the user with a higher priority among the plurality of context hints via the hint providing module 149c_1.
  • the user terminal 100 may suggest hints based on frequency of use. For example, when the processor 150 receives the hint providing request from the intelligent agent 145, the processor 150 can transmit the hint creation request to the reuse hint generating module 149c_5 via the hint providing module 149c_1. Upon reception of the hint creation request, the processor 150 may receive user information from the persona module 149b through the reuse hint creation module 149c_5. For example, the processor 150 accesses the path rule included in the user's preference information of the persona module 149b via the reuse hint generation module 149c_5, the parameters included in the path rule, the frequency of execution of the application, Space-time information can be received.
  • the processor 150 may generate a hint corresponding to the received user information through the reuse hint generation module 149c_5.
  • the processor 150 may transmit the generated hint to the hint providing module 149c_1 through the reuse hint generating module 149c_5.
  • the processor 150 may arrange the hint via the hint providing module 149c_1 and forward the hint to the intelligent agent 145.
  • the user terminal 100 may propose a hint for a new function.
  • the processor 150 can transmit the request for hint generation to the introduction hint generation module 149c_6 via the hint providing module 149c_1.
  • the processor 150 may receive the introduction hint providing request from the proposal server 400 through the introduction hint generation module 149c_6 and receive the information on the function to be introduced from the proposal server 400.
  • the proposal server 400 may, for example, store information about a function to be introduced, and the hint list for the function to be introduced may be updated by a service operator.
  • the processor 150 may forward the generated hint to the hint providing module 149c_1 through the introduction hint generation module 149c_6.
  • the processor 150 may arrange the hint through the hint providing module 149c_1 and send the hint to the intelligent agent 145 (6).
  • the processor 150 may provide the user with the hints generated by the context hint generation module 149c_2, the reuse hint generation module 149c_5, or the introduction hint generation module 149c_6 through the proposal module 149c.
  • the processor 150 may display the generated hint through the proposal module 149c on an app that operates the intelligent agent 145 and receive an input from the user to select the hint from the user can do.
  • FIG. 6 is a block diagram illustrating an intelligent server of an integrated intelligent system according to an embodiment of the present invention.
  • the intelligent server 200 includes an automatic speech recognition (ASR) module 210, a natural language understanding (NLU) module 220, a path planner module 220, A dialogue manager (DM) module 240, a natural language generator (NLG) module 250 or a text to speech (TTS) module 260 can do.
  • the intelligent server 200 may include a communication circuit, a memory, and a processor.
  • the processor executes the instructions stored in the memory and generates an automatic speech recognition module 210, a natural language understanding module 220, a path planner module 230, a dialogue manager module 240, a natural language creation module 250,
  • the module 260 can be driven.
  • the intelligent server 200 can send and receive data (or information) with an external electronic device (e.g., the user terminal 100) through the communication circuit.
  • the natural language understanding module 220 or the path planner module 230 of the intelligent server 200 may generate a path rule.
  • an automatic speech recognition (ASR) module 210 may convert user input received from the user terminal 100 into text data.
  • ASR automatic speech recognition
  • the automatic speech recognition module 210 may convert user input received from the user terminal 100 into text data.
  • the automatic speech recognition module 210 may include a speech recognition module.
  • the speech recognition module may include an acoustic model and a language model.
  • the acoustic model may include information related to speech
  • the language model may include information on a combination of unit phoneme information and unit phoneme information.
  • the speech recognition module may convert user speech into text data using information on vocalization and information on unit phonemic information.
  • the information about the acoustic model and the language model may be stored in, for example, an automatic speech recognition database (ASR DB)
  • ASR DB automatic speech recognition database
  • the natural language understanding module 220 can perform a syntactic analysis or a semantic analysis to grasp a user's intention.
  • the grammatical analysis can divide the user input into grammatical units (e.g., words, phrases, morphemes, etc.) and determine what grammatical elements the divided units have.
  • the semantic analysis can be performed using semantic matching, rule matching, formula matching, or the like. Accordingly, the natural language understanding module 220 may obtain a domain (domain), an intent, or a parameter (or a slot) necessary for expressing the intention.
  • the one domain e.g., an alarm
  • the plurality of rules may include, for example, one or more mandatory element parameters.
  • the matching rule may be stored in a natural language understanding database (NLU DB)
  • the natural language understanding module 220 grasps the meaning of words extracted from user input using linguistic features (e.g., grammatical elements) such as morphemes, phrases, and the like, And the intention of the user. For example, the natural language understanding module 220 can determine the user intention by calculating how many words extracted from user input are included in each domain and intention. According to one embodiment, the natural language understanding module 220 may determine the parameters of the user input using words that are the basis for grasping the intent. According to one embodiment, the natural language understanding module 220 can determine the intention of the user using the natural language recognition database 221 in which the linguistic characteristic for grasping the intention of the user input is stored.
  • linguistic features e.g., grammatical elements
  • the natural language understanding module 220 may determine the parameters of the user input using words that are the basis for grasping the intent.
  • the natural language understanding module 220 can determine the intention of the user using the natural language recognition database 221 in which the linguistic characteristic for grasping the intention of the user input is stored.
  • the natural language understanding module 220 can determine a user's intention using a personalized language model (PLM).
  • PLM personalized language model
  • the natural language understanding module 220 may determine a user's intention using personalized information (e.g., a contact list, a music list).
  • personalized language model may be stored in the natural language recognition database 221, for example.
  • not only the natural language understanding module 220 but also the automatic speech recognition module 210 can recognize the user's voice by referring to the personalized language model stored in the natural language recognition database 221.
  • the natural language understanding module 220 may generate a pass rule based on the intent and parameters of the user input. For example, the natural language understanding module 220 may select an app to be executed based on an intention of a user input, and determine an operation to be performed in the selected app. The box salmon understanding module 220 may determine a parameter corresponding to the determined operation to generate a pass rule. According to one embodiment, the pass rule generated by the natural language understanding module 220 includes information about an app to be executed, an action to be performed in the app (e.g., at least one or more states) .
  • the natural language understanding module 220 may generate one pass rule, or a plurality of pass rules, based on the intent and parameters of the user input. For example, the natural language understanding module 220 receives the path rule set corresponding to the user terminal 100 from the path planner module 230, maps the intention and parameters of the user input to the received path rule set, The rules can be determined.
  • the natural language understanding module 220 determines an app to be executed, an action to be performed in the app, and parameters necessary to perform the action based on the intention and parameters of the user input, You can create a rule.
  • the natural language understanding module 220 may use the information of the user terminal 100 to describe an operation to be executed in the app to be executed and an application in an ontology or a graph model You can create path rules by arranging them.
  • the generated path rule may be stored in a path rule database (PR DB) 231 via the path planner module 230, for example.
  • the generated path rule may be added to the path rule set of the database 231.
  • the natural language understanding module 220 may select at least one of the generated plurality of pass rules. For example, the natural language understanding module 220 may select an optimal path rule for the plurality of pass rules. As another example, the natural language understanding module 220 may select a plurality of pass rules if only some actions are specified based on user utterances. The natural language understanding module 220 may determine one of the plurality of pass rules by a user's further input.
  • the natural language understanding module 220 may send a pass rule to the user terminal 100 in response to a user input.
  • the natural language understanding module 220 may transmit one pass rule corresponding to user input to the user terminal 100.
  • the natural language understanding module 220 may transmit a plurality of pass rules corresponding to user input to the user terminal 100.
  • the plurality of pass rules may be generated by the natural language understanding module 220 if, for example, only some actions are specified based on user utterances.
  • the path planner module 230 may select at least one of the plurality of path rules.
  • the path planner module 230 may deliver a set of path rules that includes a plurality of pass rules to the natural language understanding module 220.
  • the plurality of path rules of the path rule set may be stored in a form of a table in the path rule database 231 connected to the path planner module 230.
  • the path planner module 230 transmits a path rule set corresponding to information (e.g., OS information, app information) of the user terminal 100 received from the intelligent agent 145 to the natural language understanding module 220 .
  • the table stored in the path rule database 231 may be stored, for example, for each domain or domain version.
  • the path planner module 230 may select one pass rule or a plurality of pass rules from a pass rule set and transmit the selected pass rules to the natural language understanding module 220. For example, the path planner module 230 selects one pass rule or a plurality of pass rules by matching a user's intention and parameters with the path rule set corresponding to the user terminal 100, .
  • the path planner module 230 may generate one pass rule or a plurality of pass rules using the user intent and parameters. For example, the path planner module 230 may generate one pass rule or a plurality of pass rules by determining an app to be executed and an action to be executed in the app based on the user's intention and parameters. According to one embodiment, the path planner module 230 may store the generated path rule in the path rule database 231.
  • the path planner module 230 may store the pass rules generated in the natural language understanding module 220 in the pass rule database 231. [ The generated path rule may be added to the path rule set stored in the path rule database 231. [
  • the table stored in the path rule database 231 may include a plurality of path rules or a plurality of path rule sets.
  • the plurality of path rules or the plurality of path rule sets may reflect the type, version, type, or characteristic of the device that executes each pass rule.
  • the conversation manager module 240 may determine whether the intention of the user identified by the natural language understanding module 220 is clear. For example, the conversation manager module 240 may determine whether the intention of the user is clear based on whether or not the information of the parameter is sufficient. The conversation manager module 240 may determine whether the parameter identified in the natural language understanding module 220 is sufficient to perform the task. According to one embodiment, the conversation manager module 240 may perform feedback requesting the user for the necessary information if the intention of the user is not clear. For example, the conversation manager module 240 may perform feedback requesting information about a parameter for grasping a user's intention.
  • the conversation manager module 240 may include a content provider module. If the content providing module can perform an operation based on the intention and parameters recognized in the natural language understanding module 220, the content providing module may generate a result of performing a task corresponding to a user input. According to one embodiment, the conversation manager module 240 may send the results generated in the content provision module to the user terminal 100 in response to user input.
  • the natural language generation module (NLG) 250 may change the specified information into a text form.
  • the information changed in the text form may be in the form of a natural language utterance.
  • the specified information may be, for example, information about additional inputs, information to guide completion of an operation corresponding to the user input, or information (e.g., feedback information on user input) that directs additional input of the user.
  • the information changed in the text form may be transmitted to the user terminal 100 and displayed on the display 120 or transmitted to the text-to-speech conversion module 260 to be changed to a voice form.
  • the text-to-speech module 260 may change textual information to speech-like information.
  • the text-to-speech conversion module 260 receives the information of the text form from the natural language generation module 250, converts the information of the text form into the information of the voice form, and transmits the information to the user terminal 100.
  • the user terminal 100 may output the voice information to the speaker 130.
  • the natural language understanding module 220, the path planner module 230, and the conversation manager module 240 may be implemented as a single module.
  • the natural language understanding module 220, the path planner module 230, and the conversation manager module 240 may be implemented as a module to determine a user's intention and parameters, You can create a response (eg, a path rule). Accordingly, the generated response can be transmitted to the user terminal 100.
  • FIG. 7 is a diagram illustrating a method of generating a path rule of a path planner module according to an embodiment of the present invention.
  • the natural language understanding module 220 may divide a function of an app into an action (for example, a state A to a state F) and store the function in the pass rule database 231.
  • the natural language understanding module 220 includes a plurality of path rules A-B1-C1, A-B1-C2, A-B1-C3-DF, B1-C3-DEF) may be stored in the path rule database 231.
  • the path rule database 231 of the path planner module 230 may store a set of path rules for performing the function of the app.
  • the set of path rules may include a plurality of pass rules including a plurality of actions (e.g., a sequence of states).
  • the plurality of path rules may be sequentially arranged in accordance with the parameters inputted to each of the plurality of operations.
  • the plurality of pass rules may be configured in an ontology or graph model form and stored in the pass rule database 231.
  • the natural language understanding module 220 includes a plurality of pass rules A-B1-C1, A-B1-C2, A-B1-C3-DF, (A-B1-C3-DF) can be selected among the optimum path rules (B1-C3-DEF).
  • the natural language understanding module 220 may pass a plurality of rules to the user terminal 100 in the absence of a path rule that perfectly matches the user input. For example, the natural language understanding module 220 may select a pass rule (e.g., A-B1) that is partially corresponding to the user input.
  • the natural language understanding module 220 includes one or more pass rules (e.g., A-B1-C1, A-B1-C2, A-B1-C3 -DF, A-B1-C3-DEF) to the user terminal 100.
  • the natural language understanding module 220 may select one of a plurality of pass rules based on the further input of the user terminal 100 and forward the selected one pass rule to the user terminal 100 have. For example, the natural language understanding module 220 may generate a plurality of pass rules (e.g., A-B1-C1, A-B1, etc.) according to a user input (e.g., (For example, A-B1-C3-DF) among the A-B1-C3-DF and the A-B1-C3-DEF.
  • a user input e.g., (For example, A-B1-C3-DF) among the A-B1-C3-DF and the A-B1-C3-DEF.
  • the natural language understanding module 220 may include a user's intention corresponding to a user input (e.g., an input to select C3) further input to the user terminal 100 via the natural language understanding module 220 and / And may transmit the determined user's intention or parameter to the user terminal 100.
  • a user's intention corresponding to a user input e.g., an input to select C3
  • the natural language understanding module 220 may transmit the determined user's intention or parameter to the user terminal 100.
  • A-B1-C3-DF, A-B1-C3-DF, and A-B1-C3-DF based on the transmitted intention or the parameter. DEF) for example, A-B1-C3-DF.
  • the user terminal 100 can complete the operation of the applications 141 and 143 by the selected one pass rule.
  • the natural language understanding module 220 may generate a pass rule that partially corresponds to the received user input, when the intelligent server 200 receives user input that lacks information. For example, the natural language understanding module 220 may send the partially-matched path rule to the intelligent agent 145.
  • Processor 150 may execute intelligent agent 145 to receive the pass rules and pass the partially matched pass rules to execution manager module 147. [ The processor 150 may execute the first application 141 according to the path rule through the execution manager module 147. [ The processor 150 may execute the first app 141 via the execution manager module 147 and send information on the missing parameters to the intelligent agent 145. [ The processor 150 may request additional input to the user using the information on the missing parameter via the intelligent agent 145.
  • the processor 150 may send and process user input to the intelligent server 200 when additional input is received by the user via the intelligent agent 145.
  • the natural language understanding module 220 may generate the added path rule based on the intention and parameter information of the further input user input and transmit the generated path rule to the intelligent agent 145.
  • the processor 150 may execute the second app 143 by sending the pass rule to the execution manager module 147 via the intelligent agent 145.
  • the natural language understanding module 220 may send a user information request to the personalization information server 300 when user input with some information missing is received by the intelligent server 200.
  • the personalization information server 300 may transmit the information of the user who inputs the user input stored in the persona database to the natural language understanding module 220.
  • the natural language understanding module 220 may use the user information to select a path rule corresponding to a user input that is missing some operation. Accordingly, the natural language understanding module 220 may request the missing information to receive the additional input even when the user input with some information is missing, even if it is received by the intelligent server 200, Can be determined.
  • Table 1 may illustrate an exemplary form of a pass rule associated with a task requested by a user according to an embodiment.
  • a pass rule generated or selected in an intelligent server (intelligent server 200 in FIG. 1) according to a user utterance includes at least one state 25, 26 , 27, 28, 29 or 30).
  • the at least one state includes a photo application execution view (PicturesView) 25, a photo search function execution (SearchView) 26, a search result display screen output (SearchViewResult) (SearchEmptySelectedView) 28, a SearchSelectedView 29 on which at least one picture is selected, or a shared application selection screen output (CrossShare) 30 ).
  • the parameter information of the pass rule may correspond to at least one state.
  • the at least one photo may be included in the selected search result display screen output 29 state.
  • a task requested by the user as a result of the execution of the path rule including the sequence of states 25, 26, 27, 28, 29 (e.g., " share photo!
  • FIG. 8 is a diagram illustrating that a persona module of an intelligent service module manages information of a user according to an exemplary embodiment of the present invention.
  • the processor 150 may receive information of the user terminal 100 from the applications 141 and 143, the execution manager module 147, or the context module 149a via the persona module 149b .
  • the processor 150 may store the result information obtained by executing the operations 141b and 143b of the app through the apps 141 and 143 and the execution manager module 147 in the action log database.
  • the processor 150 may store information on the current state of the user terminal 100 in the context database through the context module 149a.
  • the processor 150 may receive the stored information from the action log database or the context database via the persona module 149b.
  • the data stored in the action log database and the context database may be analyzed by, for example, an analysis engine and passed to the persona module 149b.
  • the processor 150 transmits information received from the applications 141 and 143, the execution manager module 147 or the context module 149a to the proposal module 149c via the persona module 149b .
  • the processor 150 may forward the data stored in the action log database or the context database to the proposal module 149c via the persona module 149b.
  • the processor 150 transmits information received from the applications 141 and 143, the execution manager module 147 or the context module 149a to the personalization information server 300 via the persona module 149b can do.
  • the processor 150 may periodically transmit data stored in the action log database or the context database to the personalization information server 300 via the persona module 149b.
  • the processor 150 may communicate the activity log database or the data stored in the context database to the proposal module 149c via the persona module 149b.
  • the user information generated through the persona module 149b may be stored in the persona database.
  • the persona module 149b may periodically transmit the user information stored in the persona database to the personalization information server 300.
  • information sent to the personalization information server 300 via the persona module 149b may be stored in a persona database.
  • the personalization information server 300 can deduce user information necessary for generating a pass rule of the intelligent server 200 using the information stored in the persona database.
  • the inferred user information using information transmitted via the persona module 149b may include profile information or preference information.
  • the profile information or the preference information may be deduced from the user's account and accumulated information.
  • the profile information may include personal information of a user.
  • the profile information may include demographic information of a user.
  • the demographic information may include, for example, a user's gender, age, and the like.
  • the profile information may include life event information.
  • the life event information may be inferred by comparing log information with a life event model, for example, and may be reinforced by analyzing a behavior patter.
  • the profile information may include interest information.
  • the interest information may include, for example, a shopping item of interest, an area of interest (e.g., sports, politics, etc.).
  • the profile information may include activity area information.
  • the activity area information may include information on, for example, a house, a work place, and the like.
  • the information on the active area may include information on the place where the priority is recorded based on the cumulative stay time and the number of visits as well as information on the location of the place.
  • the profile information may include activity time information.
  • the activity time information may include information on, for example, a weather time, a commute time, a sleep time, and the like.
  • the information on the commute time can be inferred using the activity area information (e.g., information on the house and work place). Information about the sleeping time can be inferred through the unused time of the user terminal 100.
  • the preference information may include user preference information.
  • the preference information may include information about an app preference.
  • the app preference can be deduced, for example, through the usage history of the app (e.g., time and place usage records).
  • the preference of the app may be used to determine an app to be executed according to a user's current state (e.g., time, place).
  • the preference information may include information about contact preferences.
  • the contact preference can be inferred by analyzing information on the frequency of contact (e.g., frequency of contact by hour or place) of a contact, for example.
  • the contact preference can be used to determine the contact to contact according to the current state of the user (e.g., contact for duplicate names).
  • the preference information may include setting information.
  • the setting information may be inferred by analyzing information on a setting frequency of a specific setting value (for example, a frequency of setting the setting value by time or place).
  • the setting information may be used to set a specific setting value according to a user's current state (e.g., time, place, situation).
  • the preference information may include location preference.
  • the place preference can be deduced, for example, through a visit record (for example, an hourly visit record) of a specific place.
  • the location preference can be used to determine a visited location according to the user's current state (e.g., time).
  • the preference information may include a command preference.
  • the command preference may be inferred through, for example, the frequency of command usage (e.g., time, frequency of use per location).
  • the command preference may be used to determine a command pattern to be used according to the user's current state (e.g., time, location).
  • the command preference may include information about the menu most frequently selected by the user in the current state of the app being executed by analyzing the log information.
  • FIG. 9 is a block diagram of an electronic device 901 in a network environment 900, in accordance with various embodiments.
  • an electronic device 901 communicates with an electronic device 902 via a first network 998 (e.g., near-field wireless communication) or a second network 999 (E. G., Remote wireless communication). ≪ / RTI > According to one embodiment, the electronic device 901 may communicate with the electronic device 904 through the server 908.
  • a first network 998 e.g., near-field wireless communication
  • a second network 999 E. G., Remote wireless communication
  • the electronic device 901 may communicate with the electronic device 904 through the server 908.
  • the electronic device 901 includes a processor 920, a memory 930, an input device 950, an acoustic output device 955, a display device 960, an audio module 970, a sensor module 976, interface 977, haptic module 979, camera module 980, power management module 988, battery 989, communication module 990, subscriber identity module 996, and antenna module 997 ).
  • at least one of these components e.g., display 960 or camera module 980
  • some components such as, for example, a sensor module 976 (e.g., a fingerprint sensor, an iris sensor, or an illuminance sensor) embedded in a display device 960 Can be integrated.
  • the electronic device 901 may be the user terminal 100 disclosed in FIG.
  • Processor 920 drives at least one other component (e.g., hardware or software component) of electronic device 901 that is coupled to processor 920 by driving software, e.g., program 940, And can perform various data processing and arithmetic operations.
  • Processor 920 loads and processes commands or data received from other components (e.g., sensor module 976 or communication module 990) into volatile memory 932 and stores the resulting data in nonvolatile memory 934, Lt; / RTI >
  • the processor 920 is operatively coupled to a main processor 921 (e.g., a central processing unit or application processor) and, independently, or additionally or alternatively, uses less power than the main processor 921, Or a co-processor 923 (e.g., a graphics processing unit, an image signal processor, a sensor hub processor, or a communications processor) specific to the designated function.
  • the auxiliary processor 923 may be operated separately from or embedded in the main processor 921.
  • the coprocessor 923 may be used in place of the main processor 921, for example, while the main processor 921 is in an inactive (e.g., sleep) state, At least one component (e.g., display 960, sensor module 976, or communication module) of the electronic device 901, along with the main processor 921, 990), < / RTI > According to one embodiment, the coprocessor 923 (e.g., an image signal processor or communications processor) is implemented as a component of some other functionally related component (e.g., camera module 980 or communication module 990) .
  • an image signal processor or communications processor is implemented as a component of some other functionally related component (e.g., camera module 980 or communication module 990) .
  • the memory 930 may store various data used by at least one component (e.g., processor 920 or sensor module 976) of the electronic device 901, e.g., software (e.g., program 940) ), And input data or output data for the associated command.
  • the memory 930 may include a volatile memory 932 or a non-volatile memory 934.
  • the program 940 is software stored in the memory 930 and may include, for example, an operating system 942, middleware 944 or application 946. [
  • the input device 950 is an apparatus for receiving instructions or data to be used in a component (e.g., processor 920) of the electronic device 901 from the outside (e.g., a user) of the electronic device 901,
  • a component e.g., processor 920
  • a mouse e.g., a keyboard
  • a keyboard e.g., a keyboard
  • the sound output device 955 is a device for outputting a sound signal to the outside of the electronic device 901.
  • the sound output device 955 may include a speaker for general use such as a multimedia reproduction or a sound reproduction, .
  • the receiver may be formed integrally or separately with the speaker.
  • Display device 960 may be an apparatus for visually presenting information to a user of electronic device 901 and may include, for example, a display, a hologram device, or a projector and control circuitry for controlling the projector. According to one embodiment, the display device 960 may include a touch sensor or a pressure sensor capable of measuring the intensity of the pressure on the touch.
  • the audio module 970 can bidirectionally convert sound and electrical signals. According to one embodiment, the audio module 970 may acquire sound through an input device 950, or may be connected to an audio output device 955, or to an external electronic device (e.g., Electronic device 902 (e.g., a speaker or headphone)).
  • an external electronic device e.g., Electronic device 902 (e.g., a speaker or headphone)
  • the sensor module 976 may generate an electrical signal or data value corresponding to an internal operating state (e.g., power or temperature) of the electronic device 901, or an external environmental condition.
  • the sensor module 976 may be a gyro sensor, a gyro sensor, a pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an infrared sensor, Or an illuminance sensor.
  • Interface 977 may support a designated protocol that may be wired or wirelessly connected to an external electronic device (e.g., electronic device 902).
  • the interface 977 may include a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
  • HDMI high definition multimedia interface
  • USB universal serial bus
  • SD card interface Secure Digital interface
  • audio interface an audio interface
  • the connection terminal 978 may be a connector such as an HDMI connector, a USB connector, an SD card connector, or an audio connector that can physically connect the electronic device 901 and an external electronic device (e.g., an electronic device 902) (E.g., a headphone connector).
  • an HDMI connector such as an HDMI connector, a USB connector, an SD card connector, or an audio connector that can physically connect the electronic device 901 and an external electronic device (e.g., an electronic device 902) (E.g., a headphone connector).
  • the haptic module 979 can convert an electrical signal into a mechanical stimulus (e.g., vibration or motion) or an electrical stimulus that the user can perceive through a tactile or kinesthetic sense.
  • the haptic module 979 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
  • the camera module 980 can capture a still image and a moving image.
  • the camera module 980 may include one or more lenses, an image sensor, an image signal processor, or a flash.
  • the power management module 988 is a module for managing the power supplied to the electronic device 901, and may be configured as at least a part of, for example, a power management integrated circuit (PMIC).
  • PMIC power management integrated circuit
  • the battery 989 is an apparatus for supplying power to at least one component of the electronic device 901 and may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
  • the communication module 990 is responsible for establishing a wired or wireless communication channel between the electronic device 901 and an external electronic device (e.g., electronic device 902, electronic device 904, or server 908) Lt; / RTI > Communications module 990 may include one or more communications processors that support wired or wireless communications, which operate independently from processor 920 (e.g., an application processor).
  • communication module 990 includes a wireless communication module 992 (e.g., a cellular communication module, a short range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 994 (E.g., a local area network (LAN) communication module, or a power line communication module), and may communicate with a first network 998 (e.g., Bluetooth, WiFi direct, or infrared data association Communication network) or a second network 999 (e.g., a telecommunications network such as a cellular network, the Internet, or a computer network (e.g., a LAN or WAN)).
  • a wireless communication module 992 e.g., a cellular communication module, a short range wireless communication module, or a global navigation satellite system (GNSS) communication module
  • GNSS global navigation satellite system
  • wired communication module 994 E.g., a local area network (LAN) communication module, or a power line communication module
  • a first network 998
  • the wireless communication module 992 may use the user information stored in the subscriber identity module 996 to identify and authenticate the electronic device 901 within the communication network.
  • the antenna module 997 may include one or more antennas for transmitting or receiving signals or power externally.
  • the communication module 990 e.g., the wireless communication module 992
  • Some of the components are connected to each other via a communication method (e.g., bus, general purpose input / output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI) (Such as commands or data) can be exchanged between each other.
  • a communication method e.g., bus, general purpose input / output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI) (Such as commands or data) can be exchanged between each other.
  • the command or data may be transmitted or received between the electronic device 901 and an external electronic device 904 via a server 908 connected to the second network 999.
  • Each of the electronic devices 902, 904 may be the same or a different kind of device as the electronic device 901.
  • all or a portion of the operations performed on the electronic device 901 may be performed on another or a plurality of external electronic devices.
  • the electronic device 901 in the event that the electronic device 901 has to perform certain functions or services automatically or upon request, the electronic device 901 may be capable of executing the function or service itself, And may request the external electronic device to perform at least some functions associated therewith.
  • the external electronic device receiving the request may execute the requested function or additional function and transmit the result to the electronic device 901.
  • the electronic device 901 may process the received result as is or additionally to provide the requested function or service.
  • cloud computing, distributed computing, or client-server computing technology may be used.
  • the electronic device can be various types of devices.
  • the electronic device can include, for example, at least one of a portable communication device (e.g., a smart phone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance.
  • a portable communication device e.g., a smart phone
  • a computer device e.g., a laptop, a desktop, a smart phone
  • portable multimedia device e.g., a portable multimedia device
  • portable medical device e.g., a portable medical device
  • camera e.g., a camera
  • a wearable device e.g., a portable medical device
  • first component is "(functionally or communicatively) connected” or “connected” to another (second) component, May be connected directly to the component, or may be connected through another component (e.g., a third component).
  • module includes units comprised of hardware, software, or firmware and may be used interchangeably with terms such as, for example, logic, logic blocks, components, or circuits.
  • a module may be an integrally constructed component or a minimum unit or part thereof that performs one or more functions.
  • the module may be configured as an application-specific integrated circuit (ASIC).
  • ASIC application-specific integrated circuit
  • Various embodiments of the present document may include instructions stored on a machine-readable storage medium (e.g., internal memory 936 or external memory 938) readable by a machine (e.g., a computer) Software (e.g., program 940).
  • the device may include an electronic device (e. G., Electronic device 901) in accordance with the disclosed embodiments as an apparatus that is operable to invoke stored instructions from the storage medium and act upon the called instructions.
  • a processor e.g., processor 920
  • the processor may perform the function corresponding to the instruction, either directly, or using other components under the control of the processor.
  • the instructions may include code generated or executed by the compiler or interpreter.
  • a device-readable storage medium may be provided in the form of a non-transitory storage medium.
  • 'non-temporary' means that the storage medium does not include a signal and is tangible, but does not distinguish whether data is stored semi-permanently or temporarily on the storage medium.
  • the method according to various embodiments disclosed herein may be provided in a computer program product.
  • a computer program product can be traded between a seller and a buyer as a product.
  • a computer program product may be distributed in the form of a machine readable storage medium (eg, compact disc read only memory (CD-ROM)) or distributed online through an application store (eg PlayStore TM).
  • CD-ROM compact disc read only memory
  • PlayStore TM application store
  • at least a portion of the computer program product may be temporarily stored, or temporarily created, on a storage medium such as a manufacturer's server, a server of an application store, or a memory of a relay server.
  • Each of the components may be comprised of a single entity or a plurality of entities, and some of the subcomponents described above may be omitted, or other subcomponents May be further included in various embodiments.
  • some components e.g., modules or programs
  • the wireless communication module 1092 may include an MST communication module 1010 or an NFC communication module 1030
  • the power management module 1088 may include a wireless charging module 1050.
  • the antenna module 1097 is connected to the MST antenna 1097-1 connected to the MST communication module 1010, the NFC antenna 1097-3 connected to the NFC communication module 1030, and the wireless charging module 1050 And may separately include a plurality of antennas including a wireless charging antenna 1097-5.
  • elements overlapping with those in Fig. 10 are omitted or briefly described.
  • the electronic device 1001 may be the electronic device 901 disclosed in FIG.
  • the MST communication module 1010 receives a signal (e.g., a signal including control information or settlement information) from the processor 1020 and generates a magnetic signal corresponding to the received signal via the MST antenna 1097-1 And then transmit the generated magnetic signal to an external electronic device 1002 (e.g., POS device).
  • a signal e.g., a signal including control information or settlement information
  • the MST communication module 1010 includes a switching module (not shown) including one or more switches connected to the MST antenna 1097-1, The direction of the voltage or current supplied to the transistor 1097-1 can be changed. Which may be sent via the MST antenna 1097-1 to change the direction of a magnetic signal (e.g., a magnetic field) transmitted to an external electronic device 1002 via, for example, wireless local area communication 1098.
  • a magnetic signal e.g., a magnetic field
  • the magnetic signal transmitted in the changed direction may cause a shape and effect similar to the magnetic field that occurs when the magnetic card is swiped to the card reader of the electronic device 1002.
  • payment related information and control signals received in the form of a magnetic signal at the electronic device 1002 may be transmitted to a payment server (e.g., server 1008) via, for example, Lt; / RTI >
  • the NFC communication module 1030 acquires a signal (e.g., a signal including control information or settlement information) from the processor 1020 and transmits the obtained signal to the external electronic device 1002 through the NFC antenna 1097-3. As shown in FIG. According to one embodiment, the NFC communication module 1030 can receive a signal (e.g., a signal including control information or payment information) sent from an external electronic device 1002 via an NFC antenna 1097-3 have.
  • a signal e.g., a signal including control information or payment information
  • the wireless charging module 1050 wirelessly transmits power to an external electronic device 1002 (e.g., a mobile phone or a wearable device) via a wireless charging antenna 1097-5 or wirelessly transmits power to an external electronic device 1002 : Wireless charging device).
  • the wireless charging module 1050 may support various wireless charging schemes including, for example, magnetic resonance or magnetic induction.
  • some of the MST antenna 1097-1, the NFC antenna 1097-3, or the wireless charging antenna 1097-5 may share at least a portion of the radiating part with each other.
  • the radiating portion of the MST antenna 1097-1 can be used as the radiating portion of the NFC antenna 1097-3 or the wireless charging antenna 1097-5, and vice versa.
  • the antenna module 1097 may be coupled to the wireless communication module 1092 (1097-1, 1097-3, or 1097-3) under the control of a power management module (e.g., an MST communication module 1010 or an NFC communication module 1030) or a power management module And a switching circuit (not shown) for selectively connecting or disconnecting at least a part of the signal lines (e.g., open).
  • a power management module e.g., an MST communication module 1010 or an NFC communication module 1030
  • a switching circuit not shown for selectively connecting or disconnecting at least a part of the signal lines (e.g., open).
  • the NFC communication module 1030 or the wireless charging module 1050 controls the switching circuit to control the NFC antenna 1097-3 and the wireless charging antenna 1097-5 can be temporarily disconnected from the NFC antenna 1097-3 and only connected to the wireless charging antenna 1097-5.
  • the designated functions (e.g., payment functions) of the MST communication module 1010 or the NFC communication module 1030 can be performed in a trusted execution environment (TEE).
  • TEE trusted execution environment
  • a trusted execution environment (TEE) in accordance with various embodiments may include at least some of the memory 1030 to perform functions (e.g., financial transactions, or personal information related functions) that require a relatively high level of security,
  • a designated area is allocated, and access to the designated area may be an execution environment that is limitedly allowed, for example, according to an access subject or an application to be executed.
  • FIG. 11 illustrates a system 1100 in accordance with various embodiments of the present invention.
  • the system 1100 may include a first electronic device 1110, a second electronic device 1120, and a server 1130.
  • the first electronic device 1110 may be a device that processes input and output data to the first electronic device 1110 to further utilize the input and output capabilities of the second electronic device 1120 to provide a voice- have.
  • the voice-based service may be a service or function associated with the user's voice recognition service, or voice recognition service.
  • the voice-based service may be a service associated with the intelligent app described in FIG. 1 or FIG.
  • the voice-based service may be an ANC (Active Noise Canceling) service of the user's voice recognition service.
  • the input and output data for the first electronic device 1110 may be stored outside the first electronic device 1110 (e.g., user, second electronic device 1120, server 1130, etc.) May be determined in accordance with a control command input from the inside of the device 1110 (e.g., the processor of the first electronic device 1110). For example, if the user inputs a voice command, such as " play music A " to the first electronic device 1110, the input data to the first electronic device 1110 may be a voice command ), And the output data can be determined as A music.
  • a voice command such as " play music A " to the first electronic device 1110
  • the input data to the first electronic device 1110 may be a voice command
  • the output data can be determined as A music.
  • the input / output functions of the device may include detecting the data on the external environment of the device, As shown in FIG.
  • the input function of the second electronic device 1120 may be such that the second electronic device 1120 is capable of generating a user voice utterance (e. G., A " high bee ratio, ("Hi Bixby, when is the Golden State Warriors game today?").
  • the output function of the second electronic device 1120 may be such that the second electronic device 1120 outputs information in a sound format using a speaker provided in the second electronic device 1120, Today's Golden State War will be held at 7:00 pm ").
  • the first electronic device 1110 receives a control command for the first electronic device 1110 from an external device (e.g., second electronic device 1120, server 1130) of the first electronic device 1110, (E.g., the second electronic device 1120, the server 1130) before receiving the electronic device 1120 via the wireless network.
  • the first electronic device 1110 may attempt to establish a connection with an external device over a wireless network after receiving a control command for the first electronic device 1110.
  • the first electronic device 1110 may be coupled to the second electronic device 1120 through a local area network (e.g., a first network 998).
  • a local area network e.g., a first network 998
  • the first electronic device 1110 may be coupled to the second electronic device 1120 using at least one of Bluetooth, Bluetooth Low Energy (BLE), or WIFI DIRECT communication. 14) of the wireless charging module (e.g., wireless charging module 1220 of FIG. 12) included in the first electronic device 1110.
  • BLE Bluetooth Low Energy
  • WIFI DIRECT communication. 14 of the wireless charging module included in the first electronic device 1110.
  • the wireless charging module e.g., wireless charging module 1220 of FIG. 12
  • the second communication circuit 23b E.g., the second communication circuit 23b.
  • the first electronic device 1110 and / or the second electronic device 1120 may be coupled to the server 1130 through a remote wireless network (e.g., the second network 999 of FIG. 9).
  • a remote wireless network e.g., the second network 999 of FIG. 9
  • the first electronic device 1110 may be the electronic device 901 of FIG.
  • the second electronic device 1120 may be a device that provides input / output capabilities of the second electronic device 1120 to process input / output data of the first electronic device 1110. In another embodiment, the second electronic device 1120 may additionally utilize the input / output functionality of the first electronic device 1110 to process input / output data of the second electronic device 1120.
  • the second electronic device 1120 may perform the functions assigned to the second electronic device 1120 and the functions assigned to the second electronic device 1120 may perform the functions assigned to the second electronic device 1120, Lt; / RTI >
  • the function assigned to the second electronic device 1120 may be a function to power the first electronic device 1110.
  • the second electronic device 1120 may be coupled to the first electronic device 1120 wirelessly using at least one of inductive coupling, resonant magnetic coupling, or radio frequency radiation. (1110).
  • the second electronic device 1120 may be wired to the first electronic device 1110 to provide power to the first electronic device 1110.
  • the second electronic device 1120 may be coupled to the first electronic device 1110 using a communication channel separate from the communication channel that powers the first electronic device 1110.
  • the second electronic device 1120 may be coupled to the first electronic device 1110 through a wireless network while providing power to the first electronic device 1110.
  • the second electronic device 1120 may be connected to the first electronic device 1110 through the wireless network while not powering the first electronic device 1110 (e.g., when charging of the first electronic device 1110 is complete) And may be coupled to the electronic device 1110.
  • the server 1130 is configured to allow the first electronic device 1110 to further utilize the input / output capabilities of the second electronic device 1120 to process input and output data for the first electronic device 1110, May be an apparatus that controls at least one of the first electronic device 1110 or the second electronic device 1120.
  • the server 1130 may be at least one of the intelligent server 200, the personalization information server 300, and the proposal server 400, or may be a collection of the servers described above.
  • the server 1130 may be coupled to the first electronic device 1110 and / or the second electronic device 1120 via at least one of a wired or wireless network.
  • the server 1130 may be a router of a local network connected to the local network via the first electronic device 1110 and / or the second electronic device 1120.
  • the server 1130 may be a cloud server.
  • the server 1130 may detect a connection between the first electronic device 1110 and the second electronic device 1120 and then determine whether at least one of the first electronic device 1110 or the second electronic device 1120 The position of the device of the present invention can be determined.
  • the location of the second electronic device 1120 may be a fixed location and the server 1130 may be storing the fixed location information of the second electronic device 1120 in advance.
  • 1110 may be determined based on the location information of the second electronic device 1120.
  • the server 1130 may determine the location of the first electronic device 1110 to be the same as the second electronic device 1120 Position.
  • the server 1130 can detect the connection of the first electronic device 1110 and the second electronic device 1120 to the first electronic device 1120 based on the location of the second electronic device 1120 (E.g., a distance away from the position of the second electronic device 1120, a direction relative to the second electronic device 1120, etc.) of the first electronic device 1120.
  • the server 1130 may determine the location of the first electronic device 1110 considering the manner in which the second electronic device 1120 is charged. For example, if the second electronic device 1120 is in a manner that provides power to the first electronic device 1110 in a magnetically inductive manner, the position of the first electronic device 1110 may be determined by the position of the second electronic device 1120 The same position can be determined. In another example, if the second electronic device 1120 is in a manner that provides power to the first electronic device 1110 in a magnetically resonant manner, the position of the first electronic device 1110 (e.g., : Distance from the second electronic device 1120).
  • the position of the first electronic device 1110 e.g., : Distance from the second electronic device 1120.
  • the server 1130 senses the connection of the first electronic device 1110 and the second electronic device 1120 and then determines whether at least one of the first electronic device 1110 or the second electronic device 1120 One device can be controlled. For example, if the identification information of the second electronic device 1120 is received from the first electronic device 1110, or the identification information of the first electronic device 1110 is received from the second electronic device 1120, The first electronic device 1130 may determine that the first electronic device 1110 and the second electronic device 1120 are connected and may control at least one of the first electronic device 1110 or the second electronic device 1120 .
  • the server 1130 includes a first electronic device 1110 and a second electronic device 1120 for controlling at least one of the first electronic device 1110 or the second electronic device 1120, To at least one of the first electronic device 1110 or the second electronic device 1120 via a network connected to the first electronic device 1110 or the second electronic device 1120.
  • the control commands transmitted by the server 1130 may include activation or deactivation of at least one function (e.g., speech recognition function) for the first electronic device 1110 or the second electronic device 1120, Or at least one function or operation (e.g., output of data generated and transmitted at server 1130) for second electronic device 1120.
  • the server 1130 may receive data from at least one of the first electronic device 1110 or the second electronic device 1120, which includes a request to provide specific information.
  • at least one of the first electronic device 1110 or the second electronic device 1120 may include various types of user input (e.g., voice input, touch input, gesture input, etc.) requesting specific information .
  • at least one of the first electronic device 1110 or the second electronic device 1120 may be a "HiBixby, what time is the game of Golden State today?" (Hi Bixby, when is the Golden State Warriors game today? ").
  • At least one of the first electronic device 1110 or the second electronic device 1120 converts the received user voice utterance into an electrical signal (e.g., a voice signal) and transmits the converted electrical signal to the server 1130 Lt; / RTI >
  • the server 1130 may determine that a request for providing information (competition information of a golden state) is included in the received electrical signal.
  • the server 1130 may obtain the requested information in response to receiving the information provision request. For example, the server 1130 may obtain the requested " golden state competition information " by retrieving the memory stored in the server 1130 or by requesting it from another server connected to the server 1130. [
  • the server 1130 may determine the output format of the acquired information. For example, the server 1130 may determine the output format of the information obtained based on input / output attribute information of the first electronic device 1110 and the second electronic device 1120, or hardware / software information. The server 1130 may generate feedback data to be transmitted to the first electronic device 1110 or the second electronic device 1120 by encoding the acquired information into a determined output format.
  • the server 1130 may determine output information of the feedback data.
  • the output information of the feedback data may include information on a device for outputting feedback data, information on a condition for outputting feedback data, and information on an output environment (e.g., volume) of feedback data.
  • the server 1130 may send at least a portion of the feedback data to at least one of the first electronic device 1110 or the second electronic device 1120. For example, the server 1130 may send the entire feedback data to the first electronic device 1110. The server 1130 may send a first portion of the feedback data to the first electronic device 1110 and a second portion of the feedback data to the second electronic device 1110. [ 1120). The second portion may be the remainder of the feedback data except for the first portion. The server 1130 may send some, but not all, of the requested feedback data to the device that has requested the feedback data, and may send some feedback data to the device that did not request the feedback data.
  • the server 1130 may send at least a portion of the output information to at least one of the first electronic device 1110 and the second electronic device 1120. For example, when the server 1130 sends all of the feedback data to the first electronic device 1110, the server 1130 sends a portion (first portion) of the feedback data to be transmitted to the first electronic device 1110 And the remaining portion (second portion) of the feedback data may be additionally transmitted to the first electronic device 1110, indicating output to be output at the second electronic device 1120. [ The first electronic device 1110 may forward or forward a portion (second portion) of the received overall feedback data to the second electronic device 1120 based on the output information.
  • the server 1130 when the server 1130 sends a first portion of the feedback data to the first electronic device 1110 and a second portion to the second electronic device 1120, The electronic device 1110 may further transmit information indicating that the currently transmitted data is part of the requested feedback data and the remaining part of the information indicating that it is to be transmitted to the second electronic device 1120. [ The server 1130 may then further send to the second electronic device 1120 information indicating that the currently transmitted data is part of the requested feedback data and the remaining part indicating that it is to be sent to the first electronic device 1110 .
  • the server 1130 may provide at least some of the feedback data and output information based on the device information of the first electronic device 1110 and / or the second electronic device 1120 previously stored in the server 1130 You can decide.
  • the device information of the first electronic device 1110 and / or the second electronic device 1120 may include hardware / software information (e.g., presence, type, performance (e.g., Frequency band), or input / output attribute information (e.g., speech recognition, audio output, video output, etc.).
  • the first electronic device 1110 includes a display (e.g., display 120 of FIG. 2) and the second electronic device 1120 does not include a display, Can be determined as a video, an image, and a sound.
  • the server 1130 may determine the output format of the feedback data as a sound.
  • the server 1130 may determine at least some of the feedback data and output information based on the state information of the first electronic device 1110 and / or the external device 1120. For example, if the first electronic device 1110 including the display 120 is currently playing a particular image through the display 120, the server 1130 may determine the output format of the feedback data by voice . In another example, if the first electronic device 1110, including the display 120 and the speaker (e.g., speaker 130 of FIG. 2) is currently outputting a specific sound through the speaker 130, 1130 can determine the output format of the feedback data as an image.
  • the first electronic device 1110, including the display 120 and the speaker e.g., speaker 130 of FIG. 2
  • FIG. 12 illustrates the functional configuration of a first electronic device 1200 in accordance with various embodiments of the present invention.
  • FIG. 14 illustrates a circuit of a wireless charging module of an electronic device and a wireless charging module of an external device according to various embodiments of the present invention.
  • the first electronic device 1200 includes a processor 1210, a wireless charging module 1220, a voice recognition module 1230, a communication module 1240, a memory 1250, a speaker 1260, A display 1270, and a display 1280.
  • the first electronic device 1200 may be the first electronic device 1110 of FIG.
  • the processor 1210 may control the overall operation of the first electronic device 1200. For example, the processor 1210 may activate the microphone 1270 and the speech recognition module 1230 when receiving a control command from the server 1130 to activate the speech recognition function. The processor 1210 may control the communication module 1240 to transmit data (e.g., a voice signal) to the server 1130 for voice utterances that are recognized via the microphone 1270. For example, a voice signal
  • the wireless charging modules 1220 and 21 may be modules for wirelessly receiving power from the external device 10 (or the transmission coil 11L of the external device).
  • the external device may be the second electronic device 1120 of FIG.
  • the wireless charging module 1220, 21 may be the wireless charging module 1050 of FIG.
  • the wireless charging modules 1220 and 21 include a receiving coil 21L, a matching circuit 21a, a rectifying circuit 21b for rectifying the received AC power to DC, an adjusting circuit 21c for adjusting the charging voltage, A switch circuit 21d, and a battery 21e.
  • the control circuit 22 may perform overall control of the electronic device 20 or the wireless charging modules 1220 and 21 and may generate and transmit various messages required for wireless power transmission and reception to the communication circuit 23 .
  • the control circuit 22 may be at least a portion of the processor 1210.
  • the communication circuit 23 may include at least one of a first communication circuit 23a and a second communication circuit 23b.
  • the first communication circuit 23a can communicate with the external device 10 via the receiving coil 21L.
  • the second communication circuit 23b can communicate with the external device 10 using any one of various local communication methods such as Bluetooth, BLE, WI-Fi, and NFC.
  • at least a portion of the communication circuit 23 may be included in the communication module 1240, the wireless communication module 1092, or the wireless charging module 1050.
  • the second communication circuit 23b may be part of the communication module 1240.
  • the second communication circuit 23b may be part of the wireless communication module 1092.
  • the first communication circuit 23a may be part of the wireless charging module 1050. [
  • the speech recognition module 1230 may be a module for recognizing the user's speech input into the first electronic device 1200.
  • the speech recognition module 1230 may be functionally or electrically connected to at least a portion of an input / output module (e.g., microphone 1270, receiver, earphone, etc.).
  • the speech recognition module 1230 may convert an analog speech signal (e.g., voice speech of the user) transmitted from the microphone 1270 into a digital signal.
  • speech recognition module 1230 may include a trigger sound recognition module (not shown).
  • the trigger sound recognition module can convert various types of sound sources, such as a user's voice input from at least a part of an input / output module (e.g., microphone 1270), noise around the electronic device, sound output from the electronic device, have.
  • the trigger sound recognition module determines whether or not the converted electrical signal includes a signal indicating a match rate that is equal to or higher than a predetermined value and a signal pattern (a signal pattern corresponding to a trigger sound (or a wakeup command) (e.g., Hi Bixby) Can be determined. If it is determined that the converted electrical signal includes a signal representing a match rate that is equal to or greater than a predetermined value, the trigger sound recognition module may determine that the trigger sound is recognized.
  • the trigger sound recognition module may perform a function corresponding to the recognized trigger sound.
  • a trigger sound recognition module may call a speech recognition application (e.g., Bixby TM , Siri TM ) according to a recognized trigger sound.
  • a speech recognition application e.g., Bixby TM , Siri TM
  • the speech recognition module 1230 may include a noise removal module (not shown) to increase the recognition rate of the trigger sound.
  • the noise canceller may generate a second signal to be input to the second microphone, The noise can be removed from the first signal input to the first microphone.
  • the noise canceller may include a first microphone included in the electronic device, (For example, applying a reversed signal of the second signal to the first signal) using the second signal input to the second microphone and the distance between the second microphone included in the first microphone Noise can be removed from the signal.
  • the speech recognition module 1230 may include a voice command recognition module (not shown) for recognizing the user's voice command following the trigger sound.
  • the trigger sound recognition module may recognize the voice command of the user following the trigger sound.
  • the voice command recognition module may recognize the trigger sound.
  • the voice command recognition module recognizes the user's voice utterance following the trigger sound and can determine the voice utterance of the recognized user (excluding the trigger sound) as the voice command of the user.
  • the voice command recognition module can recognize the voice utterance of the user while the output of a predetermined value or more is continued as a voice command of the user.
  • the voice command recognition module may convert the voice speech of the recognized user into electrical data and transmit the converted electrical data to processor 1210 or communication module 1240 such that the converted electrical data is transmitted to server 1130 .
  • the communication module 1240 sends data stored or generated in the first electronic device 1200 to an external device (e.g., second electronic device 1120 or server 1130) Or receive stored data.
  • the communication module 1240 may transmit data associated with the user voice command entered into the electronic device to the server 1130.
  • the memory 1250 may include instructions to perform actions or functions to be performed by the first electronic device 1200, or instructions that may be generated by the first electronic device 1200 or generated by an external device (e.g., a second electronic device 1120, Or the server 1130).
  • the memory 1250 may be the memory 930 of FIG.
  • the memory 1250 may store at least a portion of the feedback data received from the server 1130.
  • memory 1250 may store data at least temporarily.
  • the speaker 1260 may output data in a sound format under the control of the processor 1210. In one embodiment, the speaker 1260 may be the speaker 130 of FIG.
  • the display 1280 can output data in an image format under the control of the processor 1210. In one embodiment, the display 1280 may be the display 120 of FIG.
  • the microphone 1270 may receive various types of sound sources that are input to the microphone 1270.
  • the microphone 1270 may receive an analog voice signal, such as a voice utterance of the user, and may pass the received voice signal to the voice recognition module 1230.
  • the microphone 1270 may be the microphone 111 of FIG.
  • FIG. 13 illustrates the functional configuration of a second electronic device 1300 in accordance with various embodiments of the present invention.
  • the second electronic device 1300 includes a processor 1310, a wireless charging module 1320, a voice recognition module 1330, a communication module 1340, a memory 1350, a speaker 1360, 1370 < / RTI >
  • the second external device 1300 may be the second electronic device 1120 of FIG.
  • the speech recognition module 1330, the communication module 1340, the memory 1350, the speaker 1360 and the microphone 1370 in one embodiment are implemented in the speech recognition module 1230 of the first electronic device 1200, The communication module 1240, the memory 1250, the speaker 1260, and the microphone 1270, detailed description thereof will be omitted.
  • the processor 1310 may control the overall operation of the second electronic device 1300. For example, the processor 1310 may deactivate the microphone 1370 and the speech recognition module 1330 when receiving a control command for deactivating the speech recognition function from the server 1130. In another example, when at least a portion of the feedback data is received from the first electronic device 1200 or the server 1130, the processor 1310 may receive the received data according to an output format (e.g., a sound format) (E.g., speaker 1360) to output the output module.
  • an output format e.g., a sound format
  • the wireless charging module 1320, 11 may be a module for wirelessly supplying electric power to the external device 20, or the receiving coil 21L of the external device.
  • the wireless charging modules 1320 and 11 include a power adapter 11a that receives power (or power) from the outside and appropriately converts the voltage of the input power source, a power generation circuit 11b that generates power, a transmission coil 11L And the matching circuit 11c maximizing the efficiency between the receiving coil 21L and the receiving coil 21L.
  • control circuit 12 performs overall control of the wireless charging module 1250 and may generate various messages required for wireless power transmission and forward it to the communication circuitry 13. In one embodiment, the control circuit 12 may calculate the power (or the amount of power) to be sent to the first electronic device 1200 based on the information received from the communication circuit 13. In one embodiment, the control circuit 12 may control the power generation circuit 13 such that the power produced by the transmission coil 11L is transmitted to the first electronic device 1200. [ In one embodiment, the control circuit 12 may be at least a portion of the processor 1310.
  • the communication circuit 13 may include at least one of a first communication circuit 13a and a second communication circuit 13b.
  • the first communication circuit 13a can communicate with the first communication circuit 23a of the external device 20 using the same frequency as the frequency used for power transmission in the transmission coil 11L, for example.
  • a frequency different from the frequency used for power transmission in the transmission coil 11L can be used to communicate with the second communication circuit 23b of the external device 20.
  • the second communication circuit 13b may receive information (e.g., Vrec) related to the charging state from the second communication circuit 23b using any one of various short-range communication methods such as Bluetooth, BLE, Wi-Fi, Information, Iout information, various packets, messages, etc.).
  • Figure 15 illustrates two forms of appearance of a second electronic device 1300 in accordance with various embodiments of the present invention.
  • FIG. 15A illustrates a second electronic device 1200 in the form of a cradle that wirelessly supplies power to a first electronic device 1200 that is in contact with a portion of the surface of the second electronic device 1300 (1300). ≪ / RTI > In one embodiment, FIG. 15A may be the appearance of a second electronic device 1300 that wirelessly supplies power to the first electronic device 1200 in a magnetically inductive manner.
  • the external device may include a charging pad 1510, a microphone 1520, and a display portion 1530.
  • the filling pad 1510 may be disposed on the exterior of the second electronic device 1300.
  • the fill pad 1510 may be disposed on the exterior of the second electronic device 1300 for contact with the first electronic device 1200.
  • the charging pad 1510 is disposed on the top surface of the second electronic device 1300 so that the first electronic device 1200 requesting wireless charging can be placed on top of the charging pad.
  • a transmission coil (e.g., 11L in Fig. 14) may be disposed inside the charging pad 1510. [ When the first electronic device 1200 is placed on the charging pad 1510, the power generated by the transmitting coil 11L is transmitted to the first electronic device 1200 via the receiving coil of the first electronic device 1200 .
  • the microphone 1520 may be placed on the exterior of the external device.
  • the microphone 1520 may be a microphone 1370.
  • the microphone 1520 may be disposed on the side of the second electronic device 1300.
  • the microphone 1520 may be disposed inside the second electronic device 1300 rather than the exterior of the second electronic device 1300.
  • the display portion 1530 may be disposed on the exterior of the second electronic device 1300.
  • the display portion 1530 may be disposed on a side surface of the second electronic device 1300.
  • the display portion 1530 may be in the form of an annularly arranged shape on the side surface of the second electronic device 1300.
  • the display portion 1530 may be in the shape of a band surrounding the second electronic device 1300 in an annular shape.
  • the display portion 1530 may display the current status of the second electronic device 1300 associated with wireless charging.
  • the display portion 1530 may include an LED.
  • the display unit 1530 may display information as to whether the second electronic device 1300 is connected to an external power source (e.g., an AC power source).
  • the display portion 1530 may indicate whether the second electronic device 1300 is currently supplying power to the first electronic device 1200, or whether the second electronic device 1300 is currently supplying power to the first electronic device 1200 You can display information about cases (eg, charging completed).
  • the display 1530 may display the current state of the second electronic device 1300 associated with wireless charging in various types of visual feedback.
  • the display unit 1530 may display the current state of the second electronic device 1300 associated with the wireless charging by varying the color or brightness or periodically emitting light.
  • the display 1530 may display information related to user speech recognition.
  • the speech recognition function When the speech recognition function is activated, or when the trigger sound and / or the voice command is recognized, and when the feedback data corresponding to the voice command is output, different types of visual feedback can be displayed.
  • FIG. 15B shows a second electronic device 1300 in the form of a tower or desk that wirelessly supplies power to the first electronic device 1200 included in the power transmission range (e.g., 2 m) of the external device. / RTI > In one embodiment, FIG. 15B may be the appearance of a second electronic device 1300 that wirelessly supplies power to the first electronic device 1200 in a magnetic resonance fashion.
  • the second electronic device 1300 can wirelessly power the first electronic device 1200 located in a constant power range.
  • the efficiency of the wireless charging may vary depending on the distance between the second electronic device 1300 and the first electronic device 1200.
  • the second electronic device 1300 illustrated in FIG. 15B does not need to be in contact with the first electronic device 1200 through a fill pad, and so may not have a fill pad 1510 in its appearance.
  • the second electronic device 1300 shown in FIG. 15B may have a microphone 1540 and / or a display portion 1550 in appearance, in the same manner as the second electronic device 1300 shown in FIG. 15A.
  • the microphone 1540 or the display unit 1550 shown in FIG. 15B is similar in function to the microphone 1520 or the display unit 1530 shown in FIG. 15A, and a detailed description thereof will be omitted.
  • FIGS. 15A and 15B The shapes, forms, positions, etc. of the microphones 1520 and 1540 and the display units 1530 and 1550 shown in FIGS. 15A and 15B are merely for the purpose of explanation, and do not limit the scope of the present invention.
  • FIG. 16 illustrates the functional configuration of a server 1600 in accordance with various embodiments of the present invention.
  • the server 1600 may include a processor 1610, a voice processing module 1620, a communication module 1630, and a memory 1640.
  • the server 1600 may be the server 1130 of FIG.
  • the processor 1610 may control the overall operation of the server 1600.
  • processor 1610 may receive the identification information of the second electronic device 1300 from the first electronic device 1200 and may communicate with the first electronic device 1200 via the short- And transmits a control command to the first electronic device 1200 to activate the voice recognition function of the first electronic device 1200 and transmits the control command to the second electronic device 1300.
  • a control command to deactivate the voice recognition function of the first electronic device 1300 may be used to the second electronic device 1300.
  • the voice processing module 1620 analyzes the data on voice utterances received from the first electronic device 1200 or the second electronic device 1300 and determines the meaning of the user voice commands included in the voice utterance . For example, the voice processing module 1620 may generate a user voice call (e.g., "Hi Bixby, when is the Golden State Warrior game today?") , It can be understood that the meaning of the user voice command included in the speech utterance is a request of specific information (game information of a professional basketball team called Golden State).
  • a user voice call e.g., "Hi Bixby, when is the Golden State Warrior game today?"
  • the speech processing module 1620 includes an automatic speech recognition module 210, a natural language understanding module 220, a path planner module 230, a conversation manager module 240, a natural language generation module 250 ), And the text-to-speech conversion module 260.
  • the communication module 1630 transmits data stored or generated in the server 1600 to external devices (e.g., the first electronic device 1200 and the second electronic device 1300) Or receive stored data.
  • the memory 1640 is coupled to the server 1130 or to a plurality of electronic devices (e.g., first electronic device 1200, second electronic device 1300) Information can be stored.
  • a plurality of electronic devices e.g., first electronic device 1200, second electronic device 1300
  • the memory 1640 stores each piece of identification information (e.g., a device ID) of a plurality of electronic devices into a respective one of a plurality of devices, such as manufacturer information, hardware / software information, Such as standard and standard information, account information, location information, etc.).
  • the memory 1640 may store the identification information of the second electronic device 1300 as device information of the external device (e.g., manufacturer (Samsung), characteristics (power supply), standard (WPC) ), Charge voltage (5V), account information (user A), location information (user A's house, living room), input / output attributes (voice input, voice output)).
  • the memory 1640 may at least temporarily update the device information under the control of the processor 1610. For example, if the first electronic device 1200 is connected to the second electronic device 1300 and is receiving power from the second electronic device 1300, the memory 1640 may be coupled to the second electronic device 1300, The location information of the first electronic device 1200 can be temporarily determined based on the location information. In another example, if the first electronic device 1200 is connected to the second electronic device 1300 and is receiving power from the second electronic device 1300, and the first electronic device 1200 includes a display The memory 1640 may temporarily update the input / output attributes of the second electronic device 1300 (e.g., voice input, voice output-> voice input, voice output, video output). The memory 1640 may store in the video output attribute of the updated second electronic device 1300 information indicating that the second electronic device 1300 is an attribute that may be added only when the second electronic device 1300 is connected to the first electronic device 1200, Flag).
  • the memory 1640 may temporarily update the input / output attributes of the second electronic device 1300 (e.
  • 17 is a flow chart illustrating the operational sequence of a first electronic device according to various embodiments of the present invention.
  • the first electronic device which is the operating entity of FIG. 17, may refer to the first electronic device 1200 or the processor 1210 of the first electronic device 1200.
  • the first electronic device 1200 may receive information about the second electronic device 1300 from the second electronic device 1300.
  • the information about the second electronic device 1300 may include the unique identification information of the second electronic device 1300.
  • the information about the second electronic device 1300 may include hardware / software information, input / output attribute information of the second electronic device 1300, and so on.
  • the first electronic device 1200 may be coupled to the second electronic device 1300 After being placed on the charging pad, it may receive information about the second electronic device 1300 from the second electronic device 1300 via short-range communication.
  • the first electronic device 1200 may be a second electronic device 1300, It is possible to receive the device information from the second electronic device 1300 through short-range communication.
  • the first electronic device 1200 may receive information about the second electronic device 1300 through a charging circuit.
  • the charging circuit may refer to at least a portion of at least one circuit of a power receiving circuit (e.g., the receiving circuit 21 of Fig. 14), a control circuit 22,
  • the first electronic device 1200 may receive information about the second electronic device 1300 via the communication module 1240.
  • the first electronic device 1200 can charge the battery of the first electronic device 1200 (e.g., the battery 21e of Figure 14) with the power supplied from the second electronic device 1300 .
  • the first electronic device 1200 may receive power wirelessly from the transmitting coil 11L of the second electronic device 1300 through the wireless charging module 1220,
  • the first electronic device 1200 may control the wireless charging module 1220, 21 to charge the battery 21e of the first electronic device 1200 with the received power.
  • the first electronic device 1200 may send at least a portion of the information for the second electronic device 1300 to the server.
  • the server may be a server 1600.
  • the first electronic device 1200 may be configured to receive at least some of the information about the second electronic device 1300 during charging the battery of the first electronic device 1200 using the power supplied from the second electronic device 1300. [ To the server (1600).
  • the first electronic device 1200 may send identification information of the second electronic device 1300 or input / output attribute information of the second electronic device 1300 to the server 1600.
  • the first electronic device 1200 may receive a response from the server 1600 in connection with a voice-based service.
  • the voice-based service may be a service using a microphone 1270, a speaker 1260, and a display 1280.
  • the voice-based service may be the voice recognition service of the user.
  • the user's speech recognition service may be a service that recognizes the speech utterance of the user and performs a function corresponding to the speech utterance of the recognized user.
  • the user speech recognition service may be a function of recognizing the user voice utterance and reproducing the requested music and outputting it to the speaker when the user utteres a voice " Give Michael Jackson a voice call.
  • the voice-based service may be a service or function associated with the user's voice recognition service.
  • the voice-based service may be an active noise canceling (ANC) service of the user's voice recognition service.
  • ANC active noise canceling
  • the first electronic device 1200 may receive a response from the server 1600 in response to the 1730 operation, which is associated with the voice-based service.
  • the first electronic device 1200 may receive control commands from the server 1600 associated with the voice-based service. For example, the first electronic device 1200 may receive a control command from the server 1600 indicating to activate the microphone 1270 and the speaker 1260 of the first electronic device 1200.
  • the first electronic device 1200 may receive a control command from the server 1600 associated with the voice-based service of the second electronic device 1300.
  • the first electronic device 1200 may activate, deactivate or change the voice-based service based at least on the response received in the 1740 operation.
  • the first electronic device 1200 may change the sound settings for performing a voice-based service.
  • the first electronic device 1200 may activate or deactivate hardware for performing voice-based services. For example, if the first electronic device 1200 receives a control command at 1740 operation indicating that it will activate the microphone 1270 and the speaker 1260 of the electronic device, then the electronic device may be coupled to the microphone 1270 and / The speaker 1260 can be activated.
  • the first electronic device 1200 transmits the received control command to the second electronic device 1300, can be forwarded.
  • FIG. 18 is a flow chart illustrating the operational sequence of a second electronic device according to various embodiments of the present invention.
  • the second electronic device which is the operating entity of FIG. 18, may represent the second electronic device 1300 of FIG. 13 or the processor 1310 of the second electronic device 1300.
  • the second electronic device 1300 may receive information about the first electronic device 1200 from the first electronic device 1200.
  • the information about the first electronic device 1200 may include unique identification information of the first electronic device 1200.
  • the information about the first electronic device 1200 may include hardware / software information, input / output attribute information of the first electronic device 1200.
  • the second electronic device 1300 may be a second electronic device Information about the first electronic device 1200 may be received via short-range communication from the first electronic device 1200 placed on the charging pad.
  • the second electronic device 1300 may control a charging circuit (e.g., the power generation circuit 11 of FIG. 14) to charge the first electronic device 1200.
  • the second electronic device 1300 may control the power generation circuit 11 such that the power produced by the transmission coil 11L of the second electronic device is transmitted to the first electronic device 1200.
  • the electronic device 1300 may send at least a portion of the received information to the server 1600.
  • the second electronic device 1300 may transmit at least a portion of the information for the first electronic device 1200 to the server 1600 while providing power to the first electronic device 1200.
  • the second electronic device 1300 may send the identification information of the first electronic device 1200 or the input / output attribute information of the first electronic device 1200 to the server 1600.
  • the second electronic device 1300 may receive a response from the server 1600 associated with the voice-based service.
  • the voice-based service may be a service using the microphone 1360, speaker 1370, and displays 1530 and 1550.
  • the voice-based service may be the voice recognition service of the user.
  • the user's speech recognition service may be a service that recognizes the speech utterance of the user and performs a function corresponding to the speech utterance of the recognized user.
  • the second electronic device 1300 may receive a response associated with the voice-based service from the first electronic device 1200.
  • the second electronic device 1300 is in the middle of charging the battery (21e in Figure 14) of the first electronic device 1200 (or in the middle of providing power to the first electronic device 1200) Based on the response, the user may activate, deactivate or change the voice-based service.
  • the second electronic device 1300 receives a control command indicating that the second electronic device 1300 is to be deactivated, for example, to deactivate the microphone 1370 and the speaker 1360 of the second electronic device 1300, It is possible to deactivate the microphone 1370 and the speaker 1360 of FIG.
  • 19 is a flowchart illustrating an operational sequence of a first electronic device according to various embodiments of the present invention.
  • the first electronic device which is the operating entity of FIG. 19, may refer to the first electronic device 1200, or the processor 1210 of the first electronic device 1200.
  • the first electronic device 1200 may be coupled to the second electronic device 1300.
  • the first electronic device 1200 may be wired or wirelessly coupled to the second electronic device 1300.
  • the first electronic device 1200 transmits a signal requesting powering the second electronic device 1300 using a second communication circuit (the second communication circuit 23b of FIG. 14) 1300). ≪ / RTI >
  • the first electronic device 1200 may be coupled to the second electronic device 1300 by receiving a response to the power supply request from the second electronic device 1300 using the second communication circuit 23b.
  • the first electronic device 1200 coupled to the second electronic device 1300 may generate a short-range communication channel between the second electronic device 1300.
  • the first electronic device 1200 receives a response from the second electronic device 1300, together with a response to the power supply request from the second electronic device 1300, 1300).
  • ≪ / RTI > May receive identification information of the second electronic device 1300 from the second electronic device 1300 after receiving an affirmative acknowledgment of the power supply request from the second electronic device 1300, have.
  • the identification information of the second electronic device 1300 may be information unique to the second electronic device 1300.
  • the first electronic device 1200 may receive identification information of the second electronic device 1300, such as the device ID of the second electronic device 1300.
  • the first electronic device 1200 may receive information indicative of the hardware / software characteristics of the second electronic device 1300, as well as the identification information of the second electronic device 1300.
  • the first electronic device 1200 may receive manufacturer information, product name, product code, operating system information installed on the product, and the like of the second electronic device 1300.
  • the first electronic device 1200 may receive information relating to the user of the second electronic device 1300 as well as identification information of the second electronic device 1300 as well as information indicative of the characteristics of the second electronic device 1300 .
  • the first electronic device 1200 may receive information about the user designated in the second electronic device 1300 (e.g., the account information of the user designated in the second electronic device 1300).
  • the first electronic device 1200 receives identification information of the first electronic device 1200 after receiving a response to the power supply request from the second electronic device 1300, or before receiving a response, (1600).
  • the first electronic device 1200 may provide identification information of the first electronic device 1200, information indicative of the characteristics of the first electronic device 1200, or information relating to the user of the first electronic device 1200 to the server 1600 Lt; / RTI >
  • the first electronic device 1200 or the second electronic device 1300 can communicate information in a communication manner that is determined by the wireless charging scheme of the second electronic device 1300.
  • the second electronic device 1300 is a magnetic induction type power supply
  • the first electronic device 1200 or the second electronic device 1300 can communicate information in a contact communication manner (e.g., NFC) .
  • a contact communication manner e.g., NFC
  • information can be transmitted using an out-of-band communication method or an in-band communication method.
  • the first electronic device 1200 may send the identification information of the second electronic device 1300 to the server 1600.
  • the first electronic device 1200 transmits identification information of the second electronic device 1300 to the server 1600 so that power is currently transmitted between the first electronic device 1200 and the second electronic device 1300 Or that the local communication channel has been created.
  • the first electronic device 1200 may provide the server 1600 with identification information of the first electronic device 1200 and / or identification information of the first electronic device 1200 with the identification information of the second electronic device 1300.
  • the first electronic device 1200 may be coupled to the first electronic device 1200, such as the device ID, Pin code, and Mac address of the first electronic device 1200, Can be transmitted.
  • the first electronic device 1200 may be coupled to the server 1600 such that the battery state of the first electronic device 1200 and the operating mode of the first electronic device 1200 (e.g., sleep mode, idle mode, (E.g., whether sound is being output to the speaker 1260 of the first electronic device 1200, or whether an image is being output on the display 1280 of the first electronic device 1200) ), And so on.
  • the battery state of the first electronic device 1200 and the operating mode of the first electronic device 1200 e.g., sleep mode, idle mode, (E.g., whether sound is being output to the speaker 1260 of the first electronic device 1200, or whether an image is being output on the display 1280 of the first electronic device 1200)
  • the operating mode of the first electronic device 1200 e.g., sleep mode, idle mode, (E.g., whether sound is being output to the speaker 1260 of the first electronic device 1200, or whether an image is being output on the display 1280 of the first electronic device 1200)
  • the first electronic device 1200 may additionally transmit information regarding power transmission / reception to the server 1600.
  • the first electronic device 1200 may send information to the server 1600 about the power receiving state (e.g., whether it is currently receiving power, information about the receiving rate if it is currently receiving, etc.).
  • the first electronic device 1200 may activate the speech recognition function.
  • the speech recognition function can be used to detect sounds of various sources (e.g., user voice, external noise, etc.) input from the outside of the first electronic device 1200 to the microphone 1270 of the first electronic device 1200, Output sound, etc.) into an electrical signal.
  • the first electronic device 1200 may activate the speech recognition function by activating the microphone 1270 and the speech recognition module 1230 of the first electronic device 1200. [ By activating the voice recognition function, the first electronic device 1200 can enter the receive standby mode of user voice utterance.
  • the first electronic device 1200 may activate the speech recognition function based on a pre-stored setting in the memory 1160 of the first electronic device 1200.
  • the memory 1160 of the first electronic device 1200 stores instructions to activate the speech recognition function when it detects that the first electronic device 1200 is associated with the second electronic device 1300 Can be.
  • the first electronic device 1200 may activate the speech recognition function based on control commands received from the server 1600.
  • the first electronic device 1200 sends a control command to the server 1600 indicating the activation of the speech recognition function of the first electronic device 1200 after transmitting the identification information of the second electronic device 1300 to the server 1600.
  • the first electronic device 1200 may activate the speech recognition function of the first electronic device 1200 based on the control command received from the server 1600.
  • the first electronic device 1200 may recognize user speech.
  • the first electronic device 1200 can recognize the user speech utterance using the activated speech recognition function of the first electronic device 1200.
  • the user voice utterance may include a trigger sound and a voice command.
  • the first electronic device 1200 can convert the sound input to the microphone 1270 into an electrical signal using the activated microphone 1270.
  • the first electronic device 1200 may determine whether the converted electrical signal includes a pre-stored signal pattern and a first signal indicative of a match rate greater than or equal to a predetermined value. If the converted electrical signal does not include the first signal, the first electronic device 1200 can continue to hold the receive standby mode of user voice utterance.
  • the first electronic device 1200 may recognize (or determine) the first signal and the subsequent second signal.
  • the first electronic device 1200 may determine a signal subsequent to the first signal as a second signal until the output below a predetermined value lasts for a time equal to or greater than a predetermined value.
  • the first signal may represent a trigger sound
  • the second signal may represent a voice command, respectively.
  • the first electronic device 1200 may recognize user voice utterances such as " Hi Bixby, What time is the Golden State Warrior game today? &Quot; "Hi Bixby" can represent a trigger sound, and "when is the Warriors game today?" Can represent a voice command, respectively.
  • the first electronic device 1200 may request the server 1600 for feedback data on voice commands.
  • the first electronic device 1200 may transmit to the server 1600 an electrical signal (second signal) corresponding to the voice command, from among the electrical signals converted from the user voice utterances recognized in operation 1940.
  • the first electronic device 1200 sends a signal to the server 1600 requesting to provide specific information, along with an electrical signal (first signal) corresponding to the voice command, if the voice command is a speech requesting specific information .
  • the first electronic device 1200 may receive, from the server 1600, output information of feedback data and feedback data for voice commands.
  • the voice command is a speech that asks for (or is requesting) certain information
  • the first electronic device 1200 may send the specific information encoded in a particular output format (e.g., sound, video) Description) can be received from the server 1600.
  • a particular output format e.g., sound, video
  • the first electronic device 1200 may receive Golden State Warrior's match information encoded in the sound format from the server 1600.
  • the first electronic device 1200 may request specific information without specifying an output format, and may receive feedback data in a first format (e.g., sound) from the server 1600, Sound) and feedback data of a second format (e.g. voice).
  • a first format e.g., sound
  • Sound e.g., Sound
  • a second format e.g. voice
  • the first electronic device 1200 may request the Golden State Warriors competition information without specifying a format, and may receive feedback data in the video format from the server 1600.
  • the first electronic device 1200 may receive feedback data in an image format and feedback data in a sound format.
  • the output information of the feedback data may include information about the device to output the feedback data.
  • the first electronic device 1200 may output a first portion of the feedback data to the first electronic device 1200 and a second portion of the feedback data to indicate output to the second electronic device 1300 Output information can be received.
  • the output information of the feedback data may include information on a condition for outputting the feedback data. For example, if the first electronic device 1200 is being charged from the second electronic device 1300, the first electronic device 1200 may output a first portion of the feedback data to the first electronic device 1200 And output information indicating that the second portion of the feedback data is to be output at the second electronic device 1300. For example, if the first electronic device 1200 is being charged from the second electronic device 1300, then the first electronic device 1200 may transmit the entire portion of the feedback data to the first electronic device 1200 It is possible to receive output information indicating output. For example, the first electronic device 1200 may be configured to transmit the entire portion of the feedback data to the second electronic device 1300 if the first electronic device 1200 is not being charged from the second electronic device 1300 It is possible to receive output information indicating output.
  • the first electronic device 1200 may send a portion of the feedback data received from the server 1600 to the second electronic device 1300.
  • the first electronic device 1200 may transmit a portion of the feedback data based in part on the output information received in operation 1360.
  • a first electronic device 1200 outputs a first portion of feedback data at a first electronic device 1200 and a second portion of feedback data is output at a second electronic device 1300
  • the first electronic device 1200 may send a second portion of the feedback data to the second electronic device 1300.
  • the first electronic device 1200 may send at least a portion of the received output information to the second electronic device 1300. For example, if the first electronic device 1200 is not being charged from the second electronic device 1300, if it receives output information indicating that the entire portion of the feedback data is to be output from the second electronic device 1300, The first electronic device 1200 may send the entire feedback data and the received output information to the second electronic device 1300.
  • Figure 20 is a flow diagram illustrating the operational sequence of a second electronic device in accordance with various embodiments of the present invention.
  • the second electronic device which is the operating entity of FIG. 20, may be the second electronic device 1300 or the processor 1310 of the second electronic device 1300.
  • the second electronic device 1300 may be coupled to the first electronic device 1200.
  • the second electronic device 1300 may receive a signal requesting powering from the first electronic device 1200.
  • the second electronic device 1300 is configured to determine the power level of the second electronic device 1300 based on at least one of the battery level of the second electronic device 1300, the standard supported by the second electronic device 1300, A response to the supply request can be transmitted.
  • the second electronic device 1300 may establish or establish a connection with the first electronic device 1200 by sending an affirmative acknowledgment for the power supply request.
  • the second electronic device 1300 sends identification information of the first electronic device 1200 to the server 1600 after sending an affirmative acknowledgment to the first electronic device 1200 or before sending an affirmative acknowledgment.
  • the second electronic device 1300 may send the identification information of the second electronic device 1300 to the server 1600 after sending an affirmative acknowledgment to the first electronic device 1200 or after sending an affirmative acknowledgment.
  • the second electronic device 1300 may send the identification information of the first electronic device 1200 to the server 1600.
  • the second electronic device 1300 transmits identification information of the first electronic device 1200 to the server 1600 so that power is currently transmitted between the second electronic device 1300 and the first electronic device 1200 Or may inform the server 1600 that a local communication channel is established.
  • the second electronic device 1300 may provide the server 1600 with identification information of the second electronic device 1300 and / or identification information of the second electronic device 1300, along with identification information of the first electronic device 1200.
  • the second electronic device 1300 may communicate information to the server 1600 about the operating mode of the second electronic device 1300 (e.g., normal charging mode, rapid charging mode, etc.), the second electronic device 1300, (E.g., whether sound is output to the speaker 1360 of the second electronic device 1300), and the like.
  • the second electronic device 1300 may additionally transmit information regarding power transmission / reception to the server 1600.
  • the second electronic device 1300 may transmit information to the server 1600 about the power transmission state (e.g., whether it is currently transmitting power, its rate if it is currently transmitting power, etc.).
  • the second electronic device 1300 may deactivate the speech recognition function.
  • the second electronic device 1300 may deactivate the speech recognition function of the second electronic device 1300 by deactivating the microphone 1370 and / or the speech recognition module 1330 of the second electronic device 1300.
  • the second electronic device 1300 may deactivate the speech recognition function based on a pre-stored setting in the memory 1350 of the second electronic device 1300.
  • the memory 1350 of the second electronic device 1300 stores instructions to deactivate the speech recognition function when it detects that the second electronic device 1300 is associated with the first electronic device 1200 Can be.
  • the second electronic device 1300 may disable speech recognition functionality based on control commands received from the server 1600.
  • the second electronic device 1300 sends the identification information of the first electronic device 1200 to the server 1600 and then sends a control command to the server 1600 indicating the deactivation of the voice recognition function of the second electronic device 1300.
  • the second electronic device 1300 may disable the speech recognition function of the second electronic device 1300 based on the control command received from the server 1600.
  • the second electronic device 1300 may receive, from the first electronic device 1200, at least a portion of the feedback data for the voice command.
  • the voice command may be a voice command included in the voice utterance recognized by the first electronic device 1200 in which the voice recognition function is activated.
  • the second electronic device 1300 is in a state where the server 1600 has not requested feedback data for the voice command (or the voice recognition function is disabled), at least some of the feedback data for the voice command Lt; / RTI >
  • At least a portion of the feedback data may include some of the feedback data, including a plurality of output formats (e.g., a first format (video) and a second format (sound) (Sound)).
  • a plurality of output formats e.g., a first format (video) and a second format (sound) (Sound)
  • the second electronic device 1300 may receive sound data from the first electronic device 1200.
  • the second electronic device 1300 may receive at least a portion of the feedback data from the server 1600, rather than the first electronic device 1200.
  • the second electronic device 1300 may output at least a portion of the feedback data received in the 2040 operation.
  • the second electronic device 1300 may output according to the format of at least some of the received feedback data. For example, if at least some of the received feedback data is in a sound format, the processor 1310 of the second electronic device 1300 may control the speaker 1360 to output some of the received feedback data.
  • 21 is a flowchart illustrating an operation procedure of a server according to various embodiments of the present invention.
  • the server which is the main body of operation in Fig. 21, may be the server 1600 or the processor 1610 of the server 1600.
  • the server 1600 may receive identification information of the first electronic device 1200 from the second electronic device 1300.
  • the server 1600 may receive the first electronic device 1200 from the first electronic device 1200 within a predetermined time period from when it receives the identification information of the first electronic device 1200 from the second electronic device 1300, And may receive the identification information of the device 1300.
  • the server 1600 when the server 1600 receives the identification of the first electronic device 1200 from the second electronic device 1300 (or from the first electronic device 1200 to the second electronic device 1200) Receives the identification information of the first electronic device 1200 from the second electronic device 1300 and receives the identification information of the second electronic device 1300 from the first electronic device 1200
  • the server 1600 may determine that a short distance communication channel between the first electronic device 1200 and the second electronic device 1300 has been established or formed.
  • the server 1600 may receive status information or information regarding power transmission / reception from the first electronic device 1200 or the second electronic device 1300.
  • the server 1600 may determine that sound is being output from the first electronic device 1200 to the output status information of the first electronic device 1200 (e.g., the speaker 1260 of the first electronic device 1200) Information) indicating that the user is present.
  • the server 1600 may output sound from the second electronic device 1300 to the output status information of the second electronic device 1300 (e.g., the speaker 1360 of the second electronic device 1300) (I.e., information indicating that there is no information).
  • the server 1600 may receive information about the power receiving state from the first electronic device 1200 and information about the power transmitting state from the second electronic device 1300. [ The server 1600 can determine the power transmission efficiency based on the received power transmission / reception information.
  • the server 1600 may identify device information of the first electronic device 1200 and the second electronic device 1300. For example, the server 1600 can confirm the device information of the first electronic device 1200 and the second electronic device 1300 based on the received identification information.
  • the server 1600 stores the identification information (e.g., device ID) of each of the plurality of devices in the memory 1640 of the server 1600 in accordance with the device information of each of the plurality of devices (e.g., device manufacturer information, Hardware / software information, supporting standards and standards information, account information, location information, etc.).
  • the server 1600 can retrieve the device information of the first electronic device 1200 and the second electronic device 1300 by retrieving the identification information of the plurality of devices stored in the memory 1640 of the server 1600 have.
  • the server 1600 may determine, based on the identification information of the received second electronic device 1300, The device information of the electronic device 1300 such as manufacturer (Samsung), characteristics (power supply device), standard (WPC), output current (1000mA), charging voltage (5V), account information User A's house, living room, etc.).
  • the server 1600 determines, based on the identification information of the received first electronic device 1200, 1 device information (e.g., manufacturer (Samsung), characteristics (portable communication terminal), account information (user A), etc.) of the electronic device 1200 can be confirmed.
  • the server 1600 may determine the location information of the first electronic device 1200. In one embodiment, the server 1600 may determine the location information of the first electronic device 1200 based on the location information of the second electronic device 1300 identified in the 2110 operation. The server 1600 may determine location information of the first electronic device 1200 that has not been determined and may renew the existing location information of the first electronic device 1200.
  • the server 1600 may determine the location information of the first electronic device 1200 based on the account information of the first electronic device 1200 and the second electronic device 1300 identified in operation 2110. [ For example, if the account of the first electronic device 1200 matches the account of the second electronic device 1300, then the server 1600 may determine that the account of the first electronic device 1200 is based on the location information of the second electronic device 1300, It is possible to determine the location information of the mobile terminal 1200. In another example, if the account of the first electronic device 1200 is an account associated with an account of the second electronic device 1300, the server 1600 may send the first electronic device 1300, The location information of the electronic device 1200 can be determined.
  • the server 1600 may receive a request for feedback data for a voice command from the first electronic device 1200.
  • the server 1600 may receive from the first electronic device 1200 a request for provision of specific information about user voice commands and data for user voice commands. For example, the server 1600 may determine that a user voice command, such as " When is the Golden State Warrior game today ?, " And may receive a request for providing information (e.g., game information in the Golden State).
  • the server 1600 may receive a request for feedback data for a voice command from the second electronic device 1300.
  • the server 1600 may generate feedback data corresponding to a user voice command received at 2130 operation.
  • the server 1600 can obtain the specific information requested by analyzing the received user voice command. For example, the server 1600 can retrieve the specific information requested (e.g., game information in the Golden State) by retrieving the memory stored in the server 1600 or by requesting it from another server connected to the server 1600 have.
  • the specific information requested e.g., game information in the Golden State
  • the server 1600 may determine the output format of the acquired information.
  • the server 1600 can determine the output format of the acquired information based on input / output attribute information or hardware / software information of the first electronic device 1200 and the second electronic device 1300. For example, if both the first electronic device 1200 and the second electronic device 1300 do not include a display, the server 1600 can determine the output format of the acquired information as a sound. In another example, if the server 1600 determines that the first electronic device 1200 includes the display 1280 and the second electronic device 1300 does not include a display, The output format of the information can be determined as video and sound.
  • the server 1600 may determine the output format of the acquired information based on the state information of the first electronic device 1200 and the second electronic device 1300. For example, when the server 1600 receives information that the first electronic device 1200 having the display 1280 and the speaker 1260 is not outputting the image through the display 1280 at the 2110 operation , The server 1600 can determine the output format of the acquired information as an image. For example, in the first electronic device 1200 having a display and a speaker, an image is being output through the current display, and a second electronic device 1300 having a speaker is not outputting sound through the current speaker When the server 1600 receives the information in the 2110 operation, the server 1600 can determine the output format of the acquired information as a sound.
  • the server 1600 may generate feedback data based on the acquired information and the determined output format.
  • the server 1600 can generate the feedback data by encoding the acquired information into the determined output format.
  • the server 1600 may generate feedback data by encoding the acquired golden state competition information into an image format and / or a sound format.
  • the server 1600 may determine the output information of the feedback data.
  • server 1600 may include information about the device to output the feedback data, a condition for outputting feedback data, an output environment (e.g., volume size, pop-up window size, etc.) have.
  • an output environment e.g., volume size, pop-up window size, etc.
  • the server 1600 may determine the output information of the feedback data based on the device information of the first electronic device 1200 and the second electronic device 1300. For example, if the acquired golden state competition information is encoded in a video format and a sound format, the server 1600 displays device information (e.g., the first electronic device 1200) of the first electronic device 1200 And the second electronic device 1300 includes a speaker), the data encoded in the image format is output at the first electronic device 1200, and the data encoded in the sound format is output to the second electronic device 1200. [ (1300).
  • the server 1600 may communicate device information of the first electronic device 1200 and the second electronic device 1300 (e.g., (The information that the reproduction frequency band of the speaker of the second electronic device 1200 is 20 to 2000 Hz and the reproduction frequency band of the speaker of the second electronic device 1300 is 100 to 5000 Hz)
  • the first portion of the data (high frequency band portion, e.g. 3000 to 5000 Hz) is output from the second electronic device 1300 and the second portion of the data encoded in the sound format (low frequency portion, e.g. 20 To 3000 (Hz) may determine output information that the first electronic device 1200 outputs.
  • the server 1600 may use the redundant output attributes of the first electronic device 1200 and the second electronic device 1300 to provide extended output capabilities such as the speaker of the first electronic device 1200 and the second electronic device 1200. [ (Stereo output function using a speaker of the speaker 1300).
  • the server 1600 may determine output information based on status information of the first electronic device 1200 or the second electronic device 1300. For example, when confirming the output state information in which the sound is output to the speaker 1260 of the first electronic device 1200, the server determines output information indicating that the feedback data is to be output at a volume higher than the reference value by a predetermined ratio . For example, if the output status information indicating that an image is being output to the display 1480 of the first electronic device 1200 is confirmed, the server 1600 may use the pop-up window having a size smaller than the reference value Can be determined.
  • the server 1600 may determine output information based on values associated with user speech utterances.
  • the server 1600 can confirm that the noise included in the user voice utterance data received in the operation 2130 includes a reference value or more.
  • the server 1600 can determine the output information indicating that the feedback data is to be output at a volume higher than the existing value by a predetermined amount when the noise is included in the reference value or more.
  • the server 1600 can generate feedback data corresponding to a user voice command and determine output information of feedback data using a voice recognition or a voice recognition method. For example, the server 1600 can identify the account information associated with the user voice command and determine the electronic device associated with the verified account information through voice recognition. For example, the server 1600 confirms that the voice command is the voice of user A, is associated with the account of user A, and the first electronic device 1200 and the second electronic device 1300 are different from the new electronic device (e.g., : Third electronic device 1300-1 in Fig. 24) as an output device.
  • the server 1600 can generate feedback data corresponding to a user voice command and determine output information of feedback data using a voice recognition or a voice recognition method. For example, the server 1600 can identify the account information associated with the user voice command and determine the electronic device associated with the verified account information through voice recognition. For example, the server 1600 confirms that the voice command is the voice of user A, is associated with the account of user A, and the first electronic device 1200 and the second electronic device 1300 are different from the
  • the server 1600 may send feedback data and output information to the first electronic device 1200.
  • the server 1600 may send the entire feedback data to the first electronic device 1200.
  • the server 1600 may then send the output information to the first electronic device 1200 together with the entire feedback data so that a portion of the feedback data may be transmitted from the first electronic device 1200 to the second electronic device 1300 have.
  • the server 1600 when the server 1600 generates feedback data by encoding in video and sound formats, the server 1600 transmits the entire feedback data to the first electronic device 1200, and at the same time,
  • the data may be output at the first electronic device 1200 and the data encoded in the sound format may be transmitted output information indicating output at the second electronic device 1300.
  • FIG. 22 is a cross-sectional signal flow diagram illustrating the operational sequence of a first electronic device 1200, a second electronic device 1300, and a server 1600 in accordance with various embodiments of the present invention.
  • FIG. 22 may be an illustration of the operations of each of the first electronic device 1200, the second electronic device 1300, and the server 1600 disclosed in FIGS. 19-21.
  • the first electronic device 1200 may attempt to connect with the second electronic device 1300.
  • the first electronic device 1200 may communicate a signal to the second electronic device 1300 using a second communication circuit 23b of the wireless charging module 1420, Device 1300. < / RTI >
  • the second electronic device 1300 may be coupled to the first electronic device 1200 and supply power to the first electronic device 1200.
  • the second electronic device 1300 is coupled to the first electronic device 1200 via the first communication circuit 13, using the same frequency as the frequency used for power transfer in the transmit coil 11L And can communicate with the first communication circuit 23a (e.g., inband method).
  • the second electronic device 1300 may be coupled to the first electronic device 1200 via the second communication circuit 13b, using a different frequency than the frequency used for power transfer in the transmit coil 11L. And can communicate with the second communication circuit 23b (e.g., outband method).
  • the second electronic device 1300 may send a positive acknowledgment for the power supply request to the first electronic device 1200 via the first communication circuit 13a or the second communication circuit 13b And may be coupled to the first electronic device 1200. And the second electronic device 1300 may control the power generation circuit 11b such that the power produced by the transmission coil 11L is transmitted to the first electronic device 1200.
  • the first electronic device 1200 may send the identification information of the second electronic device 1300 to the server 1600.
  • the first electronic device 1200 receives a response from the second electronic device 1300, with or without a response to a power request from the second electronic device 1300, Can be received.
  • the first electronic device 1200 may send the identification information of the second electronic device 1300 received from the second electronic device 1300 to the server 1600.
  • the first electronic device 1200 may send the identification information of the first electronic device 1200 to the server 1600.
  • the second electronic device 1300 may send the identification information of the first electronic device 1200 to the server 1600.
  • the second electronic device 1300 may receive the identification information of the first electronic device 1200 along with the power supply request from the first electronic device 1200.
  • the second electronic device 1300 may send the identification information of the first electronic device 1200 received from the first electronic device 1200 to the server 1600.
  • the second electronic device 1300 may send the identification information of the second electronic device 1300 to the server 1600.
  • the order of performing 2215 operations and 2220 operations may be reversed.
  • both operations 2215 and 2220 may not be performed at all. In other words, only at least one of operations 2215 and 2220 can be performed. For example, if the 2215 operation is performed, the 2220 operation may not be performed, and if the 2220 operation is performed, the 2215 operation may not be performed.
  • the server 1600 activates and / or deactivates the voice-based services of the first electronic device 1200 and / or the second electronic device 1300, corresponding to at least either 2215 operation or 2220 operation. It is possible to transmit a signal which is inactivated or changed.
  • the server 1600 may transmit a control command that activates the voice recognition function of the first electronic device 1200 and deactivates the voice recognition function of the second electronic device 1300.
  • the server 1600 may send a control command to the second electronic device 1300 to deactivate the microphone 1370 and the speech recognition module 1330 of the second electronic device 1300.
  • the server 1600 may send a signal to the first electronic device 1200 to activate the microphone 1270 and the speech recognition module 1230 of the first electronic device 1200.
  • the order of 2425 operation and 2430 operation may be changed.
  • the server 1600 may send a signal through the first electronic device 1200 that deactivates the voice recognition function of the second electronic device 1300. In another embodiment, the server 1600 may send a signal through the second electronic device 1300 to activate the voice recognition function of the first electronic device 1200.
  • server 1600 may send a signal to assign a particular use to speaker 1360 of second electronic device 1300.
  • the second electronic device 1300 may be configured to reproduce only the sound associated with the music streaming service on the speaker 1360 of the second electronic device 1300 when the sound associated with the music streaming service is being output to the speaker 1360 of the second electronic device 1300.
  • a signal for controlling the speaker 1360 of the apparatus 1300 can be transmitted.
  • the server 1600 may send a signal to a speaker 1260 of the first electronic device 1200 to specify a particular use.
  • the server 1600 then receives the feedback data received via the speaker 1260 of the first electronic device 1200 when the first electronic device 1200 receives feedback data for the voice command from the server 1600 To the first electronic device 1200.
  • the first electronic device 1200 may recognize the user's speech utterance.
  • the first electronic device 1200 can recognize the voice utterance of the user in a state in which the voice recognition function is activated or in a state of waiting for reception of user voice utterance.
  • the user's voice utterance may include trigger sound and voice commands.
  • a user's voice utterance may be "Hi-Bixby, what time is the game in Golden State?" (Hi, Bixby, when is the Golden State Warriors game today?).
  • the first electronic device 1200 converts a user voice utterance input to the activated microphone 1270 into an electrical signal, and outputs a first signal ("Quot; Hi, Bixby "). ≪ / RTI > If the first electronic device 1200 includes a first signal, the first signal and the subsequent second signal (electrical signal corresponding to " when is the Golden State Warrior game today? .
  • the first electronic device 1200 may transmit voice speech data of the user to the server 1600.
  • the voice utterance data may be an electrical signal (a second signal) corresponding to a user voice command, or an electrical signal (a first signal and a second signal) corresponding to a trigger sound and a user voice command.
  • the first electronic device 1200 may additionally transmit to the server 1600 a signal requesting provision of information corresponding to a user voice command.
  • the server 1600 may send feedback data and output information corresponding to a voice command to the first electronic device 1200.
  • the feedback data may be data that encodes the specific information in a specified format.
  • the feedback data may be data encoded in a sound format as match information of a golden state.
  • the output information may include information about a device for outputting feedback data, or information about a condition for outputting feedback data.
  • the output information may be output by the second electronic device 1300 in a first portion of the feedback data (e.g., the low frequency portion of the data encoded in the sound format), and a first portion of the feedback data (E.g., the high frequency band portion of the data encoded by the second electronic device 1300).
  • the first electronic device 1200 may send a second portion of the received feedback data to the second electronic device 1300.
  • the first electronic device 1200 may send a second portion of the received feedback data to the second electronic device 1300 based on the received output information. For example, if the received output information indicates that a second portion of the feedback data is to be output at the second electronic device 1300, the first electronic device 1200 transmits a second portion of the feedback data to the second electronic device 1300. [ (1300).
  • the first electronic device 1200 may output a first portion of the received feedback data.
  • the first part may be the remainder of the received feedback data except for the second part.
  • the first portion may be the same format as the second portion, or the format may be different.
  • the first portion may be data encoded in an image format and the second portion may be data encoded in a sound format.
  • the first portion may be high frequency data encoded in a sound format and the second portion may be low frequency data encoded in a sound format.
  • the first electronic device 1200 can output the second portion, consistent with the output of the second portion by the second electronic device 1300.
  • the first electronic device 1200 may output the first portion at the same time that the second electronic device 1300 outputs the second portion.
  • the first electronic device 1200 and the second electronic device 1300 can simultaneously By outputting the first part and the second part, it is possible to reproduce the sound of the stereo format.
  • the second electronic device 1300 may output a second portion of the feedback data received from the first electronic device 1200.
  • operations 2255 and 2260 may be performed independent of power transmission and reception.
  • the 2255 operation can be performed at the same time that the first electronic device 1200 receives power from the second electronic device 1300.
  • operation 2255 may be performed with the first electronic device 1200 not receiving power from the second electronic device 1300.
  • 19-22 illustrate how the first electronic device 1200 with the speech recognition function activated recognizes user speech, receives feedback data for voice commands from the server 1600, To the second electronic device 1300 in which the speech recognition function is inactivated, but the opposite case is also possible. That is, the second electronic device 1300 with the voice recognition function activated recognizes the user voice utterance, receives feedback data for the voice command from the server 1600, and transmits the first portion of the feedback data to the voice recognition function It is also possible to transmit to the deactivated first electronic device 1200.
  • FIG. 23 is a cross-sectional signal flow diagram illustrating the operational sequence of a first electronic device 1200, a second electronic device 1300, and a server 1600 in accordance with various embodiments of the present invention.
  • the operations 2305 to 2320 are similar to the operations 2305 to 2320 of FIG. 22, and a detailed description thereof will be omitted.
  • the server 1600 transmits a signal to control the speech recognition function of the first electronic device 1200 and the second electronic device 1300, corresponding to at least either 2315 operation or 2320 operation .
  • the server 1600 can send a signal to activate the speech recognition function of the second electronic device 1300 in 2325 operation and transmit a signal to activate the speech recognition function of the first electronic device 1200 in 2330 operation have.
  • the order of 2325 operation and 2330 operation may be changed.
  • the first electronic device 1200 and the second electronic device 1300 can recognize the user's speech utterance.
  • the first electronic device 1200 and the second electronic device 1300 can recognize the voice utterance of the user in a state in which the voice recognition function is activated or in a state of waiting for reception of user voice utterance.
  • the user's voice utterance may include trigger sound and voice commands. For example, a user's voice utterance may be "Hi, Bixby, when is the Golden State Warriors game today?"
  • the first electronic device 1200 and the second electronic device 1300 may convert the user voice utterances input into the activated microphones 1470 and 1570 into electrical signals.
  • the second electronic device 1300 may send voice speech data to the first electronic device 1200.
  • the speech utterance data may be an electrical signal corresponding to a user voice command, or an electrical signal corresponding to a trigger sound and a user voice command.
  • the first electronic device 1200 may recognize trigger sounds and voice commands included in user voice utterances.
  • the first electronic device 1200 can recognize trigger sound and voice commands based on the speech utterance data received from the second electronic device 1300 in 2340 operation.
  • the first electronic device 1200 uses the speech utterance data received from the second electronic device 1300 for the noise included in the speech uttered by the user recognized via the microphone 1270 of the first electronic device 1200 Can be removed.
  • the first electronic device 1200 converts a user's speech uttered by the microphone 1270 of the first electronic device 1200 into an electrical signal, By applying a reversed signal of data, the noise included in the voice utterance of the user recognized through the microphone 1270 of the first electronic device 1200 can be removed.
  • the first electronic device 1200 removes the noise included in the voice uttered by the user recognized through the microphone 1270 of the first electronic device 1200 so that the recognition rate of the trigger sound and the voice command included in the user voice utterance .
  • the second electronic device 1300 may transmit voice utterance data to the server 1600 and the first electronic device 1200 may transmit voice utterance data to the server 1600.
  • the server 1600 may remove noise of the speech utterance data received at the first electronic device 1200 using the speech utterance data received at the second electronic device 1300.
  • the server transmits the noise-canceled speech utterance data to the first electronic device 1200, and the first electronic device 1200 can recognize the trigger sound and voice commands using the noise-canceled speech utterance data.
  • the server 1600 may recognize the trigger sound and voice commands in the noisy speech data and may send the feedback data and output information corresponding to the voice command to the first electronic device 1200.
  • Operations 2350 to 2370 are similar to operations 2240 to 2260 of FIG. 22, and therefore detailed description thereof will be omitted.
  • FIG. 24 is a cross-sectional signal flow diagram illustrating the sequence of operations of a first electronic device 1200, a second electronic device 1300, and a server 1600 in accordance with various embodiments of the present invention.
  • Operations 2405 to 2435 are similar to operations 2305 to 2335 of FIG. 23, and therefore detailed description thereof will be omitted.
  • the first electronic device 1200 can recognize trigger sounds and voice commands included in user voice utterances, and in 2445 operation, the second electronic device 1300 can recognize trigger sounds and voice included in user voice utterances
  • the command can be recognized.
  • the first electronic device 1200 can convert the sound input to the microphone 1270 into an electrical signal using the activated microphone 1270,
  • the trigger sound can be recognized by confirming the first signal indicating the matching rate equal to or higher than the determined value.
  • the first electronic device 1200 can recognize the voice command by determining the signal following the first signal as the second signal until the output below a predetermined value lasts for a time equal to or greater than a predetermined value.
  • the second electronic device 1300 may send voice recognition data recognized in 2445 operation to the server 1600, and in 2455 operation, the first electronic device 1200 transmits voice recognition data recognized in the 2440 operation To the server 1600.
  • the server 1600 may estimate the location and / or movement information of the user (talker). The detailed operation of the 2460 operation is described below in Fig.
  • 25 is a detailed flowchart of an operation in which a server estimates a position of a user according to various embodiments of the present invention.
  • 25 may be the server 1600 or the processor 1620 of the server 1600.
  • the server 1600 reads voice utterance data (hereinafter referred to as first voice utterance data) received from the first electronic device 1200 and voice received from the second electronic device 1300 It is possible to determine whether or not the speech data (hereinafter, referred to as the second speech speech data) is data due to the same speech utterance.
  • first voice utterance data voice utterance data
  • second speech speech data voice utterance data
  • the server 1600 can compare the reception time of the first speech utterance data with the reception time of the second speech utterance data. For example, when the difference between the reception time of the first speech utterance data and the reception time of the second speech utterance data does not exceed the reference value, the server 1600 can determine that the data originate from the same speech utterance.
  • the server 1600 may compare the signal characteristics of the first speech utterance data and the second speech utterance data (e.g., characteristics of the waveform, shape and form of the signal, magnitude of amplitude, Etc.). For example, when it is determined that the first speech utterance data includes the waveform A and the second speech utterance data includes the waveform A and the waveform B having a match rate equal to or higher than the reference value, the server 1600 determines that the first speech utterance It can be determined that the data and the second speech utterance data are data due to the same speech utterance.
  • the signal characteristics of the first speech utterance data and the second speech utterance data e.g., characteristics of the waveform, shape and form of the signal, magnitude of amplitude, Etc.
  • the server 1600 determines whether the first speech utterance data and the second speech utterance data are data due to the same speech utterance (e.g., based on the delay of the signal and the distance between the microphones) Can be determined.
  • the server 1600 may estimate the inter-microphone distance using the device information of the first electronic device 1200 stored in the memory and the device information of the second electronic device 1300.
  • the server 1600 may use the identification information and hardware information of the second electronic device 1300 to determine the location of the microphone 1370 of the second electronic device 1300, The location of the microphone 1270 of the first electronic device 1200 may be determined using the identification information and hardware information of the first electronic device 1200.
  • the server 1600 can estimate the distance between the microphones using the determined positions of the microphones.
  • the server 1600 may estimate the inter-microphone distance in consideration of the wireless charging scheme (e.g., magnetic induction) of the second electronic device 1300.
  • the server 1600 may be configured so that the power receiving device (e.g., the first electronic device 1200) It is possible to estimate the distance between the microphones considering that it needs to be placed on the charging pad.
  • the server 1600 may estimate the inter-microphone distance using the power transmission efficiency.
  • the server 1600 can verify the signal delay of the first speech utterance data and the second speech utterance data.
  • the server 1600 can confirm the delay of signals (e.g., waveform A and waveform B) commonly included in the first speech utterance data and the second speech utterance data.
  • the server 1600 may determine a user's firing position based on the identified signal delay and the distance between the microphones. For example, the server 1600 may determine the location of a user's utterance using a Time Delay of Arrival (TDOA) technique.
  • TDOA Time Delay of Arrival
  • the server 1600 may again perform the 2510 operation. In other words, the server 1600 may repeatedly perform 2510 operations until it receives the first speech utterance data and the second speech utterance data due to the same speech utterance.
  • the server 1600 may determine whether the delay of the signal varies with time. For example, the server 1600 determines whether a value representing the delay of signals (e.g., waveform A and waveform B) commonly included in the first speech utterance data and the second speech utterance data is maintained or changed over time Can be confirmed.
  • a value representing the delay of signals e.g., waveform A and waveform B
  • the server 1600 can determine that the user is not moving.
  • server 1600 can determine that the user is moving.
  • Server 1600 may determine the user's movement information in 2740 operation.
  • the server 1600 may determine the user's movement information (e.g., direction of movement, speed, etc.) based on the change in signal delay over time.
  • the server 1600 may send feedback data and output information corresponding to a voice command to the first electronic device 1200.
  • the server 1600 may determine the output information using the user's location and / or user's movement information estimated in operation 2460 and send the determined output information to the first electronic device 1200. For example, the server 1600 may determine output information indicating that the third electronic device 1300-1 proximate the direction of movement of the user is to output at least a portion (second portion) of the feedback data, To the first electronic device 1200. In another example, the server 1600 may be configured such that the first electronic device 1200 outputs the entire feedback data for up to three seconds from now, and after the third electronic device 1300-1 receives the entire feedback data Determine the output information to indicate output, and send the determined output information to the first electronic device 1200.
  • the first electronic device 1200 may send at least a portion (second portion) of the feedback data to the third electronic device 1300-1.
  • the server 1600 may send at least some of the feedback data directly to the third electronic device 1300-1.
  • the third electronic device 1300-1 may output at least some feedback data.
  • at least some of the received feedback data may be output in accordance with the output format of the received at least some feedback data.
  • the third electronic device 1300-1 may be the electronic device 901 of FIG.
  • 26 is a cross-sectional signal flow diagram illustrating the operational sequence of a first electronic device 1200, a second electronic device 1300, and a server in accordance with various embodiments of the present invention.
  • the operations 2605 to 2640 are similar to the operations 2205 to 2240 shown in FIG. 22, and a detailed description thereof will be omitted.
  • the server 1600 may send a first portion of the feedback data for voice commands to the first electronic device 1200.
  • the first part of the feedback data may be different in output format from the rest (second part) of the feedback data.
  • the first part of the feedback data may represent the same data as the rest of the feedback data (second part) but in different output formats.
  • the server 1600 may send a second portion of the feedback data for the voice command to the second electronic device 1300.
  • the server 1600 may send a second portion encoded in a sound output format to the second electronic device 1300.
  • the server 1600 may transmit the low frequency portion of the data encoded in the sound output format to the second electronic device 1300.
  • the server 1600 may transmit a signal (e.g., a flag) indicating that the currently transmitted data is part of the total feedback data, or that the remaining portion is output from another device.
  • the server 1600 may further transmit a signal to the first electronic device 1200 indicating that a second portion of the feedback data is output at the second electronic device 1300, at 2645 operation.
  • the server 1600 may further transmit to the second electronic device 1300, at 2650 operation, a signal indicating that a first portion of the feedback data is output at the first electronic device 1200.
  • Operations 2655 and 2660 are similar to operation 2255 and operation 2260 in FIG. 22, and thus a detailed description thereof will be omitted.

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)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Acoustics & Sound (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Telephone Function (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명의 다양한 실시예들은, 근거리 통신으로 연결된 외부 장치의 입출력 기능을 추가적으로 이용하여, 사용자에게 음성 기반 서비스를 제공하기 위한 전자 장치 및 서버 장치, 그의 동작 방법에 대한 것이다. 본 발명의 다양한 실시예에 따른 전자 장치는, 하우징, 상기 하우징의 일부를 통해 노출된 디스플레이, 스피커, 마이크, 무선 충전 회로, 무선 통신 회로, 배터리, 상기 디스플레이, 스피커, 마이크, 충전 회로, 통신 회로, 배터리와 작동적으로 연결된 프로세서, 상기 프로세서와 작동적으로 연결된 메모리를 포함하며, 상기 메모리는 실행 시에, 상기 프로세서가, 외부 무선 충전 장치로부터, 상기 외부 무선 충전 장치에 대한 정보를 상기 충전 회로를 통하여 수신하고, 상기 외부 무선 충전 장치로부터 수신한 전력으로 상기 배터리를 충전하도록 상기 충전 회로를 제어하고, 상기 통신 회로를 통하여, 상기 수신한 정보의 적어도 일부를 외부 서버에 전송하고, 상기 통신 회로를 통하여 상기 외부 서버로부터 응답을 수신하고, 상기 응답은 마이크, 스피커, 및/또는 디스플레이를 이용한 음성 기반 서비스와 연관되고, 상기 배터리를 충전하는 동안, 상기 응답의 적어도 일부에 기반하여 상기 음성 기반 서비스를 적어도 부분적으로 활성화, 비활성화 혹은 변경하도록 하는 명령어들(instructions)을 저장할 수 있다.

Description

외부 장치를 이용하여 음성 기반 서비스를 제공하기 위한 전자 장치, 외부 장치 및 그의 동작 방법
본 발명의 다양한 실시예들은, 근거리 통신으로 연결된 외부 장치의 입출력 기능을 추가적으로 이용하여, 사용자에게 음성 기반 서비스를 제공하기 위한 전자 장치 및 서버 장치, 그의 동작 방법에 대한 것이다.
센서 및 통신 기능이 내장된 복수의 전자 기기들(예를 들어 가전 기기, 휴대용 기기 등)을 네트워크로 연결하는 IOT(Internet of things)기술이 각광받고 있다.
네트워크로 연결된 복수의 전자 기기들 각각은 적어도 일부의 입출력 기능을 처리할 수 있는 입출력 모듈(예: 마이크, 스피커)을 포함하고 있다. 또한, 네트워크로 연결된 복수의 전자 기기들 각각은, 사용자에게 음성 기반 서비스를 제공하기 위하여 상기 입출력 모듈을 제어할 수 있다.
네트워크로 연결된 복수의 전자 기기들 각각은, 사용자에게 음성 기반 서비스를 제공하기 위하여, 기본적으로 자신에 대한 입출력 모듈을 제어할 수 있다. 네트워크로 연결된 복수의 전자 기기들 각각은, 외부 장치의 입출력 모듈을 추가적으로 이용하여 자신의 입출력 데이터를 처리하거나, 외부 장치의 입출력 데이터를 처리하기 위하여 자신의 입출력 모듈을 제어하지 못할 수 있다.
예를 들어, 무선 충전을 통해 외부 장치로 전력을 공급하기 위한 장치가 마이크 및 스피커를 구비한 경우, 상기 마이크 및 스피커는 무선 충전에 관한 입출력 데이터를 처리하기 위해서만 사용된다. 상기 마이크 및 스피커는 외부 장치에 대한 입출력 데이터를 처리하는데 사용되지 못한다.
따라서, 외부 장치의 입출력 모듈을 추가적으로 이용하여 확장된 입출력 데이터 처리 기능을 수행할 수 있는 전자 장치의 제공이 필요한 실정이다.
본 발명의 다양한 실시예에 따른 전자 장치는 하우징, 상기 하우징의 일부를 통해 노출된 디스플레이, 스피커, 마이크, 무선 충전 회로, 무선 통신 회로, 배터리, 상기 디스플레이, 스피커, 마이크, 충전 회로, 통신 회로, 배터리와 작동적으로 연결된 프로세서, 상기 프로세서와 작동적으로 연결된 메모리를 포함하며, 상기 메모리는 실행 시에, 상기 프로세서가 외부 무선 충전 장치로부터, 상기 무선 충전 장치에 대한 정보를 상기 충전 회로를 통하여 수신하고, 상기 외부 무선 충전 장치로부터 수신한 전력으로 상기 배터리를 충전하도록 상기 충전 회로를 제어하고, 상기 통신 회로를 통하여, 상기 수신한 정보의 적어도 일부를 외부 서버에 전송하고, 상기 통신 회로를 통하여 상기 외부 서버로부터 응답을 수신하고, 상기 응답은 마이크, 스피커, 및/또는 디스플레이를 이용한 음성 기반 서비스와 연관되고, 상기 배터리를 충전하는 동안, 상기 응답의 적어도 일부에 기반하여 상기 음성 기반 서비스를 적어도 부분적으로 활성화, 비활성화 혹은 변경하도록 하는 명령어들(instructions)을 저장할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치는, 하우징, 상기 하우징의 일부를 통해 노출된 마이크 및 출력 모듈, 무선 통신 회로, 상기 하우징의 내부에 위치하며 상기 마이크, 상기 출력 모듈 및 상기 무선 통신 회로와 기능적으로 연결된 프로세서, 상기 하우징의 내부에 위치하며 상기 프로세서와 기능적으로 연결된 메모리를 포함하며, 상기 메모리는 실행 시 상기 프로세서가, 상기 무선 통신 회로를 이용하여 외부 장치와 근거리 통신을 수립하고, 상기 외부 장치의 식별 정보를 서버로 송신하고, 음성 인식 기능에 대한 기능을 활성화하고, 상기 마이크를 이용하여 트리거 음성 및 음성 명령을 포함하는 음성 발화를 인식하고, 상기 음성 명령에 대한 피드백 데이터를 상기 서버로 요청하고, 상기 음성 명령에 대한 피드백 데이터 및 상기 피드백 데이터의 출력 정보를 수신하고, 상기 수신한 출력 정보에 기반하여, 상기 수신한 피드백 데이터를 상기 출력 모듈을 이용하여 출력하도록 하는 명령어들(instructions)을 저장할 수 있다.
본 발명의 다양한 실시예에 다른 전자 장치는, 하우징, 스피커, 마이크, 무선 충전 회로, 무선 통신 회로, 상기 스피커, 마이크, 충전 회로, 통신 회로와 작동적으로 연결된 프로세서, 상기 프로세서와 작동적으로 연결된 메모리를 포함하며, 상기 메모리는 실행 시에, 상기 프로세서가, 디스플레이를 포함하는 외부 모바일 장치로부터, 상기 충전 회로를 통하여 상기 모바일 장치에 대한 정보를 수신하고, 무선으로 상기 모바일 장치를 충전하도록 상기 충전 회로를 제어하고, 상기 통신 회로를 통하여 외부 서버로 상기 수신한 정보의 적어도 일부를 전송하고, 상기 통신 회로를 통하여 상기 외부 서버로부터 응답을 수신하고, 상기 응답은 상기 모바일 장치의 마이크, 스피커, 및/또는 디스플레이를 이용한 음성 기반 서비스와 연관되고, 상기 모바일 장치를 충전하는 동안, 상기 응답의 적어도 일부에 기반하여 상기 음성 기반 서비스를 적어도 부분적으로 활성화, 비활성화 혹은 변경하도록 하는 명령어들을 저장할 수 있다.
다양한 실시예에 따르면, 외부 장치의 입출력 모듈을 추가적으로 이용하여 입출력 데이터를 처리함으로써, 사용자에게 확장된 음성 기반 서비스를 제공할 수 있다. 전자 장치는 현재 사용되고 있지 않는 외부 장치의 입출력 모듈을 추가적으로 이용하여 입출력 데이터를 처리함으로써, 입출력 데이터의 처리 성능을 향상시키고, 입출력 데이터의 처리 기능을 확장할 수 있다.
도 1은 본 발명의 다양한 실시 예에 따른 통합 지능화 시스템을 나타낸 도면이다.
도 2는 본 발명의 일 실시 예에 따른 통합 지능화 시스템의 사용자 단말을 나타낸 블록도이다.
도 3은 본 발명의 일 실시 예에 따른 사용자 단말의 지능형 앱을 실행시키는 것을 나타낸 도면이다.
도 4는 본 발명의 일 실시 예에 따른 지능형 서비스 모듈의 컨텍스트 모듈이 현재 상태를 수집하는 것을 나타낸 도면이다.
도 5는 본 발명의 일 실시 예에 따른 지능형 서비스 모듈의 제안 모듈을 나타낸 블록도이다.
도 6은 본 발명의 일 실시 예에 따른 통합 지능화 시스템의 지능형 서버를 나타낸 블록도이다.
도 7은 본 발명의 일 실시 예에 따른 패스 자연어 이해 모듈(natural language understanding)(NLU)이 패스 룰(path rule)을 생성하는 방법을 나타낸 도면이다.
도 8은 본 발명의 일 실시 예에 따른 지능형 서비스 모듈의 페르소나 모듈(persona module)이 사용자의 정보를 관리하는 것을 나타낸 도면이다.
도 9은, 다양한 실시예들에 따른, 네트워크 환경 내의 전자 장치 의 블럭도이다.
도 10는, 다양한 실시예들에 따른, 전자 장치의 무선 통신 모듈, 전력 관리 모듈, 및 안테나 모듈에 대한 블럭도이다.
도 11는 본 발명의 다양한 실시예들에 따른 시스템을 도시한다.
도 12는 본 발명의 다양한 실시예들에 따른 제1 전자 장치의 기능적 구성을 도시한다.
도 13는 본 발명의 다양한 실시예에 따른 제2 전자 장치의 기능적 구성을 도시한다.
도 14는 본 발명의 다양한 실시예에 따른 제1 전자 장치의 무선 충전 모듈 및 제2 전자 장치의 무선 충전 모듈의 회로를 도시한다.
도 15a, 15b는 본 발명의 다양한 실시예에 따른 제2 전자 장치의 외관의 두 가지 형태들을 도시한다.
도 16는 본 발명의 다양한 실시예에 따른 서버의 기능적 구성을 도시한다.
도 17는 본 발명의 다양한 실시예에 따른 제1 전자 장치의 동작 순서를 나타낸 흐름도이다.
도 18은 본 발명의 다양한 실시예에 따른 제2 전자 장치의 동작 순서를 나타낸 흐름도이다.
도 19은 본 발명의 다양한 실시예에 따른 제1 전자 장치의 동작 순서를 나타낸 흐름도이다.
도 20은 본 발명의 다양한 실시예에 따른 제2 전자 장치의 동작 순서를 나타낸 흐름도이다.
도 21은 본 발명의 다양한 실시예에 따른 서버의 동작 순서를 나타낸 흐름도이다.
도 22는 본 발명의 다양한 실시예에 따른 제1 전자 장치, 제2 전자 장치 및 서버의 동작 순서를 나타낸 상호 신호 흐름도이다.
도 23은 본 발명의 다양한 실시예에 따른 제1 전자 장치, 제2 전자 장치 및 서버의 동작 순서를 나타낸 상호 신호 흐름도이다.
도 24은 본 발명의 다양한 실시예에 따른 제1 전자 장치, 제2 전자 장치 및 서버의 동작 순서를 나타낸 상호 신호 흐름도이다.
도 25는 본 발명의 다양한 실시예에 따른 서버가 사용자의 위치를 추정하는 동작의 세부 흐름도이다.
도 26은 본 발명의 다양한 실시예에 따른 제1 전자 장치, 제2 전자 장치 및 서버의 동작 순서를 나타낸 상호 신호 흐름도이다.
본 발명의 일 실시 예를 서술하기에 앞서, 본 발명의 일 실시 예가 적용될 수 있는 통합 지능화 시스템에 대해 설명한다.
도 1은 본 발명의 다양한 실시 예에 따른 통합 지능화 시스템을 나타낸 도면이다.
도 1을 참조하면, 통합 지능화 시스템(10)은 사용자 단말(100), 지능형 서버(200), 개인화 정보 서버(300) 또는 제안 서버(400)를 포함할 수 있다.
사용자 단말(100)은 사용자 단말(100) 내부에 저장된 앱(app)(또는, 어플리케이션 프로그램(application program))(예: 알람 앱, 메시지 앱, 사진(갤러리) 앱 등)을 통해 사용자에게 필요한 서비스를 제공할 수 있다. 예를 들어, 사용자 단말(100)은 사용자 단말(100) 내부에 저장된 지능형 앱(또는, 음성 인식 앱)을 통해 다른 앱을 실행하고 동작시킬 수 있다. 사용자 단말(100)의 상기 지능형 앱을 통해 상기 다른 앱의 실행하고 동작을 실행시키기 위한 사용자 입력을 수신할 수 있다. 상기 사용자 입력은, 예를 들어, 물리적 버튼, 터치 패드, 음성 입력, 원격 입력 등을 통해 수신될 수 있다. 일 실시 예에 따르면, 사용자 단말(100)은 휴대폰, 스마트폰, PDA(personal digital assistant) 또는 노트북 컴퓨터 등 인터넷에 연결 가능한 각종 단말 장치(또는, 전자 장치)가 이에 해당될 수 있다.
일 실시 예에 따르면, 사용자 단말(100)은 사용자의 발화를 사용자 입력으로 수신할 수 있다. 사용자 단말(100)은 사용자의 발화를 수신하고, 상기 사용자의 발화에 기초하여 앱을 동작시키는 명령을 생성할 수 있다. 이에 따라, 사용자 단말(100)은 상기 명령을 이용하여 상기 앱을 동작시킬 수 있다.
지능형 서버(200)는 통신망을 통해 사용자 단말(100)로부터 사용자 음성 입력(voice input)을 수신하여 텍스트 데이터(text data)로 변경할 수 있다. 다른 실시 예에서는, 지능형 서버(200)는 상기 텍스트 데이터에 기초하여 패스 룰(path rule)을 생성(또는, 선택)할 수 있다. 상기 패스 룰은 앱의 기능을 수행하기 위한 동작(action)(또는, 오퍼레이션(operation))에 대한 정보 또는 상기 동작을 실행하기 위해 필요한 파라미터에 대한 정보를 포함할 수 있다. 또한, 상기 패스 룰은 상기 앱의 상기 동작의 순서를 포함할 수 있다. 사용자 단말(100)은 상기 패스 룰을 수신하고, 상기 패스 룰에 따라 앱을 선택하고, 상기 선택된 앱에서 상기 패스 룰에 포함된 동작을 실행시킬 수 있다.
본 문서의 "패스 룰(path rule)" 이라는 용어는 일반적으로, 전자 장치가 사용자에 의해 요청된 태스크를 수행하기 위한 상태들의 시퀀스를 의미할 수 있지만, 이에 제한되지 않는다. 다시 말해, 패스 룰은 상태들의 시퀀스에 대한 정보를 포함할 수 있다. 상기 태스크는, 예를 들어, 지능형 앱이 제공할 수 있는 어떠한 동작(action)일 수 있다. 상기 태스크는 일정을 생성하거나, 원하는 상대방에게 사진을 전송하거나, 날씨 정보를 제공하는 것을 포함 할 수 있다. 사용자 단말(100)은 적어도 하나 이상의 상태(예: 사용자 단말(100)의 동작 상태)를 순차적으로 갖음으로써, 상기 태스크를 수행할 수 있다.
일 실시 예에 따르면, 패스 룰은 인공 지능(artificial intelligent)(AI) 시스템에 의해 제공되거나, 생성될 수 있다. 인공지능 시스템은 룰 베이스 시스템(rule-based system) 일 수도 있고, 신경망 베이스 시스템(neual network-based system)(예: 피드포워드 신경망(feedforward neural network(FNN)), 순환 신경망(recurrent neural network(RNN))) 일 수도 있다. 또는 전술한 것의 조합 또는 이와 다른 인공지능 시스템일 수도 있다. 일 실시 예에 따르면, 패스 룰은 미리 정의된 패스 룰들의 집합에서 선택될 수 있거나, 사용자 요청에 응답하여 실시간으로 생성될 수 있다. 예를 들어, 인공지능 시스템은 미리 정의 된 복수의 패스 룰 중 적어도 패스 룰을 선택하거나, 동적(또는, 실시간)으로 패스 룰을 생성할 수 있다. 또한, 사용자 단말(100)은 패스 룰을 제공하기 위해 하이브리드 시스템을 사용할 수 있다.
일 실시 예에 따르면, 사용자 단말(100)은 상기 동작을 실행하고, 동작을 실행한 사용자 단말(100)의 상태에 대응되는 화면을 디스플레이에 표시할 수 있다. 다른 예를 들어, 사용자 단말(100)은 상기 동작을 실행하고, 동작을 수행한 결과를 디스플레이에 표시하지 않을 수 있다. 사용자 단말(100)은, 예를 들어, 복수의 동작을 실행하고, 상기 복수의 동작의 일부 결과 만을 디스플레이에 표시할 수 있다. 사용자 단말(100)은, 예를 들어, 마지막 순서의 동작을 실행한 결과만을 디스플레이에 표시할 수 있다. 또 다른 예를 들어, 사용자 단말(100)은 사용자의 입력을 수신하여 상기 동작을 실행한 결과를 디스플레이에 표시할 수 있다.
개인화 정보 서버(300)는 사용자 정보가 저장된 데이터베이스를 포함할 수 있다. 예를 들어, 개인화 정보 서버(300)는 사용자 단말(100)로부터 사용자 정보(예: 컨텍스트 정보, 앱 실행 등)를 수신하여 상기 데이터베이스에 저장할 수 있다. 지능형 서버(200)는 통신망을 통해 개인화 정보 서버(300)로부터 상기 사용자 정보를 수신하여 사용자 입력에 대한 패스 룰을 생성하는 경우에 이용할 수 있다. 일 실시 예에 따르면, 사용자 단말(100)은 통신망을 통해 개인화 정보 서버(300)로부터 사용자 정보를 수신하여 데이터베이스를 관리하기 위한 정보로 이용할 수 있다.
제안 서버(400)는 단말 내에 기능 혹은 어플리케이션의 소개 또는 제공될 기능에 대한 정보가 저장된 데이터베이스를 포함할 수 있다. 예를 들어, 제안 서버(400)는 개인화 정보 서버(300)로부터 사용자 단말기(100)의 사용자 정보를 수신하여 사용자가 사용 할 수 있는 기능에 대한 데이터베이스를 포함 할 수 있다. 사용자 단말(100)은 통신망을 통해 제안 서버(400)로부터 상기 제공될 기능에 대한 정보를 수신하여 사용자에게 정보를 제공할 수 있다.
도 2는 본 발명의 일 실시 예에 따른 통합 지능화 시스템의 사용자 단말을 나타낸 블록도이다.
도 2를 참조하면, 사용자 단말(100)은 입력 모듈(110), 디스플레이(120), 스피커(130), 메모리(140) 또는 프로세서(150)을 포함할 수 있다. 사용자 단말(100)은 하우징을 더 포함할 수 있고, 상기 사용자 단말(100)의 구성들은 상기 하우징의 내부에 안착되거나 하우징 상에(on the housing) 위치할 수 있다. 사용자 단말(100)은 상기 하우징의 내부에 위치한 통신 회로를 더 포함할 수 있다. 사용자 단말(100)은 상기 통신 회로를 통해 외부 서버(예: 지능형 서버(200))와 데이터(또는, 정보)를 송수신할 수 있다.
일 실시 예에 따른, 입력 모듈(110)은 사용자로부터 사용자 입력을 수신할 수 있다. 예를 들어, 입력 모듈(110)은 연결된 외부 장치(예: 키보드, 헤드셋)로부터 사용자 입력을 수신할 수 있다. 다른 예를 들어, 입력 모듈(110)은 디스플레이(120)와 결합된 터치 스크린(예: 터치 스크린 디스플레이)을 포함할 수 있다. 또 다른 예를 들어, 입력 모듈(110)은 사용자 단말(100)(또는, 사용자 단말(100)의 하우징)에 위치한 하드웨어 키(또는, 물리적 키)를 포함할 수 있다.
일 실시 예에 따르면, 입력 모듈(110)은 사용자의 발화를 음성 신호로 수신할 수 있는 마이크를 포함할 수 있다. 예를 들어, 입력 모듈(110)은 발화 입력 시스템(speech input system)을 포함하고, 상기 발화 입력 시스템을 통해 사용자의 발화를 음성 신호로 수신할 수 있다. 상기 마이크는, 예를 들어, 하우징의 일부분(예: 제1 부분)을 통해 노출될 수 있다.
일 실시 예에 따른, 디스플레이(120)는 이미지나 비디오, 및/또는 어플리케이션의 실행 화면을 표시할 수 있다. 예를 들어, 디스플레이(120)는 앱의 그래픽 사용자 인터페이스(graphic user interface)(GUI)를 표시할 수 있다. 일 실시 예에 따르면, 디스플레이(120)는 하우징의 일부분(예: 제2 부분)을 통해 노출될 수 있다.
일 실시 예에 따르면, 스피커(130)는 음성 신호를 출력할 수 있다. 예를 들어, 스피커(130)는 사용자 단말(100) 내부에서 생성된 음성 신호를 외부로 출력할 수 있다. 일 실시 예에 따르면, 스피커(130)는 하우징의 일부분(예: 제3 부분)을 통해 노출될 수 있다.
일 실시 예에 따르면, 메모리(140)는 복수의 앱(또는, 어플리케이션 프로그램 application program))(141, 143)을 저장할 수 있다. 복수의 앱(141, 143)은, 예를 들어, 사용자 입력에 대응되는 기능을 수행하기 위한 프로그램(program)일 수 있다. 일 실시 예에 따르면, 메모리(140)는 지능형 에이전트(145), 실행 매니저 모듈(147) 또는 지능형 서비스 모듈(149)을 저장할 수 있다. 지능형 에이전트(145), 실행 매니저 모듈(147) 및 지능형 서비스 모듈(149)은, 예를 들어, 수신된 사용자 입력(예: 사용자 발화)을 처리하기 위한 프레임워크(framework)(또는, 어플리케이션 프레임워크(application framework))일 수 있다.
일 실시 예에 따르면, 메모리(140)는 사용자 입력을 인식하는데 필요한 정보를 저장할 수 있는 데이터베이스를 포함할 수 있다. 예를 들어, 메모리(140)은 로그(log) 정보를 저장할 수 있는 로그 데이터베이스를 포함할 수 있다. 다른 예를 들어, 메모리(140)는 사용자 정보를 저장할 수 있는 페르소나 데이터베이스를 포함할 수 있다.
일 실시 예에 따르면, 메모리(140)는 복수의 앱(141, 143)을 저장하고, 복수의 앱(141, 143)은 로드되어 동작할 수 있다. 예를 들어, 메모리(140)에 저장된 복수의 앱(141,143)은 실행 매니저 모듈(147)에 의해 로드되어 동작할 수 있다. 복수의 앱(141, 143)은 기능을 수행하는 실행 서비스 모듈(141a, 143a)을 포함할 수 있다. 일 실시 예에서, 복수의 앱(141,143)은 기능을 수행하기 위해서 실행 서비스 모듈(141a, 143a)를 통해 복수의 동작(예: 상태 들의 시퀀스)(141b, 143b)을 실행할 수 있다. 다시 말해, 실행 서비스 모듈(141a, 143a)는 실행 매니저 모듈(147)에 의해 활성화되고, 복수의 동작 (141b, 143b)을 실행할 수 있다.
일 실시 예에 따르면, 앱(141, 143)의 동작(141b, 143b)이 실행되었을 때, 동작(141b, 143b)의 실행에 따른 실행 상태 화면은 디스플레이(120)에 표시될 수 있다. 상기 실행 상태 화면은, 예를 들어, 동작(141b, 143b)이 완료된 상태의 화면일 수 있다. 상기 실행 상태 화면은, 다른 예를 들어, 동작(141b, 143b)의 실행이 정지된 상태(partial landing)(예: 동작(141b, 143b)에 필요한 파라미터가 입력되지 않은 경우)의 화면일 수 있다.
일 실시 예에 따른, 실행 서비스 모듈(141a, 143a)은 패스 룰에 따라 동작(141b, 143b)을 실행할 수 있다. 예를 들어, 실행 서비스 모듈(141a, 143a)은 실행 매니저 모듈(147)에 의해 활성화되고, 실행 매니저 모듈(147)로부터 상기 패스 룰에 따라 실행 요청을 전달 받고, 상기 실행 요청에 따라 동작(141b, 143b)을 함으로써, 앱(141, 143)의 기능을 실행할 수 있다. 실행 서비스 모듈(141a, 143a)는 상기 동작(141b, 143b)의 수행이 완료되면 완료 정보를 실행 매니저 모듈(147)로 전달할 수 있다.
일 실시 예에 따르면, 앱(141, 143)에서 복수의 동작(141b, 143b)이 실행되는 경우, 복수의 동작(141b, 143b)은 순차적으로 실행될 수 있다. 실행 서비스 모듈(141a, 143a)은 하나의 동작(예: 제1 앱(141)의 동작 1, 제2 앱(143)의 동작 1)의 실행이 완료되면 다음 동작(예: 제1 앱(141)의 동작 2, 제2 앱(143)의 동작 2)을 오픈하고 완료 정보를 실행 매니저 모듈(147)로 송신할 수 있다. 여기서 임의의 동작을 오픈한다는 것은, 임의의 동작을 실행 가능한 상태로 천이시키거나, 임의의 동작의 실행을 준비하는 것으로 이해될 수 있다. 다시 말해서, 임의의 동작이 오픈되지 않으면, 해당 동작은 실행될 수 없다. 실행 매니저 모듈(147)은 상기 완료 정보가 수신되면 다음 동작(예: 제1 앱(141)의 동작 2, 제2 앱(143)의 동작 2)에 대한 실행 요청을 실행 서비스 모듈로 전달할 수 있다. 일 실시 예에 따르면, 복수의 앱(141, 143)이 실행되는 경우, 복수의 앱(141, 143)은 순차적으로 실행될 수 있다. 예를 들어, 제1 앱(141)의 마지막 동작(예: 제1 앱(141)의 동작 3)의 실행이 완료되어 완료 정보를 수신하면, 실행 매니저 모듈(147)은 제2 앱(143)의 첫번째 동작(예: 제2 앱(143)의 동작 1)의 실행 요청을 실행 서비스(143a)로 송신할 수 있다.
일 실시 예에 따르면, 앱(141, 143)에서 복수의 동작(141b, 143b)이 실행된 경우, 상기 실행된 복수의 동작(141b, 143b) 각각의 실행에 따른 결과 화면은 디스플레이(120)에 표시될 수 있다. 일 실시 예에 따르면, 상기 실행된 복수의 동작(141b, 143b)의 실행에 따른 복수의 결과 화면 중 일부만 디스플레이(120)에 표시될 수 있다.
일 실시 예에 따르면, 메모리(140)는 지능형 에이전트(145)와 연동된 지능형 앱(예: 음성 인식 앱)을 저장할 수 있다. 지능형 에이전트(145)와 연동된 앱은 사용자의 발화를 음성 신호로 수신하여 처리할 수 있다. 일 실시 예에 따르면, 지능형 에이전트(145)와 연동된 앱은 입력 모듈(110)을 통해 입력되는 특정 입력(예: 하드웨어 키를 통한 입력, 터치 스크린을 통한 입력, 특정 음성 입력)에 의해 동작될 수 있다.
일 실시 예에 따르면, 메모리(140)에 저장된 지능형 에이전트(145), 실행 매니저 모듈(147) 또는 지능형 서비스 모듈(149)이 프로세서(150)에 의해 실행될 수 있다. 지능형 에이전트(145), 실행 매니저 모듈(147) 또는 지능형 서비스 모듈(149)의 기능은 프로세서(150)에 의해 구현될 수 있다. 상기 지능형 에이전트(145), 실행 매니저 모듈(147) 및 지능형 서비스 모듈(149)의 기능에 대해 프로세서(150)의 동작으로 설명하겠다. 일 실시 예에 따르면, 메모리(140)에 저장된 지능형 에이전트(145), 실행 매니저 모듈(147) 또는 지능형 서비스 모듈(149)는 소프트웨어뿐만 아니라 하드웨어로 구현될 수 있다.
일 실시 예에 따르면, 프로세서(150)는 사용자 단말(100)의 전반적인 동작을 제어할 수 있다. 예를 들어, 프로세서(150)는 입력 모듈(110)을 제어하여 사용자 입력을 수신할 수 있다. 프로세서(150)는 디스플레이(120)를 제어하여 이미지를 표시할 수 있다. 프로세서(150)는 스피커(130)를 제어하여 음성 신호를 출력할 수 있다. 프로세서(150)는 메모리(140)를 제어하여 프로그램을 실행시키고, 필요한 정보를 불러오거나 저장할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 메모리(140)에 저장된 지능형 에이전트(145), 실행 매니저 모듈(147) 또는 지능형 서비스 모듈(149)을 실행시킬 수 있다. 이에 따라, 프로세서(150)는 지능형 에이전트(145), 실행 매니저 모듈(147) 또는 지능형 서비스 모듈(149)의 기능을 구현할 수 있다.
일 실시 예에 따른, 프로세서(150)는 지능형 에이전트(145)를 실행하여 사용자 입력으로 수신된 음성 신호에 기초하여 앱을 동작시키는 명령을 생성할 수 있다. 일 실시 예에 따른, 프로세서(150)는 실행 매니저 모듈(147)을 실행하여 상기 생성된 명령에 따라 메모리(140)에 저장된 앱(141, 143)을 실행시킬 수 있다. 일 실시 예에 따르면, 프로세서(150)는 지능형 서비스 모듈(149)을 실행하여 사용자의 정보를 관리하 고, 상기 사용자의 정보를 이용하여 사용자 입력을 처리할 수 있다.
프로세서(150)는 지능형 에이전트(145)를 실행하여 입력 모듈(110)을 통해 수신된 사용자 입력을 지능형 서버(200)로 송신하고, 지능형 서버(200)를 통해 상기 사용자 입력을 처리할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 지능형 에이전트(145)를 실행하여 상기 사용자 입력을 지능형 서버(200)로 송신하기 전에 상기 사용자 입력을 전처리할 수 있다. 일 실시 예에 따르면, 지능형 에이전트(145)는 상기 사용자 입력을 전처리하기 위하여, 적응 반향 제거(adaptive echo canceller)(AEC) 모듈, 노이즈 억제(noise suppression)(NS) 모듈, 종점 검출(end-point detection)(EPD) 모듈 또는 자동 이득 제어(automatic gain control)(AGC) 모듈을 포함할 수 있다. 상기 적응 반향 제거부는 상기 사용자 입력에 포함된 에코(echo)를 제거할 수 있다. 상기 노이즈 억제 모듈은 상기 사용자 입력에 포함된 배경 잡음을 억제할 수 있다. 상기 종점 검출 모듈은 상기 사용자 입력에 포함된 사용자 음성의 종점을 검출하 고, 상기 검출된 종점을 이용하여 사용자의 음성이 존재하는 부분을 찾을 수 있다. 상기 자동 이득 제어 모듈은 상기 사용자 입력을 인식하고, 상기 인식된 사용자 입력을 처리하기 적합하도록 상기 사용자 입력의 음량을 조절할 수 있다. 일 실시 예에 따르면, 프로세서(150)는 성능을 위하여 상기 전처리 구성을 전부 실행시킬 수 있지만, 다른 실시 예에서 프로세서(150)는 저전력으로 동작하기 위해 상기 전처리 구성 중 일부를 실행시킬 수 있다.
일 실시 예에 따르면, 지능형 에이전트(145)는 사용자의 호출을 인식하기 위해 메모리(140)에 저장된 웨이크 업(wake up) 인식 모듈을 실행시킬 수 있다. 이에 따라, 프로세서(150)는 상기 웨이크 업 인식 모듈을 통해 사용자의 웨이크 업 명령을 인식할 수 있고, 상기 웨이크 업 명령을 수신한 경우 사용자 입력을 수신하기 위한 지능형 에이전트(145)를 실행시킬 수 있다. 상기 웨이크 업 인식 모듈은 저전력 프로세서(예: 오디오 코덱에 포함된 프로세서)로 구현될 수 있다. 일 실시 예에 따르면, 프로세서(150)는 하드웨어 키를 통한 사용자 입력 을 수신하였을 때 지능형 에이전트(145)를 실행시킬 수 있다. 지능형 에이전트(145)가 실행된 경우, 지능형 에이전트(145)와 연동된 지능형 앱(예: 음성 인식 앱)이 실행될 수 있다.
일 실시 예에 따르면, 지능형 에이전트(145)는 사용자 입력을 실행하기 위한 음성 인식 모듈을 포함할 수 있다. 프로세서(150)는 상기 음성 인식 모듈을 통해 앱에서 동작을 실행하도록 하기 위한 사용자 입력을 인식할 수 있다. 예를 들어, 프로세서(150)는 상기 음성 인식 모듈을 통해 앱(141, 143)에서 상기 웨이크 업 명령과 같은 동작을 실행하는 제한된 사용자 (음성) 입력(예: 카메라 앱이 실행 중일 때 촬영 동작을 실행시키는 "찰칵"과 같은 발화 등)을 인식할 수 있다. 프로세서(150)는 상기 지능형 서버(200)를 보조하여 상기 음성 인식 모듈을 통해 사용자 단말(100)내에서 처리할 수 있는 사용자 명령을 인식하여 빠르게 처리할 수 있다. 일 실시 예에 따르면, 사용자 입력을 실행하기 위한 지능형 에이전트(145)의 음성 인식 모듈은 앱 프로세서에서 구현될 수 있다.
일 실시 예에 따르면, 지능형 에이전트(145)의 음성 인식 모듈(웨이크 업 모듈의 음성 인식 모듈을 포함)은 음성을 인식하기 위한 알고리즘을 이용하여 사용자 입력을 인식할 수 있다. 상기 음성을 인식하기 위해 사용되는 알고리즘은, 예를 들어, HMM(hidden markov model) 알고리즘, ANN(artificial neural network) 알고리즘 또는 DTW(dynamic time warping) 알고리즘 중 적어도 하나일 수 있다.
일 실시 예에 따르면, 프로세서(150)는 지능형 에이전트(145)를 실행하여 사용자의 음성 입력을 텍스트 데이터로 변환할 수 있다. 예를 들어, 프로세서(150)는 지능형 에이전트(145)를 통해 사용자의 음성을 지능형 서버(200)로 송신하고, 지능형 서버(200)로부터 사용자의 음성에 대응되는 텍스트 데이터를 수신할 수 있다. 이에 따라, 프로세서(150) 는 상기 변환된 텍스트 데이터를 디스플레이(120)에 표시할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 지능형 에이전트(145)를 실행하여 지능형 서버(200)로부터 패스 룰을 수신할 수 있다. 일 실시 예에 따르면, 프로세서(150)는 지능형 에이전트(145)를 통해 상기 패스 룰을 실행 매니저 모듈(147)로 전달할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 지능형 에이전트(145) 를 실행하여 지능형 서버(200)로부터 수신된 패스 룰에 따른 실행 결과 로그(log)를 지능형 서비스(intelligence service) 모듈(149)로 전달하고, 상기 전달된 실행 결과 로그는 페르소나 모듈(persona manager)(149b)의 사용자의 선호(preference) 정보에 누적되어 관리될 수 있다.
일 실시 예에 따른, 프로세서(150)는 실행 매니저 모듈(147)을 실행하여 지능형 에이전트(145)로부터 패스 룰을 전달받아 앱(141, 143)을 실행시키고, 앱(141, 143)이 상기 패스 룰에 포함된 동작(141b, 143b)을 실행하도록 할 수 있다. 예를 들어, 프로세서(150)는 실행 매니저 모듈(147)을 통해 앱(141, 143)으로 동작(141b, 143b)을 실행하기 위한 명령 정보(예: 패스 룰 정보)를 송신할 수 있고, 상기 앱(141, 143)로부터 동작(141b, 143b)의 완료 정보를 전달 받을 수 있다.
일 실시 예에 따르면, 프로세서(150)는 실행 매니저 모듈(147)을 실행하여 지능형 에이전트(145)와 앱(141, 143)의 사이에서 앱(141, 143)의 동작(141b, 143b)을 실행하기 위한 명령 정보(예: 패스 룰 정보)를 전달할 수 있다. 프로세서(150)는 실행 매니저 모듈(147)을 통해 상기 패스 룰에 따라 실행할 앱(141, 143)을 바인딩(binding)하고, 상기 패스 룰에 포함된 동작(141b, 143b)의 명령 정보(예: 패스 룰 정보)를 앱(141, 143)으로 전달할 수 있다. 예를 들어, 프로세서(150)는 실행 매니저 모듈(147)을 통해 상기 패스 룰에 포함된 동작(141b, 143b)을 순차적으로 앱(141, 143)으로 전달하여, 앱(141, 143)의 동작(141b, 143b)을 상기 패스 룰에 따라 순차적으로 실행시킬 수 있다.
일 실시 예에 따르면, 프로세서(150)는 실행 매니저 모듈(147)을 실행하여 앱(141, 143)의 동작(141b, 143b)의 실행 상태를 관리할 수 있다. 예를 들어, 프로세서(150)는 실행 매니저 모듈(147)을 통해 앱(141, 143)으로부터 상기 동작(141b, 143b)의 실행 상태에 대한 정보를 전달 받을 수 있다. 상기 동작(141b, 143b)의 실행 상태가, 예를 들어, 정지된 상태(partial landing)인 경우(예: 동작(141b, 143b)에 필요한 파라미터가 입력되지 않은 경우), 프로세서(150)는 실행 매니저 모듈(147)을 통해 상기 정지된 상태에 대한 정보를 지능형 에이전트(145)로 전달할 수 있다. 프로세서(150)는 지능형 에이전트(145)를 통해 상기 전달 받은 정보를 이용하여, 사용자에게 필요한 정보(예: 파라미터 정보)의 입력을 요청할 수 있다. 상기 동작(141b, 143b)의 실행 상태가, 다른 예를 들어, 동작 상태인 경우, 프로세서(150)는 지능형 에이전트(145)를 통해 사용자로부터 발화를 수신할 수 있 다. 프로세서(150)는 실행 매니저 모듈(147)를 통해 상기 실행되고 있는 앱(141, 143) 및 앱(141, 143)의 실행 상태에 대한 정보를 지능형 에이전트(145)로 전달할 수 있다. 프로세서(150)는 지능형 에이전트(145) 를 통해 상기 사용자 발화를 지능형 서버(200)로 송신할 수 있다. 프로세서(150)는 지능형 에이전트(145)를 통해 지능형 서버(200)로부터 상기 사용자의 발화의 파라미터 정보를 수신할 수 있 다. 프로세서(150)는 지능형 에이전트(145)를 통해 상기 수신된 파라미터 정보를 실행 매니저 모듈(147)로 전달할 수 있다. 실행 매니저 모듈(147)은 상기 수신한 파라미터 정보를 이용하여 동작(141b, 143b)의 파라미터를 새로운 파라미터로 변경할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 실행 매니저 모듈(147)을 실행하여 패스 룰에 포함된 파라미터 정보를 앱(141, 143)로 전달할 수 있다. 상기 패스 룰에 따라 복수의 앱(141, 143)이 순차적으로 실행되는 경우, 실행 매니저 모듈(147)은 하나의 앱에서 다른 앱으로 패스 룰에 포함된 파라미터 정보를 전달할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 실행 매니저 모듈(147)을 실행하여 복수의 패스 룰을 수신할 수 있다. 프로세서(150)는 실행 매니저 모듈(147)을 통해 사용자의 발화에 기초하여 복수의 패스 룰이 선택될 수 있다. 예를 들어, 프로세서(150)는 실행 매니저 모듈(147)을 통해 사용자의 발화가 일부 동작(141a)을 실행할 일부 앱(141)을 특정하였지만, 나머지 동작(143b)을 실행할 다른 앱(143)을 특정하지 않은 경우, 일부 동작(141a)를 실행할 동일한 앱(141)(예: 갤러리 앱)이 실행되고 나머지 동작(143b)를 실행할 수 있는 서로 다른 앱(143)(예: 메시지 앱, 텔레그램 앱)이 각각 실행되는 서로 다른 복수의 패스 룰을 수신할 수 있다. 프로세서(150)는, 예를 들어, 실행 매니저 모듈(147)을 통해 상기 복수의 패스 룰의 동일한 동작(141b, 143b)(예: 연속된 동일한 동작(141b, 143b))을 실행할 수 있다. 프로세서(150)는 상기 동일한 동작까지 실행한 경우, 실행 매니저 모듈(147)을 통해 상기 복수의 패스 룰에 각각 포함된 서로 다른 앱(141, 143)을 선택할 수 있는 상태 화면을 디스플레이(120)에 표시할 수 있다.
일 실시 예에 따르면, 지능형 서비스 모듈(149)은 컨텍스트 모듈(149a), 페르소나 모듈(149b) 또는 제안 모듈(149c)을 포함할 수 있다.
프로세서(150)는 컨텍스트 모듈(149a)을 실행하여 앱(141, 143)으로부터 앱(141, 143)의 현재 상태를 수집할 수 있다. 예를 들어, 프로세서(150)는 컨텍스트 모듈(149a)을 실행하여 앱(141, 143)의 현재 상태를 나타내는 컨텍스트 정보를 수신하고, 상기 수신된 컨텍스트 정보를 통해 앱(141, 143)의 현재 상태를 수집할 수 있다.
프로세서(150)는 페르소나 모듈(149b)을 실행하여 사용자 단말(100)을 사용하는 사용자의 개인 정보를 관리할 수 있다. 예를 들어, 프로세서(150)는 페르소나 모듈(149b)을 실행하여 사용자 단말(100)의 사용 정보 및 수행 결과를 수집하고, 상기 수집된 사용자 단말(100)의 사용 정보 및 수행 결과를 이용하여 사용자의 개인 정보를 관리할 수 있다.
프로세서(150)는 제안 모듈(149c)을 실행하여 사용자의 의도를 예측하고, 상기 사용자의 의도에 기초하여 사용자에게 명령을 추천해줄 수 있다. 예를 들어, 프로세서(150)는 제안 모듈(149c)을 실행하여 사용자의 현재 상태(예: 시간, 장소, 상황, 앱)에 따라 사용자에게 명령을 추천해줄 수 있다.
도 3은 본 발명의 일 실시 예에 따른 사용자 단말의 지능형 앱을 실행시키는 것을 나타낸 도면이다.
도 3을 참조하면, 사용자 단말(100)이 사용자 입력을 수신하여 지능형 에이전트(145)와 연동된 지능형 앱(예: 음성 인식 앱)을 실행시키는 것을 나타낸 것이다.
일 실시 예에 따르면, 사용자 단말(100)은 하드웨어 키(112)를 통해 음성을 인식하기 위한 지능형 앱을 실행시킬 수 있다. 예를 들어, 사용자 단말(100)은 하드웨어 키(112)를 통해 사용자 입력을 수신한 경우 디스플레이(120)에 지능형 앱의 UI(user interface)(121)를 표시할 수 있다. 사용자는, 예를 들어, 지능형 앱의 UI(121)가 디스플레이(120)에 표시된 상태에서 음성을 입력(111b)하기 위해 지능형 앱의 UI(121)에 음성인식 버튼(121a)를 터치할 수 있다. 사용자는, 다른 예를 들어, 음성을 입력(120b)하기 위해 상기 하드웨어 키(112)를 지속적으로 눌러서 음성을 입력(120b)을 할 수 있다.
일 실시 예에 따르면, 사용자 단말(100)은 마이크(111)를 통해 음성을 인식하기 위한 지능형 앱을 실행시킬 수 있다. 예를 들어, 사용자 단말(100)은 마이크(111)를 통해 지정된 음성(예: 일어나!(wake up!))이 입력(111a)된 경우 디스플레이(120)에 지능형 앱의 UI(121)를 표시할 수 있다.
도 4는 본 발명의 일 실시 예에 따른 지능형 서비스 모듈의 컨텍스트 모듈이 현재 상태를 수집하는 것을 나타낸 도면이다.
도 4를 참조하면, 프로세서(150)는 지능형 에이전트(145)로부터 컨텍스트 요청을 수신(①)하면, 컨텍스트 모듈(149a)을 통해 앱(141, 143)의 현재 상태를 나타내는 컨텍스트 정보를 요청(②)할 수 있다. 일 실시 예에 따르면, 프로세서(150)는 컨텍스트 모듈(149a)을 통해 앱(141, 143)으로부터 상기 컨텍스트 정보를 수신(③)하여 지능형 에이전트(145)로 송신(④)할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 컨텍스트 모듈(149a)을 통해 앱(141, 143)으로부터 복수의 컨텍스트 정보를 전달 받을 수 있다. 상기 컨텍스트 정보는, 예를 들어, 가장 최근 실행된 앱(141, 143)에 대한 정보일 수 있다. 상기 컨텍스트 정보는, 다른 예를 들어, 앱(141, 143) 내의 현재 상태에 대한 정보(예: 갤러리에서 사진을 보고 있는 경우, 해당 사진에 대한 정보)일 수 있다.
일 실시 예에 따르면, 프로세서(150)는 컨텍스트 모듈(149a)을 통해 앱(141, 143)뿐만 아니라, 디바이스 플랫폼(device platform)으로부터 사용자 단말(100)의 현재 상태를 나타내는 컨텍스트 정보를 수신할 수 있다. 상기 컨텍스트 정보는 일반적 컨텍스트 정보, 사용자 컨텍스트 정보 또는 장치 컨텍스트 정보를 포함할 수 있다.
상기 일반적 컨텍스트 정보는 사용자 단말(100)의 일반적인 정보를 포함할 수 있다. 상기 일반적 컨텍스트 정보는 디바이스 플랫폼의 센서 허브 등을 통해 데이터를 전달 받아서 내부 알고리즘을 통해 확인될 수 있다. 예를 들어, 상기 일반적 컨텍스트 정보는 현재 시공간에 대한 정보를 포함할 수 있다. 상기 현재 시공간에 대한 정보는, 예를 들어, 현재 시간 또는 사용자 단말(100)의 현재 위치에 대한 정보를 포함할 수 있다. 상기 현재 시간은 사용자 단말(100) 상에서의 시간을 통해 확인될 수 있고, 상기 현재 위치에 대한 정보는 GPS(global positioning system)를 통해 확인될 수 있다. 다른 예를 들어, 상기 일반적 컨텍스트 정보는 물리적 움직임에 대한 정보를 포함할 수 있다. 상기 물리적 움직임에 대한 정보는, 예를 들어, 걷기, 뛰기, 운전 중 등에 대한 정보를 포함할 수 있다. 상기 물리적 움직임 정보는 모션 센서(motion sensor)를 통해 확인될 수 있다. 상기 운전 중에 대한 정보는 상기 모션 센서를 통해 운행을 확인할 수 있을 뿐만 아니라, 차량 내의 블루투스 연결을 감지하여 탑승 및 주차를 확인할 수 있다. 또 다른 예를 들어, 상기 일반적 컨텍스트 정보는 사용자 활동 정보를 포함할 수 있다. 상기 사용자 활동 정보는, 예를 들어, 출퇴근, 쇼핑, 여행 등에 대한 정보를 포함할 수 있다. 상기 사용자 활동 정보는 사용자 또는 앱이 데이터베이스에 등록한 장소에 대한 정보를 이용하여 확인될 수 있다.
상기 사용자 컨텍스트 정보는 사용자에 대한 정보를 포함할 수 있다. 예를 들어, 상기 사용자 컨텍스트 정보는 사용자의 감정적 상태에 대한 정보를 포함할 수 있다. 상기 감정적 상태에 대한 정보는, 예를 들어, 사용자의 행복, 슬픔, 화남 등에 대한 정보를 포함할 수 있다. 다른 예를 들어, 상기 사용자 컨텍스트 정보는 사용자의 현재 상태에 대한 정보를 포함할 수 있다. 상기 현재 상태에 대한 정보는, 예를 들어, 관심, 의도 등(예: 쇼핑)에 대한 정보를 포함할 수 있다.
상기 장치 컨텍스트 정보는 사용자 단말(100)의 상태에 대한 정보를 포함할 수 있다. 예를 들어, 상기 장치 컨텍스트 정보는 실행 매니저 모듈(147)이 실행한 패스 룰에 대한 정보를 포함할 수 있다. 다른 예를 들어, 상기 디바이스 정보는 배터리에 대한 정보를 포함할 수 있다. 상기 배터리에 대한 정보는, 예를 들어, 상기 배터리의 충전 및 방전 상태를 통해 확인될 수 있다. 또 다른 예를 들어, 상기 디바이스 정보는 연결된 장치 및 네트워크에 대한 정보를 포함할 수 있다. 상기 연결된 장치에 대한 정보는, 예를 들어, 상기 장치가 연결된 통신 인터페이스를 통해 확인될 수 있다.
도 5는 본 발명의 일 실시 예에 따른 지능형 서비스 모듈의 제안 모듈을 나타낸 블록도이다.
도 5를 참조하면, 제안 모듈(149c)은 힌트 제공 모듈(149c_1), 컨텍스트 힌트 생성 모듈(149c_2), 조건 체킹 모듈(149c_3), 조건 모델 모듈(149c_4), 재사용 힌트 생성 모듈(149c_5) 또는 소개 힌트 생성 모듈(149c_6)을 포함할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 힌트 제공 모듈(149c_1)을 실행하여 사용자에게 힌트(hint)를 제공할 수 있다. 예를 들어, 프로세서(150)는 힌트 제공 모듈(149c_1)을 통해 컨텍스트 힌트 생성 모듈(149c_2), 재사용 힌트 생성 모듈(149c_5) 또는 소개 힌트 생성 모듈(149c_6)로부터 생성된 힌트를 전달 받아 사용자에게 힌트를 제공할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 조건 체킹 모듈(149c_3) 또는 조건 모델 모듈(149c_4)을 실행하여 현재 상태에 따라 추천될 수 있는 힌트를 생성할 수 있다. 프로세서(150)는 조건 체킹 모듈(149c_3)을 실행하여 현재 상태에 대응되는 정보를 전달 받을 수 있고, 조건 모델 모듈(149c_4)을 실행하여 상기 전달 받은 정보를 이용하여 조건 모델(condition model)을 설정할 수 있다. 예를 들어, 프로세서(150)는 조건 모델 모듈은(149c_4)을 실행하여 사용자에게 힌트를 제공하는 시점의 시간, 위치, 상황 사용중인 앱 등을 파악하여 해당 조건에서 사용할 가능성이 높은 힌트를 우선 순위가 높은 순으로 사용자에게 제공할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 재사용 힌트 생성 모듈(149c_5)을 실행하여 사용 빈도에 따라 추천될 수 있는 힌트를 생성할 수 있다. 예를 들어, 프로세서(150)는 재사용 힌트 생성 모듈(149c_5)을 실행하여 사용자의 사용 패턴에 기초한 힌트를 생성할 수 있다.
일 실시 예에 따르면, 소개 힌트 생성 모듈(149c_6)은 사용자에게 신규 기능 또는 다른 사용자가 많이 쓰는 기능을 소개하는 힌트를 생성할 수 있다. 예를 들어, 상기 신규 기능을 소개하는 힌트에는 지능형 에이전트(145)에 대한 소개(예: 작동 방법)를 포함할 수 있다.
다른 실시 예에 따르면, 제안 모듈(149c)의 컨텍스트 힌트 생성 모듈(149c_2), 조건 체킹 모듈(149c_3), 조건 모델 모듈(149c_4), 재사용 힌트 생성 모듈(149c_5) 또는 소개 힌트 생성 모듈(149c_6)은 개인화 정보 서버(300)에 포함될 수 있다. 예를 들어, 프로세서(150)는 제안 모듈(149c)의 힌트 제공 모듈(149c_1)을 통해 사용자 개인화 정보 서버(300)의 컨텍스트 힌트 생성 모듈(149c_2), 재사용 힌트 생성 모듈(149c_5) 또는 소개 힌트 생성 모듈(149c_6)로부터 힌트를 수신하여 사용자에게 상기 수신된 힌트를 제공할 수 있다.
일 실시 예에 따르면, 사용자 단말(100)은 다음의 일련의 프로세스에 따라 힌트를 제공할 수 있다. 예를 들어, 프로세서(150)는 지능형 에이전트(145)로부터 힌트 제공 요청을 수신하면, 힌트 제공 모듈(149c_1)을 통해 컨텍스트 힌트 생성 모듈(149c_2)로 힌트 생성 요청을 전달할 수 있다. 프로세서(150)는 상기 힌트 생성 요청을 전달 받으면, 조건 체킹 모듈(149c_3)을 통해 컨텍스트 모듈(149a) 및 페르소나 모듈(149b)로부터 현재 상태에 대응되는 정보를 전달 받을 수 있다. 프로세서(150)는 조건 체킹 모듈(149c_3)을 통해 상기 전달 받은 정보를 조건 모델 모듈(149c_4)로 전달하고, 조건 모델 모듈(149c_4)을 통해 상기 정보를 이용하여 사용자에게 제공되는 힌트 중 상기 조건에 사용 가능성이 높은 순서로 힌트에 대해 우선순위를 부여 할 수 있다. 프로세서(150)는 컨텍스트 힌트 생성 모듈(149c_2)을 통해 상기 조건을 확인(⑥)하고, 상기 현재 상태에 대응되는 힌트를 생성할 수 있다. 프로세서(150)는 컨텍스트 힌트 생성 모듈(149c_2)을 통해 상기 생성된 힌트를 힌트 제공 모듈(149c_1)로 전달할 수 있다. 프로세서(150)는 힌트 제공 모듈(149c_1)을 통해 지정된 규칙에 따라 상기 힌트를 정렬하고, 상기 힌트를 지능형 에이전트(145)로 전달할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 힌트 제공 모듈(149c_1)을 통해 복수의 컨텍스트 힌트를 생성할 수 있고, 지정된 규칙에 따라 복수의 컨텍스트 힌트에 우선 순위를 지정할 수 있다. 일 실시 예에 따르면, 프로세서(150)는 힌트 제공 모듈(149c_1)을 통해 상기 복수의 컨텍스트 힌트 중에서 우선 순위가 높은 것을 사용자에게 먼저 제공할 수 있다.
일 실시 예에 따르면, 사용자 단말(100)은 사용 빈도에 따른 힌트를 제안할 수 있다. 예를 들어, 프로세서(150)는 지능형 에이전트(145)로부터 힌트 제공 요청을 전달 받으면, 힌트 제공 모듈(149c_1)을 통해 재사용 힌트 생성 모듈(149c_5)로 힌트 생성 요청을 전달할 수 있다. 프로세서(150)는 상기 힌트 생성 요청을 전달 받으면, 재사용 힌트 생성 모듈(149c_5)를 통해 페르소나 모듈(149b)로부터 사용자 정보를 전달 받을 수 있다. 예를 들어, 프로세서(150)는 재사용 힌트 생성 모듈(149c_5)을 통해 페르소나 모듈(149b)의 사용자의 프리퍼런스 정보에 포함된 패스 룰, 패스 룰에 포함된 파라미터, 앱의 실행 빈도, 앱이 사용된 시공간 정보를 전달 받을 수 있다. 프로세서(150)는 재사용 힌트 생성 모듈(149c_5)을 통해 상기 전달 받은 사용자 정보에 대응되는 힌트를 생성할 수 있다. 프로세서(150)는 재사용 힌트 생성 모듈(149c_5)을 통해 상기 생성된 힌트를 힌트 제공 모듈(149c_1)로 전달할 수 있다. 프로세서(150)는 힌트 제공 모듈(149c_1)을 통해 상기 힌트를 정렬하고, 상기 힌트를 지능형 에이전트(145)로 전달할 수 있다.
일 실시 예에 따르면, 사용자 단말(100)은 새로운 기능에 대한 힌트를 제안할 수 있다. 예를 들어, 프로세서(150)는 지능형 에이전트(145)로부터 힌트 제공 요청을 전달 받으면, 힌트 제공 모듈(149c_1)을 통해 소개 힌트 생성 모듈(149c_6)로 힌트 생성 요청을 전달할 수 있다. 프로세서(150)는 소개 힌트 생성 모듈(149c_6)을 통해 제안 서버(400)로부터 소개 힌트 제공 요청을 전달하여 제안 서버(400)로부터 소개될 기능에 대한 정보를 수신할 수 있다. 제안 서버(400)는, 예를 들어, 소개될 기능에 대한 정보를 저장할 수 있고, 상기 소개될 기능에 대한 힌트 리스트(hint list)는 서비스 운영자에 의해 업데이트될 수 있다. 프로세서(150)는 소개 힌트 생성 모듈(149c_6)을 통해 상기 생성된 힌트를 힌트 제공 모듈(149c_1)로 전달할 수 있다. 프로세서(150)는 힌트 제공 모듈(149c_1)을 통해 상기 힌트를 정렬하고, 상기 힌트를 지능형 에이전트(145)로 전송(⑥)할 수 있다.
이에 따라, 프로세서(150)는 제안 모듈(149c)을 통해 컨텍스트 힌트 생성 모듈(149c_2), 재사용 힌트 생성 모듈(149c_5) 또는 소개 힌트 생성 모듈(149c_6)에서 생성된 힌트를 사용자에게 제공할 수 있다. 예를 들어, 프로세서(150)는 제안 모듈(149c)을 통해 상기 생성된 힌트를 지능형 에이전트(145)을 동작시키는 앱에 표시할 수 있고, 상기 앱을 통해 사용자로부터 상기 힌트를 선택하는 입력을 수신할 수 있다.
도 6은 본 발명의 일 실시 예에 따른 통합 지능화 시스템의 지능형 서버를 나타낸 블록도이다.
도 6을 참조하면, 지능형 서버(200)는 자동 음성 인식(automatic speech recognition)(ASR) 모듈(210), 자연어 이해(natural language understanding)(NLU) 모듈(220), 패스 플래너(path planner) 모듈(230), 대화 매니저(dialogue manager)(DM) 모듈(240), 자연어 생성(natural language generator)(NLG) 모듈(250) 또는 텍스트 음성 변환(text to speech)(TTS) 모듈(260)을 포함할 수 있다. 일 실시 예에 따르면, 지능형 서버(200)는 통신 회로, 메모리 및 프로세서를 포함할 수 있다. 상기 프로세서는 상기 메모리에 저장된 명령어를 실행하여 자동 음성 인식 모듈(210), 자연어 이해 모듈(220), 패스 플래너 모듈(230), 대화 매니저 모듈(240), 자연어 생성 모듈(250) 및 텍스트 음성 변환 모듈(260)을 구동시킬 수 있다. 지능형 서버(200)는 상기 통신 회로를 통해 외부 전자 장치(예: 사용자 단말(100))와 데이터(또는, 정보)를 송수신할 수 있다.
지능형 서버(200)의 자연어 이해 모듈(220) 또는 패스 플래너 모듈(230)은 패스 룰(path rule)을 생성할 수 있다.
일 실시 예에 따르면, 자동 음성 인식(automatic speech recognition)(ASR) 모듈(210)은 사용자 단말(100)로부터 수신된 사용자 입력을 텍스트 데이터로 변환할 수 있다.
일 실시 예에 따르면, 자동 음성 인식 모듈(210)은 사용자 단말(100)로부터 수신된 사용자 입력을 텍스트 데이터로 변환할 수 있다. 예를 들어, 자동 음성 인식 모듈(210)은 발화 인식 모듈을 포함할 수 있다. 상기 발화 인식 모듈은 음향(acoustic) 모델 및 언어(language) 모델을 포함할 수 있다. 예를 들어, 상기 음향 모델은 발성에 관련된 정보를 포함할 수 있고, 상기 언어 모델은 단위 음소 정보 및 단위 음소 정보의 조합에 대한 정보를 포함할 수 있다. 상기 발화 인식 모듈은 발성에 관련된 정보 및 단위 음소 정보에 대한 정보를 이용하여 사용자 발화를 텍스트 데이터로 변환할 수 있다. 상기 음향 모델 및 언어 모델에 대한 정보는, 예를 들어, 자동 음성 인식 데이터베이스(automatic speech recognition database)(ASR DB)(211)에 저장될 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 문법적 분석(syntactic analyze) 또는 의미적 분석(semantic analyze)을 수행하여 사용자 의도를 파악할 수 있다. 상기 문법적 분석은 사용자 입력을 문법적 단위(예: 단어, 구, 형태소 등)로 나누고, 상기 나누어진 단위가 어떤 문법적인 요소를 갖는지 파악할 수 있다. 상기 의미적 분석은 의미(semantic) 매칭, 룰(rule) 매칭, 포뮬러(formula) 매칭 등을 이용하여 수행할 수 있다. 이에 따라, 자연어 이해 모듈(220)은 사용자 입력이 어느 도메인(domain), 의도(intent) 또는 상기 의도를 표현하는데 필요한 파라미터(parameter)(또는, 슬롯(slot))를 얻을 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 도메인(domain), 의도(intend) 및 상기 의도를 파악하는데 필요한 파라미터(parameter)(또는, 슬롯(slot))로 나누어진 매칭 규칙을 이용하여 사용자의 의도 및 파라미터를 결정할 수 있다. 예를 들어, 상기 하나의 도메인(예: 알람)은 복수의 의도(예: 알람 설정, 알람 해제 등)를 포함할 수 있고, 하나의 의도는 복수의 파라미터(예: 시간, 반복 횟수, 알람음 등)을 포함할 수 있다. 복수의 룰은, 예를 들어, 하나 이상의 필수 요소 파라미터를 포함할 수 있다. 상기 매칭 규칙은 자연어 인식 데이터베이스(natural language understanding database)(NLU DB)(221)에 저장될 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 형태소, 구 등의 언어적 특징(예: 문법적 요소)을 이용하여 사용자 입력으로부터 추출된 단어의 의미를 파악하고, 상기 파악된 단어의 의미를 도메인 및 의도에 매칭시켜 사용자의 의도를 결정할 수 있다. 예를 들어, 자연어 이해 모듈(220)은 각각의 도메인 및 의도에 사용자 입력에서 추출된 단어가 얼마나 포함되어 있는 지를 계산하여 사용자 의도를 결정할 수 있다. 일 실시 예에 따르면, 자연어 이해 모듈(220)은 상기 의도를 파악하는데 기초가 된 단어를 이용하여 사용자 입력의 파라미터를 결정할 수 있다. 일 실시 예에 따르면, 자연어 이해 모듈(220)은 사용자 입력의 의도를 파악하기 위한 언어적 특징이 저장된 자연어 인식 데이터베이스(221)를 이용하여 사용자의 의도를 결정할 수 있다. 다른 실시 예에 따르면, 자연어 이해 모듈(220)은 개인화 언어 모델(personal language model)(PLM)을 이용하여 사용자의 의도를 결정할 수 있다. 예를 들어, 자연어 이해 모듈(220)은 개인화된 정보(예: 연락처 리스트, 음악 리스트)를 이용하여 사용자의 의도를 결정할 수 있다. 상기 개인화 언어 모델은, 예를 들어, 자연어 인식 데이터베이스(221)에 저장될 수 있다. 일 실시 예에 따르면, 자연어 이해 모듈(220)뿐만 아니라 자동 음성 인식 모듈(210)도 자연어 인식 데이터베이스(221)에 저장된 개인화 언어 모델을 참고하여 사용자의 음성을 인식할 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 사용자 입력의 의도 및 파라미터에 기초하여 패스 룰을 생성할 수 있다. 예를 들어, 자연어 이해 모듈(220)은 사용자 입력의 의도에 기초하여 실행될 앱을 선택하고, 상기 선택된 앱에서 수행될 동작을 결정할 수 있다. 상자연어 이해 모듈(220)은 상기 결정된 동작에 대응되는 파라미터를 결정하여 패스 룰을 생성할 수 있다. 일 실시 예에 따르면, 자연어 이해 모듈(220)에 의해 생성된 패스 룰은 실행될 앱, 상기 앱에서 실행될 동작(예: 적어도 하나 이상의 상태(state)) 및 상기 동작을 실행하는데 필요한 파라미터에 대한 정보를 포함할 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 사용자 입력의 의도 및 파라미터를 기반으로 하나의 패스 룰, 또는 복수의 패스 룰을 생성할 수 있다. 예를 들어, 자연어 이해 모듈(220)은 패스 플래너 모듈(230)로부터 사용자 단말(100)에 대응되는 패스 룰 셋을 수신하고, 사용자 입력의 의도 및 파라미터를 상기 수신된 패스 룰 셋에 매핑하여 패스 룰을 결정할 수 있다.
다른 실시 예에 따르면, 자연어 이해 모듈(220)은 사용자 입력의 의도 및 파라미터에 기초하여 실행될 앱, 상기 앱에서 실행될 동작 및 상기 동작을 실행하는데 필요한 파라미터를 결정하여 하나의 패스 룰, 또는 복수의 패스 룰을 생성할 수 있다. 예를 들어, 자연어 이해 모듈(220)은 사용자 단말(100)의 정보를 이용하여 상기 실행될 앱 및 상기 앱에서 실행될 동작을 사용자 입력의 의도에 따라 온톨로지(ontology) 또는 그래프 모델(graph model) 형태로 배열하여 패스 룰을 생성할 수 있다. 상기 생성된 패스 룰은, 예를 들어, 패스 플래너 모듈(230)를 통해 패스 룰 데이터베이스(path rule database)(PR DB)(231)에 저장될 수 있다. 상기 생성된 패스 룰은 데이터베이스(231)의 패스 룰 셋에 추가될 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 생성된 복수의 패스 룰 중 적어도 하나의 패스 룰을 선택할 수 있다. 예를 들어, 자연어 이해 모듈(220)은 상기 복수의 패스 룰 최적의 패스 룰을 선택할 수 있다. 다른 예를 들어, 자연어 이해 모듈(220)은 사용자 발화에 기초하여 일부 동작만이 특정된 경우 복수의 패스 룰을 선택할 수 있다. 자연어 이해 모듈(220)은 사용자의 추가 입력에 의해 상기 복수의 패스 룰 중 하나의 패스 룰을 결정할 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 사용자 입력에 대한 요청으로 패스 룰을 사용자 단말(100)로 송신할 수 있다. 예를 들어, 자연어 이해 모듈(220)은 사용자 입력에 대응되는 하나의 패스 룰을 사용자 단말(100)로 송신할 수 있다. 다른 예를 들어, 자연어 이해 모듈(220)은 사용자 입력에 대응되는 복수의 패스 룰을 사용자 단말(100)로 송신할 수 있다. 상기 복수의 패스 룰은, 예를 들어, 사용자 발화에 기초하여 일부 동작만이 특정된 경우 자연어 이해 모듈(220)에 의해 생성될 수 있다.
일 실시 예에 따르면, 패스 플래너 모듈(230)은 복수의 패스 룰 중 적어도 하나의 패스 룰을 선택할 수 있다.
일 실시 예에 따르면, 패스 플래너 모듈(230)은 자연어 이해 모듈(220)로 복수의 패스 룰을 포함하는 패스 룰 셋을 전달할 수 있다. 상기 패스 룰 셋의 복수의 패스 룰은 패스 플래너 모듈(230)에 연결된 패스 룰 데이터베이스(231)에 테이블 형태로 저장될 수 있다. 예를 들어, 패스 플래너 모듈(230)은 지능형 에이전트(145)로부터 수신된 사용자 단말(100)의 정보(예: OS 정보, 앱 정보)에 대응되는 패스 룰 셋을 자연어 이해 모듈(220)로 전달할 수 있다. 상기 패스 룰 데이터베이스(231)에 저장된 테이블은, 예를 들어, 도메인 또는 도메인의 버전 별로 저장될 수 있다.
일 실시 예에 따르면, 패스 플래너 모듈(230)은 패스 룰 셋에서 하나의 패스 룰, 또는 복수의 패스 룰을 선택하여 자연어 이해 모듈(220)로 전달할 수 있다. 예를 들어, 패스 플래너 모듈(230)은 사용자의 의도 및 파라미터를 사용자 단말(100) 에 대응되는 패스 룰 셋에 매칭하여 하나의 패스 룰, 또는 복수의 패스 룰을 선택하여 자연어 이해 모듈(220)로 전달할 수 있다.
일 실시 예에 따르면, 패스 플래너 모듈(230)은 사용자 의도 및 파라미터를 이용하여 하나의 패스 룰, 또는 복수의 패스 룰을 생성할 수 있다. 예를 들어, 패스 플래너 모듈(230)은 사용자 의도 및 파라미터에 기초하여 실행될 앱 및 상기 앱에서 실행될 동작을 결정하여 하나의 패스 룰, 또는 복수의 패스 룰을 생성할 수 있다. 일 실시 예에 따르면, 패스 플래너 모듈(230)은 상기 생성된 패스 룰을 패스 룰 데이터베이스(231)에 저장할 수 있다.
일 실시 예에 따르면, 패스 플래너 모듈(230)은 자연어 이해 모듈(220)에서 생성된 패스 룰을 패스 룰 데이터베이스(231)에 저장할 수 있다. 상기 생성된 패스 룰은 패스 룰 데이터베이스(231)에 저장된 패스 룰 셋에 추가될 수 있다.
일 실시 예에 따르면, 패스 룰 데이터베이스(231)에 저장된 테이블에는 복수의 패스 룰 또는 복수의 패스 룰 셋을 포함할 수 있다. 복수의 패스 룰 또는 복수의 패스 룰 셋은 각 패스 룰을 수행하는 장치의 종류, 버전, 타입, 또는 특성을 반영할 수 있다.
일 실시 예에 따르면, 대화 매니저 모듈(240)은 자연어 이해 모듈(220)에 의해 파악된 사용자의 의도가 명확한지 여부를 판단할 수 있다. 예를 들어, 대화 매니저 모듈(240)은 파라미터의 정보가 충분하지 여부에 기초하여 사용자의 의도가 명확한지 여부를 판단할 수 있다. 대화 매니저 모듈(240)은 자연어 이해 모듈(220)에서 파악된 파라미터가 태스크를 수행하는데 충분한지 여부를 판단할 수 있다. 일 실시 예에 따르면, 대화 매니저 모듈(240)은 사용자의 의도가 명확하지 않은 경우 사용자에게 필요한 정보를 요청하는 피드백을 수행할 수 있다. 예를 들어, 대화 매니저 모듈(240)은 사용자의 의도를 파악하기 위한 파라미터에 대한 정보를 요청하는 피드백을 수행할 수 있다.
일 실시 예에 따르면, 대화 매니저 모듈(240)은 컨텐츠 제공(content provider) 모듈을 포함할 수 있다. 상기 컨텐츠 제공 모듈은 자연어 이해 모듈(220)에서 파악된 의도 및 파라미터에 기초하여 동작을 수행할 수 있는 경우, 사용자 입력에 대응되는 태스크를 수행한 결과를 생성할 수 있다. 일 실시 예에 따르면, 대화 매니저 모듈(240)은 사용자 입력에 대한 응답으로 상기 컨텐츠 제공 모듈에서 생성된 상기 결과를 사용자 단말(100)로 송신할 수 있다.
일 실시 예에 따르면, 자연어 생성 모듈(NLG)(250)은 지정된 정보를 텍스트 형태로 변경할 수 있다. 상기 텍스트 형태로 변경된 정보는 자연어 발화의 형태일 수 있다. 상기 지정된 정보는, 예를 들어, 추가 입력에 대한 정보, 사용자 입력에 대응되는 동작의 완료를 안내하는 정보 또는 사용자의 추가 입력을 안내하는 정보(예: 사용자 입력에 대한 피드백 정보)일 수 있다. 상기 텍스트 형태로 변경된 정보는 사용자 단말(100)로 송신되어 디스플레이(120)에 표시되거나, 텍스트 음성 변환 모듈(260)로 송신되어 음성 형태로 변경될 수 있다.
일 실시 예에 따르면, 텍스트 음성 변환 모듈(260)은 텍스트 형태의 정보를 음성 형태의 정보로 변경할 수 있다. 텍스트 음성 변환 모듈(260)은 자연어 생성 모듈(250)로부터 텍스트 형태의 정보를 수신하고, 상기 텍스트 형태의 정보를 음성 형태의 정보로 변경하여 사용자 단말(100)로 송신할 수 있다. 사용자 단말(100)은 상기 음성 형태의 정보를 스피커(130)로 출력할 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220), 패스 플래너 모듈(230) 및 대화 매니저 모듈(240)은 하나의 모듈로 구현될 수 있다. 예를 들어, 자연어 이해 모듈(220), 패스 플래너 모듈(230) 및 대화 매니저 모듈(240)은 하나의 모듈로 구현되어 사용자의 의도 및 파라미터를 결정하고, 상기 결정된 사용자의 의도 및 파라미터에 대응되는 응답(예: 패스 룰)을 생성할 수 있다. 이에 따라, 생성된 응답은 사용자 단말(100)로 송신될 수 있다.
도 7은 본 발명의 일 실시 예에 따른 패스 플래너 모듈(path planner module)의 패스 룰(path rule)을 생성하는 방법을 나타낸 도면이다.
도 7은 참조하면, 일 실시 예에 따른, 자연어 이해 모듈(220)은 앱의 기능을 어느 하나 동작(예: 상태 A 내지 상태 F)으로 구분하여 패스 룰 데이터베이스(231)에 저장할 수 있다. 예를 들어, 자연어 이해 모듈(220)은 어느 하나의 동작(예: 상태)으로 구분된 복수의 패스 룰(A-B1-C1, A-B1-C2, A-B1-C3-D-F, A-B1-C3-D-E-F)을 포함하는 패스 룰 셋을 패스 룰 데이터베이스(231)에 저장할 수 있다.
일 실시 예에 따르면, 패스 플래너 모듈(230)의 패스 룰 데이터베이스(231)는 앱의 기능을 수행하기 위한 패스 룰 셋을 저장할 수 있다. 상기 패스 룰 셋은 복수의 동작(예: 상태들의 시퀀스)을 포함하는 복수의 패스 룰을 포함할 수 있다. 상기 복수의 패스 룰은 복수의 동작 각각에 입력되는 파라미터에 따라 실행되는 동작이 순차적으로 배열될 수 있다. 일 실시 예에 따르면, 상기 복수의 패스 룰은 온톨로지(ontology) 또는 그래프 모델(graph model) 형태로 구성되어 패스 룰 데이터베이스(231)에 저장될 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 사용자 입력의 의도 및 파라미터에 대응되는 상기 복수의 패스 룰(A-B1-C1, A-B1-C2, A-B1-C3-D-F, A-B1-C3-D-E-F) 중에 최적의 패스 룰(A-B1-C3-D-F)을 선택할 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 사용자 입력에 완벽히 매칭되는 패스 룰이 없는 경우 사용자 단말(100)에 복수의 룰을 전달할 수 있다. 예를 들어, 자연어 이해 모듈(220)은 사용자 입력에 부분적으로 대응된 패스 룰(예: A-B1)을 선택할 수 있다. 자연어 이해 모듈(220)은 사용자 입력에 부분적으로 대응된 패스 룰(예: A-B1)을 포함하는 하나 이상의 패스 룰(예: A-B1-C1, A-B1-C2, A-B1-C3-D-F, A-B1-C3-D-E-F)을 선택하여 사용자 단말(100)에 전달할 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 사용자 단말(100)의 추가 입력에 기초하여 복수의 패스 룰 중 하나를 선택하고, 상기 선택된 하나의 패스 룰을 사용자 단말(100)에 전달 할 수 있다. 예를 들어, 자연어 이해 모듈(220)은 사용자 단말(100)에서 추가로 입력된 사용자 입력(예: C3를 선택하는 입력)에 따라 복수의 패스 룰(예: A-B1-C1, A-B1-C2, A-B1-C3-D-F, A-B1-C3-D-E-F) 중 하나의 패스 룰(예: A-B1-C3-D-F)을 선택하여 사용자 단말(100)에 송신할 수 있다.
또 다른 실시 예에 따르면, 자연어 이해 모듈(220)은 자연어 이해 모듈(220)을 통해 사용자 단말(100)에 추가로 입력된 사용자 입력(예: C3를 선택하는 입력)에 대응되는 사용자의 의도 및 파라미터를 결정할 수 있고, 상기 결정된 사용자의 의도 또는 파라미터를 사용자 단말(100)로 송신할 수 있다. 사용자 단말(100)은 상기 송신된 의도 또는 상기 파라미터에 기초하여, 복수의 패스 룰(예: A-B1-C1, A-B1-C2, A-B1-C3-D-F, A-B1-C3-D-E-F) 중 하나의 패스 룰(예: A-B1-C3-D-F)을 선택할 수 있다.
이에 따라, 사용자 단말(100)은 상기 선택된 하나의 패스 룰에 의해 앱(141, 143)의 동작을 완료시킬 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 정보가 부족한 사용자 입력이 지능형 서버(200)에 수신된 경우, 상기 수신한 사용자 입력에 부분적으로 대응되는 패스 룰을 생성할 수 있다. 예를 들어, 자연어 이해 모듈(220)은 상기 부분적으로 대응된 패스 룰을 지능형 에이전트(145)로 송신할 수 있다. 프로세서(150)는 지능형 에이전트(145)를 실행하여 상기 패스 룰을 수신하고, 실행 매니저 모듈(147)로 상기 부분적으로 대응된 패스 룰을 전달할 수 있다. 프로세서(150)는 실행 매니저 모듈(147)를 통해 상기 패스 룰에 따라 제1 앱(141)을 실행시킬 수 있다. 프로세서(150)는 실행 매니저 모듈(147)을 통해 제1 앱(141)을 실행하면서 부족한 파라미터에 대한 정보를 지능형 에이전트(145)로 송신할 수 있다. 프로세서(150)는 지능형 에이전트(145)를 통해 상기 부족한 파라미터에 대한 정보를 이용하여 사용자에게 추가 입력을 요청할 수 있다. 프로세서(150)는 지능형 에이전트(145)를 통해 사용자에 의해 추가 입력이 수신되면 사용자 입력을 지능형 서버(200)로 송신하여 처리할 수 있다. 자연어 이해 모듈(220)은 상기 추가로 입력된 사용자 입력의 의도 및 파라미터 정보에 기초하여 추가된 패스 룰을 생성하여 지능형 에이전트(145)로 송신할 수 있다. 프로세서(150)는 지능형 에이전트(145)를 통해 실행 매니저 모듈(147)로 상기 패스 룰을 송신하여 제2 앱(143)을 실행할 수 있다.
일 실시 예에 따르면, 자연어 이해 모듈(220)은 일부 정보가 누락된 사용자 입력이 지능형 서버(200)에 수신된 경우, 개인화 정보 서버(300)로 사용자 정보 요청을 송신할 수 있다. 개인화 정보 서버(300)는 페르소나 데이터베이스에 저장된 사용자 입력을 입력한 사용자의 정보를 자연어 이해 모듈(220)로 송신할 수 있다. 자연어 이해 모듈(220)은 상기 사용자 정보를 이용하여 일부 동작이 누락된 사용자 입력에 대응되는 패스 룰을 선택할 수 있다. 이에 따라, 자연어 이해 모듈(220)은 일부 정보가 누락된 사용자 입력이 지능형 서버(200)에 수신되더라도, 누락된 정보를 요청하여 추가 입력을 받거나 사용자 정보를 이용하여 상기 사용자 입력에 대응되는 패스 룰을 결정할 수 있다.
하기에 첨부된 표 1은 일 실시 예에 따른 사용자가 요청한 태스크와 관련한 패스 룰의 예시적 형태를 나타낼 수 있다.
Figure PCTKR2018012243-appb-T000001
표 1을 참조하면, 사용자 발화(예: "사진 공유해줘")에 따라 지능형 서버(도 1의 지능형 서버(200))에서 생성 또는 선택되는 패스 룰은 적어도 하나의 상태(state)(25, 26, 27, 28, 29 또는 30)를 포함할 수 있다. 예를 들어, 상기 적어도 하나의 상태 (예: 단말의 어느 한 동작 상태)는 사진 어플리케이션 실행(PicturesView)(25), 사진 검색 기능 실행(SearchView)(26), 검색 결과 표시 화면 출력(SearchViewResult)(27), 사진이 미(non)선택된 검색 결과 표시 화면 출력(SearchEmptySelectedView)(28), 적어도 하나의 사진이 선택된 검색 결과 표시 화면 출력(SearchSelectedView)(29) 또는 공유 어플리케이션 선택 화면 출력(CrossShare)(30) 중 적어도 하나에 해당될 수 있다.
일 실시 예에서, 상기 패스 룰의 파라미터 정보는 적어도 하나의 상태(state)에 대응될 수 있다. 예를 들어, 상기 적어도 하나의 사진이 선택된 검색 결과 표시 화면 출력(29) 상태에 포함될 수 있다.
상기 상태(25, 26, 27, 28, 29)들의 시퀀스를 포함한 패스 룰의 수행 결과 사용자가 요청한 태스크 (예: "사진 공유해줘!")가 수행될 수 있다.
도 8은 본 발명의 일 실시 예에 따른 지능형 서비스 모듈의 페르소나 모듈(persona module)이 사용자의 정보를 관리하는 것을 나타낸 도면이다.
도 8을 참조하면, 프로세서(150)는 페르소나 모듈(149b)을 통해 앱(141, 143), 실행 매니저 모듈(147) 또는 컨텍스트 모듈(149a)로부터 사용자 단말(100)의 정보를 전달 받을 수 있다. 프로세서(150)는 앱(141, 143) 및 실행 매니저 모듈(147)을 통해 앱의 동작(141b, 143b)을 실행한 결과 정보를 동작 로그 데이터베이스에 저장할 수 있다. 프로세서(150)는 컨텍스트 모듈(149a)을 통해 사용자 단말(100)의 현재 상태에 대한 정보를 컨텍스트 데이터베이스에 저장할 수 있다. 프로세서(150)는 페르소나 모듈(149b)을 통해 상기 동작 로그 데이터베이스 또는 상기 컨텍스트 데이터베이스로부터 상기 저장된 정보를 전달 받을 수 있다. 상기 동작 로그 데이터베이스 및 상기 컨텍스트 데이터베이스에 저장된 데이터는, 예를 들어, 분석 엔진(analysis engine)에 의해 분석되어 페르소나 모듈(149b)로 전달될 수 있다.
일 실시 예에 따르면, 프로세서(150)는 페르소나 모듈(149b)을 통해 앱(141, 143), 실행 매니저 모듈(147) 또는 컨텍스트 모듈(149a)로부터 수신한 정보를 제안 모듈(149c)로 송신할 수 있다. 예를 들어, 프로세서(150)는 페르소나 모듈(149b)을 통해 상기 동작 로그 데이터베이스 또는 상기 컨텍스트 데이터베이스에 저장된 데이터를 제안 모듈(149c)로 전달할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 페르소나 모듈(149b)을 통해 앱(141, 143), 실행 매니저 모듈(147) 또는 컨텍스트 모듈(149a)로부터 전달 받은 정보를 개인화 정보 서버(300)로 송신할 수 있다. 예를 들어, 프로세서(150)는 페르소나 모듈(149b)을 통해 상기 동작 로그 데이터베이스 또는 상기 컨텍스트 데이터베이스에 누적되어 저장된 데이터를 주기적으로 개인화 정보 서버(300)에 송신할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 페르소나 모듈(149b)을 통해 상기 동작 로그 데이터베이스 또는 상기 컨텍스트 데이터베이스에 저장된 데이터를 제안 모듈(149c)로 전달할 수 있다. 페르소나 모듈(149b)통해 생성된 사용자 정보는 페르소나 데이터베이스에 저장될 수 있다. 페르소나 모듈(149b)는 상기 페르소나 데이터베이스에 저장된 사용자 정보를 주기적으로 개인화 정보 서버(300)로 송신할 수 있다. 일 실시 예에 따르면, 페르소나 모듈(149b)을 통해 개인화 정보 서버(300)로 송신된 정보는 페르소나 데이터베이스에 저장될 수 있다. 개인화 정보 서버(300)는 상기 페르소나 데이터베이스에 저장된 정보를 이용하여 지능형 서버(200)의 패스 룰 생성에 필요한 사용자 정보를 추론할 수 있다.
일 실시 예에 따르면, 페르소나 모듈(149b)을 통해 송신된 정보를 이용하여 추론된 사용자 정보는 프로파일(profile) 정보 또는 프리퍼런스(preference) 정보를 포함할 수 있다. 상기 프로파일 정보 또는 프리퍼런스 정보는 사용자의 계정(account) 및 누적된 정보를 통해 추론될 수 있다.
상기 프로파일 정보는 사용자의 신상 정보를 포함할 수 있다. 예를 들어, 상기 프로파일 정보는 사용자의 인구 통계 정보를 포함할 수 있다. 상기 인구 통계 정보는, 예를 들어, 사용자의 성(gender), 나이 등을 포함할 수 있다. 다른 예를 들어, 상기 프로파일 정보는 라이프 이벤트(life event) 정보를 포함할 수 있다. 상기 라이프 이벤트 정보는, 예를 들어, 로그 정보를 라이프 이벤트 모델(life event model)과 비교하여 추론되고, 행동 패턴(behavior patter)을 분석하여 보강될 수 있다. 또 다른 예를 들어, 상기 프로파일 정보는 관심(interest) 정보를 포함할 수 있다. 상기 관심 정보는, 예를 들어, 관심 쇼핑 물품, 관심 분야(예: 스포츠, 정치 등) 등을 포함할 수 있다. 또 다른 예를 들어, 상기 프로파일 정보는 활동 지역 정보를 포함할 수 있다. 상기 활동 지역 정보는, 예를 들어, 집, 일하는 곳 등에 대한 정보를 포함할 수 있다. 상기 활동 지역에 대한 정보는 장소의 위치에 대한 정보뿐만 아니라 누적 체류 시간 및 방문 횟수를 기준으로 우선 순위가 기록된 지역에 대한 정보를 포함할 수 있다. 또 다른 예를 들어, 상기 프로파일 정보는 활동 시간 정보를 포함할 수 있다. 상기 활동 시간 정보는, 예를 들어, 기상 시간, 출퇴근 시간, 수면 시간 등에 대한 정보을 포함할 수 있다. 상기 출퇴근 시간에 대한 정보는 상기 활동 지역 정보(예: 집 및 일하는 곳에 대한 정보)를 이용하여 추론될 수 있다. 상기 수면 시간에 대한 정보는 사용자 단말(100)의 미사용 시간을 통해 추론될 수 있다.
상기 프리퍼런스 정보는 사용자의 선호도 정보를 포함할 수 있다. 예를 들어, 상기 프리퍼런스 정보는 앱 선호도에 대한 정보를 포함할 수 있다. 상기 앱 선호도는, 예를 들어, 앱의 사용 기록(예: 시간별, 장소별 사용 기록)을 통해 추론될 수 있다. 상기 앱의 선호도는 사용자의 현재 상태(예: 시간, 장소)에 따라 실행될 앱을 결정하기 위해 이용될 수 있다. 다른 예를 들어, 상기 프리퍼런스 정보는 연락처 선호도에 대한 정보를 포함할 수 있다. 상기 연락처 선호도는, 예를 들어, 연락처의 연락 빈도(예: 시간별, 장소별 연락하는 빈도) 정보를 분석하여 추론될 수 있다. 상기 연락처 선호도는 사용자의 현재 상태(예: 중복된 이름에 대한 연락)에 따라 연락할 연락처를 결정하기 위해 이용될 수 있다. 또 다른 예를 들어, 상기 프리퍼런스 정보는 세팅(setting) 정보를 포함할 수 있다. 상기 세팅 정보는, 예를 들어, 특정 세팅 값의 설정 빈도(예: 시간별, 장소별 세팅 값으로 설정하는 빈도) 정보를 분석하여 추론될 수 있다. 상기 세팅 정보는 사용자의 현재 상태(예: 시간, 장소, 상황)에 따라 특정 세팅 값을 설정하기 위해 이용될 수 있다. 또 다른 예를 들어, 상기 프리퍼런스 정보는 장소 선호도를 포함할 수 있다. 상기 장소 선호도는, 예를 들어, 특정 장소의 방문 기록(예: 시간별 방문 기록)을 통해 추론될 수 있다. 상기 장소 선호도는 사용자의 현재 상태(예: 시간)에 따라 방문하고 있는 장소를 결정하기 위하여 이용될 수 있다. 또 다른 예를 들어, 상기 프리퍼런스 정보는 명령 선호도를 포함할 수 있다. 상기 명령 선호도는, 예를 들어, 명령 사용 빈도(예: 시간별, 장소별 사용 빈도)를 통해 추론될 수 있다. 상기 명령 선호도는 사용자의 현재 상태(예: 시간, 장소)에 따라 사용될 명령어 패턴을 결정하기 위해 이용될 수 있다. 특히, 상기 명령 선호도는 로그 정보를 분석하여 실행되고 있는 앱의 현재 상태에서 사용자가 가장 많이 선택한 메뉴에 대한 정보를 포함할 수 있다.
도 9은, 다양한 실시예들에 따른, 네트워크 환경(900) 내의 전자 장치(901)의 블럭도이다.
도 9을 참조하면, 네트워크 환경(900)에서 전자 장치(901)는 제 1 네트워크(998)(예: 근거리 무선 통신)를 통하여 전자 장치(902)와 통신하거나, 또는 제 2 네트워크(999)(예: 원거리 무선 통신)를 통하여 전자 장치(904) 또는 서버(908)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(901)는 서버(908)를 통하여 전자 장치(904)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(901)는 프로세서(920), 메모리(930), 입력 장치(950), 음향 출력 장치(955), 표시 장치(960), 오디오 모듈(970), 센서 모듈(976), 인터페이스(977), 햅틱 모듈(979), 카메라 모듈(980), 전력 관리 모듈(988), 배터리(989), 통신 모듈(990), 가입자 식별 모듈(996), 및 안테나 모듈(997)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(901)에는, 이 구성요소들 중 적어도 하나(예: 표시 장치(960) 또는 카메라 모듈(980))가 생략되거나 다른 구성 요소가 추가될 수 있다. 어떤 실시예에서는, 예를 들면, 표시 장치(960)(예: 디스플레이)에 임베디드된 센서 모듈(976)(예: 지문 센서, 홍채 센서, 또는 조도 센서)의 경우와 같이, 일부의 구성요소들이 통합되어 구현될 수 있다.
일 실시예에서 전자 장치(901)은 도 1에 개시된 사용자 단말(100)일 수 있다.
프로세서(920)는, 예를 들면, 소프트웨어(예: 프로그램(940))를 구동하여 프로세서(920)에 연결된 전자 장치(901)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 다양한 데이터 처리 및 연산을 수행할 수 있다. 프로세서(920)는 다른 구성요소(예: 센서 모듈(976) 또는 통신 모듈(990))로부터 수신된 명령 또는 데이터를 휘발성 메모리(932)에 로드하여 처리하고, 결과 데이터를 비휘발성 메모리(934)에 저장할 수 있다. 일실시예에 따르면, 프로세서(920)는 메인 프로세서(921)(예: 중앙 처리 장치 또는 어플리케이션 프로세서), 및 이와는 독립적으로 운영되고, 추가적으로 또는 대체적으로, 메인 프로세서(921)보다 저전력을 사용하거나, 또는 지정된 기능에 특화된 보조 프로세서(923)(예: 그래픽 처리 장치, 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 여기서, 보조 프로세서(923)는 메인 프로세서(921)와 별개로 또는 임베디드되어 운영될 수 있다.
이런 경우, 보조 프로세서(923)는, 예를 들면, 메인 프로세서(921)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(921)를 대신하여, 또는 메인 프로세서(921)가 액티브(예: 어플리케이션 수행) 상태에 있는 동안 메인 프로세서(921)와 함께, 전자 장치(901)의 구성요소들 중 적어도 하나의 구성요소(예: 표시 장치(960), 센서 모듈(976), 또는 통신 모듈(990))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(923)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성 요소(예: 카메라 모듈(980) 또는 통신 모듈(990))의 일부 구성 요소로서 구현될 수 있다. 메모리(930)는, 전자 장치(901)의 적어도 하나의 구성요소(예: 프로세서(920) 또는 센서모듈(976))에 의해 사용되는 다양한 데이터, 예를 들어, 소프트웨어(예: 프로그램(940)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 저장할 수 있다. 메모리(930)는, 휘발성 메모리(932) 또는 비휘발성 메모리(934)를 포함할 수 있다.
프로그램(940)은 메모리(930)에 저장되는 소프트웨어로서, 예를 들면, 운영 체제(942), 미들 웨어(944) 또는 어플리케이션(946)을 포함할 수 있다.
입력 장치(950)는, 전자 장치(901)의 구성요소(예: 프로세서(920))에 사용될 명령 또는 데이터를 전자 장치(901)의 외부(예: 사용자)로부터 수신하기 위한 장치로서, 예를 들면, 마이크, 마우스, 또는 키보드를 포함할 수 있다.
음향 출력 장치(955)는 음향 신호를 전자 장치(901)의 외부로 출력하기 위한 장치로서, 예를 들면, 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용되는 스피커와 전화 수신 전용으로 사용되는 리시버를 포함할 수 있다. 일실시예에 따르면, 리시버는 스피커와 일체 또는 별도로 형성될 수 있다.
표시 장치(960)는 전자 장치(901)의 사용자에게 정보를 시각적으로 제공하기 위한 장치로서, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 표시 장치(960)는 터치 회로(touch circuitry) 또는 터치에 대한 압력의 세기를 측정할 수 있는 압력 센서를 포함할 수 있다.
오디오 모듈(970)은 소리와 전기 신호를 쌍방향으로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(970)은, 입력 장치(950) 를 통해 소리를 획득하거나, 음향 출력 장치(955), 또는 전자 장치(901)와 유선 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(902)(예: 스피커 또는 헤드폰))를 통해 소리를 출력할 수 있다.
센서 모듈(976)은 전자 장치(901)의 내부의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 센서 모듈(976)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(977)는 외부 전자 장치(예: 전자 장치(902))와 유선 또는 무선으로 연결할 수 있는 지정된 프로토콜을 지원할 수 있다. 일실시예에 따르면, 인터페이스(977)는 HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(978)는 전자 장치(901)와 외부 전자 장치(예: 전자 장치(902))를 물리적으로 연결시킬 수 있는 커넥터, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(979)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 햅틱 모듈(979)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(980)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(980)은 하나 이상의 렌즈, 이미지 센서, 이미지 시그널 프로세서, 또는 플래시를 포함할 수 있다.
전력 관리 모듈(988)은 전자 장치(901)에 공급되는 전력을 관리하기 위한 모듈로서, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구성될 수 있다.
배터리(989)는 전자 장치(901)의 적어도 하나의 구성 요소에 전력을 공급하기 위한 장치로서, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(990)은 전자 장치(901)와 외부 전자 장치(예: 전자 장치(902), 전자 장치(904), 또는 서버(908))간의 유선 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(990)은 프로세서(920)(예: 어플리케이션 프로세서)와 독립적으로 운영되는, 유선 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(990)은 무선 통신 모듈(992)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(994)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함하고, 그 중 해당하는 통신 모듈을 이용하여 제 1 네트워크(998)(예: 블루투스, WiFi direct 또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제 2 네트워크(999)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 상술한 여러 종류의 통신 모듈(990)은 하나의 칩으로 구현되거나 또는 각각 별도의 칩으로 구현될 수 있다.
일실시예에 따르면, 무선 통신 모듈(992)은 가입자 식별 모듈(996)에 저장된 사용자 정보를 이용하여 통신 네트워크 내에서 전자 장치(901)를 구별 및 인증할 수 있다.
안테나 모듈(997)은 신호 또는 전력을 외부로 송신하거나 외부로부터 수신하기 위한 하나 이상의 안테나들을 포함할 수 있다. 일시예에 따르면, 통신 모듈(990)(예: 무선 통신 모듈(992))은 통신 방식에 적합한 안테나를 통하여 신호를 외부 전자 장치로 송신하거나, 외부 전자 장치로부터 수신할 수 있다.
상기 구성요소들 중 일부 구성요소들은 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input/output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))를 통해 서로 연결되어 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(999)에 연결된 서버(908)를 통해서 전자 장치(901)와 외부의 전자 장치(904)간에 송신 또는 수신될 수 있다. 전자 장치(902, 904) 각각은 전자 장치(901)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(901)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 외부 전자 장치에서 실행될 수 있다. 일실시예에 따르면, 전자 장치(901)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(901)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 외부 전자 장치에게 요청할 수 있다. 상기 요청을 수신한 외부 전자 장치는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(901)로 전달할 수 있다. 전자 장치(901)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치 (예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치 중 적어도 하나를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", "첫째" 또는 "둘째" 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)(예: 내장 메모리(936) 또는 외장 메모리(938))에 저장된 명령어를 포함하는 소프트웨어(예: 프로그램(940))로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시예들에 따른 전자 장치(예: 전자 장치(901))를 포함할 수 있다. 상기 명령이 프로세서(예: 프로세서(920))에 의해 실행될 경우, 프로세서가 직접, 또는 상기 프로세서의 제어하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
일시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
도 10는, 다양한 실시예들에 따른, 전자 장치(1001)의 무선 통신 모듈(1092), 전력 관리 모듈(1088), 및 안테나 모듈(1097)에 대한 블럭도(1000)이다. 도 10을 참조하면, 무선 통신 모듈(1092)은 MST 통신 모듈(1010) 또는 NFC 통신 모듈(1030)을 포함하고, 전력 관리 모듈(1088)은 무선 충전 모듈(1050)을 포함할 수 있다. 이런 경우, 안테나 모듈(1097)은 MST 통신 모듈(1010)과 연결된 MST 안테나(1097-1), NFC 통신 모듈(1030)과 연결된 NFC 안테나(1097-3), 및 무선 충전 모듈(1050)과 연결된 무선 충전 안테나(1097-5)을 포함하는 복수의 안테나들을 별도로 포함할 수 있다. 설명의 편의를 위해 도 10와 중복되는 구성 요소는 생략 또는 간략히 기재된다.
일 실시예에서 전자 장치(1001)은 도 9에 개시된 전자 장치(901)일 수 있다.
MST 통신 모듈(1010)은 프로세서(1020)로부터 신호(예: 제어 정보 또는 결제 정보를 포함한 신호)를 수신하고, MST 안테나(1097-1)를 통해 상기 수신된 신호에 대응하는 자기 신호를 생성한 후, 상기 생성된 자기 신호를 외부의 전자 장치(1002)(예: POS 장치)에 전달할 수 있다. 일실시예에 따르면, 예를 들어, MST 통신 모듈(1010)은 MST 안테나(1097-1)에 연결된 하나 이상의 스위치들을 포함하는 스위칭 모듈을 포함하고(미도시), 이 스위칭 모듈을 제어하여 MST 안테나(1097-1)에 공급되는 전압 또는 전류의 방향을 변경할 수 있다. 이는 MST 안테나(1097-1)를 통해 송출되어, 예를 들면, 무선 근거리 통신(1098)을 통해 외부의 전자 장치(1002)에 전달되는 자기 신호(예: 자기장)의 방향을 변경할 수 있다. 방향이 변경된 상태로 전달된 자기 신호는 마그네틱 카드가 전자 장치(1002)의 카드 리더기에 읽히면서(swiped) 발생하는 자기장과 유사한 형태 및 효과를 야기할 수 있다. 일실시예에 따르면, 전자 장치(1002) 에서 상기 자기 신호의 형태로 수신된 결제 관련 정보 및 제어 신호는, 예를 들면, 네트 워크(1099)를 통해 결제 서버(예: 서버(1008))로 송신될 수 있다.
NFC 통신 모듈(1030)은 프로세서(1020)로부터 신호(예: 제어 정보 또는 결제 정보를 포함한 신호)를 획득하고, 상기 획득된 신호를 NFC 안테나(1097-3)를 통해 외부의 전자 장치(1002)로 송신할 수 있다. 일실시예에 따르면, NFC 통신 모듈(1030)은, NFC 안테나(1097-3)을 통하여 외부의 전자 장치(1002)로부터 송출된 신호(예: 제어 정보 또는 결제 정보를 포함한 신호)를 수신할 수 있다.
무선 충전 모듈(1050)은 무선 충전 안테나(1097-5)를 통해 외부의 전자 장치(1002)(예: 휴대폰 또는 웨어러블 디바이스)로 전력을 무선으로 송신하거나, 또는 외부의 전자 장치(1002)(예: 무선 충전 장치)로부터 전력을 무선으로 수신할 수 있다. 무선 충전 모듈(1050)은, 예를 들면, 자기 공명 방식 또는 자기 유도 방식을 포함하는 다양한 무선 충전 방식을 지원할 수 있다.
일실시예에 따르면, MST 안테나(1097-1), NFC 안테나(1097-3), 또는 무선 충전 안테나(1097-5) 중 일부 안테나들은 방사부의 적어도 일부를 서로 공유할 수 있다. 예를 들면, MST 안테나(1097-1)의 방사부는 NFC 안테나(1097-3) 또는 무선 충전 안테나(1097-5)의 방사부로 사용될 수 있고, 그 반대도 마찬가지이다. MST 안테나(1097-1), NFC 안테나(1097-3), 또는 무선 충전 안테나(1097-5)가 방사부의 적어도 일부 영역을 공유하는 경우, 안테나 모듈(1097)은 무선 통신 모듈(1092)(예: MST 통신 모듈(1010) 또는 NFC 통신 모듈(1030)) 또는 전력 관리 모듈(예: 무선 충전 모듈(1050))의 제어에 따라 안테나들(1097-1, 1097-3, 또는 1097-3)의 적어도 일부를 선택적으로 연결 또는 분리(예: open)하기 위한 스위칭 회로(미도시)를 포함할 수 있다. 예를 들어, 전자 장치(1001)가 무선 충전 기능을 사용하는 경우, NFC 통신 모듈(1030) 또는 무선 충전 모듈(1050)은 상기 스위칭 회로를 제어함으로써 NFC 안테나(1097-3) 및 무선 충전 안테나(1097-5)에 의해 공유된 방사부의 적어도 일부 영역을 일시적으로 NFC 안테나(1097-3)와 분리하고 무선 충전 안테나(1097-5)와만 연결할 수 있다.
일실시예에 따르면, MST 통신 모듈(1010), NFC 통신 모듈(1030), 또는 무선 충전 모듈(1050)의 적어도 일부 기능은 외부의 프로세서(예: 프로세서(1020))에 의해 제어될 수 있다. 일실시예에 따르면, MST 통신 모듈(1010) 또는 NFC 통신 모듈(1030)의 지정된 기능(예: 결제 기능)들은 신뢰된 실행 환경(trusted execution environment, TEE)에서 수행될 수 있다. 다양한 실시예에 따른 신뢰된 실행 환경(TEE)은, 예를 들면, 상대적으로 높은 수준의 보안이 필요한 기능(예: 금융 거래, 또는 개인 정보 관련 기능)을 수행하기 위해 메모리(1030)의 적어도 일부 지정된 영역이 할당되고, 이 지정된 영역에 대한 접근은, 예를 들면, 접근 주체 또는 실행하는 어플리케이션에 따라 구분하여 제한적으로 허용되는 실행 환경일 수 있다.
도 11는 본 발명의 다양한 실시예들에 따른 시스템(1100)을 도시한다.
도 11을 참고하면, 시스템(1100)은 제1 전자 장치(1110), 제2 전자 장치(1120), 서버(1130)을 포함할 수 있다.
제1 전자 장치(1110)는, 사용자에게 음성 기반 서비스를 제공하기 위하여, 제2 전자 장치(1120)의 입출력 기능을 추가적으로 이용하여 제1 전자 장치(1110)에 대한 입출력 데이터를 처리하는 장치일 수 있다.
일 실시예에서, 음성 기반 서비스는 사용자의 음성 인식 서비스, 혹은 음성 인식 서비스와 관련된 서비스 혹은 기능일 수 있다. 예를 들어, 음성 기반 서비스는 도 1 혹은 도 3에 개시된 지능형 앱과 관련된 서비스일 수 있다. 다른 예를 들어 음성 기반 서비스는 사용자의 음성 인식 서비스의 잡음 제거(ANC, Active Noise Canceling) 서비스일 수 있다.
일 실시예에서, 제1 전자 장치(1110)에 대한 입출력 데이터는, 제1 전자 장치(1110)의 외부(예: 사용자, 제2 전자 장치(1120), 서버(1130) 등) 혹은 제1 전자 장치(1110)의 내부(예: 제1 전자 장치(1110)의 프로세서)로부터 입력되는 제어 명령에 따라 결정될 수 있다. 예를 들어, 제1 전자 장치(1110)에 사용자가 "A음악을 재생해줘"와 같은 음성 명령을 입력한 경우, 제1 전자 장치(1110)에 대한 입력 데이터는 사용자의 음성 명령 (혹은 음성 발화)이고, 출력 데이터는 A음악으로 결정될 수 있다.
일 실시예에서 장치(예: 제1 전자 장치(1110), 제2 전자 장치(1120))의 입출력 기능은, 상기 장치의 외부 환경에 대한 데이터의 감지 기능 및 상기 장치에서 생성된 데이터를 외부 환경으로 출력하는 기능을 포함할 수 있다. 예를 들어, 제2 전자 장치(1120)의 입력 기능은, 제2 전자 장치(1120)가, 제2 전자 장치(1120)에 구비된 마이크를 이용하여 사용자 음성 발화(예: "하이 빅스비, 오늘 골든 스테이트의 경기가 몇 시에 있어? (Hi Bixby, when is the Golden State Warriors game today?)")를 인식하는 기능을 포함할 수 있다. 다른 예를 들어, 제2 전자 장치(1120)의 출력 기능은, 제2 전자 장치(1120)가, 제2 전자 장치(1120)에 구비된 스피커를 이용하여 사운드 포맷의 정보를 출력(예: "오늘 골든 스테이트의 경기는 오후 7시에 열릴 예정입니다(Today Golden State Warriors game will be held at 7:00 pm)")하는 기능을 포함할 수 있다.
일 실시예에서 제1 전자 장치(1110)는 제1 전자 장치(1110)의 외부 장치(예: 제2 전자 장치(1120), 서버(1130))로부터 제1 전자 장치(1110)에 대한 제어 명령을 수신하기 전 외부 장치(예: 제2 전자 장치(1120), 서버(1130))와 무선 네트워크를 통해 연결되어 있을 수 있다. 다른 실시예에서 제1 전자 장치(1110)는 제1 전자 장치(1110)에 대한 제어 명령을 수신한 후, 외부 장치와 무선 네트워크를 통해 연결을 시도할 수도 있다.
일 실시예에서 제1 전자 장치(1110)는 근거리 통신 네트워크(예: 제1 네트워크(998))를 통하여 제2 전자 장치(1120)와 연결될 수 있다. 예를 들어, 제1 전자 장치(1110)는 블루투스(Bluetooth), BLE(Bluetooth Low Energy), 또는 WIFI DIRECT 통신 중 적어도 하나를 이용하여 제2 전자 장치(1120)와 연결될 수 있다. 다른 예를 들어, 제1 전자 장치(1110)는 제1 전자 장치(1110)에 포함된 무선 충전 모듈(예: 도 12의 무선 충전 모듈(1220))의 제2 통신 회로(예: 도 14의 제2 통신 회로(23b))를 이용하여 제2 전자 장치(1120)와 연결될 수 있다.
일 실시예에서 제1 전자 장치(1110) 및/또는 제2 전자 장치(1120)는 원거리 무선 네트워크(예: 도 9의 제2 네트워크(999))를 통하여 서버(1130)와 연결될 수 있다.
일 실시예에서, 제1 전자 장치(1110)는 도 9의 전자 장치(901)일 수 있다.
일 실시예에서, 제2 전자 장치(1120)는 제1 전자 장치(1110)의 입출력 데이터를 처리하기 위하여 제2 전자 장치(1120)의 입출력 기능을 제공하는 장치일 수 있다. 다른 실시예에서, 제2 전자 장치(1120)는 제2 전자 장치(1120)의 입출력 데이터를 처리하기 위하여 제1 전자 장치(1110)의 입출력 기능을 추가적으로 이용할 수도 있다.
일 실시예에서, 제2 전자 장치(1120)는 제2 전자 장치(1120)에 지정된 기능을 수행할 수 있으며, 제2 전자 장치(1120)에 지정된 기능은 제2 전자 장치(1120)의 입출력 기능과 무관한 기능일 수 있다. 예를 들어, 제2 전자 장치(1120)에 지정된 기능은 제1 전자 장치(1110)에 전력을 공급하는 기능일 수 있다. 예를 들어, 제2 전자 장치(1120)는 자기 유도 방식(inductive coupling), 자기 공명 방식(resonant magnetic coupling), 또는 전자기파 방사 방식(Radio frequency radiation) 중 적어도 하나를 이용하여 무선으로 제1 전자 장치(1110)에 전력을 공급할 수 있다. 다른 예를 들어, 제2 전자 장치(1120)는 제1 전자 장치(1110)과 유선으로 연결되어 제1 전자 장치(1110)에 전력을 공급할 수 있다.
일 실시예에서, 제2 전자 장치(1120)는 제1 전자 장치(1110)에 전력을 공급하는 통신 채널과 별개의 통신 채널을 이용하여 제1 전자 장치(1110)와 연결될 수 있다. 예를 들어, 제2 전자 장치(1120)는 제1 전자 장치(1110)에 전력을 공급하는 동안 무선 네트워크를 통하여 제1 전자 장치(1110)와 연결될 수 있다. 다른 예를 들어, 제2 전자 장치(1120)는 제1 전자 장치(1110)에 전력을 공급하지 않는 동안(예: 제1 전자 장치(1110)의 충전이 완료된 경우)에도 무선 네트워크를 통하여 제1 전자 장치(1110)와 연결될 수 있다.
일 실시예에서, 서버(1130)는, 제1 전자 장치(1110)가 제2 전자 장치(1120)의 입출력 기능을 추가적으로 이용하여 제1 전자 장치(1110)에 대한 입출력 데이터를 처리할 수 있도록, 제1 전자 장치(1110) 혹은 제2 전자 장치(1120) 중 적어도 하나의 장치를 제어하는 장치일 수 있다. 일 실시예에서 서버(1130)는, 지능형 서버(200), 개인화 정보 서버(300), 제안 서버(400) 중 적어도 하나이거나, 상술한 서버들의 집합일 수 있다.
일 실시예에서, 서버(1130)는, 유선 혹은 무선 네트워크 중 적어도 하나의 네트워크를 통하여, 제1 전자 장치(1110) 및/또는 제2 전자 장치(1120)와 연결될 수 있다. 예를 들어 서버(1130)는 제1 전자 장치(1110) 및/또는 제2 전자 장치(1120)와 로컬 네트워크로 연결된 로컬 네트워크의 라우터(Router) 장치일 수 있다. 다른 예를 들어 서버(1130)는 클라우드 서버(Cloud Server)일 수 있다.
일 실시예에서, 서버(1130)는 제1 전자 장치(1110)와 제2 전자 장치(1120)간의 연결을 감지한 후, 제1 전자 장치(1110) 혹은 제2 전자 장치(1120)의 적어도 하나의 장치의 위치를 결정할 수 있다. 제2 전자 장치(1120)의 위치는 고정된 위치일 수 있고, 서버(1130)는 제2 전자 장치(1120)의 고정된 위치 정보를 미리 저장하고 있을 수 있다. 서버(1130)는 제2 전자 장치(1120)의 고정된 위치 정보를 저장한 상태에서, 제1 전자 장치(1110)와 제2 전자 장치(1120)의 연결을 감지한 경우, 제1 전자 장치(1110)의 위치를 제2 전자 장치(1120)의 위치 정보에 기반하여 결정할 수 있다. 예를 들어, 서버(1130)는 제1 전자 장치(1110)와 제2 전자 장치(1120)의 연결을 감지한 경우, 제1 전자 장치(1110)의 위치를 제2 전자 장치(1120)와 동일한 위치로 결정할 수 있다. 다른 예를 들어, 서버(1130)는 제1 전자 장치(1110)와 제2 전자 장치(1120)의 연결을 감지한 경우, 제2 전자 장치(1120)의 위치를 기준으로 하는 제1 전자 장치(1110)의 상대적 위치(예를 들어 제2 전자 장치(1120)의 위치로부터 떨어진 거리, 제2 전자 장치(1120)에 대한 방향 등)를 결정할 수 있다.
일 실시예에서, 서버(1130)는 제2 전자 장치(1120)의 충전 방식을 고려하여 제1 전자 장치(1110)의 위치를 결정할 수 있다. 예를 들어, 제2 전자 장치(1120)가 자기 유도 방식으로 제1 전자 장치(1110)에 전력을 공급하는 방식인 경우, 제1 전자 장치(1110)의 위치를 제2 전자 장치(1120)와 동일한 위치로 결정할 수 있다. 다른 예를 들어, 제2 전자 장치(1120)가 자기 공명 방식으로 제1 전자 장치(1110)에 전력을 공급하는 방식인 경우, 전력 송신 효율에 기반하여 제1 전자 장치(1110)의 위치(예: 제2 전자 장치(1120)로부터 거리)를 결정할 수 도 있다.
일 실시예에서, 서버(1130)는, 제1 전자 장치(1110)와 제2 전자 장치(1120)의 연결을 감지한 후, 제1 전자 장치(1110) 혹은 제2 전자 장치(1120) 중 적어도 하나의 장치를 제어할 수 있다. 예를 들어, 제1 전자 장치(1110)로부터 제2 전자 장치(1120)의 식별 정보를 수신하거나, 제2 전자 장치(1120)로부터 제1 전자 장치(1110)의 식별 정보를 수신한 경우, 서버(1130)는 제1 전자 장치(1110)와 제2 전자 장치(1120)가 연결되었다고 판단하고, 제1 전자 장치(1110) 혹은 제2 전자 장치(1120) 중 적어도 하나의 장치를 제어할 수 있다.
일 실시예에서, 서버(1130)는 제1 전자 장치(1110) 혹은 제2 전자 장치(1120) 중 적어도 하나의 장치를 제어하기 위하여, 제1 전자 장치(1110) 및 제2 전자 장치(1120)와 연결된 네트워크를 통해, 제1 전자 장치(1110) 혹은 제2 전자 장치(1120) 중 적어도 하나의 장치에, 제어 명령을 송신할 수 있다. 서버(1130)가 송신하는 제어 명령은, 제1 전자 장치(1110) 혹은 제2 전자 장치(1120)에 대한 적어도 하나의 기능(예: 음성 인식 기능)의 활성화 혹은 비활성화, 제1 전자 장치(1110) 혹은 제2 전자 장치(1120)에 대한 적어도 하나의 기능 혹은 동작(예: 서버(1130)에서 생성 및 전송되는 데이터의 출력 등)의 수행에 대한 제어 명령을 포함할 수 있다.
일 실시예에서, 서버(1130)는 제1 전자 장치(1110) 혹은 제2 전자 장치(1120) 중 적어도 하나의 장치로부터, 특정한 정보의 제공 요청이 포함된 데이터를 수신할 수 있다. 일 실시예에서, 제1 전자 장치(1110) 혹은 제2 전자 장치(1120) 중 적어도 하나의 장치는 특정한 정보를 요청하는 다양한 형태의 사용자 입력(예: 음성 입력, 터치 입력, 제스쳐 입력 등)을 수신할 수 있다. 예를 들어, 제1 전자 장치(1110) 혹은 제2 전자 장치(1120) 중 적어도 하나의 장치는 "하이 빅스비, 오늘 골든 스테이트의 경기가 몇 시에 있어? (Hi Bixby, when is the Golden State Warriors game today?)"와 같은 사용자 음성 발화을 수신할 수 있다. 그리고 제1 전자 장치(1110) 혹은 제2 전자 장치(1120) 중 적어도 하나의 장치는 수신한 사용자 음성 발화를 전기적 신호(예: 음성 신호)로 변환하고, 변환된 전기적 신호를 서버(1130)에 전송할 수 있다. 서버(1130)는 수신한 전기적 신호에, 정보(골든 스테이트의 경기 정보)의 제공 요청이 포함되어 있음을 판단할 수 있다.
일 실시예에서, 서버(1130)는 정보의 제공 요청 수신에 대응하여, 요청된 정보를 획득할 수 있다. 예를 들어 서버(1130)는 서버(1130)에 저장된 메모리를 검색하거나, 혹은 서버(1130)와 연결된 다른 서버에 요청함으로써, 요청된 "골든 스테이트의 경기 정보"를 획득할 수 있다.
일 실시예에서, 서버(1130)는 획득한 정보의 출력 포맷을 결정할 수 있다. 예를 들어, 서버(1130)는 제1 전자 장치(1110)와 제2 전자 장치(1120)의 입출력 속성 정보, 혹은 하드웨어/소프트웨어 정보에 기반하여 획득한 정보의 출력 포맷을 결정할 수 있다. 서버(1130)는 획득한 정보를 결정된 출력 포맷으로 인코딩함으로써, 제1 전자 장치(1110) 혹은 제2 전자 장치(1120)에 전송할 피드백 데이터를 생성할 수 있다.
일 실시예에서, 서버(1130)는 피드백 데이터의 출력 정보를 결정할 수 있다. 피드백 데이터의 출력 정보는 피드백 데이터를 출력할 장치에 대한 정보, 피드백 데이터를 출력할 조건에 대한 정보, 피드백 데이터의 출력 환경(예: 볼륨)에 대한 정보를 포함할 수 있다.
일 실시예에서, 서버(1130)는 피드백 데이터의 적어도 일부를 제1 전자 장치(1110) 혹은 제2 전자 장치(1120) 중 적어도 하나의 장치에 전송할 수 있다. 예를 들어, 서버(1130)는 피드백 데이터의 전체를 제1 전자 장치(1110)에 전송할 수 있다. 다른 예를 들어, 서버(1130)는 피드백 데이터의 제1 부분(a first portion)을 제1 전자 장치(1110)에 전송하고, 피드백 데이터의 제2 부분(a second portion)을 제2 전자 장치(1120)에 전송할 수 있다. 제2 부분은 제1 부분을 제외한 피드백 데이터의 나머지 부분일 수 있다. 서버(1130)는 피드백 데이터를 요청했던 장치에, 요청된 피드백 데이터의 전체가 아닌 일부를 전송할 수 있고, 피드백 데이터를 요청하지 않았던 장치에 일부 피드백 데이터를 전송할 수도 있다.
일 실시예에서 서버(1130)는 출력 정보의 적어도 일부를 제1 전자 장치(1110)와 제2 전자 장치(1120) 중 적어도 하나에 전송할 수 있다. 예를 들어, 서버(1130)가 피드백 데이터의 전체를 제1 전자 장치(1110)에 전송할 때, 서버(1130)는 전송되는 피드백 데이터의 일부(제1 부분)는 제1 전자 장치(1110)에서 출력되고, 피드백 데이터의 나머지 일부(제2 부분)는 제2 전자 장치(1120)에서 출력됨을 나타내는 출력 정보를 제1 전자 장치(1110)에 추가적으로 전송할 수 있다. 제1 전자 장치(1110)는 상기 출력 정보에 기반하여, 수신한 전체 피드백 데이터의 일부(제2 부분)를 제2 전자 장치(1120)로 전송 혹은 포워딩(forwarding)할 수 있다. 다른 예를 들어, 서버(1130)가 피드백 데이터의 제1 부분을 제1 전자 장치(1110)에 전송하고, 제2 부분을 제2 전자 장치(1120)에 전송할 때, 서버(1130)는 제1 전자 장치(1110)에, 현재 전송되는 데이터가, 요청된 피드백 데이터의 일부임을 나타내는 정보 및 나머지 일부는 제2 전자 장치(1120)에 전송될 것임을 나타내는 정보를 추가로 전송할 수 있다. 그리고 서버(1130)는 제2 전자 장치(1120)에도, 현재 전송되는 데이터가 요청된 피드백 데이터의 일부임을 나타내는 정보 및 나머지 일부는 제1 전자 장치(1110)에 전송될 것임을 나타내는 정보를 추가로 전송할 수 있다.
일 실시예에서, 서버(1130)는 피드백 데이터 및 출력 정보의 적어도 일부를, 서버(1130)에 미리 저장된 제1 전자 장치(1110) 및/또는 제2 전자 장치(1120)의 장치 정보에 기반하여 결정할 수 있다. 일 실시예에서 제1 전자 장치(1110) 및/또는 제2 전자 장치(1120)의 장치 정보는 하드웨어/소프트웨어 정보(예: 마이크, 스피커, 디스플레이 등의 유무, 종류, 성능(예: 스피커의 재생 주파수 대역)), 혹은 입출력 속성 정보(예: 음성 인식, 음성 출력, 영상 출력 등)를 포함할 수 있다. 예를 들어, 제1 전자 장치(1110)가 디스플레이(예: 도 2의 디스플레이(120))를 포함하고, 제2 전자 장치(1120)가 디스플레이를 포함하지 않는 경우, 서버(1130)는 피드백 데이터의 출력 포맷을 영상, 혹은 영상 및 사운드로 결정할 수 있다. 다른 예를 들어, 제1 전자 장치(1110)와 제2 전자 장치(1120)가 모두 디스플레이를 포함하지 않는 경우, 서버(1130)는 피드백 데이터의 출력 포맷을 사운드로 결정할 수 있다.
일 실시예에서, 서버(1130)는 피드백 데이터 및 출력 정보의 적어도 일부를, 제1 전자 장치(1110) 및/또는 외부 장치(1120)의 상태 정보에 기반하여 결정할 수 있다. 예를 들어, 디스플레이(120)를 포함하는 제1 전자 장치(1110)가 현재 디스플레이(120)를 통하여 특정한 영상을 재생하고 있는 경우, 서버(1130)는 피드백 데이터의 출력 포맷을 음성으로 결정할 수 있다. 다른 예를 들어, 디스플레이(120)와 스피커(예: 도 2의 스피커(130))를 포함하는 제1 전자 장치(1110)가 현재 스피커(130)를 통하여 특정한 사운드를 출력하고 있는 경우, 서버(1130)는 피드백 데이터의 출력 포맷을 영상으로 결정할 수 있다.
도 12는 본 발명의 다양한 실시예들에 따른 제1 전자 장치(1200)의 기능적 구성을 도시한다.
도 14는 본 발명의 다양한 실시예에 따른 전자 장치의 무선 충전 모듈 및 외부 장치의 무선 충전 모듈의 회로를 도시한다.
도 12를 참고할 때, 제1 전자 장치(1200)는 프로세서(1210), 무선 충전 모듈(1220), 음성 인식 모듈(1230), 통신 모듈(1240), 메모리(1250), 스피커(1260), 마이크(1270), 디스플레이(1280)를 포함할 수 있다. 일 실시예에서 제1 전자 장치(1200)는 도 11의 제1 전자 장치(1110)일 수 있다.
일 실시예에서, 프로세서(1210)는 제1 전자 장치(1200)의 전반적인 동작을 제어할 수 있다. 예를 들어, 프로세서(1210)는 서버(1130)로부터 음성 인식 기능을 활성화하는 제어 명령을 수신한 경우, 마이크(1270) 및 음성 인식 모듈(1230)을 활성화할 수 있다. 다른 예를 들어, 프로세서(1210)는 마이크(1270)를 통해 인식된 음성 발화에 대한 데이터(예: 음성 신호)를 서버(1130)에 전송하도록 통신 모듈(1240)을 제어할 수 있다.
도 12 및 도 14를 참조하면, 무선 충전 모듈(1220, 21)은 외부 장치(10, 또는 외부 장치의 송신 코일(11L))로부터 무선으로 전력을 공급받기 위한 모듈일 수 있다. 외부 장치는 도 11의 제2 전자 장치(1120)일 수 있다.
일 실시예에서 무선 충전 모듈(1220, 21)은 도 10의 무선 충전 모듈(1050)일 수 있다.
일 실시예에서 무선 충전 모듈(1220, 21)은 수신 코일(21L), 매칭 회로(21a), 수신된 AC전력을 DC로 정류하는 정류 회로(21b), 충전 전압을 조정하는 조정 회로(21c), 스위치 회로(21d) 및 배터리(21e)를 포함할 수 있다.
일 실시예에서 제어 회로(22)는 전자 장치(20) 또는 무선 충전 모듈(1220, 21)의 전반적인 제어를 수행하고, 무선 전력 송수신에 필요한 각종 메시지를 생성하여 통신 회로(23)로 전달할 수 있다. 일 실시예에서, 제어 회로(22)는 프로세서(1210)의 적어도 일부 일 수 있다.
일 실시예에서 통신 회로(23)는 제1 통신 회로(23a)와 제2 통신 회로(23b) 중 적어도 하나를 포함할 수 있다. 제1 통신 회로(23a)는 수신 코일(21L)을 통해 외부 장치(10)와 통신할 수 있다. 제2 통신 회로(23b)는 Bluetooth, BLE, WI-Fi, NFC와 같은 다양한 근거리 통신 방식 중 어느 하나를 이용하여 외부 장치(10)와 통신할 수 있다. 일 실시예에서, 통신 회로(23)의 적어도 일부는 통신 모듈(1240), 무선 통신 모듈(1092) 또는 무선 충전 모듈(1050)에 포함될 수 있다. 예를 들어, 제2 통신 회로(23b)는 통신 모듈(1240)의 일부일 수 있다. 다른 예를 들어, 제2 통신 회로(23b)는 무선 통신 모듈(1092)의 일부일 수도 있다. 다른 예를 들어, 제1 통신 회로(23a)는 무선 충전 모듈(1050)의 일부일 수 있다.
일 실시예에서 음성 인식 모듈(1230)은 제1 전자 장치(1200)로 입력되는 사용자의 음성을 인식하기 위한 모듈일 수 있다. 음성 인식 모듈(1230)은 입출력 모듈(예: 마이크(1270), 리시버, 이어폰 등)의 적어도 일부와 기능적으로, 혹은 전기적으로 연결될 수 있다. 음성 인식 모듈(1230)은 마이크(1270)로부터 전달된 아날로그 음성 신호(예: 사용자의 음성 발화)를 디지털 신호로 변환할 수 있다.
일 실시예에서 음성 인식 모듈(1230)은 트리거 사운드 인식 모듈(미도시)을 포함할 수 있다. 트리거 사운드 인식 모듈은 입출력 모듈(예: 마이크(1270))의 적어도 일부로부터 입력되는 사용자의 음성, 전자 장치 주변의 잡음, 전자 장치에서 출력되고 있는 소리 등 다양한 종류의 음원들을 전기적 신호로 변환할 수 있다. 트리거 사운드 인식 모듈은 변환된 전기적 신호가, 미리 저장된 신호 패턴(트리거 사운드 (또는, 웨이크 업 명령)(예: Hi Bixby)에 대응하는 신호 패턴)과 미리 결정된 값 이상의 매칭률을 나타내는 신호를 포함하는지 여부를 결정할 수 있다. 변환된 전기적 신호가 미리 저장된 신호 패턴과 미리 결정된 값 이상의 매칭률을 나타내는 신호를 포함한다고 결정된 경우, 트리거 사운드 인식 모듈은 트리거 사운드를 인식하였다고 판단할 수 있다.
일 실시예에서 트리거 사운드를 인식한 경우, 트리거 사운드 인식 모듈은 인식된 트리거 사운드에 대응하는 기능을 실행할 수 있다. 예를 들어, 트리거 사운드 인식 모듈은 인식된 트리거 사운드에 따라 음성 인식 어플리케이션(예: 빅스비(BixbyTM), 시리(SiriTM)을 호출할 수 있다. 다른 예를 들어, 음성 인식 어플리케이션의 호출 없이 특정한 기능을 바로 실행할 수도 있다.
일 실시예에서 음성 인식 모듈(1230)은 트리거 사운드의 인식률을 높이기 위한 잡음 제거 모듈(미도시)을 포함할 수 있다. 예를 들어, 제1 전자 장치(1200)의 마이크(1270)가, 제1 마이크와 제2 마이크를 포함하는 경우, 잡음 제거부는 제2 마이크에 입력되는 제2 신호 및 제1 마이크와 제2 마이크 사이의 거리를 이용하여 제1 마이크에 입력되는 제1 신호에서 잡음을 제거할 수 있다. 다른 예를 들어, 제1 전자 장치(1200)가 제1 마이크를 포함하고, 제2 전자 장치(1120)가 제2 마이크를 포함하는 경우, 잡음 제거부는 전자 장치에 포함된 제1 마이크와 외부 장치에 포함된 제2 마이크 사이의 거리 및 제2 마이크에 입력되는 제2 신호를 이용하여(예를 들어 제2 신호의 역상화된 신호를 제1 신호에 인가하여) 제1 마이크에 입력되는 제1 신호에서 잡음을 제거할 수 있다.
일 실시예에서 음성 인식 모듈(1230)은 트리거 사운드에 이어지는 사용자의 음성 명령을 인식하기 위한 음성 명령 인식 모듈(미도시)을 포함할 수 있다. 그러나 음성 명령 인식 모듈 없이, 트리거 사운드 인식 모듈이 트리거 사운드에 이어지는 사용자의 음성 명령을 인식할 수도 있다. 혹은 트리거 사운드 인식 모듈 없이, 음성 명령 인식 모듈이 트리거 사운드를 인식할 수도 있다. 음성 명령 인식 모듈은 트리거 사운드에 이어지는 사용자의 음성 발화를 인식하고, 인식된 사용자의 음성 발화(트리거 사운드가 제외된)를 사용자의 음성 명령으로 결정할 수 있다. 음성 명령 인식 모듈은 미리 결정된 값 이상의 출력이 지속되는 동안의 사용자의 음성 발화를 사용자의 음성 명령으로 인식할 수 있다. 음성 명령 인식 모듈은 인식된 사용자의 음성 발화를 전기적 데이터로 변환하고, 변환된 전기적 데이터가 서버(1130)으로 전송되도록, 변환된 전기적 데이터를 프로세서(1210) 혹은 통신 모듈(1240)로 전송할 수 있다.
일 실시예에서 통신 모듈(1240)은 제1 전자 장치(1200)에 저장된 혹은 생성된 데이터를 외부 장치(예: 제2 전자 장치(1120) 혹은 서버(1130))에 전송하고, 외부 장치에서 생성 혹은 저장된 데이터를 수신할 수 있다. 예를 들어 통신 모듈(1240)은 전자 장치에 입력된 사용자 음성 명령과 연관된 데이터를 서버(1130)에 전송할 수 있다.
일 실시예에서 메모리(1250)는 제1 전자 장치(1200)가 수행할 동작 혹은 기능에 대한 명령어, 혹은 제1 전자 장치(1200)에서 생성하거나 외부 장치(예: 제2 전자 장치(1120), 혹은 서버(1130))로부터 전송 받은 데이터를 저장할 수 있다. 일 실시예에서 메모리(1250)는 도 9의 메모리(930)일 수 있다. 예를 들어, 메모리(1250)는 서버(1130)로부터 수신한 피드백 데이터의 적어도 일부를 저장할 수 있다.
일 실시예에서 메모리(1250)는 데이터를 적어도 일시적으로 저장할 수 있다.
일 실시예에서 스피커(1260)는 프로세서(1210)의 제어 하에 사운드 포맷의 데이터를 출력할 수 있다. 일 실시예에서 스피커(1260)는 도 2의 스피커(130)일 수 있다.
일 실시예에서 디스플레이(1280)는 프로세서(1210)의 제어 하에 영상 포맷의 데이터를 출력할 수 있다. 일 실시예에서 디스플레이(1280)는 도 2의 디스플레이(120)일 수 있다.
일 실시예에서 마이크(1270)는 마이크(1270)에 입력되는 다양한 종류의 음원들을 수신할 수 있다. 일 실시예에서, 마이크(1270)는 사용자의 음성 발화와 같은 아날로그 음성 신호를 수신하고, 수신한 음성 신호를 음성 인식 모듈(1230)에 전달할 수 있다. 일 실시예에서 마이크(1270)는 도 3의 마이크(111)일 수 있다.
도 13는 본 발명의 다양한 실시예에 따른 제2 전자 장치(1300)의 기능적 구성을 도시한다.
도 13를 참고할 때, 제2 전자 장치(1300)는 프로세서(1310), 무선 충전 모듈(1320), 음성 인식 모듈(1330), 통신 모듈(1340), 메모리(1350), 스피커(1360), 마이크(1370)을 포함할 수 있다. 일 실시예에서 제2 외부 장치(1300)는 도 11의 제2 전자 장치(1120)일 수 있다.
일 실시예에서 음성 인식 모듈(1330), 통신 모듈(1340), 메모리(1350), 스피커(1360), 마이크(1370)은 도 12에 개시된 제1 전자 장치(1200)의 음성 인식 모듈(1230), 통신 모듈(1240), 메모리(1250), 스피커(1260), 마이크(1270)과 수행하는 기능이 유사하므로, 그 자세한 설명을 생략하기로 한다.
일 실시예에서 프로세서(1310)는 제2 전자 장치(1300)의 전반적인 동작을 제어할 수 있다. 예를 들어, 프로세서(1310)는 서버(1130)로부터 음성 인식 기능을 비활성화하는 제어 명령을 수신한 경우, 마이크(1370)와 음성 인식 모듈(1330)을 비활성화할 수 있다. 다른 예를 들어, 프로세서(1310)는 제1 전자 장치(1200) 혹은 서버(1130)로부터 피드백 데이터의 적어도 일부를 수신한 경우, 수신한 데이터의 출력 포맷(예: 사운드 포맷)에 따라 수신한 데이터를 출력하도록 출력 모듈(예: 스피커(1360))을 제어할 수 있다.
도 13 및 도 14를 참조하면, 무선 충전 모듈(1320, 11)은 외부 장치(20), 또는 외부 장치의 수신 코일(21L))에 무선으로 전력을 공급하기 위한 모듈일 수 있다. 무선 충전 모듈(1320, 11)은 외부로부터 전원(또는 전력)을 입력 받고, 입력 전원의 전압을 적절하게 변환하는 전력 어댑터(11a), 전력을 생성하는 전력 생성 회로(11b), 송신 코일(11L)과 수신 코일(21L) 사이의 효율을 극대화시키는 매칭 회로(11c)를 포함할 수 있다.
일 실시예에서 제어 회로(12)는 무선 충전 모듈(1250)의 전반적인 제어를 수행하며, 무선 전력 송신에 필요한 각종 메시지를 생성하여 통신 회로(13)로 전달할 수 있다. 일 실시예에서, 제어 회로(12)는 통신 회로(13)로부터 수신된 정보에 기초하여 제1 전자 장치(1200)로 송출할 전력(또는 전력량)을 산출할 수 있다. 일 실시예에서, 제어 회로(12)는 송신 코일(11L)에 의해 산출된 전력이 제1 전자 장치(1200)로 전송되도록 전력 생성 회로(13)를 제어할 수 있다. 일 실시예에서, 제어 회로(12)는 프로세서(1310)의 적어도 일부일 수 있다.
일 실시예에서 통신 회로(13)는 제1 통신 회로(13a)와 제2 통신 회로(13b) 중 적어도 하나를 포함할 수 있다. 제1 통신 회로(13a)는 예를 들어, 송신 코일(11L)에서 전력 전달을 위해 사용하는 주파수와 동일한 주파수를 이용하여 외부 장치(20)의 제1 통신 회로(23a)와 통신할 수 있다. 다른 예를 들어, 송신 코일(11L)에서 전력 전달을 위해 사용하는 주파수와 상이한 주파수를 이용하여 외부 장치(20)의 제2 통신 회로(23b)와 통신할 수 있다. 예를 들어, 제2 통신 회로(13b)는 Bluetooth, BLE, Wi-Fi, NFC와 같은 다양한 근거리 통신 방식 중 어느 하나를 이용하여 제2 통신 회로(23b)로부터 충전 상태와 관련된 정보(예: Vrec 정보, Iout 정보, 각종 패킷, 메시지 등)를 획득할 수 있다.
도 15은 본 발명의 다양한 실시예에 따른 제2 전자 장치(1300)의 외관의 두 가지 형태들을 도시한다.
도 15a는 제2 전자 장치(1300)의 표면의 일부(예: 외부 장치의 상부 면)에 접촉된 제1 전자 장치(1200)에 전력을 무선으로 공급하는 크래들(cradle) 형태의 제2 전자 장치(1300)의 외관을 도시한다. 일 실시예에서, 도 15a는 자기 유도 방식으로 제1 전자 장치(1200)에 전력을 무선으로 공급하는 제2 전자 장치(1300)의 외관일 수 있다.
도 15a를 참고할 때, 외부 장치는 충전 패드(1510), 마이크(1520), 표시부(1530)를 포함할 수 있다.
일 실시예에서 충전 패드(1510)는 제2 전자 장치(1300)의 외관에 배치될 수 있다. 충전 패드(1510)는 제1 전자 장치(1200)와의 접촉을 위하여 제2 전자 장치(1300)의 외관에 배치될 수 있다. 충전 패드(1510)는 제2 전자 장치(1300)의 상부 면에 배치되어, 무선 충전을 요청하는 제1 전자 장치(1200)가 충전 패드의 위에 놓여질 수 있다. 충전 패드(1510)의 내측에 송신 코일(예: 도 14의 11L)이 배치될 수 있다. 충전 패드(1510) 위에 제1 전자 장치(1200)가 놓여진 경우, 송신 코일(11L)에 의해 산출된 전력이 제1 전자 장치(1200)의 수신 코일을 통해 제1 전자 장치(1200)로 전송될 수 있다.
일 실시예에서 마이크(1520)는 외부 장치의 외관에 배치될 수 있다. 마이크(1520)는 마이크(1370)일 수 있다. 예를 들어, 마이크(1520)는 제2 전자 장치(1300)의 옆면에 배치될 수 있다. 마이크(1520)는 제2 전자 장치(1300)의 외관이 아닌 제2 전자 장치(1300)의 내부에 배치될 수도 있다.
일 실시예에서 표시부(1530)는 제2 전자 장치(1300)의 외관에 배치될 수 있다. 표시부(1530)는 제2 전자 장치(1300)의 옆면에 배치될 수 있다. 표시부(1530)는 제2 전자 장치(1300)의 옆면에 환형으로 배치된 형태일 수 있다. 예를 들어, 표시부(1530)는 제2 전자 장치(1300)를 환형으로 둘러싼 띠 모양일 수 있다.
일 실시예에서, 표시부(1530)는 무선 충전과 관련된 제2 전자 장치(1300)의 현재 상태를 표시할 수 있다. 표시부(1530)는 LED를 포함할 수 있다. 예를 들어, 표시부(1530)는 제2 전자 장치(1300)가 외부 전원(예: AC전원)에 연결되어 있는지 여부에 대한 정보를 표시할 수 있다. 다른 예를 들어, 표시부(1530)는 제2 전자 장치(1300)가 제1 전자 장치(1200)에 현재 전력을 공급하고 있는지 여부, 또는 제1 전자 장치(1200)에 더 이상 전력을 공급할 수 없는 경우(예: 충전 완료)에 대한 정보를 표시할 수 있다.
일 실시예에서, 표시부(1530)는 무선 충전과 관련된 제2 전자 장치(1300)의 현재 상태를 다양한 형태의 시각적 피드백으로 표시할 수 있다. 예를 들어, 표시부(1530)는 색깔 혹은 밝기를 달리하거나 빛을 주기적으로 발광함으로써, 무선 충전과 관련된 제2 전자 장치(1300)의 현재 상태를 표시할 수 있다.
일 실시예에서, 표시부(1530)는 사용자 음성 인식과 관련된 정보를 표시할 수도 있다. 음성 인식 기능이 활성화된 경우, 혹은 트리거 사운드 및/또는 음성 명령을 인식한 경우, 음성 명령에 대응하는 피드백 데이터를 출력하는 경우, 서로 다른 형태의 시각적 피드백들을 표시할 수 있다.
도 15b는 외부 장치의 전력 송전 가능 범위(예: 2m)에 포함된 제1 전자 장치(1200)에 전력을 무선으로 공급하는 타워(tower) 혹은 데스크(desk) 형태의 제2 전자 장치(1300)를 도시한다. 일 실시예에서, 도 15b는 자기 공명 방식으로 제1 전자 장치(1200)에 전력을 무선으로 공급하는 제2 전자 장치(1300)의 외관일 수 있다.
일 실시예에서 도 15b에 개시된 제2 전자 장치(1300)는 일정한 송전 가능 범위에 위치한 제1 전자 장치(1200)에 무선으로 전력을 공급할 수 있다. 제2 전자 장치(1300)와 제1 전자 장치(1200)의 거리에 따라 무선 충전의 효율은 달라질 수 있다.
일 실시예에서 도 15b에 개시된 제2 전자 장치(1300)는 제1 전자 장치(1200)와 충전 패드 등을 통하여 접촉될 필요가 없으므로, 외관에 충전 패드(1510)를 구비하지 않을 수 있다. 도 15b에 개시된 제2 전자 장치(1300)는 도 15a에 개시된 제2 전자 장치(1300)와 동일하게, 외관에 마이크(1540) 및/또는 표시부(1550)를 구비할 수 있다. 다만, 도 15b의 마이크(1540) 또는 표시부(1550)는 도 15a의 마이크(1520) 또는 표시부(1530)와 수행하는 기능이 유사한 바, 자세한 설명을 생략하기로 한다.
도 15a, 15b에 개시된 마이크(1520, 1540) 및 표시부(1530, 1550)의 모양, 형태, 위치 등은 단순히 설명을 돕기 위한 것으로, 본 발명의 권리 범위를 제한하는 것은 아니다.
도 16는 본 발명의 다양한 실시예에 따른 서버(1600)의 기능적 구성을 도시한다.
도 16을 참고할 때, 서버(1600)는 프로세서(1610), 음성 처리 모듈(1620), 통신 모듈(1630), 메모리(1640)를 포함할 수 있다. 일 실시예에서 서버(1600)는 도 11의 서버(1130)일 수 있다.
일 실시예에서 프로세서(1610)는 서버(1600)의 전반적인 동작을 제어할 수 있다. 예를 들어 프로세서(1610)는 제1 전자 장치(1200)로부터 제2 전자 장치(1300)의 식별 정보를 수신한 경우, 제1 전자 장치(1200)와 제2 전자 장치(1300)간 근거리 통신 채널이 형성되어 있거나, 전력의 송수신이 이루어지고 있다고 판단하고, 제1 전자 장치(1200)의 음성 인식 기능을 활성화하는 제어 명령을 제1 전자 장치(1200)에 송신하고, 제2 전자 장치(1300)의 음성 인식 기능을 비활성화하는 제어 명령을 제2 전자 장치(1300)에 송신할 수 있다.
일 실시예에서 음성 처리 모듈(1620)는 제1 전자 장치(1200) 혹은 제2 전자 장치(1300)로부터 수신한 음성 발화에 대한 데이터를 분석하고, 음성 발화에 포함된 사용자 음성 명령의 의미를 파악할 수 있다. 예를 들어, 음성 처리 모듈(1620)은 사용자 음성 발화(예: "하이 빅스비, 오늘 골든 스테이트의 경기가 몇 시에 있어? (Hi Bixby, when is the Golden State Warriors game today?)")에 대한 데이터를 분석함으로써, 음성 발화에 포함된 사용자 음성 명령의 의미가 특정한 정보(골든 스테이트라는 프로 농구 팀의 경기 정보)의 요청임을 파악할 수 있다.
일 실시예에서, 음성 처리 모듈(1620)은 도 6에 개시된 자동 음성 인식 모듈(210), 자연어 이해 모듈(220), 패스 플래너 모듈(230), 대화 매니저 모듈(240), 자연어 생성 모듈(250), 텍스트 음성 변환 모듈(260)의 적어도 하나일 수 있다.
일 실시예에서 통신 모듈(1630)은 서버(1600)에 저장 혹은 생성된 데이터를 외부 장치(예: 제1 전자 장치(1200), 제2 전자 장치(1300))에 전송하고, 외부 장치에서 생성 혹은 저장된 데이터를 수신할 수 있다.
일 실시예에서 메모리(1640)은 서버(1130)에 연결되는, 혹은 서버(1130)에 등록한 복수의 전자 장치들(예: 제1 전자 장치(1200), 제2 전자 장치(1300))에 대한 정보를 저장할 수 있다.
일 실시예에서, 메모리(1640)은 복수의 전자 장치들의 각각의 식별 정보(예: 장치 ID)를, 복수의 장치들의 각각의 장치 정보(예: 제조사 정보, 하드웨어/소프트웨어 정보, 입출력 속성, 지원하는 규격 및 표준 정보, 계정 정보, 위치 정보 등)와 연관시켜 저장할 수 있다. 예를 들어, 메모리(1640)은 제2 전자 장치(1300)의 식별 정보를, 외부 장치의 장치 정보(예: 제조사(삼성), 특성(전력 공급 장치), 표준(WPC), 출력 전류(1000mA), 충전 전압(5V), 계정 정보(사용자 A), 위치 정보(사용자 A의 집, 거실), 입출력 속성(음성 입력, 음성 출력) 등)와 연관시켜 저장할 수 있다.
일 실시예에서, 메모리(1640)는 프로세서(1610)의 제어 하에, 장치 정보를 적어도 일시적으로 갱신할 수 있다. 예를 들어, 제1 전자 장치(1200)가 제2 전자 장치(1300)와 연결되어 제2 전자 장치(1300)로부터 전력을 전송 받고 있는 경우, 메모리(1640)는 제2 전자 장치(1300)의 위치 정보에 기반하여 제1 전자 장치(1200)의 위치 정보를 일시적으로 결정할 수 있다. 다른 예를 들어, 제1 전자 장치(1200)가 제2 전자 장치(1300)와 연결되어 제2 전자 장치(1300)로부터 전력을 전송 받고 있으며, 제1 전자 장치(1200)가 디스플레이를 포함하고 있는 경우, 메모리(1640)는 제2 전자 장치(1300)의 입출력 속성을 일시적으로 갱신할 수 있다(예: 음성 입력, 음성 출력 -> 음성 입력, 음성 출력, 영상 출력). 메모리(1640)는 갱신된 제2 전자 장치(1300)의 영상 출력 속성에, 제2 전자 장치(1300)가 제1 전자 장치(1200)에 연결된 경우에만 추가될 수 있는 속성임을 나타내는 정보(예: 플래그)를 추가할 수도 있다.
도 17는 본 발명의 다양한 실시예에 따른 제1 전자 장치의 동작 순서를 나타낸 흐름도이다.
도 17의 동작 주체인 제1 전자 장치는 제1 전자 장치(1200) 혹은 제1 전자 장치(1200)의 프로세서(1210)를 의미할 수 있다.
1710동작에서, 제1 전자 장치(1200)는 제2 전자 장치(1300)로부터, 제2 전자 장치(1300)에 대한 정보를 수신할 수 있다. 제2 전자 장치(1300)에 대한 정보는 제2 전자 장치(1300)의 고유 식별 정보를 포함할 수 있다. 제2 전자 장치(1300)에 대한 정보는 제2 전자 장치(1300)의 하드웨어/소프트웨어 정보, 입출력 속성 정보를 포함할 수 있다.
예를 들어, 제2 전자 장치(1300)가 자기 유도 방식으로 제1 전자 장치(1200)에 전력을 무선으로 공급하는 장치일 경우, 제1 전자 장치(1200)는 제2 전자 장치(1300)의 충전 패드 위에 놓여진 후, 근거리 통신을 통하여 제2 전자 장치(1300)로부터 제2 전자 장치(1300)에 대한 정보를 수신할 수 있다.
다른 예를 들어, 제2 전자 장치(1300)가 자기 공명 방식으로 제1 전자 장치(1200)에 전력을 무선으로 공급하는 장치일 경우, 제1 전자 장치(1200)는 제2 전자 장치(1300)의 송전 가능 범위에 위치한 후, 근거리 통신을 통하여 제2 전자 장치(1300)로부터 장치 정보를 수신할 수 있다.
일 실시예에서, 제1 전자 장치(1200)는 충전 회로를 통하여 제2 전자 장치(1300)에 대한 정보를 수신할 수 있다. 일 실시예에서, 충전 회로는 전력 수신 회로(예:도 14의 수신 회로(21)), 제어 회로(22), 통신 회로(23) 중 적어도 하나의 회로의 적어도 일부를 의미할 수 있다.
다른 실시예에서, 제1 전자 장치(1200)는 통신 모듈(1240)을 통하여 제2 전자 장치(1300)에 대한 정보를 수신할 수도 있다.
1720동작에서, 제1 전자 장치(1200)는 제2 전자 장치(1300)로부터 공급된 전력으로, 제1 전자 장치(1200)의 배터리(예: 도 14의 배터리(21e))를 충전할 수 있다. 제1 전자 장치(1200)는 무선 충전 모듈(1220, 21)을 통하여 제2 전자 장치(1300)의 송신 코일(11L)로부터 무선으로 전력을 수신할 수 있다. 제1 전자 장치(1200)는 수신한 전력으로 제1 전자 장치(1200)의 배터리(21e)를 충전하도록 무선 충전 모듈(1220, 21)을 제어할 수 있다.
1730동작에서, 제1 전자 장치(1200)는 제2 전자 장치(1300)에 대한 정보의 적어도 일부를 서버에 전송할 수 있다. 서버는 서버(1600)일 수 있다. 제1 전자 장치(1200)는 제2 전자 장치(1300)로부터 공급된 전력을 이용하여 제1 전자 장치(1200)의 배터리를 충전하고 있는 도중, 제2 전자 장치(1300)에 대한 정보의 적어도 일부를 서버(1600)에 전송할 수 있다. 예를 들어 제1 전자 장치(1200)는 제2 전자 장치(1300)의 식별 정보 또는 제2 전자 장치(1300)의 입출력 속성 정보를 서버(1600)에 전송할 수 있다.
1740동작에서, 제1 전자 장치(1200)는 음성 기반 서비스(voice-based service)와 관련된 응답을 서버(1600)로부터 수신할 수 있다.
일 실시예에서, 음성 기반 서비스는 마이크(1270), 스피커(1260), 디스플레이(1280)를 이용한 서비스일 수 있다. 예를 들어 음성 기반 서비스는 사용자의 음성 인식 서비스일 수 있다. 사용자의 음성 인식 서비스는 사용자의 음성 발화를 인식하고, 인식한 사용자의 음성 발화에 대응하는 기능을 수행하는 서비스일 수 있다. 예를 들어, 사용자 음성 인식 서비스는 사용자가 "마이클 잭슨의 빌리 진을 틀어줘"라는 음성을 발화한 경우, 사용자 음성 발화를 인식하여 요청된 음악을 재생하고 스피커로 출력하는 기능일 수 있다.
다른 실시예에서, 음성 기반 서비스는 사용자의 음성 인식 서비스와 관련된 서비스 혹은 기능일 수 있다. 예를 들어 음성 기반 서비스는 사용자의 음성 인식 서비스의 잡음 제거(ANC, Active Noise Canceling) 서비스일 수 있다.
일 실시예에서 제1 전자 장치(1200)는 1730동작에 대응하여, 음성 기반 서비스와 관련된 응답을 서버(1600)로부터 수신할 수 있다.
일 실시예에서 제1 전자 장치(1200)는 음성 기반 서비스와 관련된 제어 명령을 서버(1600)로부터 수신할 수 있다. 예를 들어 제1 전자 장치(1200)는 제1 전자 장치(1200)의 마이크(1270)와 스피커(1260)를 활성화할 것을 나타내는 제어 명령을 서버(1600)로부터 수신할 수 있다.
일 실시예에서 제1 전자 장치(1200)는 제2 전자 장치(1300)의 음성 기반 서비스와 관련된 제어 명령을 서버(1600)로 수신할 수도 있다.
1750동작에서, 제1 전자 장치(1200)는 1740동작에서 수신한 응답에 적어도 기반하여 음성 기반 서비스를 활성화, 비활성화 혹은 변경할 수 있다.
일 실시예에서 제1 전자 장치(1200)는 음성 기반 서비스를 수행하기 위한 사운드 설정을 변경할 수 있다.
다른 실시예에서, 제1 전자 장치(1200)는 음성 기반 서비스를 수행하기 위한 하드웨어를 활성화 혹은 비활성화할 수도 있다. 예를 들어, 제1 전자 장치(1200)가 전자 장치의 마이크(1270)와 스피커(1260)를 활성화할 것을 나타내는 제어 명령을 1740동작에서 수신한 경우, 전자 장치는 전자 장치의 마이크(1270)와 스피커(1260)를 활성화할 수 있다.
일 실시예에서, 제2 전자 장치(1300)와 관련된 제어 명령을 서버(1600)로부터 수신한 경우, 제1 전자 장치(1200)는 수신한 제어 명령을 제2 전자 장치(1300)로 전송 혹은 포워딩(forward)할 수 있다.
도 18은 본 발명의 다양한 실시예에 따른 제2 전자 장치의 동작 순서를 나타낸 흐름도이다.
도 18의 동작 주체인 제2 전자 장치는 도 13의 제2 전자 장치(1300) 혹은 제2 전자 장치(1300)의 프로세서(1310)를 나타낼 수 있다.
1810동작에서, 제2 전자 장치(1300)는 제1 전자 장치(1200)로부터, 제1 전자 장치(1200)에 대한 정보를 수신할 수 있다. 일 실시에에서, 제1 전자 장치(1200)에 대한 정보는 제1 전자 장치(1200)의 고유 식별 정보를 포함할 수 있다. 일 실시예에서, 제1 전자 장치(1200)에 대한 정보는 제1 전자 장치(1200)의 하드웨어/소프트웨어 정보, 입출력 속성 정보를 포함할 수 있다.
예를 들어, 제2 전자 장치(1300)가 자기 유도 방식으로 제1 전자 장치(1200)에 전력을 무선으로 공급하는 장치일 경우, 제2 전자 장치(1300)는 제2 전자 장치(1300)의 충전 패드 위에 놓여진 제1 전자 장치(1200)로부터 근거리 통신을 통하여, 제1 전자 장치(1200)에 대한 정보를 수신할 수 있다.
1820동작에서, 제2 전자 장치(1300)는 제1 전자 장치(1200)를 충전하도록 충전 회로(예: 도 14의 전력 생성 회로(11))를 제어할 수 있다. 제2 전자 장치(1300)는 제2 전자 장치의 송신 코일(11L)에 의해 산출된 전력이 제1 전자 장치(1200)로 전송되도록 전력 생성 회로(11)를 제어할 수 있다.
1830동작에서, 전자 장치(1300)는 수신한 정보의 적어도 일부를 서버(1600)에 전송할 수 있다. 제2 전자 장치(1300)는 제1 전자 장치(1200)에 전력을 제공하고 있는 도중, 제1 전자 장치(1200)에 대한 정보의 적어도 일부를 서버(1600)에 전송할 수 있다. 예를 들어 제2 전자 장치(1300)는 제1 전자 장치(1200)의 식별 정보 또는 제1 전자 장치(1200)의 입출력 속성 정보를 서버(1600)에 전송할 수 있다.
1840동작에서, 제2 전자 장치(1300)는 음성 기반 서비스와 관련된 응답을 서버(1600)로부터 수신할 수 있다.
일 실시예에서, 음성 기반 서비스는 마이크(1360), 스피커(1370), 표시부(1530, 1550)를 이용한 서비스일 수 있다. 예를 들어 음성 기반 서비스는 사용자의 음성 인식 서비스일 수 있다. 사용자의 음성 인식 서비스는 사용자의 음성 발화를 인식하고, 인식한 사용자의 음성 발화에 대응하는 기능을 수행하는 서비스일 수 있다.
일 실시예에서 제2 전자 장치(1300)는 음성 기반 서비스와 관련된 응답을 제1 전자 장치(1200)로부터 수신할 수도 있다.
1850동작에서, 제2 전자 장치(1300)는 제1 전자 장치(1200)의 배터리(도 14의 21e)를 충전하고 있는 도중(또는, 제1 전자 장치(1200)에 전력을 제공하고 있는 도중) 상기 응답에 적어도 기반하여 음성 기반 서비스를 활성화, 비활성화 혹은 변경할 수 있다. 예를 들어 제2 전자 장치(1300)의 마이크(1370)와 스피커(1360)를 비활성화할 것을 나타내는 제어 명령을 1840동작에서 수신한 경우, 제2 전자 장치(1300)는 제2 전자 장치(1300)의 마이크(1370)와 스피커(1360)를 비활성화할 수 있다.
도 19은 본 발명의 다양한 실시예에 따른 제1 전자 장치의 동작 순서를 나타낸 흐름도이다.
도 19의 동작 주체인 제1 전자 장치는 제1 전자 장치(1200), 혹은 제1 전자 장치(1200)의 프로세서(1210)를 의미할 수 있다.
1910동작에서, 제1 전자 장치(1200)는 제2 전자 장치(1300)와 연결될 수 있다. 제1 전자 장치(1200)는 제2 전자 장치(1300)와 유선 혹은 무선으로 연결될 수 있다. 제1 전자 장치(1200)는 제2 통신 회로(도 14의 제2 통신 회로(23b))를 이용하여 제2 전자 장치(1300)에 전력 공급을 요청하는 신호를 전달함으로써, 제2 전자 장치(1300)와의 연결을 시도할 수 있다. 제1 전자 장치(1200)는 제2 통신 회로(23b)를 이용하여 제2 전자 장치(1300)로부터 전력 공급 요청에 대한 응답을 수신함으로써, 제2 전자 장치(1300)와 연결될 수 있다. 제2 전자 장치(1300)와 연결된 제1 전자 장치(1200)는, 제2 전자 장치(1300) 간 근거리 통신 채널을 생성할 수 있다.
일 실시예에서, 제2 전자 장치(1300)가 자기 유도 방식의 전력 공급 장치인 경우, 제1 전자 장치(1200)는 제2 전자 장치(1300)의 표면 혹은 하우징과 접촉됨에 대응하여 제2 전자 장치(1300)와 연결을 시도할 수 있다. 다른 실시예에서, 제2 전자 장치(1300)가 자기 공명 방식의 전력 공급 장치인 경우, 제1 전자 장치(1200)는 제1 전자 장치(1200)가 현재 제2 전자 장치(1300)의 송전 가능 범위에 포함됨을 인식함에 대응하여 제2 전자 장치(1300)와 연결을 시도할 수 있다.
일 실시예에서, 제1 전자 장치(1200)는 제2 전자 장치(1300)로부터 전력 공급 요청에 대한 응답과 함께, 혹은 응답을 수신한 후, 제2 전자 장치(1300)로부터 제2 전자 장치(1300)의 식별 정보를 수신할 수 있다. 제2 전자 장치(1300)로부터 전력 공급 요청에 대한 긍정 확인 응답과 함께, 혹은 긍정 확인 응답을 수신한 후, 제2 전자 장치(1300)로부터 제2 전자 장치(1300)의 식별 정보를 수신할 수 있다. 제2 전자 장치(1300)의 식별 정보는 제2 전자 장치(1300) 고유의 정보일 수 있다. 예를 들어 제1 전자 장치(1200)는, 제2 전자 장치(1300)의 장치 ID(Identification)와 같은 제2 전자 장치(1300)의 식별 정보를 수신할 수 있다. 제1 전자 장치(1200)는 제2 전자 장치(1300)의 식별 정보뿐만 아니라 제2 전자 장치(1300)의 하드웨어/소프트웨어의 특성을 나타내는 정보를 수신할 수도 있다. 예를 들어 제1 전자 장치(1200)는 제2 전자 장치(1300)의 제조사 정보, 제품명, 제품코드, 제품에 설치된 운영 체제 정보 등을 수신할 수 있다. 제1 전자 장치(1200)는 제2 전자 장치(1300)의 식별 정보, 제2 전자 장치(1300)의 특성을 나타내는 정보뿐만 아니라 제2 전자 장치(1300)의 사용자에 관한 정보를 수신할 수도 있다. 예를 들어 제1 전자 장치(1200)는 제2 전자 장치(1300)에 지정된 사용자에 관한 정보(예를 들어 제2 전자 장치(1300)에 지정된 사용자의 계정 정보)를 수신할 수도 있다.
일 실시예에서, 제1 전자 장치(1200)는 제2 전자 장치(1300)로부터 전력 공급 요청에 대한 응답을 수신한 후, 혹은 응답을 수신하기 전 제1 전자 장치(1200)의 식별 정보를 서버(1600)에 전송할 수 있다. 제1 전자 장치(1200)는 제1 전자 장치(1200)의 식별 정보, 제1 전자 장치(1200)의 특성을 나타내는 정보 또는 제1 전자 장치(1200)의 사용자에 관한 정보를 서버(1600)에 전송할 수 있다.
일 실시예에서, 제1 전자 장치(1200) 혹은 제2 전자 장치(1300)는, 제2 전자 장치(1300)의 무선 충전 방식에 따라 결정되는 통신 방식으로 정보를 전달할 수 있다. 예를 들어, 제2 전자 장치(1300)가 자기 유도 방식의 전력 공급 장치인 경우, 제1 전자 장치(1200) 혹은 제2 전자 장치(1300)는 접촉식 통신 방식(예: NFC)으로 정보를 전달할 수 있다. 다른 예를 들어, 제2 전자 장치(1300)가 자기 공명 방식의 전력 공급 장치인 경우, 아웃 오브 밴드(Out of band) 통신 방식 혹은 인 밴드(In band) 통신 방식 이용하여 정보를 전달할 수 있다.
1920동작에서, 제1 전자 장치(1200)는 서버(1600)에 제2 전자 장치(1300)의 식별 정보를 전송할 수 있다. 제1 전자 장치(1200)는 서버(1600)에 제2 전자 장치(1300)의 식별 정보를 전송함으로써, 현재 제1 전자 장치(1200)와 제2 전자 장치(1300) 간 전력의 송수신이 이루어지고 있음 혹은 근거리 통신 채널이 생성되어 있음을 서버(1600)에 알릴 수 있다.
일 실시예에서, 제1 전자 장치(1200)는 서버(1600)에 제2 전자 장치(1300)의 식별 정보와 함께 제1 전자 장치(1200)의 식별 정보 및/또는 제1 전자 장치(1200)의 상태 정보를 전송할 수 있다. 예를 들어, 제1 전자 장치(1200)는 서버(1600)에 제1 전자 장치(1200)의 장치 ID, 핀 코드(Pin code), 맥 어드레스(Mac address)와 같은 제1 전자 장치(1200)의 식별 정보를 전송할 수 있다. 다른 예를 들어, 제1 전자 장치(1200)는 서버(1600)에 제1 전자 장치(1200)의 배터리 상태, 제1 전자 장치(1200)의 동작 모드(예: 슬립 모드, 아이들 모드, 활성 모드) 혹은 출력 상태에 대한 정보(예: 제1 전자 장치(1200)의 스피커(1260)에 사운드가 출력되고 있는지 여부, 혹은 제1 전자 장치(1200)의 디스플레이(1280)에 영상이 출력되고 있는지 여부) 등을 전송할 수 있다.
일 실시예에서, 제1 전자 장치(1200)는 서버(1600)에, 전력 송수신에 관한 정보를 추가적으로 전송할 수 있다. 예를 들어 제1 전자 장치(1200)는 서버(1600)에, 전력 수신 상태에 대한 정보(예: 전력을 현재 수신하고 있는지 여부, 현재 수신하고 있다면 수신률에 대한 정보 등)를 전송할 수 있다.
1930동작에서, 제1 전자 장치(1200)는 음성 인식 기능을 활성화할 수 있다. 음성 인식 기능은 제1 전자 장치(1200)의 외부로부터 제1 전자 장치(1200)의 마이크(1270)로 입력되는 다양한 음원의 소리(예: 사용자 음성, 외부 잡음, 제1 전자 장치(1200)에서 출력되는 소리 등)를 전기적 신호로 변환시키는 기능을 포함할 수 있다. 제1 전자 장치(1200)는 제1 전자 장치(1200)의 마이크(1270) 및 음성 인식 모듈(1230)을 활성화시킴으로써, 음성 인식 기능을 활성화할 수 있다. 음성 인식 기능이 활성화됨으로써, 제1 전자 장치(1200)는 사용자 음성 발화의 수신 대기 모드에 진입할 수 있다.
일 실시예에서, 제1 전자 장치(1200)는 제1 전자 장치(1200)의 메모리(1160)에 미리 저장된 설정에 기반하여 음성 인식 기능을 활성화할 수 있다. 예를 들어, 제1 전자 장치(1200)의 메모리(1160)는, 제1 전자 장치(1200)가 제2 전자 장치(1300)와 연결됨을 검출하는 경우, 음성 인식 기능을 활성화시키는 명령어를 저장하고 있을 수 있다.
다른 실시예에서, 제1 전자 장치(1200)는 서버(1600)로부터 수신하는 제어 명령에 기반하여 음성 인식 기능을 활성화할 수 있다. 제1 전자 장치(1200)는 서버(1600)에 제2 전자 장치(1300)의 식별 정보를 전송한 후, 제1 전자 장치(1200)의 음성 인식 기능의 활성화를 나타내는 제어 명령을 서버(1600)로부터 수신할 수 있다. 제1 전자 장치(1200)는 서버(1600)로부터 수신한 제어 명령에 기반하여 제1 전자 장치(1200)의 음성 인식 기능을 활성화할 수 있다.
1940동작에서, 제1 전자 장치(1200)는 사용자 음성 발화를 인식할 수 있다. 제1 전자 장치(1200)는 제1 전자 장치(1200)의 활성화된 음성 인식 기능을 이용하여 사용자 음성 발화를 인식할 수 있다. 사용자 음성 발화는 트리거 사운드와 음성 명령을 포함할 수 있다. 제1 전자 장치(1200)는 활성화된 마이크(1270)를 이용하여 마이크(1270)에 입력되는 사운드를 전기적 신호로 변환할 수 있다. 제1 전자 장치(1200)는 변환된 전기적 신호가 미리 저장된 신호 패턴과 미리 결정된 값 이상의 매칭률을 나타내는 제1 신호를 포함하는지 여부를 결정할 수 있다. 변환된 전기적 신호가 제1 신호를 포함하지 않는다면, 제1 전자 장치(1200)는 사용자 음성 발화의 수신 대기 모드를 계속 유지할 수 있다. 변환된 전기적 신호가 제1 신호를 포함한다면, 제1 전자 장치(1200)는 제1 신호와 이어지는 제2 신호를 인식 (혹은 결정) 할 수 있다. 제1 전자 장치(1200)는 미리 결정된 값 이하의 출력이 미리 결정된 값 이상의 시간 동안 지속될 때까지, 제1 신호 이후 이어지는 신호를 제2 신호로 결정할 수 있다. 제1 신호는 트리거 사운드, 제2 신호는 음성 명령을 각각 나타낼 수 있다. 예를 들어, 제1 전자 장치(1200)는 "하이 빅스비, 오늘 골든 스테이트의 경기가 몇 시에 있어? (Hi Bixby, when is the Golden State Warriors game today?)"와 같은 사용자 음성 발화를 인식할 수 있으며, "Hi Bixby"는 트리거 사운드, "when is the Warriors game today?"는 음성 명령을 각각 나타낼 수 있다.
1950동작에서, 제1 전자 장치(1200)는 음성 명령에 대한 피드백 데이터를 서버(1600)에 요청할 수 있다. 제1 전자 장치(1200)는 1940동작에서 인식한 사용자 음성 발화를 변환한 전기적 신호 중에서, 음성 명령에 대응하는 전기적 신호(제2 신호)를 서버(1600)에 전송할 수 있다. 제1 전자 장치(1200)는 음성 명령에 대응하는 전기적 신호(제1 신호)와 함께, 음성 명령이 특정한 정보를 묻는 발화인 경우, 특정한 정보를 제공할 것을 요청하는 신호를 서버(1600)에 전송할 수 있다.
1960동작에서, 제1 전자 장치(1200)는 서버(1600)로부터, 음성 명령에 대한 피드백 데이터 및 피드백 데이터의 출력 정보를 수신할 수 있다. 일 실시예에서, 음성 명령이 특정한 정보를 묻는(혹은 요청하는) 발화인 경우, 제1 전자 장치(1200)는 특정한 출력 포맷(예: 사운드, 영상)으로 인코딩된 상기 특정한 정보(이하 피드백 데이터로 기재)를 서버(1600)로부터 수신할 수 있다. 예를 들어, 음성 명령이 골든 스테이트 워리어스의 경기 정보의 제공 요청인 경우, 제1 전자 장치(1200)는 사운드 포맷으로 인코딩된 골든 스테이트 워리어스의 경기 정보를 서버(1600)로부터 수신할 수 있다. 일 실시예에서, 제1 전자 장치(1200)는 출력 포맷을 지정하지 않고 특정한 정보를 요청할 수 있으며, 서버(1600)로부터 제1 포맷(예: 사운드)의 피드백 데이터, 혹은 제1 포맷(예: 사운드)과 제2 포맷(예: 음성)의 피드백 데이터들을 수신할 수 있다. 예를 들어 제1 전자 장치(1200)는 포맷을 지정하지 않고 골든 스테이트 워리어스의 경기 정보를 요청할 수 있으며, 서버(1600)로부터 영상 포맷의 피드백 데이터를 수신할 수 있다. 다른 예를 들어 제1 전자 장치(1200)는 이미지 포맷의 피드백 데이터 및 사운드 포맷의 피드백 데이터를 수신할 수 있다.
일 실시예에서, 피드백 데이터의 출력 정보는 피드백 데이터를 출력할 장치에 대한 정보를 포함할 수 있다. 예를 들어, 제1 전자 장치(1200)는, 피드백 데이터의 제1 부분을 제1 전자 장치(1200)에서 출력하고, 피드백 데이터의 제2 부분은 제2 전자 장치(1300)에서 출력할 것을 나타내는 출력 정보를 수신할 수 있다.
다른 실시예에서, 피드백 데이터의 출력 정보는 피드백 데이터를 출력할 조건에 대한 정보를 포함할 수 있다. 예를 들어, 제1 전자 장치(1200)는, 제1 전자 장치(1200)가 제2 전자 장치(1300)로부터 충전되고 있는 중이라면 피드백 데이터의 제1 부분을 제1 전자 장치(1200)에서 출력하고 피드백 데이터의 제2 부분을 제2 전자 장치(1300)에서 출력할 것을 나타내는 출력 정보를 수신할 수 있다. 다른 예를 들어, 제1 전자 장치(1200)는, 제1 전자 장치(1200)가 제2 전자 장치(1300)로부터 충전되고 있는 중이라면, 피드백 데이터의 전체 부분을 제1 전자 장치(1200)에서 출력할 것을 나타내는 출력 정보를 수신할 수 있다. 또 다른 예를 들어, 제1 전자 장치(1200)는, 제1 전자 장치(1200)가 제2 전자 장치(1300)로부터 충전되고 있지 않다면, 피드백 데이터의 전체 부분을 제2 전자 장치(1300)에서 출력할 것을 나타내는 출력 정보를 수신할 수 있다.
1970동작에서, 제1 전자 장치(1200)는 제2 전자 장치(1300)에, 서버(1600)로부터 수신한 피드백 데이터의 일부를 전송할 수 있다. 제1 전자 장치(1200)는 1360동작에서 수신한 출력 정보에 일부 기반하여, 피드백 데이터의 일부를 전송할 수 있다. 예를 들어, 1960동작에서 제1 전자 장치(1200)가, 피드백 데이터의 제1 부분을 제1 전자 장치(1200)에서 출력하고, 피드백 데이터의 제2 부분은 제2 전자 장치(1300)에서 출력할 것을 나타내는 출력 정보를 수신한 경우, 제1 전자 장치(1200)는 피드백 데이터의 제2 부분을 제2 전자 장치(1300)에 전송할 수 있다.
일 실시예에서, 제1 전자 장치(1200)는 수신한 출력 정보의 적어도 일부를 제2 전자 장치(1300)에 전송할 수 있다. 예를 들어, 제1 전자 장치(1200)가 제2 전자 장치(1300)로부터 충전되고 있지 않다면, 피드백 데이터의 전체 부분을 제2 전자 장치(1300)에서 출력할 것을 나타내는 출력 정보를 수신한 경우, 제1 전자 장치(1200)는 피드백 데이터의 전체 및 상기 수신한 출력 정보를 제2 전자 장치(1300)에 전송할 수 있다.
도 20은 본 발명의 다양한 실시예에 따른 제2 전자 장치의 동작 순서를 나타낸 흐름도이다.
도 20의 동작 주체인 제2 전자 장치는 제2 전자 장치(1300) 혹은 제2 전자 장치(1300)의 프로세서(1310)일 수 있다.
2010동작에서, 제2 전자 장치(1300)는 제1 전자 장치(1200)와 연결될 수 있다. 제2 전자 장치(1300)는 제1 전자 장치(1200)로부터 전력 공급을 요청하는 신호를 수신할 수 있다. 제2 전자 장치(1300)는 제2 전자 장치(1300)의 배터리 잔량, 제2 전자 장치(1300)가 지원하는 표준, 제2 전자 장치(1300)가 지원하는 장치 종류 중 적어도 하나에 기반하여 전력 공급 요청에 대한 응답을 전송할 수 있다. 제2 전자 장치(1300)는 전력 공급 요청에 대한 긍정 확인 응답을 전송함으로써, 제1 전자 장치(1200)와 연결을 수립 혹은 형성할 수 있다.
일 실시예에서 제2 전자 장치(1300)는 제1 전자 장치(1200)에 긍정 확인 응답을 전송한 후 혹은 긍정 확인 응답을 전송하기 전 제1 전자 장치(1200)의 식별 정보를 서버(1600)에 전송할 수 있다. 제2 전자 장치(1300)는 제1 전자 장치(1200)에 긍정 확인 응답과 함께, 혹은 긍정 확인 응답을 전송한 후 제2 전자 장치(1300)의 식별 정보를 서버(1600)에 전송할 수 있다.
2020동작에서, 제2 전자 장치(1300)는 서버(1600)에 제1 전자 장치(1200)의 식별 정보를 전송할 수 있다. 제2 전자 장치(1300)는 서버(1600)에 제1 전자 장치(1200)의 식별 정보를 전송함으로써, 현재 제2 전자 장치(1300)와 제1 전자 장치(1200) 간 전력의 송수신이 이루어지고 있음 혹은 근거리 통신 채널이 형성되어 있음을 서버(1600)에 알릴 수 있다.
일 실시예에서, 제2 전자 장치(1300)는 서버(1600)에 제1 전자 장치(1200)의 식별 정보와 함께 제2 전자 장치(1300)의 식별 정보 및/또는 제2 전자 장치(1300)의 상태 정보를 전송할 수 있다. 예를 들어, 제2 전자 장치(1300)는 서버(1600)에 제2 전자 장치(1300)의 동작 모드에 대한 정보(예: 노멀 충전 모드, 급속 충전 모드 등), 제2 전자 장치(1300)의 출력 상태 정보(예: 제2 전자 장치(1300)의 스피커(1360)에 사운드가 출력되고 있는지 여부)등을 전송할 수 있다.
일 실시예에서, 제2 전자 장치(1300)는 서버(1600)에, 전력 송수신에 관한 정보를 추가적으로 전송할 수 있다. 예를 들어, 제2 전자 장치(1300)는 서버(1600)에, 전력 송신 상태에 대한 정보(예: 전력을 현재 전송하고 있는지 여부, 전력을 현재 전송하고 있다면 그 전송률 등)를 전송할 수 있다.
2030동작에서, 제2 전자 장치(1300)는 음성 인식 기능을 비활성화할 수 있다. 제2 전자 장치(1300)는 제2 전자 장치(1300)의 마이크(1370) 및/또는 음성 인식 모듈(1330)을 비활성화시킴으로써, 제2 전자 장치(1300)의 음성 인식 기능을 비활성화할 수 있다.
일 실시예에서, 제2 전자 장치(1300)는 제2 전자 장치(1300)의 메모리(1350)에 미리 저장된 설정에 기반하여 음성 인식 기능을 비활성화할 수 있다. 예를 들어, 제2 전자 장치(1300)의 메모리(1350)는, 제2 전자 장치(1300)가 제1 전자 장치(1200)와 연결됨을 검출하는 경우, 음성 인식 기능을 비활성화하는 명령어를 저장하고 있을 수 있다.
다른 실시예에서, 제2 전자 장치(1300)는 서버(1600)로부터 수신하는 제어 명령에 기반하여 음성 인식 기능을 비활성화할 수 있다. 제2 전자 장치(1300)는 서버(1600)에 제1 전자 장치(1200)의 식별 정보를 전송한 후, 제2 전자 장치(1300)의 음성 인식 기능의 비활성화를 나타내는 제어 명령을 서버(1600)로부터 수신할 수 있다. 제2 전자 장치(1300)는 서버(1600)로부터 수신한 제어 명령에 기반하여 제2 전자 장치(1300)의 음성 인식 기능을 비활성화할 수 있다.
2040동작에서, 제2 전자 장치(1300)는 제1 전자 장치(1200)로부터, 음성 명령에 대한 피드백 데이터의 적어도 일부를 수신할 수 있다. 음성 명령은, 음성 인식 기능이 활성화된 제1 전자 장치(1200)에서 인식된 음성 발화에 포함된 음성 명령일 수 있다.
일 실시예에서, 제2 전자 장치(1300)는 서버(1600)로 음성 명령에 대한 피드백 데이터를 요청하지 않은 상태(혹은 음성 인식 기능이 비활성화된 상태)에서, 음성 명령에 대한 피드백 데이터의 적어도 일부를 수신할 수 있다.
일 실시예에서 피드백 데이터의 적어도 일부는, 복수의 출력 포맷들(예를 들어 제1 포맷(영상)과 제2 포맷(사운드))을 포함하는 피드백 데이터 중 일부의 포맷(예를 들어 제2 포맷(사운드))을 나타낼 수 있다. 예를 들어, 피드백 데이터가 영상 데이터 및 사운드 데이터를 포함하는 경우, 제2 전자 장치(1300)는 제1 전자 장치(1200)로부터 사운드 데이터를 수신할 수 있다.
일 실시예에서, 제2 전자 장치(1300)는 제1 전자 장치(1200)가 아니라, 서버(1600)로부터 피드백 데이터의 적어도 일부를 수신할 수도 있다.
2050동작에서, 제2 전자 장치(1300)는 2040동작에서 수신한 적어도 일부의 피드백 데이터를 출력할 수 있다.
일 실시예에서, 제2 전자 장치(1300)는 수신한 적어도 일부의 피드백 데이터의 포맷에 따라, 출력할 수 있다. 예를 들어, 수신한 적어도 일부의 피드백 데이터의 포맷이 사운드 포맷인 경우, 제2 전자 장치(1300)의 프로세서(1310)는 수신한 일부 피드백 데이터를 출력하도록 스피커(1360)를 제어할 수 있다.
도 21은 본 발명의 다양한 실시예에 따른 서버의 동작 순서를 나타낸 흐름도이다.
도 21의 동작 주체인 서버는 서버(1600) 혹은 서버(1600)의 프로세서(1610)일 수 있다. 일 수 있다.
2110동작에서, 서버(1600)는 제2 전자 장치(1300)로부터 제1 전자 장치(1200)의 식별 정보를 수신할 수 있다.
미도시되었지만, 서버(1600)는 제2 전자 장치(1300)로부터 제1 전자 장치(1200)의 식별 정보를 수신한 때로부터 기 설정된 시구간 범위 이내에, 제1 전자 장치(1200)로부터 제2 전자 장치(1300)의 식별 정보를 수신할 수 있다.
일 실시예에서, 서버(1600)는 제2 전자 장치(1300)로부터 제1 전자 장치(1200)의 식별 정보를 수신한 경우 (혹은 제1 전자 장치(1200)로부터 제2 전자 장치(1300)의 식별 정보를 수신한 경우, 혹은 제2 전자 장치(1300)로부터 제1 전자 장치(1200)의 식별 정보를 수신하고, 제1 전자 장치(1200)로부터 제2 전자 장치(1300)의 식별 정보를 수신한 경우), 서버(1600)는 제1 전자 장치(1200)와 제2 전자 장치(1300) 간 근거리 통신 채널이 수립 혹은 형성되어 있음을 판단할 수 있다.
일 실시예에서, 서버(1600)는 제1 전자 장치(1200) 혹은 제2 전자 장치(1300)로부터, 상태 정보 혹은 전력 송수신에 관한 정보를 수신할 수 있다. 예를 들어, 서버(1600)는 제1 전자 장치(1200)로부터 제1 전자 장치(1200)의 출력 상태 정보(예: 제1 전자 장치(1200)의 스피커(1260)에 사운드가 출력되고 있음을 나타내는 정보)를 수신할 수 있다. 다른 예를 들어, 서버(1600)는 제2 전자 장치(1300)로부터, 제2 전자 장치(1300)의 출력 상태 정보(예: 제2 전자 장치(1300)의 스피커(1360)에 사운드가 출력되고 있지 않음을 나타내는 정보)를 수신할 수 있다. 또 다른 예를 들어, 서버(1600)는 제1 전자 장치(1200)로부터 전력 수신 상태에 대한 정보를, 제2 전자 장치(1300)로부터 전력 송신 상태에 대한 정보를 수신할 수 있다. 서버(1600)는 수신한 전력 송수신 정보에 기반하여 전력 송신 효율을 결정할 수 있다.
일 실시예에서, 서버(1600)는 제1 전자 장치(1200)와 제2 전자 장치(1300)의 장치 정보들을 확인(identify)할 수 있다. 예를 들어 서버(1600)는 수신한 식별 정보에 기반하여 제1 전자 장치(1200)와 제2 전자 장치(1300)의 장치 정보들을 확인할 수 있다. 서버(1600)는 서버(1600)의 메모리(1640)에, 복수의 장치들의 각각의 식별 정보(예: 장치 ID)를 복수의 장치들의 각각의 장치 정보(예: 장치의 제조사 정보, 성능 정보, 하드웨어/소프트웨어 정보, 지원하는 규격 및 표준 정보, 계정 정보, 위치 정보 등)와 연관시켜 저장해 둘 수 있다. 서버(1600)는 서버(1600)의 메모리(1640)에 저장된 복수의 장치들의 식별 정보들을 검색(retrieve)함으로써, 제1 전자 장치(1200)와 제2 전자 장치(1300)의 장치 정보들을 확인할 수 있다. 예를 들어, 제1 전자 장치(1200)로부터 제2 전자 장치(1300)의 식별 정보를 수신한 경우, 서버(1600)는 수신한 제2 전자 장치(1300)의 식별 정보에 기반하여, 제2 전자 장치(1300)의 장치 정보(예: 제조사(삼성), 특성(전력 공급 장치), 표준(WPC), 출력 전류(1000mA), 충전 전압(5V), 계정 정보(사용자 A), 위치 정보(사용자 A의 집, 거실) 등)를 확인할 수 있다. 다른 예를 들어, 제1 전자 장치(1200)로부터 제1 전자 장치(1200)의 식별 정보를 수신한 경우, 서버(1600)는 수신한 제1 전자 장치(1200)의 식별 정보에 기반하여, 제1 전자 장치(1200)의 장치 정보(예: 제조사(삼성), 특성(휴대용 통신 단말), 계정 정보(사용자 A) 등)를 확인할 수 있다.
2120동작에서, 서버(1600)는 제1 전자 장치(1200)의 위치 정보를 결정할 수 있다. 일 실시예에서, 서버(1600)는 2110동작에서 확인한 제2 전자 장치(1300)의 위치 정보에 기반하여 제1 전자 장치(1200)의 위치 정보를 결정할 수 있다. 서버(1600)는 정해지지 않았던 제1 전자 장치(1200)의 위치 정보를 결정할 수도 있고, 제1 전자 장치(1200)의 기존 위치 정보를 새롭게 갱신할 수도 있다.
일 실시예에서, 서버(1600)는 2110동작에서 확인한 제1 전자 장치(1200)와 제2 전자 장치(1300)의 계정 정보에 기반하여 제1 전자 장치(1200)의 위치 정보를 결정할 수 있다. 예를 들어, 제1 전자 장치(1200)의 계정이 제2 전자 장치(1300)의 계정과 일치할 경우, 서버(1600)는 제2 전자 장치(1300)의 위치 정보에 기반하여 제1 전자 장치(1200)의 위치 정보를 결정할 수 있다. 다른 예를 들어, 제1 전자 장치(1200)의 계정이 제2 전자 장치(1300)의 계정과 연관된 계정인 경우, 서버(1600)는 제2 전자 장치(1300)의 위치 정보에 기반하여 제1 전자 장치(1200)의 위치 정보를 결정할 수 있다.
2130동작에서, 서버(1600)는 제1 전자 장치(1200)로부터 음성 명령에 대한 피드백 데이터의 요청을 수신할 수 있다. 서버(1600)는 제1 전자 장치(1200)로부터, 사용자 음성 명령에 대한 데이터 및 사용자 음성 명령에 대한 특정한 정보의 제공 요청을 수신할 수 있다. 예를 들어, 서버(1600)는 "오늘 골든 스테이트의 경기가 몇 시에 있어? (When is the Golden State Warriors game today?)"와 같은 사용자 음성 명령이 변환된 전기적 신호 및 사용자 음성 명령에 대한 특정한 정보(예: 골든 스테이트의 경기 정보)의 제공 요청을 수신할 수 있다.
일 실시예에서, 서버(1600)는 제2 전자 장치(1300)로부터 음성 명령에 대한 피드백 데이터의 요청을 수신할 수도 있다.
2140동작에서, 서버(1600)는 2130동작에서 수신한 사용자 음성 명령에 대응하는 피드백 데이터를 생성할 수 있다.
일 실시예에서, 서버(1600)는 수신한 사용자 음성 명령을 분석함으로써, 요청된 특정한 정보를 획득할 수 있다. 예를 들어, 서버(1600)는 서버(1600)에 저장된 메모리를 검색하거나, 혹은 서버(1600)와 연결된 다른 서버에 요청함으로써, 요청된 특정한 정보(예: 골든 스테이트의 경기 정보)를 획득할 수 있다.
일 실시예에서, 서버(1600)는 획득한 정보의 출력 포맷을 결정할 수 있다. 서버(1600)는 제1 전자 장치(1200)와 제2 전자 장치(1300)의 입출력 속성 정보, 혹은 하드웨어/소프트웨어 정보에 기반하여, 획득한 정보의 출력 포맷을 결정할 수 있다. 예를 들어, 제1 전자 장치(1200)와 제2 전자 장치(1300)가 모두 디스플레이를 포함하지 않는 경우, 서버(1600)는 획득한 정보의 출력 포맷을 사운드로 결정할 수 있다. 다른 예를 들어, 서버(1600)는 제1 전자 장치(1200)가 디스플레이(1280)를 포함하고, 제2 전자 장치(1300)가 디스플레이를 포함하지 않는다는 것을 확인한 경우, 서버(1600)는 획득한 정보의 출력 포맷을 영상 및 사운드로 결정할 수 있다.
일 실시예에서, 서버(1600)는 제1 전자 장치(1200)와 제2 전자 장치(1300)의 상태 정보에 기반하여, 획득한 정보의 출력 포맷을 결정할 수도 있다. 예를 들어, 디스플레이(1280)와 스피커(1260)를 구비한 제1 전자 장치(1200)에서 현재 디스플레이(1280)를 통해 영상이 출력되고 있지 않다는 정보를 2110동작에서 서버(1600)가 수신한 경우, 서버(1600)는 획득한 정보의 출력 포맷을 영상으로 결정할 수 있다. 예를 들어, 디스플레이와 스피커를 구비한 제1 전자 장치(1200)에서 현재 디스플레이를 통해 영상이 출력되고 있고, 스피커를 구비한 제2 전자 장치(1300)에서 현재 스피커를 통해 사운드가 출력되고 있지 않다는 정보를 2110동작에서 서버(1600)가 수신한 경우, 서버(1600)는 획득한 정보의 출력 포맷을 사운드로 결정할 수 있다.
일 실시예에서, 서버(1600)는 획득한 정보 및 결정된 출력 포맷에 기반하여 피드백 데이터를 생성할 수 있다. 서버(1600)는 획득한 정보를 결정된 출력 포맷으로 인코딩함으로써, 피드백 데이터를 생성할 수 있다. 예를 들어, 서버(1600)는 획득한 골든 스테이트의 경기 정보를, 이미지 포맷 및/또는 사운드 포맷으로 인코딩함으로써, 피드백 데이터를 생성할 수 있다.
2150동작에서, 서버(1600)는 피드백 데이터의 출력 정보를 결정할 수 있다. 일 실시예에서, 서버(1600)는 피드백 데이터를 출력할 장치에 대한 정보, 피드백 데이터를 출력할 조건, 피드백 데이터의 출력 환경(예: 볼륨 크기, 팝업창의 크기 등)에 대한 정보를 포함할 수 있다.
일 실시예에서, 서버(1600)는 제1 전자 장치(1200)와 제2 전자 장치(1300)의 장치 정보에 기반하여, 피드백 데이터의 출력 정보를 결정할 수 있다. 예를 들어, 획득한 골든 스테이트의 경기 정보가 영상 포맷과 사운드 포맷으로 인코딩된 경우, 서버(1600)는 제1 전자 장치(1200)의 장치 정보(예: 제1 전자 장치(1200)가 디스플레이를 포함하고, 제2 전자 장치(1300)가 스피커를 포함한다는 정보)에 기반하여, 이미지 포맷으로 인코딩된 데이터는 제1 전자 장치(1200)에서 출력하고, 사운드 포맷으로 인코딩된 데이터는 제2 전자 장치(1300)에서 출력한다는 출력 정보를 결정할 수 있다. 다른 예를 들어, 획득한 골든 스테이트의 경기 정보가 사운드 포맷으로 인코딩된 경우, 서버(1600)는 제1 전자 장치(1200)와 제2 전자 장치(1300)의 장치 정보(예: 제1 전자 장치(1200)의 스피커의 재생주파수대역이 20 ~ 2000 (Hz)이고, 제2 전자 장치(1300)의 스피커의 재생주파수대역이 100 ~ 5000 (Hz)이라는 정보)에 기반하여, 사운드 포맷으로 인코딩된 데이터 중 제1 부분(고음역대 부분, 예를 들어 3000 ~ 5000 (Hz))은 제2 전자 장치(1300)에서 출력하고, 사운드 포맷으로 인코딩된 데이터 중 제2 부분(저음역대 부분, 예를 들어 20 ~ 3000 (Hz))은 제1 전자 장치(1200)에서 출력한다는 출력 정보를 결정할 수 있다. 서버(1600)는 제1 전자 장치(1200)와 제2 전자 장치(1300)가 가지는 중복된 출력 속성을 이용하여 확장된 출력 기능(예: 제1 전자 장치(1200)의 스피커와 제2 전자 장치(1300)의 스피커를 이용한 스테레오 출력 기능)을 제공할 수 있다.
일 실시예에서, 서버(1600)는 제1 전자 장치(1200) 혹은 제2 전자 장치(1300)의 상태 정보에 기반하여 출력 정보를 결정할 수 있다. 예를 들어, 제1 전자 장치(1200)의 스피커(1260)에 사운드가 출력되고 있는 출력 상태 정보를 확인한 경우, 서버는 기준 값보다 일정 비율 높은 볼륨으로 피드백 데이터를 출력할 것을 나타내는 출력 정보를 결정할 수 있다. 다른 예를 들어, 제1 전자 장치(1200)의 디스플레이(1480)에 영상이 출력되고 있는 출력 상태 정보를 확인한 경우, 서버(1600)는 기준 값보다 일정 비율 낮은 크기의 팝업 창을 이용하여 피드백 데이터를 표시할 것을 나타내는 출력 정보를 결정할 수 있다.
일 실시예에서, 서버(1600)는 사용자 음성 발화와 관련된 값에 기반하여 출력 정보를 결정할 수 있다. 서버(1600)는 2130동작에서 수신한 사용자 음성 발화 데이터에 잡음이 기준 값 이상 포함된 것을 확인할 수 있다. 서버(1600)는 잡음이 기준 값 이상 포함된 경우, 기존 값 보다 일정 비율 높은 볼륨으로 피드백 데이터를 출력할 것을 나타내는 출력 정보를 결정할 수 있다.
일 실시예에서, 서버(1600)는 음성 인식 또는 성문 인식 방법을 이용하여 사용자 음성 명령에 대응하는 피드백 데이터를 생성하고, 피드백 데이터의 출력 정보를 결정할 수 있다. 예를 들어, 서버(1600)는 성문 인식을 통해 사용자 음성 명령과 관련된 계정 정보를 확인하고, 확인한 계정 정보와 관련된 전자 장치를 결정할 수 있다. 예를 들어, 서버(1600)는 음성 명령이 사용자 A의 음성임을 확인하고, 사용자 A의 계정과 관련되며, 제1 전자 장치(1200) 및 제2 전자 장치(1300)와 다른 새로운 전자 장치(예: 도 24의 제3 전자 장치(1300-1))를 출력 장치로 결정할 수 있다.
2160동작에서, 서버(1600)는 제1 전자 장치(1200)에 피드백 데이터 및 출력 정보를 전송할 수 있다. 서버(1600)는 제1 전자 장치(1200)에 전체 피드백 데이터를 전송할 수 있다. 그리고 서버(1600)는 피드백 데이터의 일부가 제1 전자 장치(1200)에서 제2 전자 장치(1300)로 전송될 수 있도록, 전체 피드백 데이터와 함께 출력 정보를 제1 전자 장치(1200)에 전송할 수 있다. 예를 들어, 서버(1600)는 영상 및 사운드 포맷으로 인코딩함으로써 피드백 데이터를 생성한 경우, 서버(1600)는 전체 피드백 데이터를 제1 전자 장치(1200)에 전송함과 동시에, 영상 포맷으로 인코딩된 데이터는 제1 전자 장치(1200)에서 출력하고, 사운드 포맷으로 인코딩된 데이터는 제2 전자 장치(1300)에서 출력할 것을 나타내는 출력 정보를 전송할 수 있다.
도 22는 본 발명의 다양한 실시예에 따른 제1 전자 장치(1200), 제2 전자 장치(1300) 및 서버(1600)의 동작 순서를 나타낸 상호 신호 흐름도이다.
도 22은 도 19 내지 21에서 개시된 제1 전자 장치(1200), 제2 전자 장치(1300), 서버(1600)의 각각의 동작들을 하나의 도면으로 나타낸 것일 수 있다.
2205동작에서, 제1 전자 장치(1200)는 제2 전자 장치(1300)와 연결을 시도할 수 있다. 예를 들어, 제1 전자 장치(1200)는 무선 충전 모듈(1420)의 제2 통신 회로(23b)를 이용하여 제2 전자 장치(1300)에 전력 공급을 요청하는 신호를 전달함으로써, 제2 전자 장치(1300)와 연결을 시도할 수 있다.
2210동작에서, 제2 전자 장치(1300)는 제1 전자 장치(1200)와 연결되고, 제1 전자 장치(1200)에 전력을 공급할 수 있다.
일 실시예에서, 제2 전자 장치(1300)는 제1 통신 회로(13)를 통해, 송신 코일(11L)에서 전력 전달을 위해 사용하는 주파수와 동일한 주파수를 이용하여 제1 전자 장치(1200)의 제1 통신 회로(23a)와 통신할 수 있다(예: inband 방식).
다른 실시예에서, 제2 전자 장치(1300)는 제2 통신 회로(13b)를 통해, 송신 코일(11L)에서 전력 전달을 위해 사용하는 주파수와 상이한 주파수를 이용하여 제1 전자 장치(1200)의 제2 통신 회로(23b)와 통신할 수 있다(예: outband 방식).
예를 들어, 제2 전자 장치(1300)는 제1 통신 회로(13a) 혹은 제2 통신 회로(13b)를 통해, 제1 전자 장치(1200)에, 전력 공급 요청에 대한 긍정 확인 응답을 전송함으로써 제1 전자 장치(1200)와 연결할 수 있다. 그리고 제2 전자 장치(1300)는 송신 코일(11L)에 의해 산출된 전력이 제1 전자 장치(1200)로 전송되도록 전력 생성 회로(11b)를 제어할 수 있다.
2215동작에서, 제1 전자 장치(1200)는 제2 전자 장치(1300)의 식별 정보를 서버(1600)에 전송할 수 있다. 예를 들어, 제1 전자 장치(1200)는 제2 전자 장치(1300)로부터 전력 공급 요청에 대한 응답과 함께, 혹은 응답을 수신한 후, 제2 전자 장치(1300)로부터 제2 전자 장치(1300)의 식별 정보를 수신할 수 있다. 그리고 제1 전자 장치(1200)는 제2 전자 장치(1300)로부터 수신한 제2 전자 장치(1300)의 식별 정보를 서버(1600)에 전송할 수 있다. 일 실시예에서, 제1 전자 장치(1200)는 제1 전자 장치(1200)의 식별 정보를 서버(1600)에 전송할 수 있다.
2220동작에서, 제2 전자 장치(1300)는 제1 전자 장치(1200)의 식별 정보를 서버(1600)에 전송할 수 있다. 예를 들어, 제2 전자 장치(1300)는 제1 전자 장치(1200)로부터 전력 공급 요청과 함께 제1 전자 장치(1200)의 식별 정보를 수신할 수 있다. 그리고 제2 전자 장치(1300)는 제1 전자 장치(1200)로부터 수신한 제1 전자 장치(1200)의 식별 정보를 서버(1600)에 전송할 수 있다. 일 실시예에서, 제2 전자 장치(1300)는 제2 전자 장치(1300)의 식별 정보를 서버(1600)에 전송할 수도 있다.
일 실시예에서, 2215동작과 2220동작의 수행 순서는 뒤바뀔 수 있다.
일 실시예에서, 2215동작과 2220동작은 반드시 둘 다 수행되지 않을 수 있다. 다시 말해서, 2215동작과 2220동작 중 적어도 어느 한 동작만이 수행될 수 있다. 예를 들어, 2215동작이 수행되는 경우 2220동작이 수행되지 않을 수 있고, 2220동작이 수행되는 경우, 2215동작이 수행되지 않을 수 있다.
2225 및/또는 2230동작에서, 서버(1600)는 2215동작 또는 2220동작 중 적어도 어느 하나에 대응하여, 제1 전자 장치(1200) 및/또는 제2 전자 장치(1300)의 음성 기반 서비스를 활성화, 비활성화 혹은 변경하는 신호를 전송할 수 있다. 예를 들어, 서버(1600)는 제1 전자 장치(1200)의 음성 인식 기능을 활성화하고, 제2 전자 장치(1300)의 음성 인식 기능을 비활성화하는 제어 명령을 전송할 수 있다. 다른 예를 들어, 서버(1600)는 제2 전자 장치(1300)의 마이크(1370) 및 음성 인식 모듈(1330)을 비활성화하는 제어 명령을 제2 전자 장치(1300)에 전송할 수 있다. 또 다른 예를 들어, 서버(1600)는 제1 전자 장치(1200)의 마이크(1270) 및 음성 인식 모듈(1230)을 활성화하는 신호를 제1 전자 장치(1200)에 전송할 수 있다. 2425동작과 2430동작의 순서는 바뀔 수 있다.
일 실시예에서, 서버(1600)는 제2 전자 장치(1300)의 음성 인식 기능을 비활성하는 신호를, 제1 전자 장치(1200)를 통하여 전송할 수 있다. 다른 실시예에서 서버(1600)는 제1 전자 장치(1200)의 음성 인식 기능을 활성화하는 신호를 제2 전자 장치(1300)를 통하여 전송할 수도 있다.
다른 예를 들어, 2225동작에서, 서버(1600)는 제2 전자 장치(1300)의 스피커(1360)에 특정한 용도를 지정하기 위한 신호를 전송할 수 있다. 제2 전자 장치(1300)의 스피커(1360)에 음악 스트리밍 서비스와 관련된 사운드가 출력되고 있는 경우, 제2 전자 장치(1300)의 스피커(1360)에 음악 스트리밍 서비스와 관련된 사운드만을 재생하도록 제2 전자 장치(1300)의 스피커(1360)를 제어하기 위한 신호를 전송할 수 있다.
다른 예를 들어, 2230동작에서, 서버(1600)는 제1 전자 장치(1200)의 스피커(1260)에 특정한 용도를 지정하기 위한 신호를 전송할 수 있다. 서버(1600)는, 이후 제1 전자 장치(1200)가 음성 명령에 대한 피드백 데이터를 서버(1600)로부터 수신할 경우, 제1 전자 장치(1200)의 스피커(1260)를 통해 수신한 피드백 데이터를 출력하도록 하는 신호를, 제1 전자 장치(1200)에 전송할 수 있다.
2235동작에서, 제1 전자 장치(1200)는 사용자의 음성 발화를 인식할 수 있다. 제1 전자 장치(1200)는 음성 인식 기능이 활성화된 상태, 혹은 사용자 음성 발화의 수신 대기 상태에서, 사용자의 음성 발화를 인식할 수 있다. 사용자의 음성 발화는 트리거 사운드 및 음성 명령을 포함할 수 있다. 예를 들어, 사용자의 음성 발화는 "하이 빅스비, 오늘 골든 스테이트의 경기가 몇 시에 있어? (Hi, Bixby, when is the Golden State Warriors game today?")일 수 있다. 제1 전자 장치(1200)는 활성화된 마이크(1270)로 입력되는 사용자 음성 발화를 전기적 신호로 변환하고, 변환된 전기적 신호가 미리 저장된 신호 패턴과 미리 결정된 값 이상의 매칭률을 나타내는 제1 신호("Hi, Bixby"에 대응하는 전기적 신호)를 포함하는지 여부를 결정할 수 있다. 제1 전자 장치(1200)는 제1 신호를 포함한다면, 제1 신호와 이어지는 제2 신호("when is the Golden State Warriors game today?"에 대응하는 전기적 신호)를 사용자 음성 명령에 대응한 전기적 신호로 인식할 수 있다.
2240동작에서, 제1 전자 장치(1200)는 사용자의 음성 발화 데이터를 서버(1600)에 전송할 수 있다. 음성 발화 데이터는 사용자 음성 명령에 대응한 전기적 신호(제2 신호), 혹은 트리거 사운드와 사용자 음성 명령에 대응한 전기적 신호(제1 신호와 제2 신호)일 수 있다. 제1 전자 장치(1200)는 사용자 음성 명령에 대응하는 정보의 제공을 요청하는 신호를 추가적으로 서버(1600)에 전송할 수 있다.
2245동작에서, 서버(1600)는 음성 명령에 대응하는 피드백 데이터 및 출력 정보를 제1 전자 장치(1200)에 전송할 수 있다.
일 실시예에서, 음성 명령이 특정한 정보(예: 골든 스테이트의 경기 정보)의 제공 요청인 경우, 피드백 데이터는 특정한 정보를 지정된 포맷으로 인코딩한 데이터일 수 있다. 예를 들어, 피드백 데이터는 골든 스테이트의 경기 정보를 사운드 포맷으로 인코딩된 데이터일 수 있다.
일 실시예에서, 출력 정보는 피드백 데이터를 출력할 장치에 대한 정보, 혹은 피드백 데이터를 출력할 조건에 대한 정보를 포함할 수 있다. 예를 들어, 출력 정보는 피드백 데이터의 제1 부분(예: 사운드 포맷으로 인코딩된 데이터의 저음역대 부분)은 제2 전자 장치(1300)에서 출력하고, 피드백 데이터의 제1 부분(예: 사운드 포맷으로 인코딩된 데이터의 고음역대 부분)은 제2 전자 장치(1300)에서 출력할 것을 나타낼 수 있다.
2250동작에서, 제1 전자 장치(1200)는 수신한 피드백 데이터의 제2 부분을 제2 전자 장치(1300)에 전송할 수 있다. 제1 전자 장치(1200)는 수신한 출력 정보에 기반하여, 수신한 피드백 데이터의 제2 부분을 제2 전자 장치(1300)에 전송할 수 있다. 예를 들어, 수신한 출력 정보가, 피드백 데이터의 제2 부분을 제2 전자 장치(1300)에서 출력할 것을 나타내는 경우, 제1 전자 장치(1200)는 피드백 데이터의 제2 부분을 제2 전자 장치(1300)에 전송할 수 있다.
2255동작에서, 제1 전자 장치(1200)는 수신한 피드백 데이터의 제1 부분을 출력할 수 있다. 제1 부분은 수신한 피드백 데이터에서 제2 부분을 제외한 나머지일 수 있다. 제1 부분은 제2 부분과 포맷이 동일할 수 있거나, 포맷이 상이할 수 있다. 예를 들어 제1 부분은 영상 포맷으로 인코딩된 데이터이고, 제2 부분은 사운드 포맷으로 인코딩된 데이터일 수 있다. 다른 예를 들어, 제1 부분은 사운드 포맷으로 인코딩된 고음역대 데이터이고, 제2 부분은 사운드 포맷으로 인코딩된 저음역대 데이터일 수 있다.
일 실시예에서, 제1 전자 장치(1200)는, 제2 전자 장치(1300)에 의한 제2 부분의 출력과 일치되게, 제2 부분을 출력할 수 있다. 예를 들어, 제1 전자 장치(1200)는, 제2 전자 장치(1300)가 제2 부분을 출력하는 시간과 동일한 시간에 제1 부분을 출력할 수 있다. 예를 들어, 제1 부분이 사운드 포맷으로 인코딩된 저음역대 데이터이고, 제2 부분이 사운드 포맷으로 인코딩된 고음역대 데이터인 경우, 제1 전자 장치(1200)와 제2 전자 장치(1300)는 동시에 제1 부분과 제2 부분을 각각 출력함으로써, 스테레오 형식의 사운드를 재생할 수 있다.
2260동작에서, 제2 전자 장치(1300)는 제1 전자 장치(1200)로부터 수신한 피드백 데이터의 제2 부분을 출력할 수 있다.
일 실시예에서, 2255동작 및 2260동작은 전력 송신 및 수신과 무관하게 수행될 수 있다. 예를 들어, 2255동작은 제1 전자 장치(1200)가 제2 전자 장치(1300)로부터 전력을 수신함과 동시에 수행될 수 있다. 다른 예를 들어, 2255동작은 제1 전자 장치(1200)가 제2 전자 장치(1300)로부터 전력을 수신하지 않는 상태에서 수행될 수 있다.
도 19 내지 도 22은, 음성 인식 기능이 활성화된 제1 전자 장치(1200)가 사용자 음성 발화를 인식하고, 음성 명령에 대한 피드백 데이터를 서버(1600)로부터 수신하고, 피드백 데이터의 제2 부분을, 음성 인식 기능이 비활성화된 제2 전자 장치(1300)로 전송하는 경우로 설명하였으나, 그 반대의 경우도 가능하다. 즉, 음성 인식 기능이 활성화된 제2 전자 장치(1300)가 사용자 음성 발화를 인식하고, 음성 명령에 대한 피드백 데이터를 서버(1600)로부터 수신하며, 피드백 데이터의 제1 부분을, 음성 인식 기능이 비활성화된 제1 전자 장치(1200)로 전송하는 경우도 가능하다.
도 23은 본 발명의 다양한 실시예에 따른 제1 전자 장치(1200), 제2 전자 장치(1300) 및 서버(1600)의 동작 순서를 나타낸 상호 신호 흐름도이다.
2305동작 내지 2320동작은 도 22의 2305동작 내지 2320동작과 유사하므로, 그 자세한 설명을 생략하기로 한다.
2325동작 및 2330동작에서, 서버(1600)는 2315동작 또는 2320동작 중 적어도 어느 하나에 대응하여, 제1 전자 장치(1200)와 제2 전자 장치(1300)의 음성 인식 기능을 제어하는 신호를 전송할 수 있다. 서버(1600)는 2325동작에서, 제2 전자 장치(1300)의 음성 인식 기능을 활성화하는 신호를 전송할 수 있고, 2330동작에서 제1 전자 장치(1200)의 음성 인식 기능을 활성화하는 신호를 전송할 수 있다. 2325동작과 2330동작의 순서는 바뀔 수 있다.
2335동작에서, 제1 전자 장치(1200) 및 제2 전자 장치(1300)는 사용자의 음성 발화를 인식할 수 있다. 제1 전자 장치(1200) 및 제2 전자 장치(1300)는 음성 인식 기능이 활성화된 상태, 혹은 사용자 음성 발화의 수신 대기 상태에서, 사용자의 음성 발화를 각각 인식할 수 있다. 사용자의 음성 발화는 트리거 사운드 및 음성 명령을 포함할 수 있다. 예를 들어, 사용자의 음성 발화는 "하이 빅스비, 오늘 골든 스테이트의 경기가 몇 시에 있어? (Hi, Bixby, when is the Golden State Warriors game today?)"일 수 있다. 제1 전자 장치(1200) 및 제2 전자 장치(1300)는 활성화된 마이크들(1470, 1570)로 입력되는 사용자 음성 발화를 전기적 신호로 변환할 수 있다.
2340동작에서, 제2 전자 장치(1300)는 음성 발화 데이터를 제1 전자 장치(1200)에 전송할 수 있다. 음성 발화 데이터는 사용자 음성 명령에 대응한 전기적 신호, 혹은 트리거 사운드와 사용자 음성 명령에 대응한 전기적 신호일 수 있다.
2345동작에서, 제1 전자 장치(1200)는 사용자 음성 발화에 포함된 트리거 사운드 및 음성 명령을 인식할 수 있다. 제1 전자 장치(1200)는 2340동작에서 제2 전자 장치(1300)로부터 수신한 음성 발화 데이터에 기반하여 트리거 사운드 및 음성 명령을 인식할 수 있다. 제1 전자 장치(1200)는 제1 전자 장치(1200)의 마이크(1270)를 통해 인식한 사용자의 음성 발화에 포함된 잡음을, 제2 전자 장치(1300)로부터 수신한 음성 발화 데이터를 이용하여 제거할 수 있다. 예를 들어 제1 전자 장치(1200)는 제1 전자 장치(1200)의 마이크(1270)를 통해 인식한 사용자의 음성 발화를 전기적 신호로 변환하고, 제2 전자 장치(1300)로부터 수신한 음성 발화 데이터의 역상화된 신호를 인가함으로써, 제1 전자 장치(1200)의 마이크(1270)를 통해 인식한 사용자의 음성 발화에 포함된 잡음을 제거할 수 있다. 제1 전자 장치(1200)는 제1 전자 장치(1200)의 마이크(1270)를 통해 인식한 사용자의 음성 발화에 포함된 잡음을 제거함으로써, 사용자 음성 발화에 포함된 트리거 사운드 및 음성 명령의 인식률을 높일 수 있다.
미도시되었지만, 2340동작에서 제2 전자 장치(1300)는 음성 발화 데이터를 서버(1600)로 전송하고, 제1 전자 장치(1200)는 음성 발화 데이터를 서버(1600)로 전송할 수 있다. 서버(1600)는 제2 전자 장치(1300)에서 수신된 음성 발화 데이터를 이용하여 제1 전자 장치(1200)에서 수신된 음성 발화 데이터의 잡음을 제거할 수 있다. 서버는 잡음이 제거된 음성 발화 데이터를 제1 전자 장치(1200)에 전송하고, 제1 전자 장치(1200)는 잡음이 제거된 음성 발화 데이터를 이용하여 트리거 사운드 및 음성 명령을 인식할 수 있다. 서버(1600)는 잡음이 제거된 음성 발화 데이터에서 트리거 사운드 및 음성 명령을 인식하고, 음성 명령에 대응하는 피드백 데이터 및 출력 정보를 제1 전자 장치(1200)에 전송할 수도 있다.
2350동작 내지 2370동작은 도 22의 2240동작 내지 2260동작과 유사하므로, 그 자세한 설명을 생략하기로 한다.
도 24은 본 발명의 다양한 실시예에 따른 제1 전자 장치(1200), 제2 전자 장치(1300) 및 서버(1600)의 동작 순서를 나타낸 상호 신호 흐름도이다.
2405동작 내지 2435동작은 도 23의 2305동작 내지 2335동작과 유사하므로, 그 자세한 설명을 생략하기로 한다.
2440동작에서, 제1 전자 장치(1200)는 사용자 음성 발화에 포함된 트리거 사운드 및 음성 명령을 인식할 수 있고, 2445동작에서 제2 전자 장치(1300)는 사용자 음성 발화에 포함된 트리거 사운드 및 음성 명령을 인식할 수 있다. 예를 들어, 제1 전자 장치(1200)는 활성화된 마이크(1270)를 이용하여 마이크(1270)에 입력되는 사운드를 전기적 신호로 변환할 수 있고, 변환된 전기적 신호에서, 미리 저장된 신호 패턴과 미리 결정된 값 이상의 매칭률을 나타내는 제1 신호를 확인함으로써, 트리거 사운드를 인식할 수 있다. 그리고 제1 전자 장치(1200)는 미리 결정된 값 이하의 출력이 미리 결정된 값 이상의 시간 동안 지속될 때까지, 제1 신호에 이어지는 신호를 제2 신호로 결정함으로써, 음성 명령을 인식할 수 있다.
2450동작에서, 제2 전자 장치(1300)는 2445동작에서 인식한 음성 발화 데이터를 서버(1600)에 전송할 수 있고, 2455동작에서 제1 전자 장치(1200)는 2440동작에서 인식한 음성 발화 데이터를 서버(1600)에 전송할 수 있다.
2460동작에서, 서버(1600)는 사용자(발화자)의 위치 및/또는 이동 정보를 추정할 수 있다. 2460동작의 세부 동작은 도 25에서 후술된다.
도 25는 본 발명의 다양한 실시예에 따른 서버가 사용자의 위치를 추정하는 동작의 세부 흐름도이다.
도 25의 동작 주체인 서버는 서버(1600) 혹은 서버(1600)의 프로세서(1620)일 수 있다.
도 25를 참조하면, 2510동작에서, 서버(1600)는 제1 전자 장치(1200)로부터 수신한 음성 발화 데이터(이하 제1 음성 발화 데이터로 기재)와 제2 전자 장치(1300)로부터 수신한 음성 발화 데이터(이하 제2 음성 발화 데이터로 기재)가 동일한 음성 발화에 기인한 데이터들인지 여부를 결정할 수 있다.
일 실시예에서, 서버(1600)는 제1 음성 발화 데이터의 수신 시각과 제2 음성 발화 데이터의 수신 시각을 비교할 수 있다. 예를 들어, 서버(1600)는 제1 음성 발화 데이터의 수신 시각과 제2 음성 발화 데이터의 수신 시각의 차이가 기준 값을 초과하지 않는 경우, 동일한 음성 발화에 기인한 데이터들이라고 결정할 수 있다.
다른 실시예에서, 서버(1600)는 제1 음성 발화 데이터와 제2 음성 발화 데이터의 신호 특성을 비교(예: 파형(waveform)의 특성, 신호의 모양과 형태, 진폭의 크기 및 주파수에 대한 특성 등)할 수 있다. 예를 들어, 서버(1600)는 제1 음성 발화 데이터가 파형 A를 포함하고, 제2 음성 발화 데이터가 파형 A와 기준 값 이상의 매칭률을 가지는 파형 B를 포함한다고 판단된 경우, 제1 음성 발화 데이터와 제2 음성 발화 데이터가 동일한 음성 발화에 기인한 데이터들이라고 결정할 수 있다.
제1 음성 발화 데이터와 제2 음성 발화 데이터가 동일한 음성 발화에 기인한 데이터들이라고 결정된 경우(예), 2520동작에서, 서버(1600)는 신호의 지연 및 마이크 간 거리에 기반하여 사용자의 발화 위치를 결정할 수 있다.
일 실시예에서, 서버(1600)는 메모리에 저장된 제1 전자 장치(1200)의 장치 정보와 제2 전자 장치(1300)의 장치 정보를 이용하여 마이크 간 거리를 추정할 수 있다. 예를 들어, 서버(1600)는 제2 전자 장치(1300)의 식별 정보 및 하드웨어 정보를 이용하여 제2 전자 장치(1300)의 마이크(1370) 위치를 결정할 수 있고, 제1 전자 장치(1200)의 식별 정보 및 하드웨어 정보를 이용하여 제1 전자 장치(1200)의 마이크(1270) 위치를 결정할 수 있다. 서버(1600)는 결정된 마이크들의 위치를 이용하여 마이크 간 거리를 추정할 수 있다.
일 실시예에서, 서버(1600)는 제2 전자 장치(1300)의 무선 충전 방식(예: 자기 유도 방식)을 고려하여 마이크 간 거리를 추정할 수 있다. 예를 들어, 제2 전자 장치(1300)가 자기 유도 방식의 전력 공급 장치인 경우, 서버(1600)는 전력 수신 장치(예: 제1 전자 장치(1200))가 제2 전자 장치(1300)의 충전 패드 위에 놓여질 필요가 있음을 고려하여 마이크 간 거리를 추정할 수 있다. 다른 예를 들어, 제2 전자 장치(1300)가 자기 공명 방식의 전력 공급 장치인 경우, 서버(1600)는 전력 송신 효율을 이용하여 마이크 간 거리를 추정할 수 있다.
일 실시예에서, 서버(1600)는 제1 음성 발화 데이터와 제2 음성 발화 데이터의 신호 지연을 확인할 수 있다. 서버(1600)는 제1 음성 발화 데이터와 제2 음성 발화 데이터에 공통적으로 포함된 신호(예: 파형A와 파형B)의 지연을 확인할 수 있다.
일 실시예에서, 서버(1600)는 확인된 신호 지연 및 마이크 간 거리에 기반하여 사용자의 발화 위치를 결정할 수 있다. 예를 들어, 서버(1600)는 도달 시간 지연(Time Delay of Arrival, TDOA) 기법을 이용하여 사용자의 발화 위치를 결정할 수 있다.
제1 음성 발화 데이터와 제2 음성 발화 데이터가 동일한 음성 발화에 기인한 데이터들이 아니라 결정된 경우, 서버(1600)는 2510동작을 다시 수행할 수 있다. 다시 말해서, 서버(1600)는 동일한 음성 발화에 기인한 제1 음성 발화 데이터와 제2 음성 발화 데이터를 수신할 때까지, 반복적으로 2510동작을 수행할 수 있다.
2530동작에서, 서버(1600)는 신호의 지연이 시간에 따라 변화하는지 여부를 결정할 수 있다. 예를 들어 서버(1600)는 제1 음성 발화 데이터와 제2 음성 발화 데이터에 공통적으로 포함된 신호(예: 파형A와 파형B)의 지연을 나타내는 값이 시간이 흐름에 따라 유지되는지 혹은 달라지는지 여부를 확인할 수 있다.
신호의 지연이 시간에 따라 변화하지 않다고 판단된 경우(아니오), 서버(1600)는 사용자가 이동하고 있지 않다고 판단할 수 있다.
신호의 지연이 시간에 따라 변화한다고 판단된 경우(예), 서버(1600)는 사용자가 이동하고 있다고 판단할 수 있다. 서버(1600)는 2740동작에서, 사용자의 이동 정보를 결정할 수 있다. 서버(1600)는 시간에 따른 신호 지연의 변화 값에 기반하여 사용자의 이동 정보(예: 이동 방향, 속력 등)를 결정할 수 있다.
2465동작에서, 서버(1600)는 음성 명령에 대응하는 피드백 데이터 및 출력 정보를 제1 전자 장치(1200)에 전송할 수 있다.
일 실시예에서, 서버(1600)는 2460동작에서 추정한 사용자의 위치 및/또는 사용자의 이동 정보를 이용하여 출력 정보를 결정하고, 결정된 출력 정보를 제1 전자 장치(1200)에 전송할 수 있다. 예를 들어, 서버(1600)는 사용자의 이동 방향에 근접한 제3 전자 장치(1300-1)가 피드백 데이터의 적어도 일부(제2 부분)를 출력할 것을 나타내는 출력 정보를 결정하고, 결정된 출력 정보를 제1 전자 장치(1200)에 전송할 수 있다. 다른 예를 들어, 서버(1600)는 현재부터 3초 까지는 제1 전자 장치(1200)가 피드백 데이터의 전체를 출력하고, 3초 이후부터는 제3 전자 장치(1300-1)가 피드백 데이터의 전체를 출력할 것을 나타내는 출력 정보를 결정하고, 결정된 출력 정보를 제1 전자 장치(1200)에 전송할 수 있다.
2470동작에서, 제1 전자 장치(1200)는 피드백 데이터의 적어도 일부(제2 부분)를 제3 전자 장치(1300-1)에 전송할 수 있다. 미도시되었지만, 서버(1600)는 피드백 데이터의 적어도 일부를 제3 전자 장치(1300-1)에 바로 전송할 수도 있다.
2475동작에서, 제3 전자 장치(1300-1)는 적어도 일부 피드백 데이터를 출력할 수 있다. 일 실시예에서, 수신한 적어도 일부 피드백 데이터의 출력 포맷에 따라, 수신한 적어도 일부 피드백 데이터를 출력할 수 있다.
일 실시예에서, 제3 전자 장치(1300-1)는 도 9의 전자 장치(901)일 수 있다.
도 26은 본 발명의 다양한 실시예에 따른 제1 전자 장치(1200), 제2 전자 장치(1300) 및 서버의 동작 순서를 나타낸 상호 신호 흐름도이다.
2605동작 내지 2640동작은 도 22에 개시된 2205동작 내지 2240동작과 유사하므로 그 자세한 설명을 생략하기로 한다.
2645동작에서, 서버(1600)는 음성 명령에 대한 피드백 데이터의 제1 부분을 제1 전자 장치(1200)에 전송할 수 있다. 피드백 데이터의 제1 부분은, 피드백 데이터의 나머지(제2 부분)과 출력 포맷이 상이할 수 있다. 피드백 데이터의 제1 부분은, 피드백 데이터의 나머지(제2 부분)과 출력 포맷은 동일하지만 서로 다른 데이터를 나타낼 수 있다.
2650동작에서, 서버(1600)는 음성 명령에 대한 피드백 데이터의 제2 부분을 제2 전자 장치(1300)에 전송할 수 있다. 예를 들어, 서버(1600)는 사운드 출력 포맷으로 인코딩된 제2 부분을 제2 전자 장치(1300)에 전송할 수 있다. 다른 예를 들어, 서버(1600)는 사운드 출력 포맷으로 인코딩된 데이터 중 저음역대 부분을 제2 전자 장치(1300)에 전송할 수 있다.
일 실시예에서, 서버(1600)는 현재 전송되는 데이터가 전체 피드백 데이터의 일부임을 나타내는, 혹은 나머지 부분이 다른 장치에서 출력됨을 나타내는 신호(예: 플래그)를 전송할 수 있다. 예를 들어, 서버(1600)는 2645동작에서, 제1 전자 장치(1200)에, 피드백 데이터의 제2 부분이 제2 전자 장치(1300)에서 출력됨을 나타내는 신호를 추가로 전송할 수 있다. 다른 예를 들어, 서버(1600)는 2650동작에서, 제2 전자 장치(1300)에, 피드백 데이터의 제1 부분이 제1 전자 장치(1200)에서 출력됨을 나타내는 신호를 추가로 전송할 수 있다.
2655동작과 2660동작은 도 22의 2255동작과 2260동작과 유사하므로 그 자세한 설명을 생략하기로 한다.
본 명세서와 도면에 개시된 실시 예들은 본 발명의 내용을 쉽게 설명하고, 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (15)

  1. 전자 장치에 있어서,
    하우징,
    상기 하우징의 일부를 통해 노출된 터치 스크린 디스플레이,
    스피커,
    마이크,
    무선 충전 회로,
    무선 통신 회로,
    배터리,
    상기 디스플레이, 스피커, 마이크, 충전 회로, 통신 회로, 배터리와 작동적으로(operatively) 연결된 프로세서,
    상기 프로세서와 작동적으로 연결된 메모리를 포함하며, 상기 메모리는 실행 시에, 상기 프로세서가,
    외부 무선 충전 장치(charger)로부터, 상기 외부 무선 충전 장치에 대한 정보를 상기 충전 회로를 통하여 수신하고,
    상기 외부 무선 충전 장치로부터 수신한 전력으로 상기 배터리를 충전하도록 상기 충전 회로를 제어하고,
    상기 통신 회로를 통하여, 상기 수신한 정보의 적어도 일부를 외부 서버에 전송하고,
    상기 통신 회로를 통하여 상기 외부 서버로부터 응답을 수신하고, 상기 응답은 마이크, 스피커, 및/또는 디스플레이를 이용한 음성 기반 서비스와 연관되고,
    상기 배터리를 충전하는 동안, 상기 응답의 적어도 일부에 기반하여 상기 음성 기반 서비스를 적어도 부분적으로 활성화, 비활성화 혹은 변경하도록 하는 명령어들(instructions)을 저장하는 전자 장치.
  2. 전자 장치에 있어서,
    하우징,
    상기 하우징의 일부를 통해 노출된 디스플레이,
    스피커,
    마이크,
    무선 충전 회로,
    무선 통신 회로,
    배터리,
    상기 디스플레이, 스피커, 마이크, 충전 회로, 통신 회로, 배터리와 작동적으로(operatively) 연결된 프로세서,
    상기 프로세서와 작동적으로 연결된 메모리를 포함하며, 상기 메모리는 실행 시에, 상기 프로세서가,
    상기 무선 통신 회로를 이용하여 외부 무선 충전 장치와 근거리 통신을 수립하고,
    상기 외부 무선 충전 장치의 식별 정보를 외부 서버에 송신하고,
    음성 인식 기능을 활성화하고,
    상기 마이크를 이용하여 트리거 음성 및 음성 명령을 포함하는 사용자 음성 발화를 인식하고,
    상기 음성 명령에 대한 피드백 데이터를 상기 외부 서버에 요청하고,
    상기 음성 명령에 대한 피드백 데이터 및 상기 피드백 데이터의 출력 정보를 수신하고,
    상기 출력 정보에 기반하여, 상기 피드백 데이터의 적어도 일부를, 상기 외부 무선 충전 장치에서 출력되도록, 상기 외부 무선 충전 장치에 전송하는 명령어들(instructions)을 저장하는 전자 장치.
  3. 제 2항에 있어서,
    상기 메모리는,
    상기 수신한 출력 정보에 기반하여, 상기 수신한 피드백 데이터의 제1 부분(a first portion)을, 상기 스피커 및/또는 디스플레이를 이용하여 출력하고,
    상기 수신한 출력 정보에 기반하여, 상기 수신한 피드백 데이터의 제2 부분(a second portion)을, 상기 무선 통신 회로를 이용하여 상기 외부 무선 충전 장치로 전송하는 명령어들을 더 저장하는 전자 장치.
  4. 제 3항에 있어서,
    상기 수신한 피드백 데이터는 사운드 및 이미지 데이터를 포함하고, 상기 제1 부분은 상기 사운드 및 이미지 데이터 중 어느 하나이며, 상기 제2 부분은 상기 사운드 및 이미지 데이터 중 나머지 다른 하나인 전자 장치.
  5. 제 3항에 있어서,
    상기 수신한 피드백 데이터는 사운드 데이터를 포함하고, 상기 제1 부분은 상기 사운드 데이터의 제1 음역에 대한 데이터이며, 제2 부분은 상기 사운드 데이터의 제2 음역에 대한 데이터인 전자 장치.
  6. 제 2항에서,
    상기 메모리는,
    상기 마이크를 이용하여 인식한 음성 데이터 및 상기 외부 무선 충전 장치로부터 수신한 음성 데이터를 이용하여 사용자의 음성 발화를 인식하는 명령어를 더 저장하는 전자 장치.
  7. 제 2항에서,
    상기 메모리는
    상기 수신한 출력 정보에 기반하여, 상기 수신한 피드백 데이터의 제1 부분(a first portion)을, 상기 스피커 및/또는 디스플레이를 이용하여 출력하고,
    상기 수신한 출력 정보에 기반하여, 상기 수신한 피드백 데이터의 제2 부분(a second portion)을, 상기 무선 통신 회로를 이용하여 상기 전자 장치 및 상기 외부 무선 충전 장치와 상이한 다른 장치로 전송하는 명령어들을 더 저장하며,
    상기 다른 장치는 상기 외부 서버에 의해 추정된 사용자 위치와 연관된 장치인 전자 장치.
  8. 전자 장치에 있어서,
    하우징,
    스피커,
    마이크,
    무선 충전 회로,
    무선 통신 회로,
    상기 스피커, 마이크, 충전 회로, 통신 회로와 작동적으로 연결된 프로세서,
    상기 프로세서와 작동적으로 연결된 메모리를 포함하며, 상기 메모리는 실행 시에, 상기 프로세서가,
    디스플레이를 포함하는 외부 모바일 장치로부터, 상기 충전 회로를 통하여 상기 모바일 장치에 대한 정보를 수신하고,
    무선으로 상기 모바일 장치를 충전하도록 상기 충전 회로를 제어하고,
    상기 통신 회로를 통하여 외부 서버로 상기 수신한 정보의 적어도 일부를 전송하고,
    상기 통신 회로를 통하여 상기 외부 서버로부터 응답을 수신하고, 상기 응답은 상기 모바일 장치의 마이크, 스피커, 및/또는 디스플레이를 이용한 음성 기반 서비스와 연관되고,
    상기 모바일 장치를 충전하는 동안, 상기 응답의 적어도 일부에 기반하여 상기 음성 기반 서비스를 적어도 부분적으로 활성화, 비활성화 혹은 변경하도록 하는 명령어들을 저장하는 전자 장치.
  9. 전자 장치의 동작 방법에 있어서,
    외부 무선 충전 장치로부터, 상기 무선 충전 장치에 대한 정보를 수신하는 동작,
    상기 무선 충전 장치로부터 수신한 전력으로 상기 전자 장치의 배터리를 충전하는 동작,
    상기 수신한 정보의 적어도 일부를 외부 서버에 전송하는 동작,
    상기 외부 서버로부터 응답을 수신하는 동작, 여기서 상기 응답은 마이크, 스피커, 및/또는 디스플레이를 이용한 음성 기반 서비스와 연관되고,
    상기 전자 장치의 배터리를 충전하는 동안, 상기 응답의 적어도 일부에 기반하여 상기 음성 기반 서비스를 적어도 부분적으로 활성화, 비활성화 혹은 변경하는 동작을 포함하는 방법.
  10. 전자 장치의 동작 방법에 있어서,
    외부 무선 충전 장치와 근거리 통신을 수립하는 동작,
    상기 외부 무선 충전 장치의 식별 정보를 외부 서버에 송신하는 동작,
    음성 인식 기능을 활성화하는 동작,
    전자 장치의 마이크를 이용하여 트리거 음성 및 음성 명령을 포함하는 사용자 음성 발화를 인식하는 동작,
    상기 음성 명령에 대한 피드백 데이터를 상기 외부 서버에 요청하는 동작,
    상기 음성 명령에 대한 피드백 데이터 및 상기 피드백 데이터의 출력 정보를 수신하는 동작,
    상기 출력 정보에 기반하여, 상기 피드백 데이터의 적어도 일부를, 상기 외부 무선 충전 장치에서 출력되도록, 상기 외부 무선 충전 장치에 전송하는 동작을 포함하는 방법.
  11. 제 10항에 있어서,
    상기 수신한 피드백 데이터의 적어도 일부를 상기 외부 무선 충전 장치에 전송하는 동작은,
    상기 수신한 출력 정보에 기반하여, 상기 수신한 피드백 데이터의 제1 부분(a first portion)을, 상기 스피커 및/또는 디스플레이를 이용하여 출력하는 동작,
    상기 수신한 출력 정보에 기반하여, 상기 수신한 피드백 데이터의 제2 부분(a second portion)을, 상기 외부 무선 충전 장치로 전송하는 동작을 포함하는 방법.
  12. 제 11항에 있어서,
    상기 수신한 피드백 데이터는 사운드 및 이미지 데이터를 포함하고, 상기 제1 부분은 상기 사운드 및 이미지 데이터 중 어느 하나이며, 상기 제2 부분은 상기 사운드 및 이미지 데이터 중 나머지 다른 하나인 방법.
  13. 제 11항에 있어서,
    상기 수신한 피드백 데이터는 사운드 데이터를 포함하고, 상기 제1 부분은 상기 사운드 데이터의 제1 음역에 대한 데이터이며, 제2 부분은 상기 사운드 데이터의 제2 음역에 대한 데이터인 방법.
  14. 제 10항에 있어서,
    상기 전자 장치의 마이크를 이용하여 상기 트리거 음성 및 음성 명령을 포함하는 상기 사용자 음성 발화를 인식하는 동작은,
    상기 마이크를 이용하여 인식한 음성 데이터 및 상기 무선 충전 장치로부터 수신한 음성 데이터를 이용하여 사용자 음성 발화를 인식하는 동작을 포함하는 방법.
  15. 제 10항에 있어서,
    상기 수신한 피드백 데이터의 적어도 일부를 상기 전자 장치의 스피커 및/또는 디스플레이를 이용하여 출력하는 동작은,
    상기 수신한 출력 정보에 기반하여, 상기 수신한 피드백 데이터의 제1 부분(a first portion)을, 상기 스피커 및/또는 디스플레이를 이용하여 출력하는 동작,
    상기 수신한 출력 정보에 기반하여, 상기 수신한 피드백 데이터의 제2 부분(a second portion)을, 상기 전자 장치 및 상기 무선 충전 장치와 상이한 다른 장치로 전송하는 동작을 포함하며,
    상기 다른 장치는 상기 외부 서버에 의해 추정된 사용자 위치와 연관된 장치인 방법.
PCT/KR2018/012243 2017-10-17 2018-10-17 외부 장치를 이용하여 음성 기반 서비스를 제공하기 위한 전자 장치, 외부 장치 및 그의 동작 방법 WO2019078608A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/757,075 US11392346B2 (en) 2017-10-17 2018-10-17 Electronic device for providing voice-based service using external device, external device and operation method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170134608A KR102421824B1 (ko) 2017-10-17 2017-10-17 외부 장치를 이용하여 음성 기반 서비스를 제공하기 위한 전자 장치, 외부 장치 및 그의 동작 방법
KR10-2017-0134608 2017-10-17

Publications (1)

Publication Number Publication Date
WO2019078608A1 true WO2019078608A1 (ko) 2019-04-25

Family

ID=66174011

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/012243 WO2019078608A1 (ko) 2017-10-17 2018-10-17 외부 장치를 이용하여 음성 기반 서비스를 제공하기 위한 전자 장치, 외부 장치 및 그의 동작 방법

Country Status (3)

Country Link
US (1) US11392346B2 (ko)
KR (1) KR102421824B1 (ko)
WO (1) WO2019078608A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019022674A1 (en) * 2017-07-27 2019-01-31 Nanyang Technological University AUTHENTICATION REALIZATION METHOD FOR TRANSACTION AND SYSTEM THEREOF
US11574628B1 (en) * 2018-09-27 2023-02-07 Amazon Technologies, Inc. Deep multi-channel acoustic modeling using multiple microphone array geometries
US11003419B2 (en) * 2019-03-19 2021-05-11 Spotify Ab Refinement of voice query interpretation
CN117234356A (zh) * 2019-05-08 2023-12-15 义隆电子股份有限公司 用于触控装置的控制系统及方法
KR20220005348A (ko) * 2020-07-06 2022-01-13 삼성전자주식회사 인공지능 가상 비서 서비스에서의 화면 제공 방법 및 이를 지원하는 사용자 단말 장치 및 서버
US20220284893A1 (en) * 2021-03-05 2022-09-08 Abl Ip Holding Llc Wireless lighting control systems for intelligent luminaires
KR20230118441A (ko) * 2022-02-04 2023-08-11 삼성전자주식회사 청소 로봇을 제어하는 방법 및 시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015156477A1 (ko) * 2014-04-11 2015-10-15 에스케이플래닛 주식회사 무선 충전 장치와 단말, 그를 포함하는 무선 충전 시스템, 그 제어 방법 및 컴퓨터 프로그램이 기록된 기록매체
KR20160143148A (ko) * 2015-06-04 2016-12-14 삼성전자주식회사 전자 장치 및 전자 장치에서의 입출력 제어 방법
KR20170038358A (ko) * 2015-09-30 2017-04-07 (주)에스피에스 충전 거치대 및 모바일 단말기의 충전 장치
KR20170044426A (ko) * 2015-10-15 2017-04-25 삼성전자주식회사 음성 신호 인식 방법 및 이를 제공하는 전자 장치
KR20170086814A (ko) * 2016-01-19 2017-07-27 삼성전자주식회사 음성 인식 기능을 제공하는 전자 장치 및 그 동작 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101743777B1 (ko) 2010-10-21 2017-06-05 삼성전자주식회사 무선 충전 방법
CN103518311B (zh) * 2011-02-18 2017-07-04 Lg电子株式会社 无线充电的方法和装置
KR101768588B1 (ko) * 2011-05-19 2017-08-17 엘지전자 주식회사 무선 충전에 따른 음향 출력 상태의 제어
US9088305B2 (en) * 2013-07-08 2015-07-21 Blackberry Limited Docking station connectivity monitor/controller
US9247572B2 (en) 2013-12-28 2016-01-26 Intel Corporation Intelligent wireless charging device
US10181877B2 (en) 2014-01-21 2019-01-15 Ossia Inc. Systems and methods for wireless power and communication
KR101871272B1 (ko) * 2015-08-28 2018-06-27 엘지전자 주식회사 충전 제어 장치 및 그 제어 방법
KR102532366B1 (ko) * 2015-12-03 2023-05-15 삼성전자주식회사 무선 충전을 수행하는 전자 장치 및 방법
US10396586B1 (en) * 2016-09-21 2019-08-27 Marcellus Chen Wireless charging and powering of electronic devices by multipurpose wireless transmitting devices
US10593329B2 (en) * 2016-12-30 2020-03-17 Google Llc Multimodal transmission of packetized data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015156477A1 (ko) * 2014-04-11 2015-10-15 에스케이플래닛 주식회사 무선 충전 장치와 단말, 그를 포함하는 무선 충전 시스템, 그 제어 방법 및 컴퓨터 프로그램이 기록된 기록매체
KR20160143148A (ko) * 2015-06-04 2016-12-14 삼성전자주식회사 전자 장치 및 전자 장치에서의 입출력 제어 방법
KR20170038358A (ko) * 2015-09-30 2017-04-07 (주)에스피에스 충전 거치대 및 모바일 단말기의 충전 장치
KR20170044426A (ko) * 2015-10-15 2017-04-25 삼성전자주식회사 음성 신호 인식 방법 및 이를 제공하는 전자 장치
KR20170086814A (ko) * 2016-01-19 2017-07-27 삼성전자주식회사 음성 인식 기능을 제공하는 전자 장치 및 그 동작 방법

Also Published As

Publication number Publication date
US11392346B2 (en) 2022-07-19
KR102421824B1 (ko) 2022-07-19
US20200257496A1 (en) 2020-08-13
KR20190042931A (ko) 2019-04-25

Similar Documents

Publication Publication Date Title
WO2019182325A1 (ko) 전자 장치 및 전자 장치의 음성 인식 제어 방법
WO2021071115A1 (en) Electronic device for processing user utterance and method of operating same
WO2019078608A1 (ko) 외부 장치를 이용하여 음성 기반 서비스를 제공하기 위한 전자 장치, 외부 장치 및 그의 동작 방법
WO2019078576A1 (ko) 음성 신호를 제어하기 위한 전자 장치 및 방법
WO2019078588A1 (ko) 전자 장치 및 그의 동작 방법
WO2019182226A1 (en) System for processing sound data and method of controlling system
WO2018194268A1 (en) Electronic device and method for processing user speech
WO2019039834A1 (en) METHOD FOR PROCESSING VOICE DATA AND ELECTRONIC DEVICE SUPPORTING SAID METHOD
WO2020045950A1 (en) Method, device, and system of selectively using multiple voice data receiving devices for intelligent service
WO2020222444A1 (en) Server for determining target device based on speech input of user and controlling target device, and operation method of the server
WO2020017849A1 (en) Electronic device and method for providing artificial intelligence services based on pre-gathered conversations
WO2019112295A1 (ko) 외부 장치의 네트워크 셋업을 위한 전자 장치 및 그의 동작 방법
WO2019017715A1 (en) ELECTRONIC DEVICE AND SYSTEM FOR DETERMINING SPEECH INPUT RECEIVING TIME BASED ON CONTEXTUAL INFORMATION
WO2019221440A1 (ko) 사용자 발화를 처리하는 시스템 및 그 시스템의 제어 방법
WO2018182270A1 (ko) 전자 장치 및 이를 이용한 사용자 입력을 처리하기 위한 화면 제어 방법
AU2019319322B2 (en) Electronic device for performing task including call in response to user utterance and operation method thereof
WO2020060368A2 (en) Method and apparatus for providing notification by interworking plurality of electronic devices
WO2019212213A1 (en) Electronic device and method of executing function of electronic device
WO2020218650A1 (ko) 전자기기
WO2020263016A1 (ko) 사용자 발화를 처리하는 전자 장치와 그 동작 방법
WO2018174445A1 (ko) 파셜 랜딩 후 사용자 입력에 따른 동작을 수행하는 전자 장치
WO2019017665A1 (en) ELECTRONIC APPARATUS FOR PROCESSING A USER STATEMENT FOR CONTROLLING AN EXTERNAL ELECTRONIC APPARATUS AND METHOD FOR CONTROLLING THE APPARATUS
WO2019235878A1 (ko) 음성 인식 서비스 운용 방법 및 이를 지원하는 전자 장치
EP3830821A1 (en) Method, device, and system of selectively using multiple voice data receiving devices for intelligent service
WO2019039873A1 (ko) Tts 모델을 생성하는 시스템 및 전자 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18867813

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18867813

Country of ref document: EP

Kind code of ref document: A1