KR20150015481A - 자동화 어시스턴트로부터 액세서리로의 데이터 전송 - Google Patents

자동화 어시스턴트로부터 액세서리로의 데이터 전송 Download PDF

Info

Publication number
KR20150015481A
KR20150015481A KR1020147033082A KR20147033082A KR20150015481A KR 20150015481 A KR20150015481 A KR 20150015481A KR 1020147033082 A KR1020147033082 A KR 1020147033082A KR 20147033082 A KR20147033082 A KR 20147033082A KR 20150015481 A KR20150015481 A KR 20150015481A
Authority
KR
South Korea
Prior art keywords
accessory
automation assistant
report
request
electronic device
Prior art date
Application number
KR1020147033082A
Other languages
English (en)
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 애플 인크.
Publication of KR20150015481A publication Critical patent/KR20150015481A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/60Substation equipment, e.g. for use by subscribers including speech amplifiers
    • H04M1/6033Substation equipment, e.g. for use by subscribers including speech amplifiers for providing handsfree use or a loudspeaker mode in telephone sets
    • H04M1/6041Portable telephones adapted for handsfree use
    • H04M1/6075Portable telephones adapted for handsfree use adapted for handsfree use in a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/725Cordless telephones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/60Substation equipment, e.g. for use by subscribers including speech amplifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/725Cordless telephones
    • H04M1/72502Cordless telephones with one base station connected to a single line
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/724098Interfacing with an on-board device of a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72412User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/56Details of telephonic subscriber devices including a user help function
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/74Details of telephonic subscriber devices with voice recognition means

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Telephone Function (AREA)
  • Navigation (AREA)

Abstract

액세서리는 요청을 수신하도록 구성된다. 액세서리는 요청과 연관된 정보를 휴대용 디바이스로 전송한다. 휴대용 디바이스에 의해 실행되는 자동화 어시스턴트 애플리케이션은 요청을 해석하고 리포트를 제공할 수 있다. 휴대용 디바이스는 리포트를 액세서리로 전송할 수 있다. 리포트는 자동화 어시스턴트에 의해 결정된 하나 이상의 결과를 포함할 수 있다.

Description

자동화 어시스턴트로부터 액세서리로의 데이터 전송{TRANSMITTING DATA FROM AN AUTOMATED ASSISTANT TO AN ACCESSORY}
관련 출원들에 대한 상호 참조
본 출원은 2012년 6월 8일자로 출원되고 명칭이 "자동화 어시스턴트로부터 액세서리로의 데이터 전송(TRANSMITTING DATA FROM AN AUTOMATED ASSISTANT TO AN ACCESSORY)"인 미국 가출원 제61/657,560호, 및 2012년 10월 1일자로 출원되고 명칭이 "자동화 어시스턴트로부터 액세서리로의 데이터 전송(TRANSMITTING DATA FROM AN AUTOMATED ASSISTANT TO AN ACCESSORY)"인 미국 특허 출원 제13/632,800호를 우선권으로 주장하고 이들의 정규 출원이며, 이들의 전체 내용은 모든 목적을 위하여 본 명세서에 참조로서 포함된다.
휴대용 전자 디바이스는 사용자가 인터넷 또는 다른 소스들을 통해 다양한 정보를 저장하고 정보에 액세스할 수 있게 한다. 정보를 저장하고 액세스하는 것에 관련된 다양한 서비스가 휴대용 전자 디바이스에 제공될 수 있다. 예를 들어, 자동화 어시스턴트 애플리케이션은 휴대용 전자 디바이스 상에서 구현되어, 전자 디바이스와의 사용자 상호작용을 용이하게 하고, 휴대용 전자 디바이스에서 국부적으로 또는 원격 소스들로부터 이용가능한 정보에 사용자가 액세스하도록 도와줄 수 있다.
사용자는, 사용자가 휴대용 전자 디바이스의 인터페이스를 직접 조작하는 것이 편리하지 않을 때에, 휴대용 전자 디바이스에서 이용가능한 서비스를 이용하고 싶어할 수 있다. 사용자가 차량을 운전하고 있을 때와 같은 몇몇 경우에서, 휴대용 전자 디바이스의 사용은 법으로 제한될 수 있다. 다양한 액세서리가, 특정 환경들에서 사용할 수 있도록 구성된 사용자 인터페이스들을 제공할 수 있다. 예를 들어, 차량 내 헤드 유닛과 같은 액세서리는 운전자에 의해 쉽게 볼 수 있는 디스플레이를 제공할 수 있다. 헤드 유닛은 또한, 차량을 운전하는 동안 운전자가 사용하기에 편리한 사용자 입력 디바이스들을 가질 수 있다.
본 개시 내용은 대개 휴대용 전자 디바이스에서 이용가능한 애플리케이션을 이용해 정보를 검색하기 위하여 액세서리의 인터페이스를 사용하는 것에 관한 것이다. 특히, 액세서리의 사용자 인터페이스에서 수신된 요청이 휴대용 전자 디바이스로 전송될 수 있고, 휴대용 전자 디바이스에서 실행되는 자동화 어시스턴트 애플리케이션은 요청에 응답하여 리포트를 생성할 수 있다.
본 발명의 실시예들은, 액세서리가 휴대용 전자 디바이스의 자동화 어시스턴트 특징부에 액세스하도록 하기 위한 방법들 및 장치를 제공한다. 예시적인 실시예는 음성 요청을 수신하는 액세서리를 제공한다. 액세서리는 음성 요청과 연관된 데이터를 휴대용 전자 디바이스로 전송할 수 있다. 액세서리는 휴대용 전자 디바이스로부터 음성 요청에 응답하는 리포트를 수신할 수 있다. 리포트는 휴대용 전자 디바이스의 자동화 어시스턴트에 의해 생성될 수 있다. 액세서리는 사용자에게 리포트를 제시할 수 있다.
본 발명의 다른 태양은 액세서리에 관한 것이다. 액세서리는 제어기를 가질 수 있다. 제어기에 연결된 사용자 인터페이스는 음성 요청을 수신하도록 구성된 입력 디바이스를 포함할 수 있다. 제어기에 연결된 통신 인터페이스는 음성 요청과 연관된 데이터를 휴대용 전자 디바이스로 전송하고, 휴대용 전자 디바이스로부터 음성 요청에 응답하는 리포트를 수신할 수 있다. 사용자 인터페이스의 출력 디바이스는 사용자에게 리포트를 제시할 수 있다.
본 발명의 추가적인 태양은 휴대용 전자 디바이스에 관한 것이다. 휴대용 전자 디바이스는 저장 디바이스에 연결된 프로세서를 가질 수 있다. 자동화 어시스턴트는 저장 디바이스에 의해 저장되고 프로세서에 의해 실행가능한 복수의 명령어을 포함할 수 있다. 휴대용 전자 디바이스의 액세서리 인터페이스는 프로세서에 연결된다. 액세서리 인터페이스는 액세서리로부터 요청과 연관된 데이터를 수신할 수 있다. 자동화 어시스턴트는 요청과 연관된 태스크를 결정하고, 태스크를 수행하며, 태스크를 수행함으로써 결정되는 하나 이상의 결과를 포함하는 리포트를 생성할 수 있다. 휴대용 전자 디바이스는 리포트를 액세서리에 송신할 수 있다.
본 발명의 특성 및 이점을 더욱 명확하게 이해하기 위해, 하기의 설명 및 첨부 도면이 참조되어야 한다. 그러나, 도면들 각각은 단지 예시의 목적으로 제공되고, 본 발명의 범주의 한계의 한정으로 의도되지 않는 것이 이해되어야 한다.
<도 1>
도 1은 본 발명의 실시예에 따른 액세서리에 연결된 휴대용 전자 디바이스를 예시한다.
<도 2>
도 2는 본 발명의 실시예에 따른 휴대용 전자 디바이스 및 액세서리를 포함하는 시스템의 블록도이다.
<도 3>
도 3은 본 발명의 실시예에 따른 자동화 어시스턴트의 블록도이다.
<도 4a>
도 4a는 본 발명의 실시예에 따른 액세서리로부터 휴대용 디바이스로 송신될 수 있는 메시지들을 열거하는 표이다.
<도 4b>
도 4b는 본 발명의 실시예에 따른 휴대용 디바이스로부터 액세서리로 송신될 수 있는 메시지들을 열거하는 표이다.
<도 5>
도 5는 본 발명의 실시예에 따른 휴대용 전자 디바이스의 자동화 어시스턴트와 통신하기 위해 액세서리를 사용하기 위한 프로세스의 흐름도이다.
<도 6a 내지 도 6c>
도 6a 내지 도 6c는 본 발명의 실시예에 따른 자동화 어시스턴트로부터 수신된 상태 메시지들을 나타내는 액세서리의 디스플레이의 스크린샷들이다.
본 발명의 실시예들은 휴대용 전자 디바이스로부터 획득된 정보를 제시하는 액세서리에 관한 것이다. 사용자는, 액세서리가 사용자의 현재 환경에 적합한 인터페이스를 제공하기 때문에, 휴대용 전자 디바이스로부터 정보를 획득하기 위해 액세서리를 이용하고 싶어할 수 있다. 예시적인 예에서, 사용자는 차량의 운전자이고 액세서리는 차량의 헤드 유닛이다. 액세서리가 휴대용 전자 디바이스에 통신가능하게 결합될 때, 사용자는 휴대용 전자 디바이스에 요청을 발행하기 위해 액세서리를 사용할 수 있다.
요청은 액세서리 사용자 인터페이스의 사용자 입력 디바이스를 통해 액세서리에서 수신될 수 있다. 예를 들어, 사용자는 액세서리의 마이크로폰에 의해 검출될 수 있는 음성 요청을 발행할 수 있다. 액세서리는 요청과 연관된 정보를 휴대용 전자 디바이스에 전송할 수 있다. 자동화 어시스턴트 애플리케이션과 같은 휴대용 전자 디바이스에서 실행되는 애플리케이션은, 요청과 연관된 하나 이상의 결과를 포함하는 리포트를 제공할 수 있다. 리포트는 연관된 의도(예를 들어, 위치로 네비게이션하기, 전화 걸기(place telephone call), 캘린더에서 이벤트를 스케줄링하기, 이메일 보내기, 텍스트 메시지 보내기, 주식 가치 확인하기 등)를 가질 수 있다. 결과들은 휴대용 전자 디바이스로부터 액세서리로 전송될 수 있다. 액세서리는 사용자에게 결과들을 제시할 수 있다(예를 들어, 결과들은 액세서리의 디스플레이 상에 표시될 수 있다).
용어 "요청"은 본 명세서에서 자동화 어시스턴트에 의한 처리를 위해 의도되는 임의의 사용자 입력을 나타내기 위해 사용된다. 요청은 자동화 어시스턴트가 수행할 태스크를 결정하기 위해 해석할 수 있는 직접적인 명령들(예를 들어, "이곳 근처의 카페를 검색하라", "오전 7시에 나를 깨워라", "나의 새로운 메시지를 읽어라" 등) 및 질의(query)들(예를 들어, "누가 오늘의 자이언츠 경기(Giants game)를 이겼는가?", "오늘 몇 시에 일몰인가?", "마이너스 1(negative one)의 제곱근은 무엇인가?" 등)을 포함할 수 있다.
예시적인 예에서, "피터에게 전화(call Peter)"하라는 요청에 응답하여, 지능형 자동화 어시스턴트는 휴대용 전자 디바이스에 저장된 이름 "피터"를 갖는 여러 연락처를 찾을 수 있다. 휴대용 전자 디바이스는 지능형 자동화 어시스턴트에 의해 생성된 리포트를 액세서리로 전송할 수 있다. 리포트는 "피터"라는 이름의 각 연락처의 이름 및 성과 같은 복수의 결과를 포함할 수 있다. 액세서리는 액세서리의 디스플레이 상에 결과들의 리스트를 제시할 수 있다. 음성 요청은 단어 "전화(call)"를 포함했기 때문에, 자동화 어시스턴트는 "전화 걸기"를 나타내는 의도를 리포트와 연관시킬 수 있다. 의도는 리포트의 각 결과와 연관될 수 있다.
본 발명의 실시예에 따르면, 사용자는 액세서리에 의해 제시된 결과들의 리스트로부터 결과를 선택할 수 있다. 선택된 결과와 연관된 의도에 의해 나타내어진 기능은 액세서리에 의해 수행될 수 있다. 선택된 결과와 연관된 의도는 리포트와 연관된 의도에 기초하여 결정될 수 있다. 대안적으로, 선택된 결과와 연관된 정보는 액세서리로부터 휴대용 전자 디바이스로 전송될 수 있다. 휴대용 전자 디바이스는 선택된 결과와 연관된 의도에 의해 나타내어진 기능을 수행할 수 있다. 예를 들어, 액세서리의 입력 디바이스를 사용하여, 사용자는 "피터"라는 이름의 모든 연락처를 포함하는 결과들의 리스트로부터 "피터 스미스(Peter Smith)"를 선택할 수 있다. 선택된 결과 "피터 스미스"와 연관된 정보는 액세서리로부터 휴대용 전자 디바이스로 전송될 수 있다. 자동화 어시스턴트는, 휴대용 전자 디바이스에서 연락처 "피터 스미스"와 연관되어 저장된 전화번호로 전화를 걺으로써, 결과 "피터 스미스"와 연관된 의도에 의해 나타내어진 기능을 수행할 수 있다.
휴대용 전자 디바이스("휴대용 디바이스"로도 지칭됨)는 일반적으로 정보를 저장 및/또는 액세스하고 정보와 관련된 서비스들을 제공할 수 있는 핸드헬드 디바이스를 지칭한다. 그러한 서비스들의 예는, 캘린더, 연락처, 및 메모와 같은 개인 데이터의 저장; 인터넷 액세스; 모바일 전화 및 화상회의; 및 다양한 애플리케이션 프로그램을 선택적으로 다운로딩하고 실행시키는 능력을 포함할 수 있다. 휴대용 전자 디바이스는 오디오, 비디오, 및 스틸 이미지 파일들과 같은 미디어 자산들을 관리 및/또는 재생할 수 있는 휴대용 미디어 디바이스(예를 들어, 아이팟(iPod)®, 아이폰(iPhone)®, 또는 아이패드(iPad)®)를 포함할 수 있다.
지능형 자동화 어시스턴트("자동화 어시스턴트"로도 지칭됨)는 휴대용 전자 디바이스에서 구현되어, 디바이스와의 사용자 상호작용을 용이하게 하고, 디바이스에 의해 제공되는 국부적 및/또는 원격 서비스들과 사용자가 더욱 효과적으로 관계를 맺도록 돕는 애플리케이션이다. 자동화 어시스턴트는 자연어로 표현된 요청을 해석하고 그것의 해석에 기초하여 취할 작업 또는 수행할 태스크를 결정하며, 태스크 또는 작업을 수행할 수 있다. 예를 들어 자동화 어시스턴트는, 요청을 수신하고, 사용자 의도의 표현을 추론하기 위해 언어 해석기로 요청을 해석하고, 추론된 사용자 의도와 연관된 태스크를 식별하고, 식별된 태스크를 수행하기 위한 서비스를 호출하고, 그리고 서비스로부터 수신된 데이터에 기초하여 리포트를 제공할 수 있다. 지능형 자동화 어시스턴트는 사용자 의도의 표현에 기초하여, 도메인(예를 들어, 관심 지점 검색, 연락처들, 캘린더, 주식 시장 정보 등), 태스크(예를 들어, 식당 찾기, 연락처에 전화하기, 약속을 찾기, 주식 가치들을 보여주기 등) 및 태스크에 대한 파라미터(예를 들어, 지정된 도시 내에 위치한 관심 지점, 특정 이름을 갖는 연락처, 지정된 시간 범위 내의 이벤트, 사용자가 선택한 주식들) 중 하나 이상을 추가로 식별할 수 있다. 지능형 자동화 어시스턴트의 한 예는 iOS 디바이스에 이용가능한 시리(Siri) 애플리케이션이다. 요청을 수신하고, 사용자 의도를 결정하기 위해 요청에 사용된 언어를 해석하고, 그리고 결과를 결정하는 사용자 의도와 연관된 태스크를 수행할 수 있는 임의의 애플리케이션이 "자동화 어시스턴트"로서 사용될 수 있다는 점을 이해할 것이다.
액세서리는 휴대용 전자 디바이스와 통신할 수 있고, 사용자 입력을 수신하고 휴대용 전자 디바이스로부터 수신된 결과를 사용자에게 제공하는 사용자 인터페이스를 가질 수 있는, 임의의 디바이스일 수 있다. 액세서리는 차량 내 엔터테인먼트 시스템 또는 헤드 유닛, 차량 내 네비게이션 디바이스 또는 독립형 네비게이션 디바이스, 재생가능한 점자 디스플레이(refreshable braille display), 비디오 디스플레이 시스템 등을 포함할 수 있다.
휴대용 디바이스 및 액세서리는 도 1 및 도 2를 참조하여 하기에서 더 설명된다. 자동화 어시스턴트는 도 3을 참조하여 하기에서 더 설명된다.
도 1은 본 발명의 실시예에 따른 액세서리(104)에 통신가능하게 결합된 휴대용 전자 디바이스(102)를 예시한다. 휴대용 전자 디바이스(102)와 액세서리 사이의 통신은 통신 인터페이스를 통해 일어날 수 있다. 예를 들어, 휴대용 디바이스 및 액세서리는 각각 무선 통신을 지원하기 위하여 안테나에 결합된 RF 송수신기 컴포넌트들을 포함할 수 있다. 예시적인 실시예에서, 휴대용 디바이스(102)의 안테나(106)는 액세서리(104)의 안테나(108)로 무선 통신을 전송하고 그로부터 무선 통신을 수신한다.
액세서리(104)는 디스플레이(106) 및/또는 스피커(124)와 같은, 사용자에게 출력을 제공하기 위한 하나 이상의 컴포넌트를 포함하는 사용자 인터페이스를 가질 수 있다. 액세서리(104)의 사용자 인터페이스는 또한 사용자 입력을 수신하는 하나 이상의 컴포넌트를 포함할 수 있다. 예를 들어, 액세서리(104)는 음성 요청과 같은 음성 입력을 수신할 수 있는 마이크로폰(110)을 포함할 수 있다. 일부 실시예에서, 디스플레이(106)는 사용자가 버튼들(112 내지 120)과 같은 터치스크린 버튼들을 선택함으로써 입력을 입력할 수 있게 하는 터치스크린 디스플레이일 수 있다. 액세서리(104)는 물리적 버튼, 키패드, 또는 기타 사용자 입력 디바이스들과 같은 다른 입력 디바이스들을 통해 사용자 입력을 수신할 수 있음이 인식될 것이다.
예시적인 예에서, 사용자는 차량의 운전자이고 액세서리(104)는 차량의 헤드 유닛의 일부이다. 사용자는 "나의 현재 위치 근처의 어디에서 커피를 얻을 수 있는가?"와 같은 음성 요청을 진술할 수 있다. 액세서리(104)는 마이크로폰(110)을 통해 요청을 수신하고 그 요청을 휴대용 디바이스(102)로 전송할 수 있다. 자동화 어시스턴트와 같은, 휴대용 디바이스(102)에서 실행되는 애플리케이션은 요청을 해석할 수 있다. 자동화 어시스턴트는, 요청의 해석에 기초하여, 사용자가 위치의 검색을 수행하라는 요청을 발행하고 있다고 결정할 수 있다. 자동화 어시스턴트는 또한, 요청이 "카페" 유형을 갖는 상업 시설인 위치들로, 그리고 사용자의 현재 위치에 가까운 위치들(예를 들어, 현재 위치에서 미리 결정된 거리 이내임)로 검색을 제한하는 것으로, 결정할 수 있다. 지능형 자동화 어시스턴트는 요청에 의해 나타내어진 태스크를, 예를 들어 카페의 검색을 수행함으로써, 수행할 수 있다.
휴대용 디바이스(102)는, 수신된 요청에 응답하여 자동화 어시스턴트에 의해 위치가 찾아진 하나 이상의 결과를 포함하는 리포트를, 액세서리(104)로 전송할 수 있다. 예를 들어, 휴대용 디바이스(102)는 자동화 어시스턴트에 의해 수행된 검색으로 인한 카페 위치들을 전송할 수 있다. 결과들(예를 들어, 카페 이름들)은 하나 이상의 추가 정보의 항목(예를 들어, 현재 위치로부터의 거리)을 수반할 수 있다. 자동화 어시스턴트는 추가적으로 리포트의 하나 이상의 결과와 연관된 사용자 의도의 표시를 생성할 수 있다. 예를 들어 자동화 어시스턴트는, 동사 "찾다(find)" 또는 "어디에서(where)?"를 포함하는 요청이 위치로의 네비게이션에 대한 요청을 나타낼 수 있다고 결정할 수 있다. 휴대용 디바이스(102)는 액세서리로 전송된 하나 이상의 결과에 연관하여 의도 "위치로 네비게이션하기"를 액세서리(104)로 전송할 수 있다.
액세서리(104)는 휴대용 전자 디바이스(102)로부터 수신된 결과를 사용자에 제시할 수 있다. 예를 들어, 액세서리(104)는 액세서리의 디스플레이(106) 상에 결과들(112 내지 1118)의 리스트를 표시할 수 있다. 하나 이상의 열거된 결과는 휴대용 전자 디바이스(102)로부터 수신된 추가 정보를 수반할 수 있다. 예를 들어, 참조 번호 118에서 도시되는 결과 "페릴 커피(Peril Coffee)"는 또한 현재 위치로부터의 거리를 나타내는 정보(예를 들어, 참조 번호 122에서 도시되는 "5.6 마일")와 같은 추가 정보를 보여줄 수 있다. 일부 실시예에서, 액세서리(104)는 또한 휴대용 전자 디바이스로부터 수신된 결과와 관련되는 의도와 연관된 정보(예를 들어, "[결과]로의 길 안내를 제공할까요?")를 표시할 수 있다.
사용자는 액세서리(104)에 의해 제시된 옵션들 중 하나를 선택할 수 있다. 예를 들어, 사용자는 결과(112)를 선택하기 위해 터치스크린 디스플레이(106)의 버튼(112)을 터치할 수 있다. 결과가 의도를 수반하는 경우, 액세서리는 의도를 실행할 수 있다. 예를 들어, 결과가 "위치로 네비게이션하기" 기능을 나타내는 의도를 수반하는 경우, 결과(118)가 선택될 때, 액세서리는 사용자가 선택된 위치로 네비게이션하도록 돕기 위하여 지도 또는 턴 바이 턴(turn-by-turn) 길 안내를 제공할 수 있다.
일부 실시예에서, 액세서리는 선택된 결과와 연관된 정보를 휴대용 전자 디바이스(102)로 전송할 수 있다. 휴대용 디바이스(102)의 자동화 어시스턴트는 선택된 결과와 연관된 의도에 의해 나타내어진 기능을 수행할 수 있다. 예를 들어, 연관된 의도 "위치로 네비게이션하기"를 갖는 선택된 결과의 수신에 응답하여, 자동화 어시스턴트는 (예를 들어, 선택된 결과에 의해 나타내어진 위치로 네비게이션하는 것을 돕기 위해 지도 또는 길 안내를 제공함으로써) 의도에 의해 나타내어진 기능을 수행할 수 있다. 자동화 어시스턴트가 의도를 실행했을 때, 휴대용 전자 디바이스(102)는 자동화 어시스턴트에 의해 생성된 정보를 액세서리(104)로 전송할 수 있다. 액세서리(104)는 결과의 사용자 선택에 응답하여 자동화 어시스턴트에 의해 생성된 정보를 사용자에게 제공할 수 있다. 예를 들어, 액세서리(104)는 휴대용 전자 디바이스(102)로부터 수신된 네비게이션 정보를 디스플레이(106) 상에 표시할 수 있다.
도 2는 예를 들어 도 1에 도시된 디바이스들의 구현일 수 있는 시스템(200)의 단순화된 블록도이다. 시스템(200)은 본 발명의 실시예에 따른 휴대용 디바이스(202) 및 액세서리(204)를 포함한다. 이 실시예에서, (예를 들어, 도 1의 휴대용 전자 디바이스(102)를 구현하는) 휴대용 디바이스(202)는 컴퓨팅, 통신 및/또는 미디어 재생 능력을 제공할 수 있다. 휴대용 디바이스(202)는 처리 서브시스템(210), 저장 디바이스(212), 사용자 인터페이스(214), 네트워크 인터페이스(216), 및 액세서리 입력/출력(I/O) 인터페이스(218)를 포함할 수 있다. 휴대용 디바이스(202)는 또한 다른 컴포넌트들(명시적으로 도시되지 않음), 예컨대 배터리, 전원 제어기들, 및 다양한 향상된 능력들을 제공하도록 동작 가능한 다른 컴포넌트들을 포함할 수 있다.
저장 디바이스(212)는 예를 들어, 디스크, 플래시 메모리, 또는 임의의 다른 비일시적 저장 매체, 또는 매체들의 조합을 사용하여 구현될 수 있고, 휘발성 및/또는 비휘발성 매체를 포함할 수 있다. 일부 실시예에서, 저장 디바이스(212)는 오디오 파일, 비디오 파일, 이미지 또는 삽화 파일, 사용자의 연락처들에 관한 정보(이름, 주소, 전화번호 등), 사용자의 스케줄링된 약속 및 이벤트에 관한 정보, 메모, 및/또는 다른 유형의 정보와 같은 데이터 객체들을 저장할 수 있다. 일부 실시예에서, 저장 디바이스(212)는 또한 처리 서브시스템(210)에 의해 실행될 하나 이상의 애플리케이션 프로그램(예를 들어, 자동화 어시스턴트, 비디오 게임 프로그램, 개인 정보 관리 프로그램, 미디어 재생 프로그램 등)을 저장할 수 있다.
사용자 인터페이스(214)는 터치 패드, 터치 스크린, 스크롤 휠, 클릭 휠, 다이얼, 버튼, 스위치, 키패드, 마이크로폰 등과 같은 입력 디바이스들 뿐만 아니라, 비디오 스크린, 지시등, 스피커, 헤드폰 잭 등과 같은 출력 디바이스들을, 지원 전자 장치들(예를 들어, 디지털-아날로그 또는 아날로그-디지털 변환기, 신호 프로세서 등)과 함께 포함할 수 있다. 사용자는 휴대용 디바이스(202)의 기능성을 호출하기 위해 사용자 인터페이스(214)의 입력 디바이스들을 동작시킬 수 있으며, 사용자 인터페이스(214)의 출력 디바이스들을 통해 휴대용 디바이스(202)로부터의 출력을 보고/거나 들을 수 있다.
처리 서브시스템(210)은 하나 이상의 집적회로, 예를 들어, 해당 기술 분야에서 알려진 예들인, 하나 이상의 단일 코어 또는 다중 코어 마이크로프로세서 또는 마이크로제어기로서 구현될 수 있다. 동작 시에, 처리 시스템(210)은 휴대용 디바이스(202)의 동작을 제어할 수 있다. 다양한 실시예들에서, 처리 서브시스템(210)은 프로그램 코드에 응답하여 다양한 프로그램들을 실행할 수 있고, 다수의 동시에 실행 중인 프로그램들 또는 프로세스들을 유지할 수 있다. 임의의 주어진 시간에, 실행될 프로그램 코드의 일부 또는 전부는 처리 서브시스템(210)에 그리고/또는 저장 디바이스(212)와 같은 저장 매체에 상주할 수 있다.
적절한 프로그래밍을 통해, 처리 서브시스템(210)은 휴대용 디바이스(202)를 위한 다양한 기능성을 제공할 수 있다. 예를 들어, 액세서리(204)로부터의 요청의 수신에 응답하여, 처리 서브시스템(210)은 요청을 해석하고, 요청에 의해 나타내어진 태스크를 수행하며, 요청에 응답하는 리포트를 액세서리(204)로 전송하기 위해, 자동화 어시스턴트 애플리케이션을 실행할 수 있다. 처리 서브시스템(210)은 또한, 저장 디바이스(212)에 저장될 수 있는 애플리케이션 프로그램들을 포함하는 휴대용 디바이스(202)의 다른 기능들을 제어하기 위해 다른 프로그램들을 실행할 수 있다.
네트워크 인터페이스(216)는 휴대용 디바이스(202)에 음성 및/또는 데이터 통신 능력을 제공할 수 있다. 일부 실시예에서, 네트워크 인터페이스(216)는 (예를 들어, 셀룰러 전화 기술, 어드밴스드 데이터 네트워크 기술(advanced data network technology), 예컨대 3G 또는 EDGE, WiFi(IEEE 802.11 계열 표준), 또는 다른 이동 통신 기술들, 또는 이들의 임의의 조합을 사용하는) 무선 음성 및/또는 데이터 네트워크들에 액세스하기 위한 무선 주파수(RF) 송수신기 컴포넌트들, (예를 들어, 블루투스 표준을 사용하는) 단거리 무선 네트워킹을 위한 컴포넌트들, GPS 수신기 컴포넌트들, 및/또는 다른 컴포넌트들을 포함할 수 있다. 일부 실시예에서, 네트워크 인터페이스(216)는 무선 인터페이스에 추가하여 또는 그 대신에 유선 네트워크 연결성(예를 들어, 이더넷)을 제공할 수 있다. 네트워크 인터페이스(216)는 하드웨어(예컨대, 드라이버 회로, 안테나, 변조기/복조기, 인코더/디코더, 및 다른 아날로그 및/또는 디지털 신호 처리 회로) 및 소프트웨어 컴포넌트들의 조합을 사용하여 구현될 수 있다.
일부 실시예에서, 액세서리 I/O 인터페이스(218)는 휴대용 디바이스(202)가 다양한 액세서리와 통신 가능하게 할 수 있다. 예를 들어, 액세서리 I/O 인터페이스(218)는 차량내 엔터테인먼트 시스템 또는 헤드 유닛, 차량내 네비게이션 또는 독립형 네비게이션 디바이스, 재생가능한 점자 디스플레이, 비디오 디스플레이 등으로의 접속들을 지원할 수 있다. 액세서리 I/O 인터페이스(218)는 무선 통신(예를 들어, WiFi, 블루투스, 또는 다른 무선 프로토콜을 통해)을 지원할 수 있다. 일부 실시예에서, 액세서리 I/O 인터페이스(218)는 무선 통신 채널에 추가하여 또는 그 대신에 커넥터를 포함할 수 있다. 예를 들어, 액세서리 I.O. 인터페이스(218)는 다양한 아이팟®, 아이폰®, 및 아이패드® 제품들 뿐만 아니라 지원 회로에 사용되는 커넥터들에 대응하는 커넥터들을 포함할 수 있다. 커넥터는 전원 및 접지에 대해서 뿐만 아니라, 하나 이상의 데이터 통신 인터페이스, 예컨대 범용 직렬 버스(USB), 파이어와이어(FireWire)(IEEE 1394 표준), 및/또는 범용 비동기화 수신기/송신기(universal asynchronous receiver/transmitter, UART)에 대한 접속들을 제공할 수 있다. 일부 실시예에서, 커넥터는 전용 전원 및 접지 접촉부들 뿐만 아니라, 상이한 통신 기술들을 동시에 구현하는 데 사용될 수 있는 수 개(예를 들어, 4개)의 프로그램가능한 디지털 데이터 접촉부들을 제공한다; 예를 들어, 2개의 핀이 USB 데이터 핀들(D+ 및 D-)로서 할당될 수 있고, 2개의 다른 핀은 시리얼 송신/수신 핀들(예를 들어, UART 인터페이스를 구현하는)로서 할당될 수 있다; 핀들의 특정 통신 기술에의 할당은 접속이 구축되고 있는 동안 합의될 수 있다. 일부 실시예에서, 액세서리 I/O 인터페이스(218)는 아날로그 및/또는 디지털 포맷으로 휴대용 디바이스(202)로 또는 그로부터 전송될 수 있는 오디오 및/또는 비디오 신호를 위한 접속들을 제공할 수 있다. 따라서, 액세서리 I/O 인터페이스(218)는 다수의 통신 채널을 지원할 수 있고, 주어진 액세서리는 이 채널들의 일부 또는 전부를 사용할 수 있다.
(예를 들어, 도 1의 액세서리(104)를 구현하는) 액세서리(204)는 제어기(250), 저장 디바이스(252), 사용자 인터페이스 디바이스(254), 다른 액세서리-특정 하드웨어(256), 및 디바이스 I/O 인터페이스(258)를 포함할 수 있다. 액세서리(204)는 휴대용 전자 디바이스와 상호 동작할 수 있는 광범위한 종류의 액세서리들을 대표하며, 이러한 액세서리들은 능력, 복잡성, 및 폼 팩터(form factor)에서 상당히 다를 수 있다. 다양한 액세서리는 스피커, 외부 오디오/비디오 디바이스에 연결하기 위한 포트 등을 포함하지만 이에 한정되지 않는, 도 2에 명시적으로 도시되지 않은 컴포넌트들을 포함할 수 있다. 또한, 일부 액세서리는 다른 액세서리에 연결되고 그와 통신할 수 있는 추가 인터페이스(도시되지 않음)를 제공할 수 있다.
제어기(250)는 예를 들어, 액세서리(204)와 연관된 다양한 기능을 수행하기 위한 프로그램 코드를 실행하는 하나 이상의 단일 코어 또는 마이크로프로세서 및/또는 마이크로제어기를 포함할 수 있다. 예를 들어, 사용자가 액세서리(204)의 사용자 인터페이스(254)에 요청을 제공할 때, 제어기(250)는 요청이 수신되었다고 결정하고 그에 응답하여 액세서리(204)의 기능성을 호출할 수 있으며; 일부 경우에서, 호출된 기능성은 요청과 연관된 정보를 휴대용 디바이스(202)로 송신하고/거나 요청과 연관된 결과를 그로부터 수신하는 것을 포함할 수 있다.
저장 디바이스(252)는, 예를 들어, 디스크, 플래시 메모리, 또는 임의의 다른 비일시적 저장 매체, 또는 매체의 조합을 이용하여 구현될 수 있고, 휘발성 및/또는 비휘발성 매체를 포함할 수 있다. 일부 실시예에서, 저장 디바이스(252)는 데이터 객체들 및/또는 제어기(250)에 의해 실행되는 하나 이상의 애플리케이션 프로그램을 저장할 수 있다. 예를 들어, 액세서리(204)가 네비게이션 디바이스인 경우, 저장 디바이스는 지도 데이터, 관심 지점들과 연관된 정보, 및 디바이스의 사용자 인터페이스를 통해 네비게이션 정보를 제공하는 것과 연관된 하나 이상의 애플리케이션을 저장할 수 있다.
사용자 인터페이스(254)는 터치 패드, 터치 스크린, 스크롤 휠, 클릭 휠, 다이얼, 버튼, 스위치, 키패드, 마이크로폰 등과 같은 사용자-동작 가능한 입력 디바이스들 뿐만 아니라, 비디오 스크린 디스플레이, 지시등, 스피커, 헤드폰 잭 등과 같은 출력 디바이스들을, 지원 전자 장치들(예를 들어, 디지털-아날로그 또는 아날로그-디지털 변환기, 신호 프로세서 등)과 함께 포함할 수 있다. 사용자는 휴대용 디바이스(202)의 기능성을 호출하기 위해 사용자 인터페이스(254)의 입력 디바이스들을 동작시킬 수 있다.
액세서리-특정 하드웨어(256)는 그것 기능성을 인에이블시키기 위해 액세서리(204) 내에 있을 수 있는 임의의 다른 컴포넌트들을 포함할 수 있다. 예를 들어, 다양한 실시예에서 액세서리-특정 하드웨어(234)는, GPS 수신기; 네트워크 인터페이스; 전원 장치 및/또는 전원 관리 회로; 환경 센서들(예를 들어, 온도 센서, 압력 센서, 가속도계, 화학 센서 등) 등을 포함할 수 있다. 임의의 유형의 액세서리 기능성은 적절한 액세서리-특정 하드웨어(256)를 제공함으로써 지원될 수 있음을 이해해야 한다.
디바이스 I/O 인터페이스(258)는 액세서리(204)가 휴대용 디바이스(202)와 통신하게 할 수 있다. 본 발명의 일부 실시예에 따르면, 디바이스 I/O 인터페이스(258)는 무선 통신(예를 들면, WiFi, 블루투스, 또는 다른 무선 프로토콜을 통해)을 지원할 수 있다. 디바이스 I/O 인터페이스(258)는 아날로그 및/또는 디지털 포맷으로 오디오 및/또는 비디오 신호를 송신 및/또는 수신하기 위해 사용될 수 있다. 오디오 신호와 연관된 정보 및 다른 정보는 디바이스 I/O 인터페이스(258)를 통해 액세서리(204)로부터 휴대용 디바이스(202)로 전송될 수 있다. 다른 실시예에서, 디바이스 I/O 인터페이스는 무선 통신 채널에 추가하여 또는 그 대신에 휴대용 디바이스(202)에 포함된 커넥터와 직접 정합(mate)하는 커넥터를 포함한다. 그러한 커넥터는 다양한 아이팟®, 아이폰®, 및 아이패드® 제품들에서 사용되는 커넥터들에 상보적인 커넥터를 포함할 수 있다. 커넥터는 휴대용 디바이스(202)에 전원을 공급하고/하거나 휴대용 디바이스(202)로부터 전원을 공급받기 위해, 신호를 송신 및 수신하기 위해, 그리고 USB, UART, 및/또는 파이어와이어와 같은 하나 이상의 데이터 통신 인터페이스를 이용해서 정보를 전달하기 위해 사용될 수 있다. 다른 커넥터들 또한 사용될 수 있는데; 예를 들어, 디바이스 I/O 인터페이스(258)는 표준 USB 커넥터를 포함할 수 있고, 어댑터 케이블을 통해 휴대용 디바이스(202)의 액세서리 I/O 인터페이스(218)에 연결될 수 있다.
액세서리(204)는 휴대용 디바이스(202)와 상호작용하는 임의의 전자 장치일 수 있다. 일부 실시예에서, 액세서리(204)는 휴대용 디바이스(202)의 동작들에 대한 원격 제어, 또는 입력 및 출력 제어 둘 모두를 포함할 수 있는 원격 사용자 인터페이스(예를 들어, 휴대용 디바이스(202)로부터 획득된 현재 상태 정보를 표시하는 디스플레이 스크린)를 제공할 수 있다. 다양한 실시예에서 액세서리(204)는 휴대용 디바이스(202)의 임의의 기능을 제어할 수 있다. 예를 들어, 액세서리(204)에서 수신된 요청은 휴대용 디바이스(202)로 하여금, 연락처에 전화 통화를 개시하는 것, 검색을 수행하는 것 등을 하도록 할 수 있다. 다른 실시예에서, 휴대용 디바이스(202)는, 액세서리(204)의 저장 디바이스(252)로부터 저장된 데이터를 검색하는 것, 액세서리(204)로 하여금 위치로의 네비게이션을 위한 애플리케이션을 실행하도록 하는 것 등과 같은 액세서리(204)의 동작들을 제어할 수 있다.
본 명세서에서 설명되는 시스템 구성들 및 컴포넌트들은 예시적이며 변형들 및 변경들이 가능하다는 점이 이해될 것이다. 휴대용 디바이스 및/또는 액세서리는 본 명세서에서 구체적으로 설명되지 않은 다른 능력들(예를 들어, 모바일 폰, 글로벌 포지셔닝 시스템(GPS), 광대역 데이터 통신, 인터넷 연결성 등)을 가질 수 있다.
휴대용 디바이스(202) 및 액세서리(204)의 각자의 I/O 인터페이스들(218, 258)에서의 커넥터들은 상보적이거나 또는 원하는 바와 같지 않을 수 있다. 두 커넥터가 상보적이지 않는 경우, 어댑터(도시되지 않음)가 두 디바이스를 연결시키기 위해 제공될 수 있다. 커넥터들이 핀들 - 이 용어는 일반적으로 컴포넌트들을 연결시키기 위해 와이어들을 갖는 통상적인 전자 디바이스들과 연관됨 - 을 가지는 것으로서 본 명세서에서 기재될 수 있지만, 다른 신호 경로들(예를 들어, 광 시그널링)이 대체될 수 있다는 점이 이해되어야 한다. 또한, 다른 실시예에서, 접속들 중 일부는 무선일 수 있고, 커넥터들은 무선 인터페이스들이 제공되는 경우 생략될 수 있다.
또한, 휴대용 디바이스 및 액세서리는 본 명세서에서 특정 블록들을 참조하여 기술되지만, 이들 블록들은 기재의 편의를 위해 정의된 것이며, 컴포넌트 부분들의 특정 물리적 배열을 암시하도록 의도되지 않는다는 점이 이해되어야 한다. 또한, 블록들은 물리적으로 별개인 컴포넌트들에 대응할 필요는 없다. 블록들은 예컨대 프로세서를 프로그래밍하거나 적절한 제어 회로를 제공함으로써 다양한 동작들을 수행하도록 구성될 수 있으며, 다양한 블록들은 초기 구성이 획득되는 방법에 따라 재구성 가능하거나 재구성 가능하지 않을 수 있다. 본 발명의 실시예들은 회로 및 소프트웨어의 임의의 조합을 사용하여 구현된 전자 디바이스들을 포함한 다양한 장치에서 실현될 수 있다.
휴대용 디바이스(202)의 액세서리 I/O 인터페이스(218) 및 액세서리(204)의 디바이스 I/O 인터페이스(258)는 휴대용 디바이스(202)가 액세서리(204)에 연결되고, 후속적으로 액세서리(204)로부터 연결해제되게 한다. 본 명세서에서 사용되는 바와 같이, 휴대용 디바이스 및 액세서리는, 그들 각자의 인터페이스들 사이에서 통신 채널이 구축될 때마다 "연결"되고, 채널이 종료될 때에 "연결해제"된다. 이러한 연결은, 예컨대 정합 커넥터들과의 직접적인 물리적 연결, 예컨대 케이블을 통한 간접적인 물리적 연결, 및/또는 예컨대 블루투스를 통한 무선 접속을 통해 달성될 수 있다.
일부 실시예에서, 휴대용 디바이스 및 액세서리는 "액세서리 프로토콜"에 따라 메시지 및 데이터를 교환함으로써 연결된 동안에 통신할 수 있다. 메시지 및 데이터는 예를 들어 관련 인터페이스에 의해 제공되는 임의의 유선 또는 무선 전송 매체를 사용하여 전달될 수 있다.
액세서리 프로토콜은 휴대용 디바이스(202)와 그에 연결된 임의의 액세서리들, 예컨대 액세서리(204) 사이에서 교환될 수 있는 메시지들의 "범위(universe)"를 정의할 수 있다. 메시지 포맷은 예를 들어, 다음에 오는 것이 메시지 코드임을 나타내기 위한 시작 비트 또는 비트 시퀀스를 포함할 수 있고, 이어지는 실제 메시지 코드는 수신자에 의해 해석되고 그에 따라 동작될 수 있다. 메시지 코드들의 적어도 일부는 프로토콜에 의해 정의된 하나 이상의 관련된 파라미터를 가질 수 있으며, 메시지는 메시지 코드에 더하여 임의의 그러한 파라미터들을 위한 값들을 포함할 수 있다. 일부 경우에서, 프로토콜은, 메시지 코드와 연관된 특정 파라미터가 수신되지 않은 경우 또는 예기치 못한 파라미터가 메시지 코드와 함께 수신되는 경우에, 수신자를 위한 행동을 더 명시할 수 있다. 파라미터의 개수는 상이한 메시지들에 대해 상이할 수 있으며, 일부 경우에서 파라미터는 가변 길이를 가질 수 있다. 일부 실시예에서, 메시지 코드들은 주어진 메시지 코드가 하나의 방향으로만 유효하도록 정의될 수 있다. 다른 메시지 구조들이 또한 사용될 수 있다.
액세서리 프로토콜은 또한 메시지들의 교환을 위한 포맷을 정의할 수 있다. 예를 들어, 액세서리 프로토콜은, 각각 헤더(header) 및 페이로드(payload)를 갖는 하나 이상의 패킷을 사용하여 메시지가 송신되는 것으로 규정할 수 있다. 헤더는 기본 정보(예를 들어, 시작 표시자; 패킷의 길이; 패킷 시퀀스 번호; 하기에서 설명되는 바와 같은, 패킷이 연관되는 세션의 식별자)를 제공하는 한편, 페이로드는 메시지 데이터의 전부 또는 일부를 제공한다. 패킷은 또한 본 기술 분야에서 알려진 에러 검출 또는 에러 정정을 포함할 수 있다.
일부 실시예에서, 메시지들은 "일반적인" 메시지 세트 및 "선택적인" 메시지 세트로 논리적으로 분류될 수 있다. 액세서리 프로토콜을 사용하는 모든 액세서리 및 모든 휴대용 디바이스는 적어도 일반 메시지 세트를 지원하는 것이 요구될 수 있다. 이 메시지 세트는, (만약 있다면) 선택적인 세트 내의 메시지들 중 어떤 메시지들이 각각 지원하는지를 포함하여, 휴대용 디바이스 및 액세서리가 서로에 대해 자신들을 식별하고 인증하게 해주며, 그들 각자의 능력들에 관한 정보를 제공하는 것을 가능하게 하는, 메시지들을 포함할 수 있다. 예를 들어, 일반적인 메시지 세트는, 액세서리가 송신할 수 있는 선택적인 세트 내에서의 모든 메시지 및 액세서리가 수신하고 그에 따라 동작할 수 있는 선택적인 세트 내에서의 모든 메시지를 열거하는, 액세서리가 휴대용 디바이스로 송신할 수 있는 메시지를 포함할 수 있다. 일반적인 메시지 세트는 또한 휴대용 디바이스가 액세서리의 알려진 아이덴티티 및 능력들을 검증하기 위해 사용할 수 있는(또는 그 역도 성립) 인증 메시지들을 포함할 수 있으며, 인증이 실패할 경우에 액세서리(또는 휴대용 디바이스)는 선택적인 메시지들 중 일부(또는 모든) 메시지를 호출하는 것으로부터 차단될 수 있다.
선택적인 메시지 세트는 주어진 액세서리에서 지원되거나 지원되지 않을 수 있는 다양한 기능성과 관련된 메시지들을 포함할 수 있다. 예를 들어, 선택적인 메시지 세트는, 액세서리가 휴대용 디바이스의 호출될 기능을 식별할 수 있게 하는 단순한 원격 메시지들, 휴대용 디바이스의 사용자 인터페이스의 전부 또는 일부를 액세서리 상에 복제하는 것과 관련된 정보를 획득하는 데(이에 따라 더 진보된 원격 제어를 지원함) 사용될 수 있는 원격 사용자 인터페이스 메시지들, 자동화 어시스턴트에 대한 요청과 연관된 정보를 포함하는 메시지들, 사용자로 하여금 휴대용 디바이스를 동작시킴으로써 액세서리 내의 라디오 튜너를 제어하게 하고/하거나 액세서리를 동작시킴으로써 휴대용 디바이스 내의 라디오 튜너를 제어하게 할 수 있는 메시지들 등을 포함할 수 있다. 선택적인 메시지들의 임의의 조합은 액세서리 프로토콜에서 정의될 수 있으며, 주어진 액세서리 또는 휴대용 디바이스가 선택적인 메시지들의 전부를(또는 일부라도) 지원하도록 하는 요건은 없다.
도 3은 휴대용 디바이스(202)의 저장 디바이스(212)에 의해 저장되고 휴대용 디바이스(202)의 처리 서브시스템(210)에 의해 실행될 수 있는 자동화 어시스턴트 애플리케이션(300)의 예를 도시하는 블록도이다. 자동화 어시스턴트는 2011년 1월 10일자로 출원된 미국 특허 출원 제12/987,982호를 참조하는 지능형 자동화 어시스턴트와 유사할 수 있다. 다양한 실시예에 따르면, 자동화 어시스턴트(300)는 하나 이상의 다음 시스템, 컴포넌트, 디바이스, 프로세스 등(또는 이들의 조합)을 포함할 수 있다: 하나 이상의 능동적 온톨로지(active ontology)들(302), 능동적 입력 유도(active input elicitation) 컴포넌트(들)(336), 단기 메모리(short term memory) 컴포넌트(들)(304), 장기 메모리(long term memory) 컴포넌트(들)(306), 도메인 모델 컴포넌트(들)(308), 어휘 컴포넌트(들)(310), 언어 패턴 인식기 컴포넌트(들)(312), 언어 해석기 컴포넌트(들)(314), 도메인 엔트리 데이터베이스(들)(316), 다이얼로그 흐름 프로세서(dialog flow processor) 컴포넌트(들)(318), 태스크 흐름 모델 컴포넌트(들)(320), 다이얼로그 흐름 모델 컴포넌트(들)(322), 서비스 오케스트레이션(services orchestration) 컴포넌트(들)(324), 서비스 모델 컴포넌트(들)(326), 서비스 컴포넌트(들)(328), 및 출력 프로세서 컴포넌트(들)(330).
자동화 어시스턴트(300)는 사용자 입력(332)(예를 들어, 액세서리(204)로부터 휴대용 디바이스(202)로 전송되는 요청)을 수신할 수 있다. 자동화 어시스턴트(300)는 요청과 연관된 추가 정보(즉, 다른 이벤트들/사실들(334))를 수신하고/거나 검색할 수 있다. 예를 들어, 자동화 어시스턴트(300)는 액세서리(204)의 GPS 수신기 컴포넌트에 의해 결정되는 위치 좌표를 수신할 수 있다. 위치 좌표는 액세서리(204)로부터 휴대용 디바이스(202)로 송신되는 메시지 내에서 전송될 수 있다. 다른 예에서, 자동화 어시스턴트(300)는 휴대용 디바이스(202)의 GPS 수신기 컴포넌트에 의해 결정된 위치 좌표를 획득할 수 있다.
일부 실시예에서, 능동적 입력 유도 컴포넌트(들)(336)는 사용자 또는 사용자의 환경으로부터 입력을 유도하고, 용이하게 하고/거나 처리하도록 동작 가능할 수 있다. 예를 들어, 능동적 입력 유도(336)는 자동화 어시스턴트(300)에 의해 저장된 사용자의 제약사항들 또는 선호들에 관한 정보를 검색할 수 있다. 능동적 입력 유도를 수행하는 것은, 자동화 어시스턴트(300)로 하여금 입력 처리의 초기 단계에서 의도를 명확하게 할 수 있다.
능동적 온톨로지들(302)은 자동화 어시스턴트(300)의 다른 부분들로부터의 모델들, 컴포넌트들, 및/또는 데이터를 통합하는 통합 기반구조로서 기능한다. 컴퓨터 및 정보 과학 분야에서, 온톨로지들은 클래스들/유형들, 관계(relation)들, 특성(attribute)들/속성(property)들, 및 인스턴스들 내에서의 그들의 인스턴스화와 같은 데이터 및 지식 표현을 위한 구조들을 제공한다. 자동화 어시스턴트(300)의 일부 실시예에서, 온톨로지들은 도메인 모델들과 같은 모델들을 구축하기 위한 모델링 프레임워크의 일부이다. 능동적 온톨로지(302)들은 또한, 별개의 처리 요소들이 자동화 어시스턴트(300)의 태스크들 중 적어도 일부를 수행하는 실행 환경으로서 기능할 수 있다.
일부 실시예에서, 다양한 컴포넌트들이 능동적 온톨로지(302)와 연관된 공통 컨테이너 하에서 구조화된다. 단기 메모리 컴포넌트(들)(304)는 임의의 이전의 입력 또는 이전의 입력의 일부분, 및/또는 사용자와의 상호작용 이력에 관한 임의의 다른 속성 또는 사실에 매칭시키기 위해 사용될 수 있다. 예를 들어, 부분 입력은 사용자가 현재 세션 내에서 만났던 도시들에 대하여 매칭될 수 있다. 장기 메모리 컴포넌트(306)는 휴대용 디바이스(202)의 저장 디바이스(212)에 저장된 정보, 예컨대, 연락처의 이름, 사용자가 "가장 좋아하는(favorite)"으로 나타낸 식당, 사용자가 휴대용 디바이스(202)에서 따르기로 선택한 하나 이상의 주식 등을 제안하기 위해 사용될 수 있다. 도메인 모델 컴포넌트(들)(308)는 현재 입력과 일관될 개념(concept)들, 관계들, 속성들 및/또는 인스턴스들을 제안함으로써 입력들을 제약할 수 있다. 어휘 컴포넌트(들)(310)는 현재 사용자 입력(332)에 매칭되는 단어 또는 구절을 제안할 수 있다. 언어 패턴 인식기 컴포넌트(들)(312)는 관용구, 구절, 문법적 구조, 또는 현재 입력 내의 다른 패턴들을 인식하기 위해 사용될 수 있고, 패턴을 채우는 완성안을 제안하기 위해 사용될 수 있다.
일부 실시예에서, 자동화 어시스턴트(300)는 휴대용 디바이스(202)로부터 원격으로 저장된 정보를 획득할 수 있다. 예를 들어, 자동화 어시스턴트(300)는 휴대용 디바이스(202)의 네트워크 인터페이스(216)를 통해 인터넷으로부터 정보를 획득할 수 있다. 또한, 자동화 어시스턴트(300)는 액세서리(204)의 저장 디바이스(252)에 저장된 정보를 획득할 수 있다. 자동화 어시스턴트(300)가 요청에 대한 응답을 생성하기 위해 네트워크 인터페이스(216)에 의존할 때에, 자동화 어시스턴트(300)는 자동화 어시스턴트(300)가 네트워크 액세스를 요구하는 요청들에 응답할 수 없음을 나타내는 "네트워크 액세스가 없음" 상태 등을 포함하는 상태 정보를 제공할 수 있다.
자동화 어시스턴트(300)에 의해 수신된 요청은 언어 해석기 컴포넌트(들)(314)에 의해 구문분석(parse)되고 분석될 수 있다. 언어 해석기(314)는 요청이 도메인 엔티티 데이터베이스(316) 내의 엔트리에 대한 매칭을 포함하는지 여부를 결정할 수 있다. 도메인 엔티티 데이터베이스(316)는 또한 입력에 매칭되는 도메인 내의 가능한 엔티티들(예를 들어, 사업체 명칭, 영화 제목, 이벤트 명칭 등)을 사용자에게 제안하기 위해 사용될 수 있다. 다이얼로그 흐름 프로세서 컴포넌트(들)(318)는 사용자가 수행을 원하는 태스크 및/또는 사용자가 해결을 원하는 문제를 식별하고, 태스크 또는 문제에 대한 파라미터들을 식별할 수 있다. 예를 들어, 요청 "나의 현재 위치 근처에서 어디에서 커피를 구할 수 있는가?"로부터 다이얼로그 흐름 프로세서(318)는 사용자가 수행을 원하는 태스크가 사업체를 검색하는 것이라고 결정할 수 있다. 다이얼로그 흐름 프로세서(318)는 또한 태스크를 위한 파라미터들, 예컨대 찾을 사업체의 유형(예를 들어, 카페) 및 위치 제약사항(예를 들어, 특정 도시 내에서, 특정 우편번호 내에서, 현재 사용자 위치로부터 미리 정해진 반경 내에서 등)을 결정할 수 있다.
다이얼로그 흐름 프로세서(318)는 하나 이상의 연관된 데이터베이스, 예컨대 태스크 플로우 모델들(320) 및 다이얼로그 흐름 모델들(322)로부터의 정보에 액세스하고/거나 이를 이용할 수 있다. 태스크 플로우 모델 컴포넌트(들)(320)는 문제를 해결하기 위해 또는 요구를 처리하기 위해 취하는 단계들의 표현들을 저장할 수 있다. 예를 들어, 요청 "나의 현재 위치 근처에서 어디에서 커피를 구할 수 있는가?"에 응답하는 포괄적 태스크를 위한 태스크 플로우는, 특정 유형을 갖는 사업체의 검색을 수행하는 단계, 현재 위치로부터의 거리와 같은 정보를 수반하는 하나 이상의 결과를 제공하는 단계, 위치 결과의 선택을 수신하는 단계, 및 선택된 위치로 사용자가 네비게이션하도록 돕기 위해 네비게이션 데이터를 제공하는 단계를 포함할 수 있다. 다이얼로그 흐름 모델 컴포넌트(들)(322)는 사용자와 자동화 어시스턴트 사이의 특정한 종류의 대화에서 취하는 단계들의 표현들을 저장할 수 있다. 예를 들어, 자동화 어시스턴트는 검색을 수행하기 전에 검색 파라미터들을 확인하거나, 사용자가 네비게이션 명령들이 제공되기를 바라는지 물어볼 수 있다.
서비스 오케스트레이션(324)은 정보를 획득하기 위해 사용되는 서비스들에 관련된 정보를 동적으로 그리고 자동적으로 결정할 수 있다. 예를 들어, 서비스 오케스트레이션(들)(324)은, 요청과 연관된 도메인들 및 태스크들에 따라 요청될 수 있는 서비스들을 결정하는 것, 하나 이상의 서비스를 호출하는 것, 서비스 애플리케이션 프로그래밍 인터페이스들(API)의 입력 요건들을 만족시키기 위해 태스크 파라미터들 및 제약사항들을 변환하는 것, 하나 이상의 서비스를 모니터링하고 그들로부터의 결과들을 수집하는 것, 다수의 서비스들로부터 서비스 결과들을 통합하는 것, 요청을 위한 파라미터들을 만족시키기 위해 복수의 서비스를 오케스트레이션하는 것 등을 행할 수 있다. 예시적인 예에서, 식당의 테이블을 찾고 예약하기 위하여, 서비스 오케스트레이션 컴포넌트(들)(324)는, 식당 리뷰들을 찾아보는 것, 식당의 이용가능성을 판단하는 것, 및 식당을 예약하는 것과 같은 기능들을 수행하기 위해 어느 서비스들을 호출할지에 대해 결정할 수 있다. 서비스 모델 컴포넌트(들)(326)는 서비스 오케스트레이션(234)에 의해, 서비스들(328)에 관한 기계 판독가능 정보, 예컨대 소정 클래스들의 계산을 수행하기 위한 서비스들의 능력들, 소정 클래스들의 질의들에 답하기 위한 서비스들의 능력들, 어떤 클래스들의 거래들이 다양한 서비스들에 의해 제공되는지에 관한 정보, 다양한 서비스들에 의해 노출되는 API들의 파라미터들에 관한 정보, 다양한 서비스들에 의해 제공되는 데이터베이스들에 대한 데이터베이스 질의들에 사용될 수 있는 파라미터들에 관한 정보 등를 제공하는 데 사용될 수 있다.
출력 프로세서 컴포넌트(들)(330)는 균일한 내부 데이터 구조로 표현되는 출력 데이터를, 그것을 상이한 양식들에서 적절하게 렌더링하는 형태로 포맷팅(formatting)할 수 있다. 예를 들어, 출력 프로세서(330)는 액세서리(204)에 인식가능한 구조화된 데이터 포맷에 따라 출력 데이터를 포맷팅할 수 있다. 구조화된 데이터 포맷은 이름, 주소, 전화번호, 이메일 주소, 자원 위치 표시자(URL), 이미지, 오디오 파일, 지리적 위치 좌표 등과 같은 정보를 포함하는 속성 유형들을 정의한 파일 포맷인, vCard 포맷일 수 있다. 구조화된 데이터 포맷은 확장가능 마크업 언어(XML)로 정의될 수 있다.
출력 데이터(338)는 수신된 요청의 해석에 기초하여 자동화 어시스턴트(300)에 의해 결정된 하나 이상의 결과를 포함하는 리포트일 수 있다. 리포트는 결과들과 연관된 추가 정보 및/또는 결과들과 연관된 의도를 포함할 수 있다. 출력 데이터(338)는 휴대용 디바이스(202)로부터 액세서리(204)로 전송될 수 있다. 일부 실시예에서, 자동화 어시스턴트(300)는 요청에 응답을 제공한 후에 추가 작업들(340)을 수행할 수 있다. 예를 들어, 사용자가 결과를 선택하면, 선택된 결과와 연관된 정보가 자동화 어시스턴트(300)에 의해 수신될 수 있다. 자동화 어시스턴트(300)는 결과와 연관된 의도에 의해 나타내어진 기능을 수행할 수 있다(예를 들어, 선택된 연락처에 전화하기, 선택된 위치로의 네비게이션 명령들을 제공하기 등).
도 3에 참조된 컴포넌트들은 휴대용 디바이스(204) 상에서 또는 원격 서버 상에서 구현될 수 있다. 예를 들어, 요청의 해석이 휴대용 디바이스(204)에서 일어날 수 있고, 요청과 연관된 텍스트가 추가 처리을 위해 원격 서버로 전송될 수 있다. 원격 서버는 요청에 의해 나타내어진 태스크를 수행하고 결과들을 휴대용 디바이스(204)에 제공할 수 있다.
도 4a는 본 발명의 실시예에 따른, 액세서리로부터 휴대용 디바이스로 송신될 수 있는 메시지들을 열거하는 표이다. 도 4b는 본 발명의 실시예에 따른, 휴대용 디바이스로부터 액세서리로 송신될 수 있는 메시지들을 열거하는 표이다. 도 4a 및 도 4b의 액세서리 및 휴대용 디바이스는, 예를 들어 각각 도 2를 참조하여 기재된 바와 같은, 액세서리(204) 및 휴대용 디바이스(202)일 수 있다. 도 4a 및 도 4b를 참조하여 기재된 통신들 각각은 앞서 기재된 바와 같은 액세서리 프로토콜의 선택적인 메시지 세트에 포함된 메시지들일 수 있다.
휴대용 디바이스(202)와 액세서리(204) 사이에 통신 접속이 구축될 시에, 휴대용 디바이스(202)에 의해 실행가능한 자동화 어시스턴트 애플리케이션(예를 들어, 도 3을 참조하여 기재된 자동화 어시스턴트(300))을 활성화시키기 위하여 액세서리(204)는 도 4a에서 나타낸 바와 같이 ActivateAutoAsst 메시지를 송신할 수 있다. 예를 들어, 차량 내에 위치된(예를 들어, 차량의 핸들 상에) 푸시 투 토크 버튼과 같은 특정 사용자 입력 디바이스의 동작에 응답하여, ActivateAutoAsst 메시지가 자동화 어시스턴트(300)를 활성화시키기 위해 액세서리(204)에 의해 생성될 수 있다. 일부 실시예에서, ActivateAutoAsst 메시지는 액세서리(204)의 사용자 인터페이스에서 수신된 사용자 입력을 휴대용 디바이스(202)로 라우팅(routing)하는 것을 개시한다. 예를 들어, 액세서리(204)의 마이크로폰에서 수신된 음성 요청과 연관된 오디오는 휴대용 디바이스(202)로 라우팅될 수 있다. 사용자 입력 라우팅은, 예를 들어 ActivateAutoAsst 메시지가 송신되었는지의 여부에 기초하여, 액세서리(404)에 의해 제어될 수 있다.
일부 실시예에서, 자동화 어시스턴트(300)가 액세서리(204)에 의해 활성화될 때, 휴대용 디바이스(202)는 도 4b에서 나타낸 바와 같이 SendGUI 메시지를 사용하여 자동화 어시스턴트(300)를 위한 그래픽 사용자 인터페이스를 액세서리(204)로 전송한다. 액세서리(204)는 수신된 그래픽 사용자 인터페이스를 표시하고, 수신된 그래픽 사용자 인터페이스를 통해 자동화 어시스턴트(300)로 향해진 입력을 수신한다.
액세서리(204)는 도 4a에서 나타낸 바와 같이 GetAutoAsstState 메시지를 사용하여 휴대용 디바이스(202)로부터 자동화 어시스턴트 상태를 요청할 수 있다. 휴대용 디바이스(202)는 도 4b에서 나타낸 바와 같이 자동화 어시스턴트의 상태를 나타내는 자동화 어시스턴트 상태 메시지 SendAutoAsstState를 액세서리(204)로 송신할 수 있다. 예시적인 SendAutoAsstState 메시지들은, 자동화 어시스턴트(300)가 활성화되거나, 비활성화되거나, 이용가능하거나, 또는 이용불가능하다는 것을 나타내는 자동화 어시스턴트 상태 정보를 포함할 수 있다. 자동화 어시스턴트(300)가 자동화 어시스턴트에 의해 사용되는 네트워크에 대한 액세스를 갖지 않는 경우, 휴대용 디바이스(202)는, 예를 들어 자동화 어시스턴트 서비스가 이용불가능하거나 제한된다는 것을 나타내는, SendAutoAsstState 메시지를 액세서리(204)로 송신할 수 있다. 액세서리(204)는 SendAutoAsstState 메시지를 통해 수신된 정보를 통지와 함께 액세서리의 사용자 인터페이스(예를 들어, 디스플레이)를 통해 사용자에게 제시할 수 있다.
액세서리(204)는 도 4a에서 나타낸 바와 같이 SendAccMode 메시지를 사용하여 액세서리 상태 통지들을 휴대용 디바이스(202)로 송신할 수 있다. 예를 들어, 액세서리(204)는 액세서리의 모드(또는 액세서리의 모드 변경)를 휴대용 디바이스(202)에 나타낼 수 있다. 일부 실시예에서, SendAccMode 메시지는 액세서리가 핸즈-프리(음성 요청 입력) 모드로 들어가고 있음, 아이즈-프리(eyes-free)(합성된 음성(synthesized speech) 출력) 모드로 들어가고 있음, 핸즈-프리 모드에서 나오고 있음, 또는 아이즈-프리 모드에서 나오고 있음을 나타낼 수 있다. SendAccMode는 액세서리가 핸즈-프리 또는 아이즈-프리 모드와 같은 특정한 모드에 따라 사용자로부터 입력을 수신하고/거나 사용자에게 출력을 제공할 것임을 나타내는 메시지일 수 있다. 자동화 어시스턴트(300)는 SendAccMode 메시지에 응답하여 수신된 데이터가 취급되는 방식을 변경할 수 있다. 자동화 어시스턴트는 또한, 수신된 SendAccMode 메시지에 응답하여 휴대용 디바이스(202)가 액세서리(204)에 데이터를 제공하는 방식을 변경할 수 있다. 일부 실시예에서 SendAccMode 메시지는, 자동화 어시스턴트(300)가 SendAccMode 메시지에 응답하여 수신된 데이터가 취급되는 방식을 변경할 것임을 나타내는, 하나 이상의 비트를 포함한다. SendAccMode는 또한, 자동화 어시스턴트(300)가 SendAccMode 메시지에 응답하여 휴대용 디바이스(202)가 액세서리(204)에 데이터를 제공하는 방식을 변경할 것임을 나타내는, 하나 이상의 비트를 포함할 수 있다. 일부 실시예에서, 휴대용 디바이스(202)는 도 4b에서 나타낸 바와 같이, GetAccMode 메시지를 액세서리(204)로 송신함으로써 액세서리 모드 상태를 요청할 수 있다.
액세서리(204)의 사용자 인터페이스에서 수신된 요청 또는 요청의 표현은, 도 4a에서 나타낸 바와 같이, SendRequest 메시지를 사용하여 휴대용 디바이스(202)로 전송될 수 있다. SendRequest 메시지는, 액세서리 유형 및 사용자 입력 유형에 따라, 아날로그 오디오, 디지털 오디오, 음성으로부터 변환된 텍스트, 액세서리(204)의 사용자 인터페이스에서 입력된 텍스트 등을 포함할 수 있다. 예를 들어, 액세서리(204)의 마이크로폰에서 수신된 음성 요청은 휴대용 디바이스(202)로 라우팅될 수 있다. 대안적으로, 음성 입력의 디지털 표현은 액세서리(204)로부터 휴대용 디바이스(202)로 송신될 수 있다. 일부 실시예에서, SendRequest 메시지는 음성 요청과 연관된 정보를 포함할 수 있다. 예를 들어, 액세서리(204)는 음성 요청의 일부 또는 전부를 텍스트로 변환하고, 음성 요청과 연관된 텍스트를 휴대용 디바이스(202)로 전송할 수 있다. 일부 실시예에서, 요청은 텍스트 입력(예를 들어, 터치스크린 입력 디바이스, 키보드 입력 디바이스 등)으로서 액세서리(404)에서 수신될 수 있고, SendRequest 메시지는 텍스트 입력을 포함할 수 있다.
SendRequest 메시지를 수신한 후에, 휴대용 대바이스(202)는, SendRequest 메시지에 포함된 요청에 대한 응답을 제공함에 있어서 자동화 어시스턴트(300)의 진행에 관한 SendAutoAsstState 메시지를 액세서리(204)로 송신할 수 있다. 예를 들어, SendAutoAsstState 메시지는 액세서리(204)에 제공될 수 있으며, 이는 요청이 수신되었음, 요청이 처리 중임, 요청을 처리하기 위해 추가 정보가 필요함 등을 나타낸다. 또한, 휴대용 디바이스(202)는, 자동화 어시스턴트(300)가 요청과 연관된 태스크를 결정할 수 없음을 나타내는, SendAutoAsstState 메시지를 액세서리(204)로 송신할 수 있다. 자동화 어시스턴트(300)가 요청과 연관된 태스크를 수행하지만 어떠한 결과도 찾을 수 없는 경우, 휴대용 디바이스(202)는 어떠한 결과도 발견되지 않았음을 나타내는 SendAutoAsstState 및/또는 SendReport 메시지를 액세서리(204)로 송신할 수 있다.
자동화 어시스턴트(300)가 수신된 SendRequest 메시지에 응답하여 태스크를 완료할 때, 휴대용 디바이스(202)는, 자동화 어시스턴트(300)가 요청에 기초하여 생성한 리포트를 포함하는 SendReport 메시지를 액세서리(204)로 전송할 수 있다. SendReport 메시지 내에서 송신된 리포트는 하나 이상의 결과를 포함할 수 있다. 일부 실시예에서, 사용자는 리포트로부터 결과를 선택할 수 있다. 사용자의 결과의 선택을 나타내는 SelectResult 메시지는 액세서리(204)로부터 휴대용 디바이스(202)로 전송될 수 있다. 자동화 어시스턴트(300)는 사용자 선택을 수신하고, 사용자 선택과 연관된 기능을 수행할 수 있다.
아이즈-프리 모드가 활성화될 때, 휴대용 디바이스(202)는 오디오 데이터를 액세서리(204)로 전송할 수 있다. 예를 들어, 리포트가 다수의 결과를 포함하는 경우, SelectResult 메시지는 결과들의 리스트의 각 결과에 대응하는 합성된 음성의 오디오 파일을 포함할 수 있다. 액세서리(204)가 휴대용 디바이스(202)로부터 수신된 오디오를 재생할 때, 결과들의 리스트는 사용자에게 소리 내어 "말해질(spoken)" 수 있다.
선택된 결과와 연관된 상태 및/또는 정보를 나타내는 SendResultResponse 메시지는 휴대용 디바이스(202)로부터 액세서리(204)로 송신될 수 있다. 예를 들어, 만약 사용자가 리포트 내에서 연락처 결과들의 리스트로부터 연락처 이름을 선택했다면, 그 사용자 선택은 SelectResult 메시지 내에서 휴대용 디바이스(202)로 송신된다. 자동화 어시스턴트(300)는 사용자 선택과 연관된 기능, 예컨대 선택된 연락처에 전화하는 것을 수행할 수 있다. 휴대용 디바이스(402)는 자동화 어시스턴트(300)가 선택된 연락처에 전화를 걸고 있음을 나타내는 SendAutoAsstState 메시지를 송신할 수 있다.
일부 실시예에서, 액세서리(204)는 자동화 어시스턴트 애플리케이션을 비활성화시키기 위하여 DeactivateAutoAsst 메시지를 휴대용 디바이스(202)로 송신할 수 있다.
도 4의 시퀀스 다이어그램을 참조하여 기재된 통신들은 도 5를 참조하여 기재된 프로세스와 같은 프로세스에서 구현될 수 있다.
도 5는 휴대용 디바이스의 자동화 어시스턴트와 통신하기 위해 액세서리를 사용하기 위한 프로세스의 흐름도이다. 블록(500)에서, 액세서리와 휴대용 디바이스(예를 들어, 도 2를 참조하여 기재된 액세서리(204)와 휴대용 디바이스(202)) 사이에 접속이 구축된다. 예를 들어, 액세서리(204)는 무선 접속을 개시하라는 요청을 나타내는, 휴대용 디바이스(202)에 의해 전송된, 신호를 검출할 수 있다. 액세서리(204)에 의해 구현된 하나 이상의 루틴에 따라 자동적으로, 또는 접속을 구축하기 위한 옵션을 선택하는 사용자 입력에 응답하여, 액세서리(204)와 휴대용 디바이스(202) 사이에 무선 접속이 구축될 수 있다. 다른 예에서, 액세서리(204)는 그것의 존재를 광고하기 위한 신호를 전송할 수 있고, 무선 접속은 자동적으로, 또는 휴대용 디바이스(202)의 사용자 인터페이스에 의해 액세서리(204)를 선택함으로써 구축될 수 있다. 일부 실시예에서, 접속은 액세서리(204) 및 휴대용 디바이스(202)의 정합하는 커넥터들이 물리적으로 연결될 때에 구축된다.
블록(502)에서, 액세서리(204)는 자동화 어시스턴트(300)를 활성화시키기 위한 사용자 입력을 수신할 수 있다. 예를 들어, 액세서리(204)는 사용자 인터페이스(254)의 입력 디바이스에서 음성 요청, 버튼의 동작 등과 같은 입력을 수신할 수 있으며, 이는 자동화 어시스턴트(300)가 활성화될 것임을 나타낸다. 이러한 방식으로, 액세서리(204)는 후속적인 요청들이 자동화 어시스턴트(300)로 향해질 것임을 통지 받는다. 대안적으로, 사용자 인터페이스에서 수신된 요청은 그 요청이 자동화 어시스턴트(300)로 향해질 것임을 나타내는 신호(cue)를 포함할 수 있다. 예를 들어, 요청은 자동화 어시스턴트의 식별자로 시작될 수 있다(예를 들어, "시리(Siri), 지구에서 태양까지 거리가 얼마인가?").
블록(504)에서, 액세서리(204)는 요청이 액세서리의 사용자 인터페이스(254)에서 수신되었는지 여부를 결정할 수 있다. 예시적인 예에서, 액세서리(204)는 휴대용 디바이스(202)와의 접속을 구축하는 것에 응답하여 요청을 검출하는 서브루틴을 개시할 수 있다. 다른 예에서, 휴대용 디바이스(202)는 액세서리(202)로 하여금 요청을 검출하도록 지시하는 메시지를 액세서리(202)로 전송할 수 있다. 일부 실시예에서, 요청을 액세서리(204)에 제공하기 전에, 사용자는 사용자 인터페이스(254)에서 입력을 제공함으로써 요청이 제공될 것임을 나타낸다(예를 들어, 사용자 인터페이스(254)의 버튼을 동작시킴으로써).
요청이 검출되면, 액세서리(204)는 블록(506)에서 나타낸 바와 같이 휴대용 디바이스(202)에 요청(예를 들어, 도 4를 참조하여 기재된 요청(412))을 전송할 수 있다. 블록(508)에서, 휴대용 디바이스(202)에 의해 실행되는 자동화 어시스턴트(예를 들어, 도 3을 참조하여 기재된 자동화 어시스턴트(300))는 요청에 기초한 리포트를 제공할 수 있다. 예를 들어, 자동화 어시스턴트는 요청을 해석하고, 요청과 연관된 태스크를 수행하며, 태스크를 수행함으로써 획득된 하나 이상의 결과를 포함하는 리포트를 제공할 수 있다.
블록(510)에서, 리포트(418)가 휴대용 디바이스(202)로부터 액세서리(204)로 전송될 수 있다. 리포트의 하나 이상의 결과는 vCard와 같은 구조화된 데이터 포맷으로 제공될 수 있다. 결과는, 그 결과와 연관되어 수행될 기능을 나타낼 수 있는, 연관된 의도를 가질 수 있다. 추가 정보의 하나 이상의 항목은 결과와 연관될 수 있다.
블록(512)에서, 액세서리(204)는 사용자 인터페이스(254)를 통해 사용자에게 리포트를 제시할 수 있다. 예를 들어, 리포트의 하나 이상의 결과는 액세서리(204)의 디스플레이 상에 표시될 수 있다. 일부 실시예에서, 액세서리(204)는 결과들의 텍스트를 구두(verbal) 오디오 출력(예를 들어, 합성된 음성)으로 변환하고, 구두 오디오 출력을 액세서리(204)의 스피커를 통해 사용자에게 제시할 수 있다. 예를 들어, 액세서리(204)는 액세서리(204)가 "아이즈 프리" 모드로 동작하고 있을 때, 액세서리(204)는 합성된 음성으로서 사용자에게 결과들을 제시할 수 있다. 다른 예에서, 자동화 어시스턴트(300)는 합성된 음성으로서 결과들을 생성할 수 있고, 리포트(418)는 합성된 음성을 포함하는 디지털 또는 아날로그 오디오로서 액세서리에 제공될 수 있다.
블록(514)에서, 액세서리(204)는, 결과의 선택이 사용자 인터페이스(254)의 사용자 입력 디바이스에서 수신되었는지의 여부를 결정한다. 사용자가 리포트(418)로부터 결과를 선택하면, 블록(516)에서 나타낸 바와 같이 액세서리(204)는 선택된 결과를 휴대용 미디어 디바이스(202)로 전송할 수 있다. 블록(518)에서, 자동화 어시스턴트(300)는 선택된 결과와 연관된 기능을 수행할 수 있다. 자동화 어시스턴트(300)에 의해 수행된 기능은 결과와 연관된 의도에 기초할 수 있다. 예를 들어, 선택된 결과가 연락처이면, 선택된 연락처와 연관된 의도는 "전화를 거는 것"이며, 자동화 어시스턴트(300)는 선택된 연락처에 전화를 거는 기능을 수행할 수 있다. 블록(520)에서 나타낸 바와 같이, 수행된 기능과 연관된 정보는 액세서리(204)로 전송될 수 있다. 예를 들어, 상태 정보(예를 들어, "통화가 진행중임") 또는 다른 정보(예를 들어, 선택된 위치와 연관된 네비게이션 정보)가 액세서리(204)로 전송될 수 있다. 블록(524)에서 나타낸 바와 같이, 액세서리(204)는 사용자 인터페이스(254)의 출력 디바이스(예를 들어, 디스플레이)를 통해 수행된 기능과 연관된 정보를 제시할 수 있다.
도 6a 내지 도 6c는 휴대용 디바이스(202)로부터 수신된 정보를 표시하는 액세서리(204)의 디스플레이의 예시적인 스크린 샷들이다. 도 6a에서, 액세서리(204)는 상태 메시지 "요청을 수신할 준비가 됨"을 표시한다. 이는 다음 중 하나 이상이 참임을 나타낸다: 휴대용 디바이스(202)와 액세서리(204) 사이에 통신 접속이 구축되었음, 자동화 어시스턴트(300)가 액세서리(204)에 의해 활성화되었음(예를 들어, 도 4a를 참조하여 기재된 바와 같이 ActivateAutoAsst 메시지를 통해), 및 자동화 어시스턴트(300)가 네트워크 액세스를 가짐(예를 들어, 도 4b를 참조하여 기재된 바와 같이 SendAutoAsstState 메시지를 통해 휴대용 디바이스(202)에 의해 나타내어진 바와 같이).
도 6b에서, 액세서리(204)는 결과들(602 내지 606)을 표시한다. 이는, 액세서리(204)가 요청 입력을 수신했고 요청을 휴대용 디바이스(202)로 전송했음을 나타낸다(예를 들어, SendRequest 메시지를 통해). 그 예에서, 자동화 어시스턴트(300)는 요청을 해석했고, 태스크가 피터라는 이름의 연락처들을 찾는 것을 포함한다고 결정했다. 자동화 어시스턴트(300)는 파라미터 "피터라는 이름의 연락처들"에 매칭되는 휴대용 전자 디바이스(202) 상에 저장된 연락처들을 검색함으로써 태스크를 수행했고, 저장된 연락처들 중에서 태스크 기준을 충족시키는 3개의 결과를 찾았다. 휴대용 디바이스(202)는 결과들(602 내지 606)을 포함하는 응답(예를 들어, SendReport 메시지)을 액세서리(204)로 전송했다.
도 6c에서, 액세서리(204)는 상태 "피터 파커(Peter Parker)에게 전화 거는 중"을 표시한다. 이는, 액세서리(204)가 결과(604)의 사용자 선택을 수신했고 사용자 선택을 (예를 들어, SelectResult 메시지를 통해) 휴대용 디바이스(202)로 전송했음을 나타낼 수 있다. 자동화 어시스턴트(300)는 결과(604)와 연관된 의도 "전화 걸기"에 의해 나타내어진 기능을 수행하였다. 휴대용 디바이스(202)는 자동화 어시스턴트(300)에 의해 수행된 기능과 연관된 정보를 나타내는 메시지(예를 들어, SendAutoAsstState)를 액세서리(204)로 송신했다. 다른 예시적인 예에서, 액세서리(204)는 그것 자신의 전화 연결을 사용하여 전화를 걸 수 있거나, 자동화 어시스턴트(300)를 사용하지 않고 휴대용 디바이스(204)의 전화 기능을 호출할 수 있다.
일부 실시예에서 액세서리(204)는, 자동화 어시스턴트(300)에 의해 생성되고 휴대용 디바이스(402)로부터 수신된 결과들에 관련된, 하나 이상의 기능을 수행할 수 있다. 예를 들어, 액세서리(204)는 자동화 어시스턴트(300)에 의해 생성된 결과들의 로그를 저장할 수 있다.
액세서리(204)는 또한 사용자 입력 이외의 정보를 자동화 어시스턴트(300)로 송신할 수 있다. 예를 들어, 액세서리(204)는, 주기적으로 또는 사용자에 의해 정의된 요청 또는 파라미터들에 응답하여, 위치 정보를 자동화 어시스턴트(300)로 송신할 수 있다. 자동화 어시스턴트(300)는 액세서리(204)로부터 수신된 이러한 정보의 로그를 유지할 수 있다. 자동화 어시스턴트(300)에 의해 수신된 비-요청 정보는 네트워크를 통해 다른 사용자들에게 정보를 제공하기 위해 사용될 수 있다. 예를 들어, 사용자는 위치 정보가 추적 중인 한 명 이상의 사람을 찾기 위하여, 자동화 어시스턴트(300)로 요청을 발행할 수 있다. 자동화 어시스턴트(300)는 다른 사람들의 소유인 휴대용 전자 디바이스들에서 실행되는 자동화 어시스턴트 애플리케이션들에 의해 저장된 위치 정보에 액세스할 수 있다. 대안적으로, 자동화 어시스턴트(300)는 자동화 어시스턴트(300)에 액세스 가능한 위치 정보의 저장소에 저장된 위치 정보에 액세스할 수 있다.
사용자는 자동화 어시스턴트(300)를 사용하여, 위치, 관심 지점, 또는 액세서리(204)로부터 이용가능한 다른 정보를 공유하고/거나 저장하고 싶어할 수 있다. 액세서리(204)에서 수신된 요청은 자동화 어시스턴트(300)로 하여금, (예를 들어, 업데이트를 소셜 네트워크에 포스팅함으로써) 공유하고/거나 휴대용 디바이스(202)의 저장 디바이스(212)에 저장하기 위해 액세서리(204)로부터 정보를 획득하도록 지시할 수 있다.
본 명세서에서 기재된 실시예들은 요청을 수신하고 요청과 연관된 정보를 휴대용 디바이스로 전송하도록 구성된 액세서리에 관한 것이다. 휴대용 디바이스의 자동화 어시스턴트는 요청을 해석하고 요청과 연관된 태스크를 수행할 수 있다. 휴대용 디바이스는 태스크를 수행하는 결과로서 자동화 어시스턴트에 의해 결정된 하나 이상의 결과를 포함하는 리포트를 액세서리에 제공할 수 있다.
본 발명의 실시예들은 전용 컴포넌트들 및/또는 프로그래밍 가능한 프로세서들 및/또는 다른 프로그래밍 가능한 디바이스들의 임의의 조합을 사용하여 실현될 수 있다. 본 명세서에 기술된 다양한 프로세스들은 동일한 프로세서 또는 상이한 프로세서들 상에서 임의의 조합으로 구현될 수 있다. 그에 따라, 컴포넌트들이 소정 동작들을 수행하도록 구성되어 있는 것으로 기술되어 있는 경우, 이러한 구성은, 예컨대, 전자 회로들을 그 동작을 수행하도록 설계하는 것에 의해, (마이크로프로세서들과 같은) 프로그래밍 가능한 전자 회로들을 그 동작을 수행하도록 프로그래밍하는 것에 의해, 또는 이들의 임의의 조합에 의해 달성될 수 있다. 프로세스들은 프로세스간 통신을 위한 종래의 기법들을 포함하지만 이들로 제한되지 않는 각종의 기법들을 사용하여 통신할 수 있고, 상이한 프로세스 쌍이 상이한 기법들을 사용할 수 있거나, 동일한 프로세스들 쌍이 상이한 때에 상이한 기법들을 사용할 수 있다. 게다가, 전술된 실시예들이 특정 하드웨어 및 소프트웨어 컴포넌트들을 언급하고 있을 수 있지만, 당업자라면 하드웨어 및/또는 소프트웨어 컴포넌트들의 다른 조합들이 또한 사용될 수 있다는 점과 하드웨어로 구현되는 것으로 기술된 특정 동작들이 또한 소프트웨어로 구현될 수 있거나 그 반대일 수 있다는 점을 이해할 것이다.
본 발명의 다양한 특징들을 통합하는 컴퓨터 프로그램들이 다양한 컴퓨터 판독가능 저장 매체 상에 인코딩될 수 있으며; 적합한 매체는 자기 디스크 또는 자기 테이프, 콤팩트 디스크(CD) 또는 디지털 다기능 디스크(digital versatile disk, DVD)와 같은 광학 저장 매체, 플래시 메모리 등을 포함한다. 프로그램 코드로 인코딩된 컴퓨터 판독가능 매체는 호환 가능한 전자 디바이스와 패키징될 수 있거나, 프로그램 코드는 (예컨대, 인터넷 다운로드를 통해) 전자 디바이스들과는 별개로 제공될 수 있다.
본 발명은 특정 실시예들에 대하여 설명되었지만, 당업자는 다수의 변경들이 가능하다는 것을 인식할 것이다. 따라서, 본 발명이 특정 실시예들에 대하여 설명되었지만, 본 발명은 하기의 특허청구범위의 범주 내의 모든 수정들 및 등가물들을 커버하도록 의도된다는 것이 이해될 것이다.

Claims (23)

  1. 액세서리를 사용하여 휴대용 전자 디바이스에서 실행되는 자동화 어시스턴트(automated assistant)와 통신하기 위한 방법으로서, 상기 방법은 상기 액세서리에 의해,
    상기 자동화 어시스턴트를 활성화시키기 위한 입력을 수신하는 단계;
    음성 요청을 수신하는 단계;
    상기 음성 요청과 연관된 데이터를 상기 휴대용 전자 디바이스로 전송하는 단계;
    상기 휴대용 전자 디바이스로부터 상기 음성 요청에 응답하는 리포트를 수신하는 단계 - 상기 리포트는 상기 자동화 어시스턴트에 의해 생성됨 -; 및
    상기 리포트를 제시하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서, 상기 리포트는 하나 이상의 결과들을 포함하며, 각각의 결과는 vCard로 포맷팅(formatting)되는, 방법.
  3. 제1항에 있어서, 상기 리포트는 연관된 의도를 포함하는 방법.
  4. 제3항에 있어서, 상기 리포트로부터의 결과의 선택을 수신하는 단계를 추가로 포함하는, 방법.
  5. 제4항에 있어서, 상기 액세서리에 의해, 상기 선택된 결과와 연관된 의도에 의해 나타내어진 기능을 수행하는 단계를 추가로 포함하는, 방법.
  6. 제4항에 있어서, 휴대용 미디어 디바이스로 상기 선택을 송신하는 단계를 추가로 포함하며, 상기 휴대용 미디어 디바이스는 상기 선택된 결과와 연관된 의도에 의해 나타내어진 기능을 수행하도록 구성되는, 방법.
  7. 제1항에 있어서,
    상기 휴대용 전자 디바이스로부터 상태 메시지를 수신하는 단계; 및
    상기 상태 메시지를 상기 액세서리의 디스플레이 상에 표시하는 단계
    를 추가로 포함하는, 방법.
  8. 제1항에 있어서, 상기 리포트를 제시하는 단계는, 상기 리포트를 상기 액세서리의 디스플레이 상에 표시하는 단계를 포함하는, 방법.
  9. 제1항에 있어서, 상기 리포트를 제시하는 단계는, 구두(verbal) 오디오 출력을 생성하는 단계를 포함하는, 방법.
  10. 제1항에 있어서, 상기 액세서리는 차량의 헤드 유닛인, 방법.
  11. 액세서리와 통신하기 위한 방법으로서, 휴대용 미디어 디바이스에 의해,
    상기 액세서리로부터, 상기 액세서리에 의해 수신되는 음성 요청과 연관된 데이터를 수신하는 단계;
    상기 휴대용 미디어 디바이스의 자동화 어시스턴트에 의해, 상기 요청과 연관된 태스크를 결정하는 단계;
    상기 자동화 어시스턴트에 의해, 상기 태스크를 수행하는 단계;
    상기 자동화 어시스턴트에 의해, 상기 태스크를 수행함으로써 결정되는 하나 이상의 결과들을 포함하는 리포트를 생성하는 단계; 및
    상기 리포트를 상기 액세서리로 송신하는 단계
    를 포함하는, 방법.
  12. 제11항에 있어서, 상태 메시지를 상기 액세서리로 송신하는 단계를 추가로 포함하며, 상기 상태 메시지는 상기 자동화 어시스턴트의 상태를 나타내는, 방법.
  13. 제11항에 있어서, 상기 리포트의 각각의 결과가 연관된 의도를 갖는, 방법.
  14. 제13항에 있어서,
    상기 리포트로부터의 결과의 선택을 상기 액세서리로부터 수신하는 단계; 및
    상기 자동화 어시스턴트에 의해, 상기 결과와 연관된 의도에 의해 나타내어진 기능을 수행하는 단계
    를 추가로 포함하는, 방법.
  15. 제15항에 있어서, 상기 자동화 어시스턴트에 의해 수행된 상기 기능과 연관된 정보를 상기 액세서리에 제공하는 단계를 추가로 포함하는, 방법.
  16. 액세서리로서,
    제어기;
    상기 제어기에 통신가능하게 결합된 사용자 인터페이스 - 상기 사용자 인터페이스는 음성 요청을 수신하도록 구성된 입력 디바이스를 포함함 -;
    상기 제어기에 통신가능하게 결합된 통신 인터페이스 - 상기 통신 인터페이스는,
    상기 음성 요청과 연관된 데이터를 휴대용 전자 디바이스로 전송하고,
    상기 휴대용 전자 디바이스로부터 상기 음성 요청에 응답하는 리포트를 수신하도록 구성됨 -; 및
    상기 리포트를 제시하도록 구성된 상기 사용자 인터페이스의 출력 디바이스를 포함하는, 액세서리.
  17. 제16항에 있어서, 상기 입력 디바이스는 마이크로폰을 포함하는, 액세서리.
  18. 제16항에 있어서, 상기 출력 디바이스는 디스플레이를 포함하는, 액세서리.
  19. 제16항에 있어서, 상기 출력 디바이스는 스피커를 포함하는, 액세서리.
  20. 휴대용 전자 디바이스로서,
    프로세서;
    상기 프로세서에 통신가능하게 결합된 컴퓨터 판독가능 매체 - 상기 컴퓨터 판독가능 매체는 상기 프로세서에 의해 실행가능한 명령어들을 가지며, 상기 명령어들은 자동화 어시스턴트를 위한 명령어들의 세트를 포함함 -;
    상기 프로세서에 통신가능하게 결합된 액세서리 인터페이스 - 상기 액세서리 인터페이스는 상기 액세서리로부터 요청과 연관된 데이터를 수신하도록 구성됨 -; 및
    상기 자동화 어시스턴트를 포함하며, 상기 자동화 어시스턴트는,
    상기 요청과 연관된 태스크를 결정하고,
    상기 태스크를 수행하며,
    상기 태스크를 수행함으로써 결정되는 하나 이상의 결과들을 포함하는 리포트를 생성하고,
    상기 리포트를 상기 액세서리로 송신하도록 구성되는, 휴대용 전자 디바이스.
  21. 제20항에 있어서, 네트워크 인터페이스를 추가로 포함하며, 상기 자동화 어시스턴트는 상기 네트워크 인터페이스를 통해 네트워크에 액세스함으로써 적어도 하나의 결과를 획득하는, 휴대용 전자 디바이스.
  22. 제20항에 있어서, 상기 자동화 어시스턴트는 상기 저장 디바이스에 저장된 정보에 액세스함으로써 적어도 하나의 결과를 획득하는, 휴대용 전자 디바이스.
  23. 제20항에 있어서, 상기 자동화 어시스턴트는 상기 액세서리의 저장 디바이스에 저장된 정보에 액세스함으로써 적어도 하나의 결과를 획득하는, 휴대용 전자 디바이스.
KR1020147033082A 2012-06-08 2013-05-13 자동화 어시스턴트로부터 액세서리로의 데이터 전송 KR20150015481A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261657560P 2012-06-08 2012-06-08
US61/657,560 2012-06-08
US13/632,800 US9674331B2 (en) 2012-06-08 2012-10-01 Transmitting data from an automated assistant to an accessory
US13/632,800 2012-10-01
PCT/US2013/040770 WO2013184297A1 (en) 2012-06-08 2013-05-13 Transmitting data from an automated assistant to an accessory

Publications (1)

Publication Number Publication Date
KR20150015481A true KR20150015481A (ko) 2015-02-10

Family

ID=48856925

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147033082A KR20150015481A (ko) 2012-06-08 2013-05-13 자동화 어시스턴트로부터 액세서리로의 데이터 전송

Country Status (5)

Country Link
US (1) US9674331B2 (ko)
EP (1) EP2859710A1 (ko)
KR (1) KR20150015481A (ko)
CN (1) CN104335560A (ko)
WO (1) WO2013184297A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190109599A (ko) * 2016-05-17 2019-09-25 구글 엘엘씨 입력 및/또는 출력이 인터넷유행어를 포함하는 사용자 인터페이스 입력에 응답하여 제시할 출력을 생성
KR20200052954A (ko) * 2017-10-21 2020-05-15 애플 인크. 공동 디바이스 상의 가상 어시스턴트 시스템에 대한 개인 도메인

Families Citing this family (117)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US10152104B2 (en) * 2012-06-15 2018-12-11 Texas Instruments Incorporated Policy engine startup procedure for a default provider in USB power delivery
DE212014000045U1 (de) 2013-02-07 2015-09-24 Apple Inc. Sprach-Trigger für einen digitalen Assistenten
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US9201865B2 (en) * 2013-03-15 2015-12-01 Bao Tran Automated assistance for user request that determines semantics by domain, task, and parameter
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
JP6259911B2 (ja) 2013-06-09 2018-01-10 アップル インコーポレイテッド デジタルアシスタントの2つ以上のインスタンスにわたる会話持続を可能にするための機器、方法、及びグラフィカルユーザインタフェース
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9251109B2 (en) * 2013-12-20 2016-02-02 EXILANT Technologies Private Limited Communication with accessories
CN103745720A (zh) * 2013-12-25 2014-04-23 安徽科大讯飞信息科技股份有限公司 一种带有语音识别的蓝牙系统
US10249296B1 (en) * 2014-05-27 2019-04-02 Amazon Technologies, Inc. Application discovery and selection in language-based systems
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
WO2015184186A1 (en) 2014-05-30 2015-12-03 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9516467B1 (en) 2014-06-04 2016-12-06 Grandios Technologies, Llc Mobile device applications associated with geo-locations
US9078098B1 (en) 2014-06-04 2015-07-07 Grandios Technologies, Llc Geo-fencing based functions
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US20160070580A1 (en) * 2014-09-09 2016-03-10 Microsoft Technology Licensing, Llc Digital personal assistant remote invocation
US10635296B2 (en) 2014-09-24 2020-04-28 Microsoft Technology Licensing, Llc Partitioned application presentation across devices
US10448111B2 (en) 2014-09-24 2019-10-15 Microsoft Technology Licensing, Llc Content projection
US10025684B2 (en) 2014-09-24 2018-07-17 Microsoft Technology Licensing, Llc Lending target device resources to host device computing environment
US9769227B2 (en) 2014-09-24 2017-09-19 Microsoft Technology Licensing, Llc Presentation of computing environment on multiple devices
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
KR102296323B1 (ko) 2015-01-14 2021-09-01 삼성전자주식회사 전자 장치 및 전자 장치에서의 정보 처리 방법
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
CN105068661B (zh) * 2015-09-07 2018-09-07 百度在线网络技术(北京)有限公司 基于人工智能的人机交互方法和系统
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
CN106572418A (zh) * 2015-10-09 2017-04-19 芋头科技(杭州)有限公司 一种语音助手的扩展设备及其工作方法
CN105426357A (zh) * 2015-11-06 2016-03-23 武汉卡比特信息有限公司 语音快速选择方法
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
CN106373570A (zh) * 2016-09-12 2017-02-01 深圳市金立通信设备有限公司 一种语音控制方法及终端
CN107920094B (zh) * 2016-10-08 2021-07-16 阿里巴巴集团控股有限公司 数据获取方法、装置、服务器及网络设备
US10880378B2 (en) 2016-11-18 2020-12-29 Lenovo (Singapore) Pte. Ltd. Contextual conversation mode for digital assistant
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
JP2018167339A (ja) * 2017-03-29 2018-11-01 富士通株式会社 発話制御プログラム、情報処理装置及び発話制御方法
US11150922B2 (en) 2017-04-25 2021-10-19 Google Llc Initializing a conversation with an automated agent via selectable graphical element
US10237209B2 (en) * 2017-05-08 2019-03-19 Google Llc Initializing a conversation with an automated agent via selectable graphical element
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK201770427A1 (en) 2017-05-12 2018-12-20 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
DK179549B1 (en) * 2017-05-16 2019-02-12 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
CN107506434A (zh) * 2017-08-23 2017-12-22 北京百度网讯科技有限公司 基于人工智能分类语音输入文本的方法和装置
EP3567585A4 (en) * 2017-11-15 2020-04-15 Sony Corporation INFORMATION PROCESSING DEVICE AND INFORMATION PROCESSING METHOD
US10368333B2 (en) * 2017-11-20 2019-07-30 Google Llc Dynamically adapting provision of notification output to reduce user distraction and/or mitigate usage of computational resources
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
JP7081045B2 (ja) * 2018-05-04 2022-06-06 グーグル エルエルシー ユーザと自動化されたアシスタントインターフェースとの間の距離に応じて自動化されたアシスタントのコンテンツを生成するおよび/または適応させること
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10198877B1 (en) 2018-05-23 2019-02-05 Google Llc Providing a communications channel between instances of automated assistants
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10504518B1 (en) 2018-06-03 2019-12-10 Apple Inc. Accelerated task performance
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
DK201970510A1 (en) 2019-05-31 2021-02-11 Apple Inc Voice identification in digital assistant systems
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11227599B2 (en) 2019-06-01 2022-01-18 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11188720B2 (en) * 2019-07-18 2021-11-30 International Business Machines Corporation Computing system including virtual agent bot providing semantic topic model-based response
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
EP4075258A4 (en) * 2019-12-13 2023-08-23 LG Electronics Inc. DISPLAY DEVICE
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US11942090B2 (en) 2021-06-04 2024-03-26 Apple Inc. Accessory device based authentication for digital assistant requests

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6081724A (en) * 1996-01-31 2000-06-27 Qualcomm Incorporated Portable communication device and accessory system
SE516510C2 (sv) * 1999-09-21 2002-01-22 Ericsson Telefon Ab L M Portabel kommunikationsapparat med första och andra användargränssnitt, samt en tillbehörsanordning innefattande en knappsats och en display för en portabel radiotelefon
US20030220988A1 (en) * 2002-05-22 2003-11-27 Hymel James A. Method and electronic device for establishing an interface to control an accessory device
US7710654B2 (en) 2003-05-12 2010-05-04 Elbit Systems Ltd. Method and system for improving audiovisual communication
US20060262103A1 (en) 2005-04-08 2006-11-23 Matsushita Electric Industrial Co., Ltd. Human machine interface method and device for cellular telephone operation in automotive infotainment systems
US20100076994A1 (en) * 2005-11-05 2010-03-25 Adam Soroca Using Mobile Communication Facility Device Data Within a Monetization Platform
US7652660B2 (en) 2005-10-11 2010-01-26 Fish & Richardson P.C. Mobile device customizer
US7280097B2 (en) * 2005-10-11 2007-10-09 Zeetoo, Inc. Human interface input acceleration system
US20070099592A1 (en) * 2005-11-02 2007-05-03 Timothy Thome Portable communication device and system with interchangeable accessory modules
US9318108B2 (en) * 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
ATE491135T1 (de) 2006-10-02 2010-12-15 Harman Becker Automotive Sys Intelligente zieleinstellung für navigationssysteme
US8635243B2 (en) * 2007-03-07 2014-01-21 Research In Motion Limited Sending a communications header with voice recording to send metadata for use in speech recognition, formatting, and search mobile search application
US8078787B2 (en) * 2007-06-22 2011-12-13 Apple Inc. Communication between a host device and an accessory via an intermediate device
CN201177970Y (zh) 2007-11-23 2009-01-07 厉天福 一种车载多媒体影音装置
US8386677B2 (en) * 2009-02-11 2013-02-26 Apple Inc. Communicating location information between a portable device and an accessory
KR20110131247A (ko) 2009-02-27 2011-12-06 파운데이션 프로덕션, 엘엘씨 헤드셋 기반 원격통신 플랫폼
US20100234051A1 (en) * 2009-03-16 2010-09-16 Apple Inc. Accessory transceiver for mobile devices
US8522283B2 (en) * 2010-05-20 2013-08-27 Google Inc. Television remote control data transfer
DE112011103447T5 (de) * 2010-10-15 2013-08-22 Intelligent Mechatronic Systems, Inc. Durch implizite Zuordnung und Polymorphismus gesteuerte Mensch-Maschine-Wechselwirkung
US20120163620A1 (en) * 2010-12-27 2012-06-28 Michael Weibin Zhang Method for communicating with a portable device having audio output
US8799527B2 (en) * 2012-09-07 2014-08-05 Apple Inc. Data structures for facilitating communication between a host device and an accessory
US8611930B2 (en) * 2012-05-09 2013-12-17 Apple Inc. Selecting informative presentations based on navigation cues and user intent
US9730268B2 (en) * 2013-06-07 2017-08-08 Apple Inc. Communication between host and accessory devices using accessory protocols via wireless transport

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190109599A (ko) * 2016-05-17 2019-09-25 구글 엘엘씨 입력 및/또는 출력이 인터넷유행어를 포함하는 사용자 인터페이스 입력에 응답하여 제시할 출력을 생성
US11238242B2 (en) 2016-05-17 2022-02-01 Google Llc Generating output for presentation in response to user interface input, where the input and/or the output include chatspeak
KR20200052954A (ko) * 2017-10-21 2020-05-15 애플 인크. 공동 디바이스 상의 가상 어시스턴트 시스템에 대한 개인 도메인

Also Published As

Publication number Publication date
US20130332172A1 (en) 2013-12-12
CN104335560A (zh) 2015-02-04
WO2013184297A1 (en) 2013-12-12
EP2859710A1 (en) 2015-04-15
US9674331B2 (en) 2017-06-06

Similar Documents

Publication Publication Date Title
US9674331B2 (en) Transmitting data from an automated assistant to an accessory
JP6751189B2 (ja) 音声コマンドによって開始される緊急電話のためのシステム及び方法
US10616716B2 (en) Providing data service options using voice recognition
EP3092555B1 (en) Audio triggers based on context
CN107209781B (zh) 使用自然语言的上下文搜索
KR102342623B1 (ko) 음성 및 연결 플랫폼
JP4572191B2 (ja) 1つのグループの他の車両と情報をやりとりするためのグループインタラクションシステム
KR102251597B1 (ko) 애플리케이션간 통신을 통한 작업 완료 기법
RU2355044C2 (ru) Последовательный мультимодальный ввод
CN102792294B (zh) 自然语言语音服务环境中的混合处理的系统及方法
RU2554848C2 (ru) Система и способ бесконтактного управления приложением &#34;электронный календарь&#34; в транспортном средстве
US10635281B2 (en) Natural language task completion platform authoring for third party experiences
CN102792764A (zh) 具有多个输入模式的移动设备
CN103189841A (zh) 结合附件的应用启动
EP2771806A1 (en) Electronic device management using interdomain profile-based inferences
TW200912360A (en) Location data processing apparatus and method of importing location information
CN103443852A (zh) 音频交互的消息交换
JP2011513795A (ja) 文脈に基づく音声認識文法選択
TWI497361B (zh) 藉由一配件之文字預測結果之選擇
CN101482420A (zh) 一种智能导航装置、导航终端及终端中信息的导航方法
JP2020181590A (ja) デバイスがユーザ・インターフェースをディスプレイする方法及びそのデバイス
CN109313668B (zh) 构建会话理解系统的系统和方法
KR20140112364A (ko) 디스플레이 장치 및 디스플레이 장치의 제어방법
EP2733913A2 (en) Method and apparatus for communication between a vehicle based computing system and a remote application
CN103207726A (zh) 在便携式终端中提供快捷服务的装置和方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E601 Decision to refuse application