KR102662777B1 - 제2 디바이스에 대한 근접도-기반 컨트롤들 - Google Patents

제2 디바이스에 대한 근접도-기반 컨트롤들 Download PDF

Info

Publication number
KR102662777B1
KR102662777B1 KR1020237020285A KR20237020285A KR102662777B1 KR 102662777 B1 KR102662777 B1 KR 102662777B1 KR 1020237020285 A KR1020237020285 A KR 1020237020285A KR 20237020285 A KR20237020285 A KR 20237020285A KR 102662777 B1 KR102662777 B1 KR 102662777B1
Authority
KR
South Korea
Prior art keywords
assistant
enabled
devices
user device
proximity
Prior art date
Application number
KR1020237020285A
Other languages
English (en)
Other versions
KR20230104288A (ko
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 KR1020247014236A priority Critical patent/KR20240063190A/ko
Publication of KR20230104288A publication Critical patent/KR20230104288A/ko
Application granted granted Critical
Publication of KR102662777B1 publication Critical patent/KR102662777B1/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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • 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/165Management of the audio stream, e.g. setting of volume, audio stream path
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B17/00Monitoring; Testing
    • H04B17/30Monitoring; Testing of propagation channels
    • H04B17/309Measuring or estimating channel quality parameters
    • H04B17/318Received signal strength
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Electromagnetism (AREA)
  • User Interface Of Digital Computer (AREA)
  • Computer Hardware Design (AREA)
  • Selective Calling Equipment (AREA)
  • Telephone Function (AREA)

Abstract

방법(500)은 사용자 디바이스(200)의 환경(32) 내의 복수의 어시스턴트-지원 디바이스(210) 각각에 대한 근접도 정보(250)를 획득하는 단계를 포함한다. 각각의 어시스턴트-지원 디바이스는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트(120)를 수행하기 위해 어시스턴트 애플리케이션(106)에 의해 제어가능하다. 각각의 어시스턴트-지원 디바이스에 대해, 방법은 또한 사용자 디바이스에 대한 대응하는 어시스턴트-지원 디바이스의 근접도 추정을 나타내는 근접도 정보에 기초하여 근접도 점수(260)를 결정하는 단계를 포함한다. 방법은 어시스턴트-지원 디바이스들에 대해 결정된 근접도 점수들을 사용하여, 후보 어시스턴트-지원 디바이스들의 순위 목록(310)을 생성하는 단계; 및 순위 목록 내의 각각의 대응하는 어시스턴트-지원 디바이스에 대해, 그래픽 사용자 인터페이스(GUI)(400) 내에, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트(220)를 디스플레이하는 단계를 더 포함한다.

Description

제2 디바이스에 대한 근접도-기반 컨트롤들
본 개시내용은 제2 디바이스에 대한 근접도-기반 컨트롤들(proximity-based controls)에 관한 것이다.
개인은 자신의 환경 내에서 다양한 애플리케이션들에 의해 제어될 수 있는 수많은 연결된 디바이스(connected device)를 가질 수 있다. 이러한 연결된 디바이스들은 예를 들어 스마트 조명, 스마트 텔레비전, 스마트 스피커, 스마트 온도 조절기, 스마트 보안 시스템, 또는 개별 액션 세트를 수행하도록 구성된 임의의 스마트 기기(예를 들어, 스마트 오븐)를 포함할 수 있다. 일부 경우들에서, 특정 연결된 디바이스를 제어하기 위해 특정 애플리케이션이 사용자에게 제공될 수 있다. 그러나, 연결된 디바이스를 제어하기 위해, 사용자는 사용자 디바이스 상에서 실행되는 수많은 애플리케이션 중에서 애플리케이션을 식별하고, 특정 연결된 디바이스를 제어할 애플리케이션을 선택한 다음, 특정 애플리케이션 내에서 탐색하여, 연결된 디바이스를 제어해야 한다. 연결된 디바이스들 각각을 단일 사용자 디바이스로부터 제어하기 위한 복수의 컨트롤을 관리하는 것은 체계적이지 않고 번거로울 수 있다. 추가로, 많은 연결된 디바이스가 개별 액션 세트를 중첩하여 수행할 수 있고, 이는 사용자의 커맨드가 어느 연결된 디바이스를 향한 것인지를 식별하기 어렵게 한다.
본 개시내용의 일 양태는 어시스턴트-지원 디바이스들(assistant-enabled devices)을 제어하기 위한 방법을 제공한다. 방법은 사용자 디바이스의 데이터 프로세싱 하드웨어에 의해, 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 각각에 대한 근접도 정보(proximity information)를 획득하는 단계를 포함한다. 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위해 어시스턴트 애플리케이션에 의해 제어가능하다. 방법은 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스에 대해, 데이터 프로세싱 하드웨어에 의해, 대응하는 어시스턴트-지원 디바이스에 대해 획득된 근접도 정보에 기초하여 근접도 점수를 결정하는 단계를 또한 포함한다. 근접도 점수는 환경 내에서의 사용자 디바이스에 대한 대응하는 어시스턴트-지원 디바이스의 근접도 추정을 나타낸다. 방법은 데이터 프로세싱 하드웨어에 의해, 복수의 어시스턴트-지원 디바이스에 대해 결정된 복수의 근접도 점수를 사용하여, 복수의 어시스턴트-지원 디바이스로부터의 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 단계; 및 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 하나 이상의 대응하는 어시스턴트-지원 디바이스 각각에 대해, 데이터 프로세싱 하드웨어에 의해, 데이터 프로세싱 하드웨어와 통신하는 스크린 상에 디스플레이되는 그래픽 사용자 인터페이스(graphical user interface)(GUI) 내에, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트를 디스플레이하는 단계를 더 포함한다.
본 개시내용의 구현들은 이하의 임의적(optional) 특징들 중 하나 이상을 포함할 수 있다. 일부 구현들에서, 방법은 데이터 프로세싱 하드웨어에서, 사용자 디바이스의 사용자로부터, 데이터 프로세싱 하드웨어 상에서의 실행을 위해 어시스턴트 애플리케이션을 시작하도록 요청하는 사용자 요청을 수신하는 단계를 더 포함한다. 이러한 구현들에서, 복수의 어시스턴트-지원 디바이스 각각에 대한 근접도 정보를 획득하는 단계는 데이터 프로세싱 하드웨어 상에서의 어시스턴트 애플리케이션의 실행 동안 발생한다. 추가 구현들에서, 사용자 요청을 수신하는 단계는: 스크린 상에 디스플레이된 GUI 내에서, 어시스턴트 애플리케이션을 표현하는 그래픽 요소의 선택을 나타내는 사용자 입력 표시를 수신하는 단계; 사용자로부터 데이터 프로세싱 하드웨어 상에서의 실행을 위해 어시스턴트 애플리케이션을 시작하기 위한 호출 커맨드(invocation command)를 포함하는 음성 입력을 수신하는 단계; 또는 데이터 프로세싱 하드웨어 상에서의 실행을 위해 어시스턴트 애플리케이션을 시작하도록 구성된 사용자 디바이스의 미리 정의된 움직임/자세를 검출하는 단계 중 하나를 포함한다.
일부 예들에서, 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 정보를 획득하는 단계는: 사용자 디바이스의 센서에서, 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 전송된 무선 통신 신호를 수신하는 단계; 및 사용자 디바이스의 센서에서 수신된 무선 통신 신호의 신호 강도에 기초하여 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 정보를 결정하는 단계를 포함한다. 일부 구현들에서, 방법은 사용자 디바이스의 센서 어레이 내의 각각의 센서에서, 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 전송된 무선 통신 신호를 수신하는 것; 및 사용자 디바이스의 센서 어레이 내의 다른 센서들에서 수신된 무선 통신 신호의 개별 신호 강도들에 대한, 사용자 디바이스의 센서 어레이 내의 각각의 센서에서 수신된 무선 통신 신호의 개별 신호 강도에 기초하여, 적어도 하나의 어시스턴트-지원 디바이스에 대한 방향성 정보를 결정하는 것에 의해, 데이터 프로세싱 하드웨어에 의해, 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 중 적어도 하나의 어시스턴트-지원 디바이스에 대한 방향성 정보를 획득하는 단계를 더 포함한다. 여기서, 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 점수를 결정하는 것은 적어도 하나의 어시스턴트-지원 디바이스에 대한 방향성 정보에 추가로 기초한다.
일부 예들에서, 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 정보를 수신하는 것은: 사용자 디바이스에서, 복수의 어시스턴트-지원 디바이스 중 적어도 하나의 어시스턴트-지원 디바이스로부터 출력되는 가청 또는 비가청 신호를 수신하는 단계; 및 적어도 하나의 어시스턴트-지원 디바이스로부터 출력되는 가청 또는 비가청 신호의 에너지 및/또는 주파수에 기초하여 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 정보를 결정하는 단계를 포함한다. 일부 구현들에서, 방법은 또한 데이터 프로세싱 하드웨어에서, 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스로부터, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수신하는 단계; 및 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 각각의 대응하는 어시스턴트-지원 디바이스에 대해, 데이터 프로세싱 하드웨어에 의해, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트를 결정하는 단계를 더 포함한다. 이러한 구현들에서, 복수의 어시스턴트-지원 디바이스 중 적어도 하나의 어시스턴트-지원 디바이스로부터 수신된 개별 이용가능한 액션 세트 내의 적어도 하나의 이용가능한 액션은 대응하는 어시스턴트-지원 디바이스가 현재 컨텍스트에 기초하여 수행하기 위한 제안된 액션을 포함할 수 있다. 추가 예들에서, 방법은 데이터 프로세싱 하드웨어에서, 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 대응하는 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 수신하는 단계를 더 포함할 수 있다. 여기서, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트를 결정하는 단계는 대응하는 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보에 추가로 기초한다.
일부 구현들에서, 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 단계는 사용자 디바이스에 대해 가장 가까운 근접도를 갖는 어시스턴트-지원 디바이스로부터 사용자 디바이스에 대해 가장 먼 근접도를 갖는 어시스턴트-지원 디바이스까지 어시스턴트-지원 디바이스들의 순서를 매기는 단계를 포함한다. 일부 예들에서, 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 단계는 후보 어시스턴트-지원 디바이스들의 순위 목록으로부터 최대 거리 임계값을 충족하는 근접도 추정들을 나타내는 근접도 점수들을 포함하는 임의의 어시스턴트-지원 디바이스들을 폐기하는 단계를 포함한다. 추가적으로 또는 대안적으로, 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 단계는 후보 어시스턴트-지원 디바이스들의 순위 목록으로부터 최소 거리 임계값을 충족하는 근접도 추정들을 나타내는 근접도 점수들을 포함하는 임의의 어시스턴트-지원 디바이스들을 폐기하는 단계를 포함할 수 있다.
일부 예들에서, 방법은 데이터 프로세싱 하드웨어에서, 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 적어도 하나의 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 수신하는 단계; 및 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성한 후, 데이터 프로세싱 하드웨어에 의해, 적어도 하나의 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 사용하여, 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 후보 어시스턴트-지원 디바이스들의 순서를 다시 매기는 단계를 더 포함한다. 여기서, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트를 디스플레이하는 단계는 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 후보 어시스턴트-지원 디바이스들의 순서를 다시 매기는 단계에 기초한다.
복수의 어시스턴트-지원 디바이스로부터의 후보 어시스턴트-지원 디바이스들의 순위 목록은 복수의 어시스턴트-지원 디바이스에 대해 결정된 복수의 근접도 점수 중에서 N-최고 근접도 점수들을 갖는, 복수의 어시스턴트-지원 디바이스로부터 선택된 어시스턴트-지원 디바이스들을 포함할 수 있다. 일부 예들에서, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트를 디스플레이하는 단계는 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 어시스턴트-지원 디바이스 중 하나에 대한 GUI 내의 개별 컨트롤 세트를, 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 어시스턴트-지원 디바이스 중의 적어도 다른 하나에 대해 GUI 내에 디스플레이되는 개별 컨트롤 세트와 상이하게 디스플레이하는 단계를 포함한다.
본 개시내용의 다른 양태는 사용자 디바이스의 환경 내에 위치된 어시스턴트-지원 디바이스들을 제어하기 위한 사용자 디바이스를 제공한다. 사용자 디바이스는 데이터 프로세싱 하드웨어; 및 데이터 프로세싱 하드웨어와 통신하는 메모리 하드웨어를 포함한다. 메모리 하드웨어는 데이터 프로세싱 하드웨어에 의해 실행될 때, 데이터 프로세싱 하드웨어로 하여금 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 각각에 대한 근접도 정보를 획득하는 동작을 포함하는 동작들을 수행하게 하는 명령어들을 저장한다. 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위해 어시스턴트 애플리케이션에 의해 제어가능하다. 동작들은 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스에 대해, 대응하는 어시스턴트-지원 디바이스에 대해 획득된 근접도 정보에 기초하여 근접도 점수를 결정하는 동작을 또한 포함한다. 여기서, 근접도 점수는 환경 내에서의 사용자 디바이스에 대한 대응하는 어시스턴트-지원 디바이스의 근접도 추정을 나타낸다. 동작들은 복수의 어시스턴트-지원 디바이스에 대해 결정된 복수의 근접도 점수를 사용하여, 복수의 어시스턴트-지원 디바이스로부터의 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 동작; 및 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 하나 이상의 대응하는 어시스턴트-지원 디바이스 각각에 대해, 데이터 프로세싱 하드웨어와 통신하는 스크린 상에 디스플레이되는 그래픽 사용자 인터페이스(GUI) 내에, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트를 디스플레이하는 동작을 더 포함한다.
본 개시내용의 구현들은 이하의 임의적 특징들 중 하나 이상을 포함할 수 있다. 일부 구현들에서, 동작들은 사용자 디바이스의 사용자로부터, 어시스턴트 애플리케이션을 시작하도록 요청하는 사용자 요청을 수신하는 동작을 더 포함한다. 이러한 구현들에서, 복수의 어시스턴트-지원 디바이스 각각에 대한 근접도 정보를 획득하는 동작은 어시스턴트 애플리케이션의 실행 동안 발생한다. 추가 구현들에서, 사용자 요청을 수신하는 동작은: 스크린 상에 디스플레이된 GUI 내에서, 어시스턴트 애플리케이션을 표현하는 그래픽 요소의 선택을 나타내는 사용자 입력 표시를 수신하는 동작; 사용자로부터 데이터 프로세싱 하드웨어 상에서의 실행을 위해 어시스턴트 애플리케이션을 시작하기 위한 호출 커맨드를 포함하는 음성 입력을 수신하는 동작; 또는 데이터 프로세싱 하드웨어 상에서의 실행을 위해 어시스턴트 애플리케이션을 시작하도록 구성된 사용자 디바이스의 미리 정의된 움직임/자세를 검출하는 동작 중 하나를 포함한다.
일부 예들에서, 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 정보를 획득하는 동작은: 사용자 디바이스의 센서에서, 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 전송된 무선 통신 신호를 수신하는 동작; 및 사용자 디바이스의 센서에서 수신된 무선 통신 신호의 신호 강도에 기초하여 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 정보를 결정하는 동작을 포함한다. 일부 구현들에서, 동작들은 사용자 디바이스의 센서 어레이 내의 각각의 센서에서, 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 전송된 무선 통신 신호를 수신하는 것; 및 사용자 디바이스의 센서 어레이 내의 다른 센서들에서 수신된 무선 통신 신호의 개별 신호 강도들에 대한, 사용자 디바이스의 센서 어레이 내의 각각의 센서에서 수신된 무선 통신 신호의 개별 신호 강도에 기초하여, 적어도 하나의 어시스턴트-지원 디바이스에 대한 방향성 정보를 결정하는 것에 의해, 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 중 적어도 하나의 어시스턴트-지원 디바이스에 대한 방향성 정보를 획득하는 동작을 더 포함한다. 여기서, 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 점수를 결정하는 것은 적어도 하나의 어시스턴트-지원 디바이스에 대한 방향성 정보에 추가로 기초한다.
일부 예들에서, 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 정보를 수신하는 것은: 복수의 어시스턴트-지원 디바이스 중 적어도 하나의 어시스턴트-지원 디바이스로부터 출력되는 가청 또는 비가청 신호를 수신하는 동작; 및 적어도 하나의 어시스턴트-지원 디바이스로부터 출력되는 가청 또는 비가청 신호의 에너지 및/또는 주파수에 기초하여 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 정보를 결정하는 동작을 포함한다. 일부 구현들에서, 동작들은 또한 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스로부터, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수신하는 동작; 및 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 각각의 대응하는 어시스턴트-지원 디바이스에 대해, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트를 결정하는 동작을 더 포함한다. 이러한 구현들에서, 복수의 어시스턴트-지원 디바이스 중 적어도 하나의 어시스턴트-지원 디바이스로부터 수신된 개별 이용가능한 액션 세트 내의 적어도 하나의 이용가능한 액션은 대응하는 어시스턴트-지원 디바이스가 현재 컨텍스트에 기초하여 수행하기 위한 제안된 액션을 포함할 수 있다. 추가 예들에서, 동작들은 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 대응하는 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 수신하는 동작을 더 포함할 수 있다. 여기서, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트를 결정하는 동작은 대응하는 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보에 추가로 기초한다.
일부 구현들에서, 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 동작은 사용자 디바이스에 대해 가장 가까운 근접도를 갖는 어시스턴트-지원 디바이스로부터 사용자 디바이스에 대해 가장 먼 근접도를 갖는 어시스턴트-지원 디바이스까지 어시스턴트-지원 디바이스들의 순서를 매기는 동작을 포함한다. 일부 예들에서, 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 동작은 후보 어시스턴트-지원 디바이스들의 순위 목록으로부터 최대 거리 임계값을 충족하는 근접도 추정들을 나타내는 근접도 점수들을 포함하는 임의의 어시스턴트-지원 디바이스들을 폐기하는 동작을 포함한다. 추가적으로 또는 대안적으로, 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 동작은 후보 어시스턴트-지원 디바이스들의 순위 목록으로부터 최소 거리 임계값을 충족하는 근접도 추정들을 나타내는 근접도 점수들을 포함하는 임의의 어시스턴트-지원 디바이스들을 폐기하는 동작을 포함할 수 있다.
일부 예들에서, 동작들은 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 적어도 하나의 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 수신하는 동작; 및 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성한 후, 적어도 하나의 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 사용하여, 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 후보 어시스턴트-지원 디바이스들의 순서를 다시 매기는 동작을 더 포함한다. 여기서, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트를 디스플레이하는 동작은 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 후보 어시스턴트-지원 디바이스들의 순서를 다시 매기는 동작에 기초한다.
복수의 어시스턴트-지원 디바이스로부터의 후보 어시스턴트-지원 디바이스들의 순위 목록은 복수의 어시스턴트-지원 디바이스에 대해 결정된 복수의 근접도 점수 중에서 N-최고 근접도 점수들을 갖는, 복수의 어시스턴트-지원 디바이스로부터 선택된 어시스턴트-지원 디바이스들을 포함할 수 있다. 일부 예들에서, 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트를 디스플레이하는 동작은 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 어시스턴트-지원 디바이스 중 하나에 대한 GUI 내의 개별 컨트롤 세트를, 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 어시스턴트-지원 디바이스 중의 적어도 다른 하나에 대해 GUI 내에 디스플레이되는 개별 컨트롤 세트와 상이하게 디스플레이하는 동작을 포함한다.
본 개시내용의 하나 이상의 구현에 대한 세부사항들은 첨부 도면들 및 이하의 설명에 제시된다. 다른 양태들, 특징들 및 이점들은 설명 및 도면들로부터, 그리고 청구항들로부터 명백할 것이다.
도 1은 사용자 디바이스의 환경 내에 위치된 어시스턴트-지원 디바이스들을 제어하는 것을 포함하는 예시적인 시스템의 개략도이다.
도 2는 어시스턴트-지원 디바이스와 통신하는 예시적인 사용자 디바이스의 개략도이다.
도 3a - 도 3c는 사용자 디바이스의 환경 내에서 어시스턴트-지원 디바이스들을 제어하는 사용자 디바이스의 개략도들(300a-c)이다.
도 4a - 도 4c는 각각의 대응하는 어시스턴트-지원 디바이스에 연관된 개별 액션 세트를 수행하기 위한 개별 컨트롤 세트를 디스플레이하기 위해 사용자 디바이스의 스크린 상에 렌더링되는 예시적인 GUI들(400a-c)이다.
도 5는 어시스턴트-지원 디바이스들을 제어하기 위한 방법에 대한 예시적인 동작 배열의 흐름도이다.
도 6은 본 명세서에 설명된 시스템들 및 방법들을 구현하기 위해 사용될 수 있는 예시적인 컴퓨팅 디바이스의 개략도이다.
다양한 도면들에서의 유사한 참조 기호들을 유사한 요소들을 나타낸다.
본 개시내용은 일반적으로 휴대용 클라이언트 디바이스의 인터페이스를 통해 하나 이상의 어시스턴트-지원 디바이스를 제어하기 위한 어시스턴트 애플리케이션을 실행하는 사용자 디바이스에 관한 것이다. 구체적으로, 사용자 디바이스는 사용자 디바이스 환경 내의 복수의 어시스턴트-지원 디바이스 중에서 사용자 디바이스의 사용자가 자신의 사용자 디바이스로부터 제어하기를 원할 가능성이 가장 높은 어시스턴트-지원 디바이스를 자동으로 검출할 수 있다. 어시스턴트-지원 디바이스는 예를 들어 스마트 조명, 스마트 텔레비전, 스마트 스피커, 스마트 온도 조절기, 스마트 보안 시스템, 또는 개별 액션 세트를 수행하도록 구성된 임의의 스마트 기기(예를 들어, 스마트 오븐)와 같은 임의의 사물 인터넷(IoT) 디바이스를 포함할 수 있다. 즉, 어시스턴트 애플리케이션을 실행하는 사용자 디바이스(예를 들어, 스마트폰, 태블릿, 스마트 워치, 스마트 디스플레이 등)는 개별 액션 세트 중의 하나 이상의 액션을 수행하도록 어시스턴트-지원 디바이스를 제어하기 위한 개별 컨트롤 세트를 제공할 수 있다. 예를 들어, 사용자 디바이스는 어시스턴트-지원 디바이스가 주어진 상황에서 수행할 수 있는 임의의 이용가능한 액션들에 대한 개별 컨트롤 세트를 그래픽 사용자 인터페이스에 디스플레이할 수 있으며, 이에 의해 그래픽 사용자 인터페이스는 어시스턴트-지원 디바이스로 하여금 개별 액션을 수행하게 하는 컨트롤들 중 하나의 선택을 나타내는 사용자 입력 표시(예를 들어, 터치 입력 및/또는 음성 입력)를 수신할 수 있다. 사용자들이 자신의 환경(예를 들어, 가정 또는 사무실)에서 점점 더 많은 양의 어시스턴트-지원 디바이스들과 상호작용함에 따라, 단일 사용자 디바이스로부터 디바이스들 각각을 제어하기 위한 복수의 컨트롤을 관리하는 것은 체계적이지 않고 번거로울 수 있다. 추가로, 어시스턴트-지원 디바이스들이 중첩하는 능력들은 물론 유사한 디바이스 명칭들을 공유할 수 있고, 이에 의해 디바이스들 간에서 개별 컨트롤들을 명확하게 할 필요가 있다.
본 명세서에서의 구현들은 사용자에 연관된 사용자 디바이스의 스크린에 디스플레이된 인터페이스를 통해 복수의 어시스턴트-지원 디바이스 중에서 사용자가 제어하기를 원할 가능성이 가장 높은 것(들)을 자동으로 검출하는 것에 관한 것이다. 이러한 검출은 사용자 디바이스에 대한 각각의 어시스턴트-지원 디바이스의 근접도에 기초한다. 예를 들어, 사용자 디바이스의 환경 내의 각각의 어시스턴트-지원 디바이스는 사용자 디바이스에 의해 수신가능한 근접도 정보를 브로드캐스팅할 수 있고, 사용자 디바이스는 사용자 디바이스에 대한 각각의 어시스턴트-지원 디바이스의 근접도를 결정하기 위해 그것을 사용할 수 있다. 근접도 정보는 WiFi, 블루투스 또는 초음파와 같은 무선 통신 신호들을 포함할 수 있으며, 여기서 사용자 디바이스에서 수신되는 무선 통신 신호들의 신호 강도는 사용자 디바이스에 대한 어시스턴트-지원 디바이스들의 근접도들(예를 들어, 거리들)을 상관시킬 수 있다. 근접도 정보는 또한 사용자가 예를 들어 디바이스를 터치하여 음량을 조절함으로써 어시스턴트-지원 디바이스들 중 하나와 상호작용했음을 나타내는 사용자 입력 표시를 포함할 수 있다. 근접도-기반 검출을 활용하면, 사용자는 더 적은 단계와 더 짧은 시간에 자신이 의도한 컨트롤들에 도달할 수 있다. 사용자 디바이스는 사용자 디바이스에 의해 제어될 수 있는, 사용자의 환경 내의 어시스턴트-지원 디바이스들 각각에 대한 근접도 정보를 획득할 수 있다. 즉, 이러한 어시스턴트-지원 디바이스들 각각으로부터 획득된 근접도 정보에 기초하여, 사용자 디바이스는 사용자 디바이스에 대한 개별 어시스턴트-지원 디바이스의 근접도 추정을 나타내는 각각의 어시스턴트-지원 디바이스에 대한 개별 근접도 점수를 결정할 수 있다. 추가로, 사용자 디바이스는 하나 이상의 어시스턴트-지원 디바이스 각각에 대한 사용자 디바이스의 방향/배향을 나타내기 위해 어시스턴트-지원 디바이스들 중 하나 이상으로부터 방향성 정보를 수집할 수 있다. 즉, 방향성 정보는 사용자 디바이스가 주어진 어시스턴트-지원 디바이스를 향하거나 가리키고 있는지 여부를 나타내어, 사용자가 개별 이용가능한 액션 세트를 수행하도록 어시스턴트-지원 디바이스를 제어하기 위해 사용자 디바이스를 사용하려고 의도한다는 지표의 역할을 할 수 있다. 이러한 시나리오들에서, 방향성 정보는 개별 근접도 점수를 결정하기 위해 조합하여 사용될 수 있거나, 방향성 정보는 근접도 정보로부터 단독으로 결정된 근접도 점수를 바이어스하기 위해 사용될 수 있다. 근접도 정보 및/또는 방향성 정보를 획득한 후, 사용자 디바이스는 환경 내의 어시스턴트-지원 디바이스들 각각에 대한 근접도 점수들을 결정할 수 있다. 환경 내의 어시스턴트-지원 디바이스들 각각에 대한 근접도 점수들을 결정한 후, 사용자 디바이스는 (예를 들어, 어시스턴트 애플리케이션의 실행을 통해) 근접도 점수들에 기초하여 어시스턴트-지원 디바이스들의 순위를 매겨서, 사용자가 주어진 순간에 제어하려고 의도할 가능성이 가장 큰 어시스턴트-지원 디바이스들이 어느 것인지를 우선순위화한다. 그 후, 사용자 디바이스는 현재 이용가능한 개별 액션들을 수행하도록 어시스턴트-지원 디바이스들 중 하나 이상을 제어하는 데 사용하기 위해 사용자 디바이스의 스크린 상에 디스플레이된 그래픽 사용자 인터페이스(GUI) 내에 어시스턴트-지원 디바이스들 중 하나 이상에 대한 개별 컨트롤 세트를 디스플레이한다. 예를 들어, 가장 높은 순위의 근접도 점수를 갖는 어시스턴트-지원 디바이스의 컨트롤들은 사용자의 환경 내의 더 낮은 순위의 근접도 점수들을 갖는 다른 어시스턴트-지원 디바이스들에 연관된 다른 컨트롤들보다 더 큰 글꼴로 스크린 상단에 디스플레이될 수 있다. 추가로, 매우 낮은 순위의 근접도 점수들을 갖는 어시스턴트-지원 디바이스들은 사용자가 주어진 순간에 그러한 디바이스들을 제어하려고 의도할 가능성이 거의 없기 때문에 GUI에 디스플레이되는 것에서 완전히 생략될 수 있다.
도 1을 참조하면, 일부 구현들에서, 근접도-기반 컨트롤러 시스템(100)은 네트워크(10)를 통해 사용자 디바이스(200)의 환경(32) 내의 복수의 어시스턴트-지원 디바이스(210, 210a-n)와 통신하는 사용자 디바이스(200)를 포함한다. 환경(32) 은 사용자 디바이스(200)에 연관된 사용자(30)의 부지(premises)를 포함할 수 있다. 일부 예들에서, 환경(32)은 부지의 바닥 또는 다른 섹션과 같은 사용자(30)의 부지의 일부를 포함한다. 네트워크(10)는 사용자의 집, 학교 또는 사무실과 같은 환경(32) 내에서 사용자 디바이스(200) 간의 통신 및 상호운용성을 용이하게 하는 근거리 네트워크(LAN)(예를 들어, 가정 영역 네트워크(HAN))를 포함할 수 있다. 도시된 예에서, 어시스턴트-지원 디바이스들(210)은 1층 및 2층을 갖는 사용자(30)의 집(32) 전체에 위치되며, 여기서 스마트 스피커(210a), 스마트 조명(210b), 스마트 텔레비전(210c) 및 스마트 온도 조절기(210d)는 1층에 위치되고, 제2 스마트 텔레비전(210e) 및 제2 스마트 스피커(210f)는 2층에, 예를 들어 사용자(30)의 집(32)의 침실에 위치된다. 사용자 디바이스(200)는 표준 통신 기술들 및/또는 프로토콜들을 사용하는 무선 연결들을 통해 어시스턴트-지원 디바이스들(210) 각각과 통신할 수 있다. 따라서, 네트워크(10)는 WiFi(Wireless Fidelity)(예를 들어, 802.11), WiMAX(worldwide interoperability for microwave access), 3G, 4G, LTE(Long Term Evolution), 5G, DSL(digital subscriber line), 블루투스, NFC(Near Field Communication), 또는 임의의 다른 무선 표준들을 포함할 수 있다. 부지(32)는 사용자 디바이스(200)와 어시스턴트-지원 디바이스들(210, 210a-f) 중 하나 이상 사이의 무선 통신을 용이하게 하도록 구성된 하나 이상의 액세스 포인트(AP)(도시되지 않음)를 포함할 수 있다.
사용자 디바이스(200)는 어시스턴트-지원 디바이스들(210)과 무선 통신할 수 있는 임의의 컴퓨팅 디바이스일 수 있다. 도시된 예에서는 사용자 디바이스(200)가 태블릿을 포함하는 반면, 사용자 디바이스(200)는 스마트폰, 스마트 워치, 랩탑, 데스크탑 또는 스마트 디스플레이를 또한 포함할 수 있지만, 이에 제한되지는 않는다. 사용자 디바이스(200)는 다양한 상이한 운영 체제(104)를 사용할 수 있다. 사용자 디바이스(200)가 모바일 디바이스인 예에서, 사용자 디바이스(200)는 Google Inc.에 의해 개발된 ANDROID®, Apple Inc.에 의해 개발된 IOS®, 또는 Microsoft Corporation에 의해 개발된 WINDOWS PHONE®을 포함하지만 이에 제한되지 않는 운영 체제를 실행할 수 있다. 따라서, 사용자 디바이스(200) 상에서 실행되는 운영 체제(104)는 ANDROID®, IOS®, 또는 WINDOWS PHONE® 중 하나를 포함할 수 있지만 이에 제한되지 않는다. 일부 예들에서, 사용자 디바이스(200)는 Microsoft Corporation의 MICROSOFT WINDOWS®, Apple, Inc.의 MAC OS®, 또는 Linux를 포함하지만 이에 제한되지 않는 운영 체제를 실행할 수 있다. 사용자 디바이스(200)는 현재 이용가능한지 또는 장래에 개발될지에 관계없이, 위에서 설명된 운영 체제들(104) 외의 운영 체제들(104)을 실행하면서 어시스턴트-지원 디바이스들(210, 210a-f)과 통신할 수 있다. 운영 체제(104)는 하나 이상의 소프트웨어 애플리케이션(106)을 실행할 수 있다.
소프트웨어 애플리케이션(106)은 컴퓨팅 디바이스에 의해 실행될 때 컴퓨팅 디바이스로 하여금 태스크를 수행하게 하는 컴퓨터 소프트웨어를 지칭할 수 있다. 일부 예들에서, 소프트웨어 애플리케이션(106)은 "애플리케이션", "앱", 또는 "프로그램"으로 지칭된다. 예시적인 소프트웨어 애플리케이션들(106)은 워드 프로세싱 애플리케이션들, 스프레드시트 애플리케이션들, 메시징 애플리케이션들, 미디어 스트리밍 애플리케이션들, 소셜 네트워킹 애플리케이션들, 및 게임들을 포함하지만 이에 제한되지 않는다. 애플리케이션들(106)은 여러 상이한 사용자 디바이스들(200) 상에서 실행될 수 있다. 일부 예들에서, 애플리케이션들(106)은 사용자(30)가 사용자 디바이스(200)를 구매하기 전에 사용자 디바이스(200) 상에 설치된다. 다른 예들에서, 사용자(30)는 사용자 디바이스(200)에 애플리케이션(106)을 다운로드하고 설치한다.
일부 구현들에서, 사용자 디바이스(200)는 각각의 어시스턴트-지원 디바이스(210)와의 통신을 시작하고 각각의 어시스턴트-지원 디바이스(210)에 연관된 개별 액션 세트(120)를 수행하기 위한 개별 컨트롤 세트(220)를 제공하는 어시스턴트 애플리케이션(106)을 실행한다. 즉, 복수의 어시스턴트-지원 디바이스(210) 중의 각각의 어시스턴트-지원 디바이스(210)는 어시스턴트-지원 디바이스(210)에 연관된 개별 이용가능한 액션 세트(120)를 수행하도록 어시스턴트 애플리케이션(106)에 의해 제어가능하다. 유리하게는, 어시스턴트 애플리케이션(106)은 사용자(30)가 애플리케이션(106)이 사용자 디바이스(200)의 스크린 상에서의 디스플레이를 위해 렌더링할 수 있는 그래픽 사용자 인터페이스(GUI)(400)와 같은 인터페이스(400)를 사용하여 각각의 어시스턴트-지원 디바이스(210)를 제어 및/또는 구성하는 것을 허용한다. 이러한 방식으로, 사용자(30)는 집에 있는 다양한 디바이스들을 제어하기 위해 다양한 개별 애플리케이션들에 반드시 의존해야 하는 것이 아니라, 오히려 어시스턴트 애플리케이션(106)을 실행하여 사용자(30)가 제어하고자 하는 어시스턴트-지원 디바이스(210)를 사용자 디바이스(200)에 표시할 수 있다. 복수의 어시스턴트-지원 디바이스(210) 각각에 연관된 개별 이용가능한 액션 세트(120)를 수행하기 위한 개별 컨트롤 세트(220)를 제공하는 단일 애플리케이션(106)을 가짐으로써, 사용자(30)가 개별 액션 세트(120)를 수행하도록 디바이스들(210)을 제어하기 위해 다양한 어시스턴트-지원 디바이스들(210)의 제조자들에 의해 제공되는 모든 애플리케이션을 설치하거나 열거나 그들 간에서 전환할 것을 반드시 요구하지 않는 결과로서, 사용자 디바이스(200)에서 메모리 및 프로세싱 대역폭이 해방된다. 본 명세서에서 사용될 때, GUI(400)는 터치, 음성, 제스처, 응시(gaze), 및/또는 입력 디바이스(예를 들어, 마우스 또는 스타일리스트) 중 어느 하나를 통해, 애플리케이션(106)을 시작하는 것은 물론, 사용자 디바이스(200)에서 실행되는 애플리케이션(106)의 기능성을 제어하기 위한 사용자 입력 표시들을 수신할 수 있다.
사용자 디바이스(200)에서 실행되는 어시스턴트 애플리케이션(106)은 사용자(30)가 사용자 디바이스(200)를 통해 제어할 수 있는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 GUI(400)에 디스플레이하기 위해 렌더링할 수 있다. GUI(400)에 렌더링된 순위 목록(310)은 각각의 후보 어시스턴트-지원 디바이스(210)에 대해, 후보 어시스턴트-지원 디바이스(210)를 식별하는 개별 그래픽(402), 및 대응하는 어시스턴트-지원 디바이스(210)에 연관된 개별 액션 세트(120)를 수행하기 위한 개별 컨트롤 세트(220)를 포함할 수 있다. 예를 들어, 스마트 스피커들(210a, 210f)은 미디어 콘텐츠(예를 들어, 음악)를 들을 수 있게 재생하기 위한 재생 동작, 미디어 콘텐츠의 가청 출력을 정지/일시정지하기 위한 정지/일시정지 동작, 및 대응하는 스피커(210a, 210f)로부터 출력되는 오디오 콘텐츠의 음량을 증가/감소시키기 위한 음량 액션들을 포함하는, 그에 연관된 동일한 개별 액션 세트(120)를 각각 포함할 수 있다. 이 예에서, 어시스턴트 애플리케이션(106)은 목록(310) 내에 디스플레이된 스마트 스피커들(210a, 210f) 각각에 대해 대응하는 스피커(210a, 210f)에 연관된 개별 액션 세트(120)를 수행하기 위한 동일한 개별 컨트롤 세트(220)를 디스플레이할 수 있다. 즉, 개별 컨트롤 세트(220)는 재생 동작에 연관된 액션(120)을 수행하기 위한 컨트롤(220), 정지/일시정지 동작에 연관된 액션(120)을 수행하기 위한 컨트롤(220), 음량 레벨을 증가시키는 것에 연관된 액션(120)을 수행하기 위한 컨트롤(220), 및 음량 레벨을 감소시키는 것에 연관된 액션(120)을 수행하기 위한 컨트롤(220)을 포함할 수 있다.
일부 예들에서, GUI(400) 내에 디스플레이하기 위해 렌더링되는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)은 순위 목록(310) 내의 어시스턴트-지원 디바이스들(210) 중 적어도 하나에 대한 개별 디바이스 상태 정보(215)를 나타내는 그래픽을 더 포함한다. 도시된 예에서, 스마트 조명(210b)에 대한 디바이스 상태 정보(215)는 스마트 조명(210b)이 현재 꺼져 있고 따라서 조명을 제공하지 않는다는 것을 나타내도록 디스플레이된다. 마찬가지로, 스마트 온도 조절기(210d)에 대한 디바이스 상태 정보(215)는 스마트 온도 조절기(210d)의 현재 온도 세팅(예를 들어, 온도는 현재 화씨 70도임)을 나타내도록 디스플레이된다.
각각의 어시스턴트-지원 디바이스(210)에 연관된 개별 이용가능한 액션 세트(120)는 어시스턴트-지원 디바이스(210)의 디바이스 상태 정보(215)에 의존하여 변경될 수 있다. 예를 들어, 스마트 조명(210b)이 현재 꺼져 있어서 조명을 제공하지 않는다는 디바이스 상태 정보(215)를 나타낼 때, 스마트 조명(210b)이 수행하기 위해 이용가능한 유일한 액션(120)은 켜지는 것일 것이고, 이에 의해 어시스턴트 애플리케이션(106)은 스마트 조명(210b)으로 하여금 꺼짐 상태로부터 스마트 조명(210b)이 조명을 제공할 켜짐 상태로 전환하는 동작을 수행하게 하기 위한 대응하는 컨트롤(220)을 유일하게 제공하게 된다. 한편, 스마트 조명(210b)의 디바이스 상태 정보(215)가 현재 켜져 있어 조명을 제공하는 것일 때, 스마트 조명(210b)은 적어도 끄는 액션(120)을 수행할 수 있고, 스마트 조명(210b)에 의해 제공되는 조명이 증가/감소될 수 있는, 조명 세팅들을 증가/감소시키는 동작들을 임의적으로(optionally) 수행할 수 있다. 이러한 시나리오에서, 어시스턴트 애플리케이션(106)은 사용자(30)가 켜짐 상태로부터 꺼짐 상태로 전환하거나, 조명 세팅을 증가시키거나, 조명 세팅을 감소시키는 액션들(120) 중 개별 액션을 수행하도록 스마트 조명(210b)을 제어하는 것을 각각 허용하는 컨트롤 세트(220)를 제공할 수 있다. 따라서, 적어도 하나의 어시스턴트-지원 디바이스(210)로부터 수신되는 개별 이용가능한 액션 세트(120) 내의 적어도 하나의 이용가능한 액션(120)은 현재 컨텍스트에 기초하여 대응하는 어시스턴트-지원 디바이스(210)가 수행하기 위한 제안된 액션을 포함할 수 있다. 여기서, 현재 컨텍스트는 대응하는 어시스턴트-지원 디바이스(210)의 디바이스 상태 정보(215)를 포함할 수 있다. 추가적으로 또는 대안적으로, 현재 컨텍스트는 사용자(30)의 환경(32) 내의 어시스턴트-지원 디바이스들(210) 중 하나 이상에 연관된 동일하거나 유사한 근접도 정보(250), 방향성 정보(255) 및/또는 디바이스 상태 정보(215)를 포함하지만 그에 제한되지는 않는 동일하거나 유사한 컨텍스트 하에서 사용자(30)가 실제로 어느 어시스턴트-지원 디바이스(210)를 제어했는지를 나타내는 사용자(30)의 과거 거동을 포함할 수 있다.
어시스턴트 애플리케이션(106)은 사용자 디바이스(200)의 사용자(30)가 각각의 어시스턴트-지원 디바이스(210)에 연관된 하나 이상의 특정 액션(120)을 수행하기 위해 액티브 컨트롤들(220)을 맞춤화하는 것을 허용하는 세팅들을 더 제공할 수 있다. 사용자(30)는 사용자 디바이스(200) 상에서의 실행을 위해 어시스턴트 애플리케이션(106)을 시작하도록 요청하는 사용자 요청(108)을 제공할 수 있다. 예를 들어, 사용자 디바이스(200)의 스크린 상에 디스플레이되는 그래픽 사용자 인터페이스(GUI)(400)는 어시스턴트 애플리케이션(106)을 표현하는 그래픽 요소의 선택을 나타내는 사용자 입력 표시로서 사용자 요청(108)을 수신할 수 있고, 또는 사용자(30)는 사용자 디바이스(200) 상에서의 실행을 위해 어시스턴트 애플리케이션(106)을 시작하기 위한 호출 커맨드를 포함하는 음성 입력을 통해 사용자 요청(108)을 제공할 수 있다. 다른 예들에서, 사용자 디바이스(200)는 사용자 디바이스(200) 상에서의 실행을 위해 어시스턴트 애플리케이션(106)을 시작하도록 구성된 사용자 디바이스(200)의 미리 정의된 움직임/포즈를 검출하는 것에 응답하여 사용자 요청(108)을 수신한다. 예를 들어, 사용자 디바이스(200)는 사용자(30)가 사용자 디바이스를 제1 위치로부터 제2 위치로 이동시키는 것을 검출하는 가속도계를 포함할 수 있다.
환경(32) 내의 어시스턴트-지원 디바이스들(210)의 수가 증가함에 따라, GUI(400) 내에 개별 컨트롤 세트(220) 각각을 프레젠테이션하는 것은 관리불가능하게 될 수 있다. 예를 들어, 복수의 어시스턴트-지원 디바이스(210) 각각에 연관된 개별 액션 세트(120)를 수행하기 위한 개별 컨트롤 세트(220)를 단순히 디스플레이하는 것은 사용자(30)에게 사용자(30)가 제어하기를 원하는 타겟 어시스턴트-지원 디바이스(210)를 찾기 위해 GUI(400)를 탐색할 것을 요구할 것이다. 명백한 이유로, 제어에 이용가능한 다수의 어시스턴트-지원 디바이스(210)가 존재하는 경우, 이는 사용자(30)에게 지루하고 부담스러운 작업이다. 사용자(30)의 환경(32) 내의 복수의 어시스턴트-지원 디바이스(210) 각각에 대한 근접도 정보(250)를 사용함으로써, 본 명세서에서의 구현들은 환경(32) 내의 복수의 어시스턴트-지원 디바이스(210) 중의 하나 이상의 후보 어시스턴트-지원 디바이스(210)를, 사용자(30)가 개별 액션(120)을 수행하도록 타겟 어시스턴트-지원 디바이스(210)에 커맨딩/명령함으로써 제어하기를 원하는 타겟 어시스턴트-지원 디바이스(210)로서 자동으로 검출하는 어시스턴트 애플리케이션(106)에 관한 것이다. 예를 들어, 사용자(30)는 GUI(400) 내에 디스플레이된 컨트롤들(220) 중에서 타겟 어시스턴트-지원 디바이스(210)에 연관된 개별 액션(120)을 수행하는 것에 연관된 컨트롤의 선택을 나타내는 사용자 입력 표시를 제공할 수 있으며, 그에 의해 어시스턴트 애플리케이션(106)으로 하여금 개별 액션(120)을 수행하기 위해 대응하는 커맨드(80)를 타겟 어시스턴트-지원 디바이스(210)에 전송하게 한다.
도시된 예에서, 어시스턴트 애플리케이션(106)의 실행 동안, 사용자 디바이스(200)는 환경(32) 내의 복수의 어시스턴트-지원 디바이스(210, 210a-f) 각각에 대한 근접도 정보(250, 250a-f)를 수신한다. 각각의 어시스턴트-지원 디바이스(210)에 대해, 사용자 디바이스(200)는 대응하는 어시스턴트-지원 디바이스(210)에 대해 획득된 근접도 정보(250)에 기초하여 근접도 점수(260, 260a -f)를 결정한다(즉, 어시스턴트 애플리케이션(106)을 사용하여). 여기서, 각각의 근접도 점수(260)는 환경(32) 내의 사용자 디바이스(200)에 대한 대응하는 어시스턴트-지원 디바이스(210)의 근접도 추정을 나타낸다. 본 명세서에서 사용될 때, 근접도 추정은 대응하는 디바이스(210)가 사용자 디바이스(200)로부터 위치된 거리를 포함할 수 있다. 근접도 추정은 사용자 디바이스(200)의 위치에 대한 대응하는 디바이스(210)의 위치를 더 포함할 수 있다. 복수의 어시스턴트-지원 디바이스(210)에 대해 결정된 복수의 근접도 점수(260)를 사용하여, 사용자 디바이스(200)는 환경(32) 내의 복수의 어시스턴트-지원 디바이스(210)로부터 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 생성한다(즉, 어시스턴트 애플리케이션(106)을 사용하여). 여기서, 순위 목록(310)은 GUI(400) 내에 디스플레이되고, 순위 목록(310) 내의 각각의 어시스턴트-지원 디바이스(210)에 대해, 사용자 디바이스(200)는 GUI(400) 내에서, 대응하는 어시스턴트-지원 디바이스(210)에 연관된 개별 액션 세트(120)을 수행하기 위한 각각의 컨트롤 세트(220)를 디스플레이한다.
일부 구현들에서, 어시스턴트 애플리케이션(106)은 사용자 디바이스(200)에 대해 가장 가까운 근접도를 갖는 어시스턴트-지원 디바이스(210)로부터 사용자 디바이스(200)에 대해 가장 먼 근접도를 갖는 어시스턴트-지원 디바이스(210)까지 어시스턴트-지원 디바이스들(210)의 순서를 매기는 것에 의해 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 생성한다. 예를 들어, 도 1은 스마트 스피커(210a), 스마트 조명(210b), 스마트 텔레비전(210c), 스마트 온도 조절기(210d), 제2 스마트 텔레비전(210e), 및 제2 스마트 스피커(210f)를 포함하여, 상단으로부터 하단까지 GUI(400) 내에 디스플레이되는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 보여준다. 여기서, GUI(400) 내에서 순위 목록(310)의 상단에 디스플레이되는 스마트 스피커(210a)는 사용자 디바이스(200)에 대한 가장 가까운 근접도를 포함하는 한편, GUI(400) 내에서 순위 목록(310)의 하단에 디스플레이되는 제2 스마트 스피커(210f)는 사용자 디바이스(200)에 대해 가장 먼 근접도를 포함한다.
일부 예들에서, 어시스턴트 애플리케이션(106)은 사용자 디바이스(200)의 환경(32) 내의 복수의 어시스턴트-지원 디바이스(210)에 대해 결정된 복수의 근접도 점수(260) 중에서 N-최고 근접도 점수들(260)을 갖는 어시스턴트-지원 디바이스들(210)을 선택함으로써 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 생성한다. 추가 예들에서, 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)은 최대 거리 임계값을 충족하는 근접도 점수들(260)을 갖는 어시스턴트-지원 디바이스들(210)만을 포함한다. 여기서, 최대 거리 임계값은 구성가능할(configurable) 수 있고, 사용자(30)가 해당 어시스턴트-지원 디바이스(210)를 제어하려고 의도할 가능성이 낮음을 나타내도록, 어시스턴트-지원 디바이스(210)와 사용자 디바이스(200) 사이의 먼 거리에 연관될 수 있다. 이러한 방식으로, 사용자 디바이스(200)로부터 최대 거리 임계값보다 멀리 분리된 어시스턴트-지원 디바이스(210)는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)으로부터 효과적으로 필터링될 수 있다. 예를 들어, 사용자 디바이스(200)가 1층에 있을 때, 2층에 위치된 하나 이상의 어시스턴트-지원 디바이스(210)는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)으로부터 제외될 수 있다. 추가적으로 또는 대안적으로, 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)은 최소 거리 임계값을 충족하는 근접도 추정들을 나타내는 근접도 점수들(260)을 갖는 임의의 어시스턴트-지원 디바이스들(210)을 제외할 수 있다. 여기서, 최소 거리 임계값은 구성가능할 수 있고, 사용자(30)가 애플리케이션(106)을 사용하지 않고서 직접 어시스턴트-지원 디바이스(210)를 수동으로 제어할 수 있을 만큼 충분히 가깝다는 것을 나타내도록, 어시스턴트-지원 디바이스(210)와 사용자 디바이스(200) 사이의 짧은 거리에 연관될 수 있다. 이러한 방식으로, 사용자(30)의 도달 거리 내에 있는 어시스턴트-지원 디바이스(210)는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)으로부터 효과적으로 필터링될 수 있다.
도 2는 어시스턴트-지원 디바이스(예를 들어, 스마트 스피커)(210)와 통신하는 예시적인 사용자 디바이스(200)를 도시한다. 사용자 디바이스(200)는 데이터 프로세싱 하드웨어(202), 및 데이터 프로세싱 하드웨어(202)와 통신하고 데이터 프로세싱 하드웨어(202) 상에서 실행될 때 데이터 프로세싱 하드웨어(202)로 하여금 어시스턴트 애플리케이션(106)을 실행하게 하는 명령어들을 저장하는 메모리 하드웨어(204)를 포함한다. 사용자 디바이스(200)는 또한 어시스턴트-지원 디바이스들(210)에 의해 전송된 무선 통신 신호들을 수신하도록 구성된 안테나와 같은 적어도 하나의 센서(206)를 포함할 수 있다. 사용자 디바이스(200)는 또한 하나 이상의 마이크로폰의 어레이(208)를 포함할 수 있다. 어시스턴트-지원 디바이스(210)는 어시스턴트-지원 디바이스(210)에 연관된 개별 이용가능한 액션 세트(120)를 수행하기 위해 어시스턴트 애플리케이션(106)에 의해 제어가능한, 사용자 디바이스(200)의 환경(32) 내의 복수의 어시스턴트-지원 디바이스(210) 중 하나를 포함할 수 있다. 일부 예들에서, 어시스턴트-지원 디바이스(210)는 어시스턴트-지원 디바이스(210)가 수행할 수 있는 개별 이용가능한 액션 세트(120)를 게시한다. 도시된 예에서, 개별 이용가능한 액션 세트(120)는 재생 동작, 음량 제어 동작, 정지/일시정지 동작, 및 다음/이전 트랙 동작을 포함하는 미디어 플레이어 액션들(120)을 포함한다. 사용자 디바이스(200)는 어시스턴트-지원 디바이스(210)로부터 직접적으로, 또는 액세스 포인트(도시되지 않음)를 통해 간접적으로, 이용가능한 액션 세트(120)를 수신할 수 있다. 다음으로, 사용자 디바이스(200)는 어시스턴트-지원 디바이스(210)로부터 수신된 각각의 이용가능한 액션 세트(120)에 기초하여 GUI(400) 내에 디스플레이하기 위한 개별 컨트롤 세트(220)를 결정할 수 있다. 사용자(30)는 GUI(400) 내에 디스플레이된 컨트롤들(220) 중에서 사용자(30)가 실제로 제어하기를 원하는 타겟 어시스턴트-지원 디바이스(210)(예를 들어, 스피커)에 연관된 개별 액션(120)을 수행하는 것에 연관된 컨트롤의 선택을 나타내는 사용자 입력 표시를 제공할 수 있고, 그에 의해 어시스턴트 애플리케이션(106)으로 하여금 개별 액션(120)을 수행하기 위해 대응하는 커맨드(80)를 타겟 어시스턴트-지원 디바이스(210)에 전송하게 한다.
사용자 디바이스(200)는 또한 어시스턴트-지원 디바이스(210)로부터 디바이스 상태 정보(215)를 수신할 수 있다. 예를 들어, 디바이스 상태 정보(215)는 어시스턴트-지원 디바이스(210)가 현재 켜져 있고 음악 재생목록을 재생하고 있음을 나타낼 수 있다. 사용자 디바이스(200)는 또한 어시스턴트-지원 디바이스(210)로부터 근접도 정보(250)를 수신한다. 사용자 디바이스(200)는 연속적으로 또는 적어도 주기적인 간격들 동안, 사용자 디바이스(200)의 환경(32) 내의 각각의 어시스턴트-지원 디바이스(210)로부터 근접도 정보(250), 및 임의적으로 디바이스 상태 정보(215)를 수신할 수 있다. 본 명세서에서 사용될 때, 근접도 정보(250)는 사용자 디바이스(200)가 대응하는 어시스턴트-지원 디바이스(210)에 대한 근접도 점수(260)를 결정하기 위해 사용할 수 있는 임의의 정보 또는 데이터를 포함하며, 이에 의해 근접도 점수(260)는 환경(32) 내의 사용자 디바이스(200)에 대한 대응하는 어시스턴트-지원 디바이스(210)의 근접도 추정을 나타낸다. 따라서, 많은 예들이 사용자 디바이스(200)가 어시스턴트-지원 디바이스(210)로부터 수신된 근접도 정보(250)에 기초하여 대응하는 어시스턴트-지원 디바이스(210)에 대한 근접도 점수(260)를 결정하는 것을 포함하지만, 사용자 디바이스(200)는 대응하는 어시스턴트-지원 디바이스(210)에 연관된 근접도 정보(250)를 다른 디바이스로부터 수신할 수 있다. 예를 들어, 이미지 캡처 디바이스를 포함하는 다른 디바이스는 사용자 디바이스(200)와 관련하여 어시스턴트-지원 디바이스(210)에 연관된 근접도 정보(250)를 나타내는 이미지 데이터를 제공할 수 있다.
일부 예들에서, 사용자 디바이스(200)는 사용자 디바이스(200)의 센서(206)에서 어시스턴트-지원 디바이스(210)에 의해 전송된 무선 통신 신호를 수신하고, 사용자 디바이스(200)의 센서(206)에서 수신된 무선 통신 신호의 신호 강도에 기초하여 근접도 정보(250)를 결정한다. 여기서, 무선 통신 신호는 블루투스 신호, 적외선 신호, NFC 신호 또는 초음파 신호를 포함할 수 있지만 이에 제한되지는 않는다. 다른 예들에서, 사용자 디바이스(200)는 어시스턴트-지원 디바이스(210)로부터 액세스 포인트에서 수신된 무선 통신 신호의 신호 강도를 나타내는 액세스 포인트(도시되지 않음)로부터의 근접도 정보(250)를 수신한다. 이러한 예들에서, 사용자 디바이스(200)는 사용자 디바이스(200)로부터 액세스 포인트에서 수신된 무선 통신 신호들의 신호 강도에 기초하여 근접도 추정을 나타내는 근접도 점수(260)를 결정할 수 있다. 추가 예들에서, 사용자 디바이스(200)는 하나 이상의 마이크로폰의 어레이(208)에서 어시스턴트-지원 디바이스(210)로부터의 가청 또는 비가청 신호 출력을 수신하고, 어시스턴트-지원 디바이스(210)로부터의 가청 또는 비가청 신호 출력의 에너지 및/또는 주파수에 기초하여 적어도 하나의 어시스턴트-지원 디바이스(210)에 대한 근접도 정보(250)를 결정한다.
일부 구현들에서, 사용자 디바이스(200)는 마이크로폰 어레이(208) 내의 각각의 마이크로폰(예를 들어, 센서)에서 어시스턴트-지원 디바이스(210)에 의해 전송된 무선 통신 신호를 수신하고, 마이크로폰 어레이(208) 내의 다른 마이크로폰들에서 수신된 무선 통신 신호들의 개별 신호 강도들에 대한, 센서 어레이(208) 내의 각각의 마이크로폰(예를 들어, 센서)에서 수신된 무선 통신 신호의 개별 신호 강도에 기초하여 방향성 정보(255)를 결정함으로써, 어시스턴트-지원 디바이스(210)에 대한 방향성 정보(255)를 추가로 획득한다. 이러한 구현들에서, 어시스턴트-지원 디바이스(210)에 대해 결정된 근접도 점수(260)는 방향성 정보(255)에 더 기초한다. 예를 들어, 방향성 정보(255)는 사용자 디바이스(200)가 어시스턴트-지원 디바이스(210)를 향하거나 가리키고 있지 않음을 나타낼 수 있다. 이는 사용자(30)가 어시스턴트-지원 디바이스(210)를 제어할 의도가 없다는 강력한 지표의 역할을 할 수 있다. 이와 같이, 방향성 정보(255)는, 방향성 정보(255)가 사용자 디바이스(200)가 어시스턴트-지원 디바이스(210)를 가리키고 있음을 나타낼 때 근접도 점수(260)를 증가시키거나, 방향성 정보(255)가 사용자 디바이스(200)가 어시스턴트-지원 디바이스(210)에서 멀어지는 방향을 가리키고 있음을 나타낼 때 근접도 점수(260)를 감소시킴으로써, 근접도 점수(260)를 바이어스할 수 있다. 본 명세서에서 사용될 때, 근접도 점수들(260)은 사용자 디바이스(200)에 대한 근접도가 감소함에 따라 증가하고 사용자 디바이스(200)에 대한 근접도가 증가함에 따라 감소한다. 따라서, 근접도 점수(260)의 크기는 사용자 디바이스(200)에 대한 대응하는 어시스턴트-지원 디바이스(210)의 근접도에 반비례한다.
일부 구현들에서, 어시스턴트 애플리케이션(106)은 과거 근접도-방향성 정보(250, 255), 결과 근접도 점수들(260), 이용가능한 액션 세트(120), 디바이스 상태 정보(215), 및 그에 연관된 개별 액션(120)을 수행하도록 사용자(30)가 실제로 제어한 컨트롤(220)에 연관된 타겟 어시스턴트-지원 디바이스(210)를 포함하지만 그에 제한되지는 않는 이력 데이터에 대해 사용자-특정 제어 모델을 훈련시킨다. 예를 들어, 사용자(30)는 GUI(400) 내에 디스플레이된 컨트롤들(220) 중에서 타겟 어시스턴트-지원 디바이스(210)에 연관된 개별 액션(120)을 수행하는 것에 연관된 컨트롤의 선택을 나타내는 사용자 입력 표시를 제공할 수 있으며, 그에 의해 어시스턴트 애플리케이션(106)으로 하여금 개별 액션(120)을 수행하기 위해 대응하는 커맨드(80)를 타겟 어시스턴트-지원 디바이스(210)에 전송하게 한다.
도 3a - 도 3c는 사용자(30)가 사용자 디바이스(200)를 들고서 방에서 이동함에 따라 사용자 디바이스(200)의 환경(예를 들어, 방(32)) 내의 복수의 어시스턴트-지원 디바이스(210)를 제어하기 위해 어시스턴트 애플리케이션(106)을 실행하는 사용자 디바이스(200)의 개략도들(300a-c)을 도시한다. 방은 도 1의 부지(32)의 1층에 있는 거실을 포함할 수 있고, 여기서 어시스턴트-지원 디바이스들(210, 210a-d)은 거실 전체에 위치되어 있다. 구체적으로, 개략도들(300a-c)은 스마트 스피커(210a), 스마트 조명(210b), 스마트 텔레비전(210c) 및 스마트 온도 조절기(210d)를 포함하는 복수의 어시스턴트-지원 디바이스(210)를 보여준다. 도 4a - 도 4c는 각각의 대응하는 어시스턴트-지원 디바이스(210)에 연관된 개별 액션 세트(120)를 수행하기 위한 개별 컨트롤 세트(220)를 디스플레이하기 위해 사용자 디바이스(200)의 스크린 상에 렌더링되는 예시적인 GUI들(400a-c)을 도시한다. 구체적으로, 각각의 GUI(400a-c)는 도 3a - 도 3c의 복수의 어시스턴트-지원 디바이스(210) 각각에 대해 획득된 근접도 정보(250)에 기초하여 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310), 및 각각의 디바이스(210)에 대한 개별 컨트롤 세트(220)를 도시한다. 순위 목록(310) 내의 각각의 후보 어시스턴트-지원 디바이스(210)는 후보 어시스턴트-지원 디바이스(210)를 표현하는 개별 그래픽(402)으로서 GUI(400) 내에 렌더링될 수 있다. 즉, 도 4a의 GUI(400a)는 도 3a의 환경(32) 내의 사용자 디바이스(200)에 대한 어시스턴트-지원 디바이스들(210)의 근접도 추정들에 기초하여 생성된 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310) 및 대응하는 컨트롤들(220)을 도시한다. 도 4b의 GUI(400b)는 도 3b의 환경(32) 내의 사용자 디바이스(200)에 대한 어시스턴트-지원 디바이스들(210)의 근접도 추정들에 기초하여 생성된 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310) 및 대응하는 컨트롤들(220)을 도시한다. 도 4c의 GUI(400c)는 도 3c의 환경(32) 내의 사용자 디바이스(200)에 대한 어시스턴트-지원 디바이스들(210)의 근접도 추정들에 기초하여 생성된 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310) 및 대응하는 컨트롤들(220)을 도시한다. 명백하게 될 바와 같이, 개별 GUI들(400a-c) 각각에 렌더링되는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)은, 도 3a - 도 3c의 개략도들(300a-c)에 도시된 바와 같이, 사용자 디바이스(200)가 방(32) 안의 상이한 위치들 각각으로 이동함에 따라 어시스턴트-지원 디바이스들(210) 각각에 대해 결정된 근접도 점수들(260)에 기초하여 변경된다.
도 3a 및 도 4a를 참조하면, 사용자(30)는 테이블 상에 위치된 스마트 스피커(210a) 근처의 방의 맨 끝에 위치되어 있는 한편, 스마트 조명(210b), 스마트 텔레비전(210c) 및 스마트 온도 조절기(210d)를 포함하는 다른 어시스턴트-지원 디바이스들(210)은 방의 반대편 끝에 위치된다. 또한, 사용자 디바이스(200) 및 사용자(30)는 스마트 스피커(210a)를 가리키고 있고, 이는 사용자(30)가 어시스턴트 애플리케이션(106)을 통해 스마트 스피커(210a)를 제어하려고 의도할 가능성이 있음을 나타낸다. 추가적으로, 사용자 디바이스(200) 및 사용자(30)는 스마트 조명(210b), 스마트 텔레비전(210c) 및 스마트 온도 조절기(210d)로부터 멀어지는 방향을 가리키고 있으며, 이는 사용자(30)가 어시스턴트 애플리케이션(106)을 통해 스마트 조명(210b), 스마트 텔레비전(210c) 또는 스마트 온도 조절기(210d)를 제어하려고 의도하지 않을 가능성이 있음을 나타낸다.
도 1 및 도 2를 참조하여 위에서 논의된 바와 같이, 사용자 디바이스(200)는 환경(32) 내의 어시스턴트-지원 디바이스들(210) 각각에 대한 근접도 정보(250)를 연속적으로(또는 주기적 간격들로) 획득하여 대응하는 근접도 점수들(260)을 결정할 수 있고, 이에 의해 각각의 근접도 점수(260)는 환경(32) 내의 사용자 디바이스(200)에 대한 대응하는 어시스턴트-지원 디바이스(210)의 근접도 추정을 나타낸다. 도 3a에 도시된 바와 같이, 스마트 스피커(210a)는 사용자 디바이스(200)를 들고 있는 사용자(30)에 가장 가깝고, 이는 더 높은 근접도 점수(260)를 초래한다. 가장 높은 근접도 점수(260)를 갖는 후보 어시스턴트-지원 디바이스(210)로서, 이는 사용자(30)가 스마트 스피커(210a)를 제어하기를 원한다는 강력한 지표이다. 반대로, 스마트 조명(210b), 스마트 텔레비전(210c) 및 스마트 온도 조절기(210d)는 사용자 디바이스(200)를 들고 있는 사용자(30)로부터 더 멀리 있고, 이는 더 낮은 근접도 점수(260)를 초래한다. 따라서, 크기로서, 근접도 점수(260)는 사용자(30)가 대응하는 후보 어시스턴트-지원 디바이스(210)를 제어하려고 의도하는지 여부에 대한 강력한 지표의 역할을 할 수 있다. 사용자 디바이스(200)는 (즉, 어시스턴트 애플리케이션(106)을 사용하여) 복수의 어시스턴트-지원 디바이스(210a-d) 중에서 가장 높은 근접도 점수(260)를 갖는 스마트 스피커(210a)를 사용자(30)가 제어하려고 의도하는 타겟 어시스턴트-지원 디바이스(210)로서 식별할 수 있다.
추가로, 도 1에 도시된 제2 스마트 텔레비전(210e) 및 제2 스마트 스피커(210f)와 같이, 사용자의 부지(32)의 2층에 있는 다른 방들에 위치된 어시스턴트-지원 디바이스들(210)은 훨씬 더 낮은 근접도 점수(260)를 가질 수 있고, 그 결과, 사용자 디바이스(200)는 (즉, 어시스턴트 애플리케이션(106)을 사용하여) 사용자(30)가 제어하려고 의도하는 가능한 후보들로서의 고려로부터 그러한 어시스턴트-지원 디바이스들(210)을 실격시킨다. 결과적으로, 사용자 디바이스(200)는 도 4a - 도 4c의 GUI들(400a-c) 내에 렌더링된 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)으로부터 제2 스마트 텔레비전(210e) 및 제2 스마트 스피커(210f)를 폐기할 수 있다.
도 3a 및 도 4a를 참조하면, 어시스턴트-지원 디바이스들(210) 각각에 대한 근접도 점수들(260)을 결정한 후, 사용자 디바이스(200)는 (즉, 어시스턴트 애플리케이션(106)을 사용하여) 사용자 디바이스(200)에 대한 어시스턴트-지원 디바이스들(210)의 근접도 추정들을 나타내는 근접도 점수들(260)에 기초하여 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310) 및 대응하는 컨트롤들(220)을 생성한다. 더 구체적으로, 사용자 디바이스(200)는 사용자 디바이스(200)에 대해 가장 가까운 근접도를 갖는 어시스턴트-지원 디바이스(210a)로부터 사용자 디바이스(200)에 대해 가장 먼 근접도를 갖는 어시스턴트-지원 디바이스(210d)까지 어시스턴트-지원 디바이스들(210)의 순서를 매기는 것에 의해 순위 목록(310)을 생성한다. 추가적인 예들에서, 근접도 점수들(260)은 대응하는 어시스턴트-지원 디바이스(210)에 연관된 개별 이용가능한 액션 세트에 대한 신뢰 레벨들과 같은 추가 컨텍스트 정보와 결합된다. 예를 들어, 저녁 늦게 조명을 끄는 데 더 높은 신뢰도가 있을 수 있다. 본질적으로, 이러한 컨텍스트 정보는 어시스턴트-지원 디바이스들이 사용자에 대해 개인화된 순위 목록(310) 내에 위치되는 방식에 영향을 미치도록 근접도 점수들(260)을 바이어스하기 위해 사용될 수 있다.
도 4a의 GUI(400a)는 사용자 디바이스(200)가 어시스턴트-지원 디바이스들(210) 각각에 대해 결정된 근접도 점수들(260)을 사용하여 생성하는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 디스플레이한다. 위에서 언급한 바와 같이, 사용자 디바이스(200)는 도 1의 사용자의 부지(32)의 2층에 위치된 제2 스마트 텔레비전(210e) 및 제2 스마트 스피커(210f)에 연관된 근접도 점수들(260)이 최대 거리 임계값을 충족하는 근접도 추정들을 나타낼 수 있음을 결정할 수 있고, 그 결과, 사용자 디바이스(200)는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)으로부터 이러한 어시스턴트-지원 디바이스들(210e, 210f)을 폐기하게 된다. 가장 높은 근접도 점수(260)를 갖는 결과로서, 사용자 디바이스(200)는 순위 목록(310)에서 스마트 스피커(210a)를 더 높은 순위에 두고, 그 결과, 사용자 디바이스(200)는 GUI(400a) 내에서 스마트 스피커(210a)를 표현하는 대응하는 그래픽 요소(402), 대응하는 컨트롤들(220), 및 디바이스 상태 정보(215)를 순위 목록(310) 내의 하위 순위 어시스턴트-지원 디바이스들(210b-d) 각각을 표현하는 그래픽 요소들(402)보다 더 눈에 띄게 렌더링한다. 도시된 예에서, 사용자 디바이스(200)는 GUI(400a) 내에서 스마트 스피커(210a)를 상단에 더 큰 글꼴로 두고서, 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)의 그래픽 요소들(402) 및 대응하는 컨트롤들(220)을 렌더링/디스플레이한다. GUI(400a)는 비제한적이며, 다른 예들에서, 사용자 디바이스(200)는 가장 높은 근접도 점수(260)에 연관된 스마트 스피커(210a)를 표현하는 그래픽 요소(402)를 중간과 같은 GUI(400a)의 다른 위치들에 렌더링할 수 있고/거나 그래픽 요소(402)를 다른 어시스턴트-지원 디바이스들(210b-d)을 표현하는 그래픽 요소들(402)과 상이하게 디스플레이할 수 있다. 이러한 디스플레이 포맷은 사용자(30)가 스마트 스피커(210a)에 연관된 개별 액션 세트(120)를 수행하기 위한 개별 컨트롤 세트(220)를 신속하게 찾는 것을 더 쉽게 만든다.
도 4a에 도시된 예시적인 GUI(400a)에서, GUI(400a) 내에 디스플레이되는 스마트 스피커(210a)에 대한 개별 컨트롤 세트(220)는 스마트 스피커(210a)로 하여금 현재 스마트 스피커(210a)가 수행하기 위해 이용가능한 (예를 들어, 음악 스트리밍 서비스로부터의) 음악 재생목록에 연관된 개별 액션 세트(120)로부터의 임의의 액션들(120)을 수행하게 하기 위한 컨트롤들(220)을 포함한다. 이러한 개별 컨트롤 세트(220)는, 선택될 때 스마트 스피커(210a)로 하여금 재생목록의 이전 노래 트랙으로 되돌아가는 것, 음악 재생목록을 재생하는 것, 재생목록의 다음 노래 트랙으로 건너뛰는 것, 및 스마트 스피커(210a)의 음량 레벨을 조절하는 것의 개별 액션들(120)을 수행하게 하는 컨트롤들(220)을 포함한다. 예를 계속하면, 사용자의 부지(32)의 거실에 위치된 스마트 스피커(210a)를 표현하는 그래픽 요소(402)는 또한 스마트 스피커(210a)의 배터리 레벨, 및 음악 재생목록이 현재 일시정지되어 있으므로 현재 스마트 스피커(210a)로부터 출력되고 있는 음악은 없다는 것을 나타내는, 스마트 스피커(210a)에 연관된 디바이스 상태 정보(215)를 디스플레이한다. 특히, 재생목록이 현재 일시정지되어 있으므로, GUI(400a) 내에는 재생목록을 일시정지하는 액션(120)을 수행하기 위한 컨트롤(220)이 디스플레이되지 않는다. 여기서, 사용자(30)는 스마트 스피커(210a)로 하여금 재생목록 내의 현재 노래 트랙을 가청 재생하는 개별 액션(120)을 수행하도록 하기 위해 (예를 들어, 보편적으로 "재생"을 나타내는 GUI(400a) 내의 그래픽 버튼을 터치함으로써) "재생" 컨트롤(220)의 선택을 나타내는 사용자 입력 표시를 제공할 수 있다. 임의적으로, "재생" 컨트롤(220)의 선택을 나타내는 사용자 입력 표시는, 사용자(30)가 사용자 디바이스(200)의 마이크로폰에 의해 캡처될 수 있는 용어 "재생"을 발화하는 것과 같은 음성 입력을 포함할 수 있다. 특히, 순위 목록(310) 내의 디바이스들(210)을 제어하기 위한 음성 인식 능력들은 근접도 점수들(260)에 기초하여 바이어스될 수 있다. 이는 사용자가 음성 기반 커맨드들을 발행할 가능성이 더 높을 수 있다는 개념을 따른다. 이와 같이, 특정 디바이스(210)에 대한 임계값을 충족하는 근접도 점수(260)는 마이크로폰으로 하여금 캡처를 하고 캡처된 음성에 대한 음성 인식을 수행하기 위해 디바이스(210)에서 개방되게 할 수 있다. 추가적으로 또는 대안적으로, 특정 디바이스(210)에 대한 음성 인식 능력들은 해당 디바이스(210)에 대한 개별 이용가능한 액션 세트(120)를 인식하도록 바이어스될 수 있다. 도 3a에 도시된 바와 같이, GUI(400a)에 디스플레이된 "재생" 컨트롤(220)의 선택을 나타내는 사용자 입력 표시는 사용자 디바이스(200)(즉, 어시스턴트 애플리케이션(106))로 하여금 재생목록 내의 현재 노래 트랙을 가청 재생하는 개별 액션(120)을 수행하도록 하기 위해 스마트 스피커(210a)에 대응하는 커맨드(80)를 전송하게 한다.
도 4a의 GUI(400a)를 다시 참조하면, 사용자 디바이스(200)는 GUI(400a) 내에서, 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310) 내의 다른 어시스턴트-지원 디바이스들(210b-d)을 표현하는 그래픽 요소들(402)을 추가로 디스플레이한다. 구체적으로, 스마트 온도 조절기(210d)가 두 번째로 높은 근접도 점수(260)를 갖는 것으로 인해 스마트 온도 조절기(210d)는 순위 목록(310)에서 두 번째에 있고, 스마트 텔레비전(210c)이 세 번째로 높은 근접도 점수(260)를 갖는 것으로 인해 스마트 텔레비전(210c)은 순위 목록(310)에서 세 번째에 있으며, 스마트 조명(210b)이 가장 낮은 근접도 점수(260)를 갖는 것으로 인해 스마트 조명(210b)은 순위 목록(310)에서 마지막에 있다. 도시된 예에서, 스마트 온도 조절기(210d)를 표현하는 그래픽 요소(402)는 스마트 온도 조절기(210d)의 현재 온도 세팅(예를 들어, 70도)을 나타내는 디바이스 상태 정보(215), 및 현재 온도 세팅을 증가시키거나 감소시키는 개별 액션들(120)을 수행하도록 스마트 온도 조절기(210d)를 제어하기 위한 개별 컨트롤 세트(220)를 제공한다. 마찬가지로, 스마트 조명(210b)을 표현하는 그래픽 요소(402)는 스마트 조명(210b)이 현재 꺼져 있음을 나타내는 디바이스 상태 정보(215), 및 켜는 개별 액션(120)을 수행하도록 스마트 조명(210b)을 제어하기 위한 단일 컨트롤(220)을 제공한다.
일부 예들에서, 더 낮은 순위의 근접도 점수들(260)에 연관된 순위 목록(310) 내의 후보 어시스턴트-지원 디바이스들(210)에 대해, GUI(400a)는 개별 컨트롤들(220)을 렌더링하지 않고서 그러한 어시스턴트-지원 디바이스들(210)에 연관된 디바이스 상태 정보(215)만을 디스플레이할 수 있다. 그러나, 사용자(30)가 개별 액션들(120)을 수행하도록 이러한 디바이스들(210) 중 임의의 것을 제어하기를 원하는 경우, 사용자(30)는 GUI(400a)로 하여금 개별 컨트롤 세트(220)를 렌더링하게 하기 위해 대응하는 그래픽 요소(402)를 선택하는 입력 표시를 제공할 수 있다. 도시된 예에서, 스마트 텔레비전(210c)이 낮은 근접도 점수(260)를 갖는 것으로 인해(예를 들어, 최소 근접도 점수 임계값을 충족시키지 못함), 사용자 디바이스(200)는 (즉, 애플리케이션(106)을 사용하여) 순위 목록(310) 내에서 스마트 텔레비전(210c)의 개별 컨트롤들(220)의 디스플레이를 억제한다. 컨트롤들(220)의 디스플레이를 억제하는 이러한 결정은 사용자 디바이스(200)가 스마트 텔레비전(210c)으로부터 멀어지는 방향을 가리키고 있음을 나타내는 대응하는 방향성 정보(255)에 기초할 수 있다. 여기서, 방향성 정보(255)는 스마트 텔레비전(210c)에 대한 근접도 점수(260)를 감소시킴으로써 바이어스할 수 있다. 또한, 사용자 디바이스(200)는 방향성 정보(255)에 기초하여 근접도 점수(260)를 바이어스할지 여부를 고려할 때 어시스턴트-지원 디바이스(210)의 유형과 같은 컨텍스트를 고려할 수 있다. 현재 예에서, 어시스턴트-지원 디바이스(210c)가 스마트 텔레비전이고 사용자들이 커맨드들을 발행할 때 전형적으로 스마트 텔레비전들을 향하도록 방향을 잡는다는 것을 나타내는 컨텍스트에서, 사용자 디바이스(200)가 스마트 텔레비전(210c)으로부터 멀어지는 방향을 가리키고 있음을 나타내는 방향성 정보(255)는 사용자(30)가 스마트 텔레비전(210c)을 제어할 의도가 없다는 강력한 지표의 역할을 할 수 있다. 결과적으로, 스마트 텔레비전(210c)이 수행하기 위해 이용가능한 액션들(120)이 있더라도, 사용자 디바이스(200)는 스마트 텔레비전(210c)으로 하여금 임의의 액션들(120)을 수행하게 하기 위한 GUI(400a) 내의 컨트롤들(220)의 디스플레이를 임의적으로 억제할 수 있다. 한편, 스마트 조명(210b)에 연관된 방향성 정보(255)는 근접도 점수(260)를 바이어스하는 데 사용되지 않을 수 있는데, 왜냐하면 사용자들(30)은 스마트 조명들의 동작을 제어할 때 전형적으로 임의의 특정 방식으로 방향을 잡지 않기 때문이다. 반대로, 사용자 디바이스(200)가 스마트 스피커(210a)를 향하고 있음을 나타내는 방향성 정보(255)는 근접도 점수(260)를 증가시킴으로써 스마트 스피커(210a)에 대한 근접도 점수(260)를 더 바이어스할 수 있다. 그러나, 사용자들은 다른 방향들을 향하고 있을 때에도 동작들을 수행하기 위해 스마트 스피커들을 종종 제어하기 때문에, 바이어스의 양은 더 적게 가중될 수 있다.
도 3b 및 도 4b를 참조하면, 도 3a에 도시된 바와 같이 사용자(30)가 사용자 디바이스(200)로 하여금 스마트 스피커(210a)에 커맨드(80)를 전송하여 개별 "재생" 액션(120)을 수행하게 하기 위해 도 4a의 GUI(400a) 내에 디스플레이된 "재생" 컨트롤(220)의 선택을 나타내는 사용자 입력 표시를 제공하는 것에 응답하여, 스마트 스피커(210a)는 음악 재생목록 내의 현재 노래 트랙을 가청 재생한다. 추가적으로, 사용자 디바이스(200) 및 사용자(30)는 스마트 조명(210b), 스마트 텔레비전(210c), 및 스마트 온도 조절기(210d)를 포함하는 다른 어시스턴트-지원 디바이스(210)를 가리키고 있고, 그에 의해, 사용자(30)가 어시스턴트 애플리케이션(106)을 통해 스마트 조명(210b), 스마트 텔레비전(210c), 또는 스마트 온도 조절기(210d) 중 하나를 제어하려고 의도할 가능성이 있을 수 있음을 나타낸다.
도 3b에 도시된 바와 같이, 스마트 스피커(210a)는 사용자 디바이스(200)를 들고 있는 사용자(30)에 가장 근접하게 유지되며, 이는 더 높은 근접도 점수(260)를 초래한다. 가장 높은 근접도 점수(260)를 갖는 후보 어시스턴트-지원 디바이스(210)로서, 이는 사용자(30)가 스마트 스피커(210a)를 제어하기를 원한다는 강력한 지표이다. 반대로, 스마트 조명(210b), 스마트 텔레비전(210c), 및 스마트 온도 조절기(210d)는 여전히 스마트 스피커(210a)보다 사용자 디바이스(200)를 들고 있는 사용자(30)로부터 더 멀리 떨어져 있으므로, 이러한 어시스턴트-지원 디바이스들(210b-d)은 스마트 스피커(210a)보다 낮은 근접도 점수들(260)을 갖게 된다.
도 3b 및 도 4b를 참조하면, 어시스턴트-지원 디바이스들(210) 각각에 대한 근접도 점수들(260)을 결정한 후, 사용자 디바이스(200)는 (즉, 어시스턴트 애플리케이션(106)을 사용하여) 사용자 디바이스(200)에 대한 어시스턴트-지원 디바이스들(210)의 근접도 추정들을 나타내는 근접도 점수들(260)에 기초하여 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310) 및 대응하는 컨트롤들(220)을 생성한다. 보다 구체적으로, 사용자 디바이스(200)는 사용자 디바이스(200)에 대해 가장 가까운 근접도를 갖는 어시스턴트-지원 디바이스(210a)로부터 사용자 디바이스(200)에 대해 가장 먼 근접도를 갖는 어시스턴트-지원 디바이스(210d)까지 어시스턴트-지원 디바이스들(210)의 순서를 매기는 것에 의해 순위 목록(310)을 생성한다. 일부 예들에서, 근접도 점수들(260) 중 하나 이상은 어시스턴트-지원 디바이스들(210) 중 하나 이상에 연관된 방향성 정보(255)에 기초하여 추가로 결정되거나 바이어스된다.
도 4b의 GUI(400b)는 사용자 디바이스(200)가 어시스턴트-지원 디바이스들(210) 각각에 대해 결정된 근접도 점수들(260)을 사용하여 생성하는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 디스플레이한다. 위에서 언급된 바와 같이, 사용자 디바이스(200)는 도 1의 사용자의 부지(32)의 2층에 위치된 제2 스마트 텔레비전(210e) 및 제2 스마트 스피커(210f)에 연관된 근접도 점수들(260)이 여전히 최대 거리 임계값을 충족시키는 근접도 추정들을 나타낼 수 있음을 결정할 수 있고, 그에 의해, 사용자 디바이스(200)는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)으로부터 이러한 어시스턴트-지원 디바이스들(210e, 210f)을 폐기하게 된다. 가장 높은 근접도 점수(260)를 유지한 결과로서, 사용자 디바이스(200)는 스마트 스피커(210a)를 순위 목록(310)에서 더 높은 순위에 위치시키고, 그에 의해 사용자 디바이스(200)는 GUI(400b) 내에서 스마트 스피커(210a)를 표현하는 대응하는 그래픽 요소(402), 대응하는 컨트롤들(220), 및 디바이스 상태 정보(215)를 순위 목록(310) 내의 더 낮은 순위의 어시스턴트-지원 디바이스들(210b-d) 각각을 표현하는 그래픽 요소들(402)보다 더 두드러지게 렌더링하게 된다. 추가적으로, 순위 목록 내의 더 높은 순위의 어시스턴트-지원 디바이스들(210)에 대한 대응하는 컨트롤들(220)은 더 근접하게 디스플레이될 수 있다(예를 들어, 더 크고, 더 많은 컨트롤들 등). 도시된 예에서, 사용자 디바이스(200)는 GUI(400b) 내에서 스마트 스피커(210a)에 연관된 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)의 그래픽 요소들(402) 및 대응하는 컨트롤들(220)을 상단에 더 큰 글꼴로 렌더링/디스플레이한다. GUI(400b)는 비제한적이며, 다른 예들에서, 사용자 디바이스(200)는 가장 높은 근접도 점수(260)에 연관된 스마트 스피커(210a)를 표현하는 그래픽 요소(402)를 GUI(400b)의 중간과 같은 GUI(400b)의 다른 위치들에 렌더링할 수 있고/거나 그래픽 요소(402)를 다른 어시스턴트-지원 디바이스들(210b-d)을 표현하는 그래픽 요소들(402)과 상이하게 디스플레이할 수 있다. 이러한 디스플레이 포맷은 사용자(30)가 스마트 스피커(210a)에 연관된 개별 액션 세트(120)를 수행하기 위한 개별 컨트롤 세트(220)를 신속하게 찾는 것을 더 쉽게 만든다.
도 4b의 예시적인 GUI(400b)를 계속 참조하면, GUI(400b)에 디스플레이되는 스마트 스피커(210a)에 대한 개별 컨트롤 세트(220)는, 선택될 때 스마트 스피커(210a)로 하여금 재생목록의 이전 노래 트랙으로 되돌아가는 것, 음악 재생목록을 일시정지하는 것, 재생목록의 다음 노래 트랙으로 건너뛰는 것, 및 스마트 스피커(210a)의 음량 레벨을 조절하는 것의 개별 액션들(120)을 수행하게 하는 컨트롤들(220)을 포함한다. 따라서, 스마트 스피커(210a)에 대한 디바이스 상태 정보(215)는 스마트 스피커(210a)가 (즉, 도 3a에 도시된 개별 "재생" 액션(120)을 수행하기 위한 사용자 디바이스(200)로부터 스마트 스피커(210a)로의 커맨드(80)의 전송에 응답하여) 현재 음악 재생목록으로부터 음악을 재생하고 있음을 나타내므로, 도 4a의 GUI(400a)에서 컨트롤(220)로서 이용가능하지 않았던 음악 재생목록을 일시정지하기 위한 액션(120)은 현재 도 4b의 GUI(400a)에서 선택에 이용가능하다. 예를 계속하면, 사용자의 부지(32)의 거실에 위치된 스마트 스피커(210a)를 표현하는 그래픽 요소(402)는 또한 스마트 스피커(210a)의 배터리 레벨, 및 음악 재생목록이 현재 재생 중이므로 현재 스마트 스피커(210a)로부터 음악이 출력되고 있다는 것을 나타내는, 스마트 스피커(210a)에 연관된 디바이스 상태 정보(215)를 디스플레이한다. 특히, 사용자(30)가 도 3a에서 "재생" 컨트롤(220)의 선택을 나타내는 입력 표시를 제공했기 때문에, 재생목록이 현재 재생 중이므로 GUI(400b)에는 재생목록을 재생하는 액션(120)을 수행하기 위한 컨트롤(220)이 디스플레이되지 않는다.
계속하여 도 4b의 GUI(400b)를 참조하면, 사용자 디바이스(200)는 GUI(400b)에서, 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310) 내에 다른 어시스턴트-지원 디바이스들(210b-d)을 표현하는 그래픽 요소들(402)을 추가로 디스플레이한다. 구체적으로, 스마트 온도 조절기(210d)가 두 번째로 높은 근접도 점수(260)를 갖는 것으로 인해 스마트 온도 조절기(210d)는 순위 목록(310)에서 두 번째에 있고, 스마트 텔레비전(210c)이 세 번째로 높은 근접도 점수(260)를 갖는 것으로 인해 스마트 텔레비전(210c)은 순위 목록(310)에서 세 번째에 있으며, 스마트 조명(210b)이 가장 낮은 근접도 점수(260)를 갖는 것으로 인해 스마트 조명(210b)은 순위 목록(310)에서 마지막에 있다. 도시된 예에서, 스마트 온도 조절기(210d)를 표현하는 그래픽 요소(402)는 스마트 온도 조절기(210d)의 현재 온도 세팅(예를 들어, 70도)을 나타내는 디바이스 상태 정보(215), 및 현재 온도 세팅을 증가시키거나 감소시키는 개별 액션들(120)을 수행하도록 스마트 온도 조절기(210d)를 제어하기 위한 개별 컨트롤 세트(220)를 제공한다. 마찬가지로, 스마트 조명(210b)을 표현하는 그래픽 요소(402)는 스마트 조명(210b)이 현재 꺼져 있음을 나타내는 디바이스 상태 정보(215), 및 켜는 개별 액션(120)을 수행하도록 스마트 조명(210b)을 제어하기 위한 단일 컨트롤(220)을 제공한다.
도시된 예에서, 사용자 디바이스(200)는 (즉, 애플리케이션(106)을 사용하여) 순위 목록(310)에서 스마트 텔레비전(210c)에 대한 개별 컨트롤들(220)의 디스플레이를 더 이상 억제하지 않는다. 이제 스마트 텔레비전(210c)에 대한 개별 컨트롤들(220)의 디스플레이를 렌더링하기 위한 이러한 결정은, 이제 사용자 디바이스(200)가 도 3b의 개략도(300b)에 도시된 바와 같이 스마트 스피커(210a)를 외면하고 이제 스마트 텔레비전(210c)을 향하고 있음을 나타내는 대응하는 방향성 정보(255)에 기초할 수 있다. 여기서, 사용자 디바이스(200)가 스마트 텔레비전(210c)을 가리키고 있음을 나타내는 방향성 정보(255)는, 어시스턴트 애플리케이션(106)이 스마트 텔레비전(210c)에 대한 근접도 점수(260)를 증가시킴으로써 그것을 바이어스하게 하고/거나, 방향성 정보(255)가 사용자 디바이스(200)가 스마트 텔레비전(210c)으로부터 멀어지는 방향을 가리키고 있음을 나타내었을 때 도 3a에서와 같이 근접도 점수(260)를 감소시키기 위한 임의의 바이어스를 적용하지 않도록 단순히 선택하는 결과를 초래할 수 있다. 현재 예에서, 사용자 디바이스(200)가 스마트 텔레비전(210c)을 향하고 있음을 나타내는 방향성 정보(255)는 사용자(30)가 스마트 텔레비전(210c)을 제어하려고 의도한다는 강력한 지표의 역할을 할 수 있다. 그 결과, 사용자 디바이스(200)는 스마트 텔레비전(210c)으로 하여금 스마트 텔레비전(210c)의 전원을 끄고 스마트 텔레비전(210c)의 오디오 출력을 음소거하는 액션(120)을 수행하게 하기 위해 GUI(400b)에서 "꺼짐" 및 "음소거"에 대한 컨트롤들(220)의 디스플레이를 임의적으로 렌더링할 수 있다. 또한, 사용자 디바이스(200)가 스마트 텔레비전(210)을 가리키고 있음을 나타내는 방향성 정보(255)는, 스마트 텔레비전(210c)이 사용자 디바이스(200)가 스마트 텔레비전을 가리키고 있다는 표시를 제공하게 할 수 있고, 따라서 어시스턴트 애플리케이션이 텔레비전을 제어하도록 의도된다는 확인의 역할을 할 수 있다. 표시는 스크린이 색상을 변경하는 것, 텔레비전(210c)의 패널이 색상을 변경하는 것, 가청 경보, 또는 사용자 디바이스(200)가 텔레비전(200c)과 정렬되어 있음을 확인하는 임의의 다른 표시일 수 있다.
본 명세서에 설명된 많은 예들은 수신된 방향성 정보(255)를 사용하여 근접도 점수들(260)을 바이어스하는 어시스턴트 애플리케이션(106)을 논의하지만, 다른 예들은 근접도 정보(250) 및 방향성 정보(255) 둘 다의 함수로서 근접도 점수들(260)을 결정하는 어시스턴트 애플리케이션(106)을 포함할 수 있다. 이러한 예들에서, 대응하는 근접도 점수(260)를 결정할 때, 정보(250, 255)를 제공하는 특정 어시스턴트-지원 디바이스(210)의 유형이 더 고려될 수 있다. 예를 들어, 어시스턴트 애플리케이션(106)은 특정 어시스턴트-지원 디바이스(210)의 유형에 기초하여 근접도 정보(250)의 가중치 및/또는 방향성 정보(255)의 가중치를 조절하여, 근접도 정보(250) 및 방향성 정보(255)가 특정 어시스턴트-지원 디바이스(210)에 대한 결과적인 근접도 점수(260)의 크기에 얼마나 많이 영향을 미치는지에 영향을 줄 수 있다. 일부 구현들에서, 어시스턴트 애플리케이션(106)은 사용자 디바이스(200)가 이동하고 있는지 여부를 결정하기 위해 일정 지속시간 동안 연속적으로 수신된 근접도 정보(250) 및 방향성 정보(255)를 사용한다. 이러한 구현들에서, 사용자 디바이스(200)가 이동하고 있을 때, 어시스턴트 애플리케이션(106)은 사용자 디바이스(200)가 어느 방향으로 이동하고 있는지, 그에 따라 사용자 디바이스(200)가 어느 어시스턴트-지원 디바이스(210)를 향해 이동하고 있는지를 나타내는 사용자 디바이스(200)의 현재 진로방향(heading)을 더 도출할 수 있다. 현재 진로방향은 하나 이상의 어시스턴트-지원 디바이스(210)에 대해 결정된 근접도 점수들(260)을 바이어스할 수 있거나, 어시스턴트-지원 디바이스들(210) 중 하나 이상에 대해 결정된 근접도 점수들(260)은 근접도 정보(250) 및 방향성 정보(255)로부터 도출된 사용자 디바이스(200)의 현재 진로방향의 함수로서 결정될 수 있다.
추가적으로, 사용자 디바이스(200)는 GUI(400)의 환경(32) 내의 하나 이상의 어시스턴트-지원 디바이스(210)에 연관된 이용가능한 액션들(120)을 수행하기 위한 개별 컨트롤들(220)을 포함할지 여부를 고려할 때, 어시스턴트-지원 디바이스들(210) 중 하나 이상의 디바이스 상태 정보(215)에 기초하여 어시스턴트-지원 디바이스들(210)로 하여금 개별 액션들(120)을 수행하게 하기 위한 컨트롤들(220)의 선택들을 나타내는 입력 표시들을 제공하는 사용자(30)의 과거 거동의 컨텍스트를 고려할 수 있다. 예를 들어, 스마트 텔레비전(210c)의 디바이스 상태 정보(215)가 스마트 텔레비전(210c)이 현재 켜져 있음을 나타내는 동안 사용자(30)가 스마트 스피커(210a)가 음악을 재생하도록 커맨드(80)를 발행할 때마다, 사용자(30)가 스마트 텔레비전(210c)을 즉시 음소거하거나 전원을 껐다면, 사용자 디바이스(200)는 스마트 스피커(210a)에 음악을 재생하기 위한 커맨드(80)(도 3a)를 발행하는 것, 및 스마트 텔레비전(210c)이 현재 켜져 있음을 나타내는 스마트 텔레비전(210c)에 대한 현재 디바이스 상태 정보(215)에 응답하여, 스마트 텔레비전(210c)에 대한 GUI(400b)에서 "꺼짐" 및 "음소거"에 대한 컨트롤들(220)의 디스플레이를 현재 렌더링하기로 결정할 수 있다.
도 3b 및 도 4b를 참조하면, 사용자(30)는 스마트 조명(210b)을 꺼짐으로부터 켜짐으로 전환하기를 원하고, 어시스턴트 애플리케이션(106)을 사용하여 스마트 조명(210b)에 대해 GUI(400b)에 디스플레이된 "켜짐" 컨트롤(220)의 선택을 나타내는 대응하는 사용자 입력 표시(예를 들어, 터치 입력, 스피치 입력, 응시 또는 제스처)를 제공한다. 여기서, 사용자 디바이스(200)는 GUI(400b)에 디스플레이된 스마트 조명(210b)에 대한 "켜짐" 컨트롤(220)의 선택을 나타내는 사용자 입력 표시를 수신하고, 사용자 디바이스(200)(즉, 어시스턴트 애플리케이션(106)로 하여금 켜는 개별 액션(120)을 수행하도록 스마트 조명(210b)에 대응하는 커맨드(80)를 전송하게 한다.
도 3c 및 도 4c를 참조하면, 스마트 조명(210b)은 현재 켜져 있고, 사용자(30)는 스마트 스피커(210a) 근처의 방의 맨 끝으로부터 스마트 온도 조절기(210d)에 가장 가까운 방의 반대쪽으로 이동했으며, 스마트 조명(210b) 및 스마트 텔레비전(210c)은 이제 도 3b에 도시된 예에 비해 사용자 디바이스(200)에 더 근접해 있다. GUI(400c)는 이제 스마트 조명(210b)이 현재 켜져 있음을 나타내는 스마트 조명(210b)에 대한 디바이스 상태 정보(215)를 보여줌으로써, 유일한 이용가능한 액션(120)인 끄기를 수행하도록 스마트 조명(210b)을 제어하기 위해 GUI(400c) 내에 스마트 조명(210b)에 대한 단 하나의 컨트롤(220)만을 렌더링한다. 또한, 도 3c는 사용자 디바이스(200)가 스마트 온도 조절기(210d)를 향하고 있음을 보여주며, 이는 사용자(30)가 어시스턴트 애플리케이션(106)을 통해 스마트 온도 조절기(210d)를 제어하려고 의도할 가능성이 있을 수 있음을 나타낸다. 반대로, 사용자 디바이스(200)는 스마트 조명(210b) 또는 스마트 텔레비전(210c)이 사용자 디바이스(200)에 근접함에도 불구하고 그들 중 어느 하나를 가리키지 않는다. 사용자 디바이스(200)가 어시스턴트-지원 디바이스(210)를 가리키고 있지 않음을 나타내는 방향성 정보(255)는 사용자(30)가 어시스턴트-지원 디바이스(210), 예를 들어 도시된 예에서 스마트 조명(210b), 스마트 텔레비전(210c) 및 스마트 스피커(210a)를 제어하려고 의도하지 않을 가능성이 있음을 나타낼 수 있다.
도 1 및 도 2를 참조하여 위에서 논의된 바와 같이, 사용자 디바이스(200)는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 생성하기 위해 어시스턴트-활성 디바이스들(210) 각각의 근접도 점수(260)를 결정하기 위해, 어시스턴트-활성 디바이스들(210) 각각에 대한 근접도 정보(250), 및 임의적으로 방향성 정보(255)를 연속적으로(또는 주기적 간격들에서) 획득할 수 있다. 도 3c에 도시된 바와 같이, 스마트 온도 조절기(210d)는 사용자 디바이스(200)를 들고 있는 사용자(30)에 가장 근접한 반면, 스마트 스피커(210a)는 사용자 디바이스(200)에 대해 가장 먼 근접도를 가지며, 그 결과 사용자 디바이스(200)는 초기에 스마트 스피커(210a)보다 스마트 온도 조절기(210d)에 대해 더 높은 근접도 점수(260)를 결정한다. 스마트 온도 조절기(210d)가 순위 목록(310) 내에서 가장 높은 근접도 점수(260)를 갖는 후보 어시스턴트-지원 디바이스(210)이기 때문에, 초기에 사용자(30)가 스마트 온도 조절기(210d)를 제어하려고 의도한다는 강력한 표시가 있다. 스마트 조명(210b) 및 스마트 텔레비전(210c)은 스마트 스피커(210a)보다 사용자 디바이스(200)에 더 가깝지만, 스마트 온도 조절기(210d)보다 사용자 디바이스(200)에 대해 더 먼 근접도들을 포함하고, 그 결과 사용자 디바이스(200)는 처음에 스마트 조명(210b) 및 스마트 텔레비전(210c)에 대해 스마트 온도 조절기(210d)보다는 낮지만 스마트 스피커(210a)보다는 높은 근접도 점수들(260)을 결정하게 된다. 따라서, 근접도 점수(260)의 크기는 사용자(30)가 대응하는 후보 어시스턴트-지원 디바이스(210)를 제어하려고 의도하는지 또는 의도하지 않는지에 대한 강력한 지표의 역할을 할 수 있다. 환경(32) 내의 어시스턴트-지원 디바이스들(210a-d)에 대해 결정된 근접도 점수들(260)만을 단독으로 사용하는 경우, 사용자 디바이스(200)는 (즉, 어시스턴트 애플리케이션(106)을 사용하여) 복수의 어시스턴트-지원 디바이스(210a-d) 중에서 가장 높은 근접도 점수(260)를 갖는 스마트 온도 조절기(210d)를 사용자(30)가 제어하려고 의도하는 타겟 어시스턴트-지원 디바이스(210)로서 식별할 수 있다.
추가적으로, 사용자 디바이스(200)는 (즉, 어시스턴트 애플리케이션(106)을 통해) 어시스턴트-지원 디바이스들(210) 중 하나 이상에 연관된 기저의 제안 신뢰도에 기초하여 근접도 점수들(260) 중 하나 이상을 바이어스할 수 있다. 예를 들어, 사용자(30)가 최근에 어시스턴트-지원 디바이스(210)와 상호작용한 경우, 사용자(30)가 어시스턴트-지원 디바이스(210)를 계속하여 제어하고자 한다는 높은 제안 신뢰도가 있을 수 있다. 이 예에서, 사용자 디바이스(200)는 대응하는 어시스턴트-지원 디바이스(210)에 연관된 근접도 점수(260)를 증가시킴으로써 근접도 점수(260)를 바이어스하기 위해 제안 신뢰도를 적용할 수 있다. 반대로, 사용자(30)가 임계 기간 동안 어시스턴트-지원 디바이스(210)와 상호작용하지 않은 경우, 사용자(30)가 어시스턴트-지원 디바이스(210)를 제어하고자 한다는 낮은 제안 신뢰도가 있을 수 있으며, 그에 의해 사용자 디바이스(200)로 하여금 대응하는 어시스턴트-지원 디바이스(210)에 연관된 근접도 점수(260)를 감소/하강/저하시킴으로써 그것을 바이어스하게 한다. 도시된 예에서, 사용자 디바이스(200)는 최근에 스마트 스피커(210a)로 하여금 음악 재생목록을 재생하도록 개별 액션(120)을 수행하게 하기 위해 사용자 디바이스(200)로부터 커맨드(80)를 발행하기 위해 GUI(400a)에서 "재생" 컨트롤(220)을 선택함으로써 도 3a 및 도 4a에서 스마트 스피커(210a)와 상호작용했으므로, 사용자 디바이스(200)는 사용자(30)가 스마트 스피커(210a)를 계속하여 제어하고자 할 수 있음을 나타내는 스마트 스피커(210a)에 연관된 높은 제안 신뢰도를 획득한다. 그 결과, 스마트 스피커(210a)가 사용자 디바이스(200)에 대해 가장 먼 근접도를 갖고, 방향성 정보(255)가 사용자 디바이스(200)가 스마트 스피커(210a)로부터 멀어지는 방향을 가리키고 있음을 나타내는 것에도 불구하고, 사용자 디바이스(200)는 스마트 스피커(210a)에 연관된 근접도 점수(260)를 증가시킴으로써 높은 제안 신뢰도를 적용할 수 있다. 여기서, 사용자 디바이스(200)는 (즉, 어시스턴트 애플리케이션(106)를 사용하여) 도 4c의 GUI(400c)에서 렌더링된 후보 어시스턴트-지원 디바이스들의 순위 목록(310)에서 스마트 스피커(210a) 및 개별 컨트롤 세트(220)를 가장 높게 유지한다. 다른 예들에서, 사용자(30)가 사용자 디바이스(200)에 대한 특정 어시스턴트-지원 디바이스(210)의 근접도 정보(250) 및 방향성 정보(255)와 무관하게 특정 어시스턴트-지원 디바이스(210)를 제어할 의도가 있음을 나타내는 높은 제안 신뢰도는, 어시스턴트 애플리케이션(106)이 특정 어시스턴트-지원 디바이스(210)가 순위 목록(310)에서 가장 높은 순위에 있도록 특정 어시스턴트-지원 디바이스(210)에 대해 결정된 근접도 점수(260)를 단순히 오버라이드하는 결과를 초래한다. 마찬가지로, 사용자(30)가 특정 어시스턴트-지원 디바이스들(210)을 제어하려고 의도하는 것에 대한 낮은 제안 신뢰도들은 단순히 어시스턴트 애플리케이션(106)으로 하여금 특정 어시스턴트-지원 디바이스들(210)의 연관된 근접도 점수들(260)을 오버라이드하게 하여, 그들이 순위 목록(310)에서 적어도 더 낮은 순위에 있게 하거나 GUI(400)에서 덜 두드러지게 디스플레이되도록 렌더링되게 할 수 있다. 사실, 낮은 제안 신뢰도들은 단순히 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)으로부터 어시스턴트-지원 디바이스(210)를 완전히 폐기하는 결과를 초래할 수 있다.
또한, 사용자 디바이스(200)는 근접도 점수들(260)이 최소 거리 임계값을 충족하는(예를 들어, 그보다 작은) 근접도 추정들을 나타낸다고 결정한 후에 임의의 어시스턴트-지원 디바이스(210)를 폐기할 수 있다. 여기서, 최소 거리 임계값은 어시스턴트-지원 디바이스(210)가 사용자 디바이스(200)에 충분히 가까워서 사용자(30)가 애플리케이션(106)을 사용하지 않고서 직접 어시스턴트-지원 디바이스(210)를 수동으로 제어할 것임을 나타내는 근접도 점수(260)를 갖는 임의의 어시스턴트-지원 디바이스(210)를 필터링하도록 구성된다. 도 3c에 도시된 예에서, 스마트 온도 조절기(210d)에 연관된 근접도 점수(260)는 최소 거리 임계값을 충족하는(예를 들어, 그보다 작은) 근접도 추정을 나타내며, 그에 의해 사용자 디바이스(200)는 도 4c의 GUI(400c)에서 렌더링된 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)으로부터 스마트 온도 조절기(210d)를 폐기하게 된다.
도 4c의 GUI(400c)는 사용자 디바이스(200)가 어시스턴트-지원 디바이스들(210) 각각에 대해 결정된 근접도 점수들(260)을 사용하여 생성하는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 디스플레이한다. 위에서 언급된 바와 같이, 사용자 디바이스(200)는 스마트 온도 조절기(210d)에 연관된 근접도 점수(260)가 최소 거리 임계값을 초과하지 못하는 근접도 추정을 나타낸다고 결정할 수 있고, 그에 의해 사용자 디바이스(200)는 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)으로부터 이 어시스턴트-지원 디바이스(210d)를 폐기하게 된다. 한편, 도 3a에서의 스마트 스피커(210a)와의 최근 상호작용은 스마트 스피커(210a)에 연관된 근접도 점수(260)를 증가시켜 스마트 스피커(210a)가 순위 목록(310)에서 가장 높은 순위를 갖는 결과를 초래할 수 있다. 따라서, 사용자 디바이스(200)는 계속하여 GUI(400c)에서 스마트 스피커(210a)를 표현하는 그래픽 요소(402) 및 개별 컨트롤 세트(220)를, 순위 목록(310) 내의 다른 어시스턴트-지원 디바이스들(210)을 표현하는 그래픽 요소들(402)보다 더 두드러지게(예를 들어, 순위 목록(310)의 상단에, 그리고 더 큰 글꼴로) 렌더링할 수 있다. GUI(400c)는 비제한적이며, 다른 예들에서, 사용자 디바이스(200)는 가장 높은 근접도 점수(260)에 연관된 스마트 스피커(210a)를 표현하는 그래픽 요소(402)를 중간과 같은 GUI(400c)의 다른 위치들에 렌더링할 수 있고/거나 그래픽 요소(402)를 다른 어시스턴트-지원 디바이스들(210b, 210c)을 표현하는 그래픽 요소들(402)과 상이하게 디스플레이할 수 있다. 이러한 디스플레이 포맷은 사용자(30)가 스마트 스피커(210a)에 연관된 개별 액션 세트(120)를 수행하기 위한 개별 컨트롤 세트(220)를 신속하게 찾는 것을 더 쉽게 만든다.
사용자 디바이스(200)는 또한 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310) 내의 다른 어시스턴트-지원 디바이스들(210b, 210c)을 표현하는 대응하는 그래픽 요소들(402)을 GUI(400c)에 디스플레이한다. 구체적으로, (예를 들어, 스마트 스피커(210a)에 연관된 근접도 점수(260)를 증가시키고 스마트 온도 조절기(210d)를 순위 목록(310)으로부터 폐기한 후) 스마트 텔레비전(210c)이 두 번째로 높은 근접도 점수(260)를 갖는 것으로 인해 스마트 텔레비전(210c)은 순위 목록(310)에서 두 번째에 있다. 스마트 조명(210b)이 세 번째로 높은 근접도 점수(260)를 갖는 것으로 인해 스마트 조명(210b)은 순위 목록(310)에서 세 번째에 있다. 도 4c의 예시적인 GUI(400c)에서, 스마트 텔레비전(210c)을 표현하는 그래픽 요소(402)는 스마트 텔레비전(210c)이 현재 켜져 있다는 것, 및 스마트 텔레비전(210c)을 끄거나 음소거하는 개별 액션들(120)을 수행하도록 스마트 텔레비전(210c)을 제어하기 위한 동일한 개별 컨트롤 세트(220)를 나타냄으로써, 도 4b의 GUI(400b)에서와 동일한 디바이스 상태 정보(215)를 제공한다.
도 5는 어시스턴트-지원 디바이스들을 제어하는 방법(500)에 대한 예시적인 동작 배열의 흐름도이다. 동작(510)에서, 방법(500)은 사용자 디바이스(200)의 데이터 프로세싱 하드웨어(202)에 의해, 사용자 디바이스(200)의 환경(32) 내의 복수의 어시스턴트-지원 디바이스(210) 각각에 대한 근접도 정보(250)를 획득하는 것을 포함한다. 적어도 하나의 어시스턴트-지원 디바이스(210)에 대한 근접도 정보(250)의 예들은 사용자 디바이스(200)가 대응하는 어시스턴트-지원 디바이스(210)에 대한 근접도 점수(260)를 결정하기 위해 사용할 수 있는 임의의 정보 또는 데이터를 포함하며, 이에 의해 근접도 점수(260)는 환경(32) 내에서의 사용자 디바이스(200)에 대한 대응하는 어시스턴트-지원 디바이스(210)의 근접도 추정을 나타낸다. 복수의 어시스턴트-지원 디바이스(210) 중의 각각의 어시스턴트-지원 디바이스(210)는 어시스턴트-지원 디바이스(210)에 연관된 개별 이용가능한 액션 세트(120)를 수행하기 위해 어시스턴트 애플리케이션(106)에 의해 제어가능하다. 예를 들어, 스마트 스피커(210a)에 대한 개별 이용가능한 액션 세트(120)는 재생목록의 이전 노래 트랙으로 되돌아가는 것, 음악 재생목록을 재생하는 것, 재생목록을 일시정지하는 것, 재생목록의 다음 노래 트랙으로 건너뛰는 것, 및 스마트 스피커(210a)의 음량 레벨을 조절하는 것 중 하나 이상을 포함할 수 있다.
동작(520)에서, 방법(500)은 복수의 어시스턴트-지원 디바이스(210) 중의 각각의 어시스턴트-지원 디바이스(210)에 대해, 데이터 프로세싱 하드웨어(202)에 의해, 대응하는 어시스턴트-지원 디바이스(210)에 대해 획득된 근접도 정보(250)에 기초하여 근접도 점수(260)를 결정하는 것을 포함한다. 근접도 점수(260)는 환경(32)에서 사용자 디바이스(200)에 대한 대응하는 어시스턴트-지원 디바이스(210)의 근접도 추정을 나타낸다. 근접도 추정은 대응하는 어시스턴트-지원 디바이스(210)가 사용자 디바이스(200)로부터 위치되는 거리를 나타낼 수 있고/거나 사용자 디바이스(200)의 위치에 대한 대응하는 어시스턴트-지원 디바이스(210)의 위치를 포함할 수 있다.
동작(530)에서, 방법(500)은 또한 데이터 프로세싱 하드웨어(202)에 의해, 복수의 어시스턴트-지원 디바이스(210)에 대해 결정된 복수의 근접도 점수(260)를 사용하여, 복수의 어시스턴트-지원 디바이스(210)로부터의 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 생성하는 것을 포함한다. 일부 예들에서, 방법(500)은 사용자 디바이스(200)에 대해 가장 가까운 근접도를 갖는 어시스턴트-지원 디바이스(210)로부터 사용자 디바이스(200)에 대해 가장 먼 근접도를 갖는 어시스턴트-지원 디바이스(210)까지 어시스턴트-지원 디바이스들(210)의 순서를 매기는 것에 의해 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 생성한다. 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)은 복수의 어시스턴트-지원 디바이스(210)로부터 결정된 복수의 근접도 점수(260) 중에서 N-최고 근접도 점수들(260)을 갖는 어시스턴트-지원 디바이스들(210)을 포함할 수 있다. 추가적으로, 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)을 생성하는 것은 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310)으로부터 최대 거리 임계값을 충족하는(즉, 사용자 디바이스(200)로부터 지나치게 멀리 떨어져 있는) 및/또는 최소 거리 임계값을 충족하는(즉, 사용자 디바이스(200)에 지나치게 가까이 있는) 근접도 추정들을 나타내는 근접도 점수들(260)을 포함하는 임의의 어시스턴트-지원 디바이스들(210)을 폐기하는 것을 더 포함할 수 있다.
동작(540)에서, 방법(500)은 또한 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310) 내의 하나 이상의 대응하는 어시스턴트-지원 디바이스(210) 각각에 대해, 데이터 프로세싱 하드웨어(202)에 의해, 데이터 프로세싱 하드웨어(202)와 통신하는 사용자 디바이스(200)의 스크린 상에 디스플레이되는 그래픽 사용자 인터페이스(GUI)(400) 내에, 대응하는 어시스턴트-지원 디바이스(210)에 연관된 개별 액션 세트(120)를 수행하기 위한 개별 컨트롤 세트(220)를 디스플레이하는 것을 포함한다. 각각의 후보 어시스턴트-지원 디바이스(210)에 대해, 사용자 디바이스(200)는 GUI(400)에서 후보 어시스턴트-지원 디바이스(210)를 표현하는 대응하는 그래픽 요소(402), 그것의 대응 컨트롤들(220), 및/또는 디바이스 상태 정보(215)를 렌더링할 수 있다. 또한, GUI(400)에서, 대응하는 어시스턴트-지원 디바이스(210)에 연관된 개별 액션 세트(120)를 수행하기 위한 개별 컨트롤 세트(220)를 디스플레이하는 방법(500)은 어시스턴트-지원 디바이스들(210) 중 적어도 하나에 연관된 디바이스 상태 정보(215)를 수신하는 것에 응답하여, 후보 어시스턴트-지원 디바이스들(210)의 순위 목록(310) 내의 후보 어시스턴트-지원 디바이스들(210)의 순서를 다시 매기는 것을 포함할 수 있다. 추가적으로 또는 대안적으로, 개별 액션 세트(120)를 수행하기 위한 개별 컨트롤 세트(220)를 디스플레이하기 위한 방법(500)은 하나의 어시스턴트-지원 디바이스(210)에 대한 개별 컨트롤 세트(220)를, 다른 어시스턴트-지원 디바이스들(210)에 대해 GUI(400) 내에 디스플레이되는 개별 컨트롤 세트(220)와 상이하게 디스플레이하는 것을 포함할 수 있다. 예를 들어, 가장 높은 근접도 점수(260)를 갖고 순위 목록(310)에서 가장 높게 평가된 어시스턴트 디바이스(210)는 더 낮은 근접도 점수들(260)을 갖는 다른 어시스턴트-지원 디바이스들(210)보다 GUI(400)에서 더 두드러지게 디스플레이될 수 있다.
소프트웨어 애플리케이션(즉, 소프트웨어 리소스)은 컴퓨팅 디바이스로 하여금 작업을 수행하게 하는 컴퓨터 소프트웨어를 지칭할 수 있다. 일부 예들에서, 소프트웨어 애플리케이션은 "애플리케이션", "앱" 또는 "프로그램"으로 지칭될 수 있다. 예시적인 애플리케이션들은 시스템 진단 애플리케이션들, 시스템 관리 애플리케이션들, 시스템 유지관리 애플리케이션들, 워드 프로세싱 애플리케이션들, 스프레드시트 애플리케이션들, 메시징 애플리케이션들, 미디어 스트리밍 애플리케이션들, 소셜 네트워킹 애플리케이션들, 및 게임 애플리케이션들을 포함하지만 이에 제한되지 않는다.
비일시적 메모리는 컴퓨팅 디바이스에 의한 사용을 위해 일시적 또는 영구적으로 프로그램들(예를 들어, 명령어들의 시퀀스들) 또는 데이터(예를 들어, 프로그램 상태 정보)를 저장하는 데 사용되는 물리적 디바이스들일 수 있다. 비일시적 메모리는 휘발성 및/또는 비휘발성 어드레싱가능 반도체 메모리일 수 있다. 비휘발성 메모리의 예들은 플래시 메모리 및 판독 전용 메모리(ROM)/프로그래밍가능한 판독 전용 메모리(PROM)/소거가능하고 프로그래밍가능한 판독 전용 메모리(EPROM)/전기적으로 소거가능하고 프로그래밍가능한 판독 전용 메모리(EEPROM)(예를 들어, 전형적으로 부팅 프로그램들과 같은 펌웨어를 위해 사용됨)를 포함하지만 이에 제한되지 않는다. 휘발성 메모리의 예들은 랜덤 액세스 메모리(RAM), 동적 랜덤 액세스 메모리(DRAM), 정적 랜덤 액세스 메모리(SRAM), 상변화 메모리(PCM)는 물론, 디스크들 또는 테이프들을 포함하지만 이에 제한되지 않는다.
도 6은 본 문서에 설명된 시스템들 및 방법들을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 디바이스(600)의 개략도이다. 컴퓨팅 디바이스(600)는 랩탑들, 데스크탑들, 워크스테이션들, 개인용 정보 단말기들(personal digital assistants), 서버들, 블레이드 서버들, 메인프레임들, 및 다른 적절한 컴퓨터들과 같은 다양한 형태의 디지털 컴퓨터를 표현하도록 의도된다. 여기에 보여진 컴포넌트들, 그들의 연결들 및 관계들, 및 그들의 기능들은 예시로만 의도될 것일 뿐이며, 본 문서에서 설명 및/또는 청구된 발명들의 구현들을 제한하도록 의도되지 않는다.
컴퓨팅 디바이스(600)는 프로세서(610), 메모리(620), 저장 디바이스(630), 메모리(620) 및 고속 확장 포트들(650)에 연결되는 고속 인터페이스/컨트롤러(640), 및 저속 버스(670) 및 저장 디바이스(630)에 연결되는 저속 인터페이스/컨트롤러(660)를 포함한다. 컴포넌트들(610, 620, 630, 640, 650 및 660) 각각은 다양한 버스들을 사용하여 상호 연결되며, 공통의 마더보드 상에 또는 적절한 다른 방식으로 장착될 수 있다. 프로세서(610)는 그래픽 사용자 인터페이스(GUI)에 대한 그래픽 정보를 고속 인터페이스(640)에 결합된 디스플레이(680)와 같은 외부 입력/출력 디바이스에 디스플레이하기 위해, 메모리(620) 내에 또는 저장 디바이스(630) 상에 저장된 명령어들을 포함하여, 컴퓨팅 디바이스(600) 내에서의 실행을 위해 명령어들을 프로세싱할 수 있다. 다른 구현들에서, 복수의 프로세서 및/또는 복수의 버스는 복수의 메모리 및 메모리 유형과 함께 적절하게 사용될 수 있다. 또한, 복수의 컴퓨팅 디바이스(600)가 연결될 수 있으며, 각각의 디바이스는 (예를 들어, 서버 뱅크, 블레이드 서버 그룹, 또는 멀티 프로세서 시스템으로서) 필요한 동작들의 부분들을 제공한다.
메모리(620)는 컴퓨팅 디바이스(600) 내에 비일시적으로 정보를 저장한다. 메모리(620)는 컴퓨터 판독가능 매체, 휘발성 메모리 유닛(들), 또는 비휘발성 메모리 유닛(들)일 수 있다. 비일시적 메모리(620)는 컴퓨팅 디바이스(600)에 의한 사용을 위해 일시적 또는 영구적으로 프로그램들(예를 들어, 명령어들의 시퀀스들) 또는 데이터(예를 들어, 프로그램 상태 정보)를 저장하는 데 사용되는 물리적 디바이스들일 수 있다. 비휘발성 메모리의 예들은 플래시 메모리 및 판독 전용 메모리(ROM)/프로그래밍가능한 판독 전용 메모리(PROM)/소거가능하고 프로그래밍가능한 판독 전용 메모리(EPROM)/전기적으로 소거가능하고 프로그래밍가능한 판독 전용 메모리(EEPROM)(예를 들어, 전형적으로 부팅 프로그램들과 같은 펌웨어를 위해 사용됨)를 포함하지만 이에 제한되지 않는다. 휘발성 메모리의 예들은 랜덤 액세스 메모리(RAM), 동적 랜덤 액세스 메모리(DRAM), 정적 랜덤 액세스 메모리(SRAM), 상변화 메모리(PCM)는 물론, 디스크들 또는 테이프들을 포함하지만 이에 제한되지 않는다.
저장 디바이스(630)는 컴퓨팅 디바이스(600)를 위한 대용량 저장소를 제공할 수 있다. 일부 구현들에서, 저장 디바이스(630)는 컴퓨터 판독가능 매체이다. 여러 상이한 구현들에서, 저장 디바이스(630)는 플로피 디스크 디바이스, 하드 디스크 디바이스, 광학 디스크 디바이스, 또는 테이프 디바이스, 플래시 메모리 또는 다른 유사한 고체 상태 메모리 디바이스, 또는 저장 영역 네트워크 또는 다른 구성들 내의 디바이스들을 포함하는 디바이스 어레이일 수 있다. 추가 구현들에서, 컴퓨터 프로그램 제품은 정보 캐리어 내에 유형으로(tangibly) 구현된다. 컴퓨터 프로그램 제품들은 실행될 때 위에서 설명된 것들과 같은 하나 이상의 방법을 수행하는 명령어들을 포함한다. 정보 캐리어는 메모리(620), 저장 디바이스(630), 또는 프로세서 상의 메모리(610)와 같은 컴퓨터 또는 기계 판독가능 매체이다.
고속 컨트롤러(640)는 컴퓨팅 디바이스(600)에 대한 대역폭 집중 동작들을 관리하는 반면, 저속 컨트롤러(660)는 더 낮은 대역폭 집중 동작들을 관리한다. 이러한 듀티 할당은 예시일 뿐이다. 일부 구현들에서, 고속 컨트롤러(640)는 메모리(620), 디스플레이(680)(예를 들어, 그래픽 프로세서 또는 가속기를 통해), 및 다양한 확장 카드들(도시되지 않음)을 수용할 수 있는 고속 확장 포트들(650)에 결합된다. 일부 구현들에서, 저속 컨트롤러(660)는 저장 디바이스(630) 및 저속 확장 포트(690)에 결합된다. 다양한 통신 포트들(예를 들어, USB, 블루투스, 이더넷, 무선 이더넷)을 포함할 수 있는 저속 확장 포트(690)는 키보드, 포인팅 디바이스, 스캐너, 또는 예를 들어 네트워크 어댑터를 통하는 스위치 또는 라우터와 같은 네트워킹 디바이스와 같은 하나 이상의 입력/출력 디바이스에 결합될 수 있다.
컴퓨팅 디바이스(600)는 도면에 도시된 바와 같이 다수의 상이한 형태로 구현될 수 있다. 예를 들어, 그것은 표준 서버(600a)로서 또는 그러한 서버들(600a)의 그룹에서 여러 번, 랩탑 컴퓨터(600b)로서, 또는 랙 서버 시스템(600c)의 일부로서 구현될 수 있다.
본 명세서에 설명된 시스템들 및 기술들의 다양한 구현들은 디지털 전자 및/또는 광학 회로부, 집적 회로부, 특별히 설계된 ASIC들(주문형 집적 회로들), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합들로 실현될 수 있다. 이러한 다양한 구현들은 저장 시스템, 적어도 하나의 입력 디바이스 및 적어도 하나의 출력 디바이스로부터 데이터 및 명령어들을 수신하고 그들에 데이터 및 명령어들을 전송하도록 결합되는, 특수 목적용 또는 범용일 수 있는 적어도 하나의 프로그래밍가능한 프로세서를 포함하는 프로그래밍가능한 시스템에서 실행가능 및/또는 해석가능한 하나 이상의 컴퓨터 프로그램에서의 구현을 포함할 수 있다.
이러한 컴퓨터 프로그램들(프로그램들, 소프트웨어, 소프트웨어 애플리케이션들 또는 코드로도 알려짐)은 프로그래밍가능한 프로세서를 위한 기계 명령어들을 포함하고, 하이레벨의 절차적 및/또는 객체 지향 프로그래밍 언어 및/또는 어셈블리/기계 언어로 구현될 수 있다. 본 명세서에서 사용될 때, "기계 판독가능 매체" 및 "컴퓨터 판독가능 매체"라는 용어는 기계 명령어들을 기계 판독가능 신호로서 수신하는 기계 판독가능 매체를 포함하여, 프로그래밍가능한 프로세서에 기계 명령어들 및/또는 데이터를 제공하는 데 사용되는 임의의 컴퓨터 프로그램 제품, 비일시적 컴퓨터 판독가능 매체, 장치 및/또는 디바이스(예를 들어, 자기 디스크들, 광 디스크들, 메모리, 프로그래밍가능한 로직 디바이스(PLD))를 지칭한다. "기계 판독가능 신호"라는 용어는 프로그래밍가능한 프로세서에 기계 명령어들 및/또는 데이터를 제공하는 데 사용되는 임의의 신호를 지칭한다.
본 명세서에 설명된 프로세스들 및 로직 흐름들은 입력 데이터에 대해 작용하고 출력을 생성함으로써 기능들을 수행하기 위해 하나 이상의 컴퓨터 프로그램을 실행하는, 데이터 프로세싱 하드웨어라고도 지칭되는 하나 이상의 프로그래밍가능한 프로세서에 의해 수행될 수 있다. 프로세스들 및 로직 흐름들은 또한 특수 목적 로직 회로부, 예를 들어 FPGA(필드 프로그래밍가능 게이트 어레이(field programmable gate array)) 또는 ASIC(주문형 집적 회로(application specific integrated circuit))에 의해 수행될 수 있다. 컴퓨터 프로그램의 실행에 적합한 프로세서들은 예를 들어 범용 및 특수 목적 마이크로프로세서 둘 다, 및 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 둘 다로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 필수요소들은 명령어들을 수행하기 위한 프로세서, 및 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 또한 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스, 예를 들어 자기, 광자기 디스크 또는 광 디스크를 포함하거나, 그들로부터 데이터를 수신하는 것, 또는 그들에게 데이터를 전송하는 것, 또는 둘 다를 위해 그들에 동작가능하게 결합될 것이다. 그러나, 컴퓨터가 그러한 디바이스들을 반드시 가질 필요는 없다. 컴퓨터 프로그램 명령어들 및 데이터를 저장하기에 적합한 컴퓨터 판독가능 매체는 예시로서, 반도체 메모리 디바이스들, 예를 들어 EPROM, EEPROM, 및 플래시 메모리 디바이스들; 자기 디스크들, 예를 들어 내부 하드 디스크들 또는 이동식 디스크들; 광자기 디스크들; 및 CD ROM 및 DVD-ROM 디스크들을 포함하여, 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스를 포함한다. 프로세서 및 메모리는 특수 목적 로직 회로부에 의해 보완되거나 그에 통합될 수 있다.
사용자와의 상호작용을 제공하기 위해, 본 개시내용의 하나 이상의 양태는 사용자에게 정보를 디스플레이하기 위한 디스플레이 디바이스, 예를 들어 CRT(음극선관), LCD(액정 디스플레이) 모니터 또는 터치 스크린, 및 임의적으로, 사용자가 그에 의해 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 디바이스, 예를 들어 마우스 또는 트랙볼을 갖는 컴퓨터 상에서 구현될 수 있다. 다른 종류의 디바이스들도 사용자와의 상호작용을 제공하기 위해 사용될 수 있고; 예를 들어, 사용자에게 제공되는 피드백은 임의의 형태의 감각 피드백, 예를 들어 시각 피드백, 청각 피드백, 또는 촉각 피드백일 수 있으며; 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다. 추가로, 컴퓨터는 사용자에 의해 사용되는 디바이스에 문서들을 송신하고 그로부터 문서들을 수신함으로써, 예를 들어 사용자의 클라이언트 디바이스 상의 웹 브라우저로부터 수신된 요청들에 응답하여 웹 브라우저에 웹 페이지들을 송신함으로써, 사용자와 상호작용할 수 있다.
많은 구현이 설명되었다. 그럼에도 불구하고, 본 개시내용의 사상 및 범위를 벗어나지 않고서 다양한 수정들이 이루어질 수 있음이 이해될 것이다. 따라서, 다른 구현들은 이하의 청구항들의 범위 내에 있다.

Claims (30)

  1. 방법으로서,
    사용자 디바이스의 데이터 프로세싱 하드웨어에 의해, 상기 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스(assistant-enabled device) 각각에 대한 근접도 정보(proximity information)를 획득하는 단계 - 상기 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스는 상기 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위해 어시스턴트 애플리케이션에 의해 제어가능함 -;
    상기 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스에 대해, 상기 데이터 프로세싱 하드웨어에 의해, 대응하는 어시스턴트-지원 디바이스에 대해 획득된 상기 근접도 정보에 기초하여 근접도 점수를 결정하는 단계 - 상기 근접도 점수는 상기 환경 내에서의 상기 사용자 디바이스에 대한 상기 대응하는 어시스턴트-지원 디바이스의 근접도 추정을 나타냄 -;
    상기 데이터 프로세싱 하드웨어에 의해, 상기 복수의 어시스턴트-지원 디바이스에 대해 결정된 복수의 근접도 점수를 사용하여, 상기 복수의 어시스턴트-지원 디바이스로부터의 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 단계; 및
    상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 하나 이상의 대응하는 어시스턴트-지원 디바이스 각각에 대해, 상기 데이터 프로세싱 하드웨어에 의해, 상기 데이터 프로세싱 하드웨어와 통신하는 스크린 상에 디스플레이되는 그래픽 사용자 인터페이스(graphical user interface)(GUI) 내에, 상기 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위한 개별 컨트롤 세트 및 상기 후보 어시스턴트-지원 디바이스를 디스플레이하는 단계
    를 포함하고, 상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 어시스턴트-지원 디바이스들 중 최고 순위의 하나에 대해 상기 GUI 내에 디스플레이되는 상기 개별 컨트롤 세트는 상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 어시스턴트-지원 디바이스들 중의 적어도 다른 하나에 대해 상기 GUI 내에 디스플레이되는 상기 개별 컨트롤 세트보다 더 두드러지게 디스플레이되는, 방법.
  2. 제1항에 있어서,
    상기 데이터 프로세싱 하드웨어에서, 상기 사용자 디바이스의 사용자로부터, 상기 데이터 프로세싱 하드웨어 상에서의 실행을 위해 상기 어시스턴트 애플리케이션을 시작하도록 요청하는 사용자 요청을 수신하는 단계
    를 더 포함하고, 상기 복수의 어시스턴트-지원 디바이스 각각에 대한 근접도 정보를 획득하는 단계는 상기 데이터 프로세싱 하드웨어 상에서의 상기 어시스턴트 애플리케이션의 실행 동안 발생하는, 방법.
  3. 제2항에 있어서, 상기 사용자 요청을 수신하는 단계는:
    상기 스크린 상에 디스플레이된 상기 GUI 내에서, 상기 어시스턴트 애플리케이션을 표현하는 그래픽 요소의 선택을 나타내는 사용자 입력 표시를 수신하는 단계;
    상기 사용자로부터 음성 입력을 수신하는 단계 - 상기 음성 입력은 상기 데이터 프로세싱 하드웨어 상에서의 실행을 위해 상기 어시스턴트 애플리케이션을 시작하기 위한 호출 명령(invocation command)을 포함함 -; 또는
    상기 데이터 프로세싱 하드웨어 상에서의 실행을 위해 상기 어시스턴트 애플리케이션을 시작하도록 구성된 상기 사용자 디바이스의 미리 정의된 움직임/자세를 검출하는 단계
    중 하나를 포함하는, 방법.
  4. 제1항에 있어서, 상기 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 각각에 대한 근접도 정보를 획득하는 단계는:
    상기 사용자 디바이스의 센서에서, 상기 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 전송된 무선 통신 신호를 수신하는 단계; 및
    상기 사용자 디바이스의 센서에서 수신된 상기 무선 통신 신호의 신호 강도에 기초하여 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 상기 근접도 정보를 결정하는 단계
    를 포함하는, 방법.
  5. 제1항에 있어서,
    상기 사용자 디바이스의 센서 어레이 내의 각각의 센서에서, 상기 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 전송된 무선 통신 신호를 수신하는 것; 및
    상기 사용자 디바이스의 상기 센서 어레이 내의 다른 센서들에서 수신된 상기 무선 통신 신호의 개별 신호 강도들에 대한, 상기 사용자 디바이스의 상기 센서 어레이 내의 각각의 센서에서 수신된 상기 무선 통신 신호의 개별 신호 강도에 기초하여, 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 방향성 정보를 결정하는 것
    에 의해, 상기 데이터 프로세싱 하드웨어에 의해, 상기 사용자 디바이스의 상기 환경 내의 상기 복수의 어시스턴트-지원 디바이스 중 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 방향성 정보를 획득하는 단계
    를 더 포함하고, 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 점수를 결정하는 것은 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 상기 방향성 정보에 추가로 기초하는, 방법.
  6. 제1항에 있어서, 상기 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 각각에 대한 근접도 정보를 획득하는 단계는:
    상기 사용자 디바이스에서, 상기 복수의 어시스턴트-지원 디바이스 중 적어도 하나의 어시스턴트-지원 디바이스로부터 출력되는 가청 또는 비가청 신호를 수신하는 단계; 및
    상기 적어도 하나의 어시스턴트-지원 디바이스로부터 출력되는 상기 가청 또는 비가청 신호의 에너지 및 주파수 중 적어도 하나에 기초하여 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 상기 근접도 정보를 결정하는 단계
    를 포함하는, 방법.
  7. 제1항에 있어서,
    상기 데이터 프로세싱 하드웨어에서, 상기 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스로부터, 상기 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수신하는 단계; 및
    상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 각각의 대응하는 어시스턴트-지원 디바이스에 대해, 상기 데이터 프로세싱 하드웨어에 의해, 상기 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위한 개별 컨트롤 세트를 결정하는 단계
    를 더 포함하는, 방법.
  8. 제7항에 있어서, 상기 복수의 어시스턴트-지원 디바이스 중 적어도 하나의 어시스턴트-지원 디바이스로부터 수신된 개별 이용가능한 액션 세트 내의 적어도 하나의 이용가능한 액션은 상기 대응하는 어시스턴트-지원 디바이스가 현재 컨텍스트에 기초하여 수행하기 위한 제안된 액션을 포함하는, 방법.
  9. 제7항에 있어서,
    상기 데이터 프로세싱 하드웨어에서, 상기 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 상기 대응하는 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 수신하는 단계
    를 더 포함하고, 상기 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위한 개별 컨트롤 세트를 결정하는 단계는 상기 대응하는 어시스턴트-지원 디바이스에 연관된 상기 디바이스 상태 정보에 추가로 기초하는, 방법.
  10. 제1항에 있어서, 상기 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 단계는 상기 사용자 디바이스에 대해 가장 가까운 근접도를 갖는 어시스턴트-지원 디바이스로부터 상기 사용자 디바이스에 대해 가장 먼 근접도를 갖는 어시스턴트-지원 디바이스까지 상기 어시스턴트-지원 디바이스들의 순서를 매기는 단계를 포함하는, 방법.
  11. 제1항에 있어서, 상기 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 단계는 상기 후보 어시스턴트-지원 디바이스들의 순위 목록으로부터 최대 거리 임계값을 충족하는 근접도 추정들을 나타내는 근접도 점수들을 포함하는 임의의 어시스턴트-지원 디바이스들을 폐기하는 단계를 포함하는, 방법.
  12. 제1항에 있어서, 상기 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 단계는 상기 후보 어시스턴트-지원 디바이스들의 순위 목록으로부터 최소 거리 임계값을 충족하는 근접도 추정들을 나타내는 근접도 점수들을 포함하는 임의의 어시스턴트-지원 디바이스들을 폐기하는 단계를 포함하는, 방법.
  13. 제1항에 있어서,
    상기 데이터 프로세싱 하드웨어에서, 상기 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 상기 적어도 하나의 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 수신하는 단계; 및
    상기 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성한 후, 상기 데이터 프로세싱 하드웨어에 의해, 상기 적어도 하나의 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 사용하여, 상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 상기 후보 어시스턴트-지원 디바이스들의 순서를 다시 매기는 단계
    를 더 포함하고, 상기 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위한 개별 컨트롤 세트 및 상기 후보 어시스턴트-지원 디바이스를 디스플레이하는 단계는 상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 상기 후보 어시스턴트-지원 디바이스들의 순서를 다시 매기는 단계에 기초하는, 방법.
  14. 제1항에 있어서, 상기 복수의 어시스턴트-지원 디바이스로부터의 상기 후보 어시스턴트-지원 디바이스들의 순위 목록은 상기 복수의 어시스턴트-지원 디바이스에 대해 결정된 상기 복수의 근접도 점수 중에서 N-최고 근접도 점수들을 갖는, 상기 복수의 어시스턴트-지원 디바이스로부터 선택된 어시스턴트-지원 디바이스들을 포함하는, 방법.
  15. 사용자 디바이스로서,
    데이터 프로세싱 하드웨어; 및
    상기 데이터 프로세싱 하드웨어와 통신하고, 명령어들을 저장하는 메모리 하드웨어
    를 포함하고, 상기 명령어들은 상기 데이터 프로세싱 하드웨어 상에서 실행될 때 상기 데이터 프로세싱 하드웨어로 하여금:
    상기 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 각각에 대한 근접도 정보를 획득하는 동작 - 상기 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스는 상기 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위해 어시스턴트 애플리케이션에 의해 제어가능함 -;
    상기 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스에 대해, 대응하는 어시스턴트-지원 디바이스에 대해 획득된 상기 근접도 정보에 기초하여 근접도 점수를 결정하는 동작 - 상기 근접도 점수는 상기 환경 내에서의 상기 사용자 디바이스에 대한 상기 대응하는 어시스턴트-지원 디바이스의 근접도 추정을 나타냄 -;
    상기 복수의 어시스턴트-지원 디바이스에 대해 결정된 복수의 근접도 점수를 사용하여, 상기 복수의 어시스턴트-지원 디바이스로부터의 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 동작; 및
    상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 하나 이상의 대응하는 어시스턴트-지원 디바이스 각각에 대해, 상기 데이터 프로세싱 하드웨어와 통신하는 스크린 상에 디스플레이되는 그래픽 사용자 인터페이스(GUI) 내에, 상기 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위한 개별 컨트롤 세트 및 상기 후보 어시스턴트-지원 디바이스를 디스플레이하는 동작
    을 포함하는 동작들을 수행하게 하고, 상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 어시스턴트-지원 디바이스들 중 최고 순위의 하나에 대해 상기 GUI 내에 디스플레이되는 상기 개별 컨트롤 세트는 상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 어시스턴트-지원 디바이스들 중의 적어도 다른 하나에 대해 상기 GUI 내에 디스플레이되는 상기 개별 컨트롤 세트보다 더 두드러지게 디스플레이되는, 사용자 디바이스.
  16. 제15항에 있어서, 상기 동작들은:
    상기 사용자 디바이스의 사용자로부터, 상기 어시스턴트 애플리케이션을 시작하도록 요청하는 사용자 요청을 수신하는 동작
    을 더 포함하고, 상기 복수의 어시스턴트-지원 디바이스 각각에 대한 근접도 정보를 획득하는 동작은 상기 어시스턴트 애플리케이션의 실행 동안 발생하는, 사용자 디바이스.
  17. 제16항에 있어서, 상기 사용자 요청을 수신하는 동작은:
    상기 스크린 상에 디스플레이된 상기 GUI 내에서, 상기 어시스턴트 애플리케이션을 표현하는 그래픽 요소의 선택을 나타내는 사용자 입력 표시를 수신하는 동작;
    상기 사용자로부터 음성 입력을 수신하는 동작 - 상기 음성 입력은 상기 어시스턴트 애플리케이션을 시작하기 위한 호출 커맨드를 포함함 -; 또는
    상기 어시스턴트 애플리케이션을 시작하도록 구성된 상기 사용자 디바이스의 미리 정의된 움직임/자세를 검출하는 동작
    중 하나를 포함하는, 사용자 디바이스.
  18. 제15항에 있어서, 상기 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 각각에 대한 근접도 정보를 획득하는 동작은:
    상기 사용자 디바이스의 센서에서, 상기 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 전송된 무선 통신 신호를 수신하는 동작; 및
    상기 사용자 디바이스의 센서에서 수신된 상기 무선 통신 신호의 신호 강도에 기초하여 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 상기 근접도 정보를 결정하는 동작
    을 포함하는, 사용자 디바이스.
  19. 제15항에 있어서, 상기 동작들은:
    상기 사용자 디바이스의 센서 어레이 내의 각각의 센서에서, 상기 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 전송된 무선 통신 신호를 수신하는 것; 및
    상기 사용자 디바이스의 상기 센서 어레이 내의 다른 센서들에서 수신된 상기 무선 통신 신호의 개별 신호 강도들에 대한, 상기 사용자 디바이스의 상기 센서 어레이 내의 각각의 센서에서 수신된 상기 무선 통신 신호의 개별 신호 강도에 기초하여, 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 방향성 정보를 결정하는 것
    에 의해, 상기 사용자 디바이스의 상기 환경 내의 상기 복수의 어시스턴트-지원 디바이스 중 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 방향성 정보를 획득하는 동작
    을 더 포함하고, 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 근접도 점수를 결정하는 것은 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 상기 방향성 정보에 추가로 기초하는, 사용자 디바이스.
  20. 제15항에 있어서, 상기 사용자 디바이스의 환경 내의 복수의 어시스턴트-지원 디바이스 각각에 대한 근접도 정보를 획득하는 동작은:
    상기 복수의 어시스턴트-지원 디바이스 중 적어도 하나의 어시스턴트-지원 디바이스로부터 출력되는 가청 또는 비가청 신호를 수신하는 동작; 및
    상기 적어도 하나의 어시스턴트-지원 디바이스로부터 출력되는 상기 가청 또는 비가청 신호의 에너지 및 주파수 중 적어도 하나에 기초하여 상기 적어도 하나의 어시스턴트-지원 디바이스에 대한 상기 근접도 정보를 결정하는 동작
    을 포함하는, 사용자 디바이스.
  21. 제15항에 있어서, 상기 동작들은:
    상기 복수의 어시스턴트-지원 디바이스 중의 각각의 어시스턴트-지원 디바이스로부터, 상기 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수신하는 동작; 및
    상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 각각의 대응하는 어시스턴트-지원 디바이스에 대해, 상기 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위한 개별 컨트롤 세트를 결정하는 동작
    을 더 포함하는, 사용자 디바이스.
  22. 제21항에 있어서, 상기 복수의 어시스턴트-지원 디바이스 중 적어도 하나의 어시스턴트-지원 디바이스로부터 수신된 개별 이용가능한 액션 세트 내의 적어도 하나의 이용가능한 액션은 상기 대응하는 어시스턴트-지원 디바이스가 현재 컨텍스트에 기초하여 수행하기 위한 제안된 액션을 포함하는, 사용자 디바이스.
  23. 제21항에 있어서, 상기 동작들은:
    상기 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 상기 대응하는 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 수신하는 동작
    을 더 포함하고, 상기 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위한 개별 컨트롤 세트를 결정하는 동작은 상기 대응하는 어시스턴트-지원 디바이스에 연관된 상기 디바이스 상태 정보에 추가로 기초하는, 사용자 디바이스.
  24. 제15항에 있어서, 상기 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 동작은 상기 사용자 디바이스에 대해 가장 가까운 근접도를 갖는 어시스턴트-지원 디바이스로부터 상기 사용자 디바이스에 대해 가장 먼 근접도를 갖는 어시스턴트-지원 디바이스까지 상기 어시스턴트-지원 디바이스들의 순서를 매기는 동작을 포함하는, 사용자 디바이스.
  25. 제15항에 있어서, 상기 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 동작은 상기 후보 어시스턴트-지원 디바이스들의 순위 목록으로부터 최대 거리 임계값을 충족하는 근접도 추정들을 나타내는 근접도 점수들을 포함하는 임의의 어시스턴트-지원 디바이스들을 폐기하는 동작을 포함하는, 사용자 디바이스.
  26. 제15항에 있어서, 상기 복수의 어시스턴트-지원 디바이스로부터 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성하는 동작은 상기 후보 어시스턴트-지원 디바이스들의 순위 목록으로부터 최소 거리 임계값을 충족하는 근접도 추정들을 나타내는 근접도 점수들을 포함하는 임의의 어시스턴트-지원 디바이스들을 폐기하는 동작을 포함하는, 사용자 디바이스.
  27. 제15항에 있어서, 상기 동작들은:
    상기 복수의 어시스턴트-지원 디바이스 중의 적어도 하나의 어시스턴트-지원 디바이스로부터 상기 적어도 하나의 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 수신하는 동작; 및
    상기 후보 어시스턴트-지원 디바이스들의 순위 목록을 생성한 후, 상기 적어도 하나의 어시스턴트-지원 디바이스에 연관된 디바이스 상태 정보를 사용하여, 상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 상기 후보 어시스턴트-지원 디바이스들의 순서를 다시 매기는 동작
    을 더 포함하고, 상기 대응하는 어시스턴트-지원 디바이스에 연관된 개별 이용가능한 액션 세트를 수행하기 위한 개별 컨트롤 세트 및 상기 후보 어시스턴트-지원 디바이스를 디스플레이하는 동작은 상기 후보 어시스턴트-지원 디바이스들의 순위 목록 내의 상기 후보 어시스턴트-지원 디바이스들의 순서를 다시 매기는 동작에 기초하는, 사용자 디바이스.
  28. 제15항에 있어서, 상기 복수의 어시스턴트-지원 디바이스로부터의 상기 후보 어시스턴트-지원 디바이스들의 순위 목록은 상기 복수의 어시스턴트-지원 디바이스에 대해 결정된 상기 복수의 근접도 점수 중에서 N-최고 근접도 점수들을 갖는, 상기 복수의 어시스턴트-지원 디바이스로부터 선택된 어시스턴트-지원 디바이스들을 포함하는, 사용자 디바이스.
  29. 삭제
  30. 삭제
KR1020237020285A 2020-11-18 2021-11-16 제2 디바이스에 대한 근접도-기반 컨트롤들 KR102662777B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020247014236A KR20240063190A (ko) 2020-11-18 2021-11-16 제2 디바이스에 대한 근접도-기반 컨트롤들

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/951,967 US11402984B2 (en) 2020-11-18 2020-11-18 Proximity-based controls on a second device
US16/951,967 2020-11-18
PCT/US2021/059586 WO2022108953A1 (en) 2020-11-18 2021-11-16 Proximity-based controls on a second device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020247014236A Division KR20240063190A (ko) 2020-11-18 2021-11-16 제2 디바이스에 대한 근접도-기반 컨트롤들

Publications (2)

Publication Number Publication Date
KR20230104288A KR20230104288A (ko) 2023-07-07
KR102662777B1 true KR102662777B1 (ko) 2024-05-03

Family

ID=78845106

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020237020285A KR102662777B1 (ko) 2020-11-18 2021-11-16 제2 디바이스에 대한 근접도-기반 컨트롤들
KR1020247014236A KR20240063190A (ko) 2020-11-18 2021-11-16 제2 디바이스에 대한 근접도-기반 컨트롤들

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020247014236A KR20240063190A (ko) 2020-11-18 2021-11-16 제2 디바이스에 대한 근접도-기반 컨트롤들

Country Status (6)

Country Link
US (3) US11402984B2 (ko)
EP (1) EP4229504A1 (ko)
JP (1) JP2023552704A (ko)
KR (2) KR102662777B1 (ko)
CN (1) CN116635821A (ko)
WO (1) WO2022108953A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4047599A4 (en) * 2020-12-23 2022-12-21 Samsung Electronics Co., Ltd. METHOD FOR PROVIDING VOICE-BASED CONTENT AND ASSOCIATED ELECTRONIC DEVICE
US11631416B1 (en) * 2021-12-09 2023-04-18 Kyndryl, Inc. Audio content validation via embedded inaudible sound signal

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150019342A1 (en) 2013-07-09 2015-01-15 Qualcomm Incorporated Real-time context aware recommendation engine based on a user internet of things environment
US20170064073A1 (en) 2015-09-01 2017-03-02 Qualcomm Incorporated Controlling one or more proximate devices via a mobile device based on one or more detected user actions while the mobile device operates in a low power mode
US20180227354A1 (en) 2011-01-08 2018-08-09 Steven K. Gold Remote control authority and authentication
US20200204673A1 (en) 2018-12-20 2020-06-25 Arris Enterprises Llc Internet of things user interface simplification

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080177734A1 (en) * 2006-02-10 2008-07-24 Schwenke Derek L Method for Presenting Result Sets for Probabilistic Queries
US9275154B2 (en) * 2010-06-18 2016-03-01 Google Inc. Context-sensitive point of interest retrieval
WO2013067526A1 (en) * 2011-11-04 2013-05-10 Remote TelePointer, LLC Method and system for user interface for interactive devices using a mobile device
US10311694B2 (en) * 2014-02-06 2019-06-04 Empoweryu, Inc. System and method for adaptive indirect monitoring of subject for well-being in unattended setting
US9462108B2 (en) * 2014-05-12 2016-10-04 Lg Electronics Inc. Mobile terminal and method for controlling the mobile terminal
US10042445B1 (en) * 2014-09-24 2018-08-07 Amazon Technologies, Inc. Adaptive display of user interface elements based on proximity sensing
US20160117076A1 (en) * 2014-10-22 2016-04-28 Lg Electronics Inc. Mobile terminal and control method thereof
WO2016131696A1 (en) * 2015-02-18 2016-08-25 Koninklijke Philips N.V. Monitoring activities of daily living of a person
US10104501B2 (en) * 2016-04-12 2018-10-16 Elliptic Laboratories As Proximity detection
US10587480B2 (en) * 2016-11-14 2020-03-10 WiSilica Inc. User experience enhancement using proximity awareness
US10992795B2 (en) * 2017-05-16 2021-04-27 Apple Inc. Methods and interfaces for home media control
US20190129607A1 (en) * 2017-11-02 2019-05-02 Samsung Electronics Co., Ltd. Method and device for performing remote control
US10455029B2 (en) * 2017-12-29 2019-10-22 Dish Network L.L.C. Internet of things (IOT) device discovery platform
US11323517B2 (en) * 2018-04-30 2022-05-03 Tracfone Wireless, Inc. Internet of things connectivity aggregator system and process
US11233671B2 (en) * 2018-11-28 2022-01-25 Motorola Mobility Llc Smart internet of things menus with cameras
WO2020176893A1 (en) * 2019-02-28 2020-09-03 Sonos, Inc. Playback transitions between audio devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180227354A1 (en) 2011-01-08 2018-08-09 Steven K. Gold Remote control authority and authentication
US20150019342A1 (en) 2013-07-09 2015-01-15 Qualcomm Incorporated Real-time context aware recommendation engine based on a user internet of things environment
US20170064073A1 (en) 2015-09-01 2017-03-02 Qualcomm Incorporated Controlling one or more proximate devices via a mobile device based on one or more detected user actions while the mobile device operates in a low power mode
US20200204673A1 (en) 2018-12-20 2020-06-25 Arris Enterprises Llc Internet of things user interface simplification

Also Published As

Publication number Publication date
EP4229504A1 (en) 2023-08-23
US20220155946A1 (en) 2022-05-19
CN116635821A (zh) 2023-08-22
US20240143154A1 (en) 2024-05-02
US20220342537A1 (en) 2022-10-27
US11880559B2 (en) 2024-01-23
US11402984B2 (en) 2022-08-02
JP2023552704A (ja) 2023-12-19
WO2022108953A1 (en) 2022-05-27
KR20230104288A (ko) 2023-07-07
KR20240063190A (ko) 2024-05-09

Similar Documents

Publication Publication Date Title
US10623835B2 (en) Information processing apparatus, information processing method, and program
KR101938082B1 (ko) 이미지 프로세싱에 기초한 데이터 통신을 위한 시스템 및 방법
KR102662777B1 (ko) 제2 디바이스에 대한 근접도-기반 컨트롤들
KR102264600B1 (ko) 적응적 통지 네트워크용 시스템 및 방법
KR101637813B1 (ko) 와이파이 또는 블루투스 신호 강도를 이용하여 주 디스플레이와 같은 방에 있는 후보 동반 디스플레이 디바이스의 근접 검출
US11126389B2 (en) Controlling visual indicators in an audio responsive electronic device, and capturing and providing audio using an API, by native and non-native computing devices and services
KR20150129652A (ko) 유저 통지 및 제어를 위한 탭 레벨에서의 음성 관리
US11140534B2 (en) Non-intrusive proximity based advertising and message delivery
US20170272681A1 (en) Display device and method of operating the same
EP3886457A1 (en) Information processing device and information processing method
WO2023049866A2 (en) Concurrency rules for network microphone devices having multiple voice assistant services
US9685074B2 (en) Method and system for remote interaction with electronic device
KR20210150862A (ko) 제스처를 인식하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체
US11595224B2 (en) Electronic device and method for continuously reproducing multimedia content in external electronic device
US11650780B2 (en) Display apparatus for providing content in connection with user terminal and method therefor
US20240004600A1 (en) Display apparatus and operating method of the display apparatus
KR20240002132A (ko) 디스플레이 장치 및 그 동작 방법

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right