KR20160147852A - 연관에 기초하여 익명 타깃들에 메시징하는 올조인 - Google Patents

연관에 기초하여 익명 타깃들에 메시징하는 올조인 Download PDF

Info

Publication number
KR20160147852A
KR20160147852A KR1020167032254A KR20167032254A KR20160147852A KR 20160147852 A KR20160147852 A KR 20160147852A KR 1020167032254 A KR1020167032254 A KR 1020167032254A KR 20167032254 A KR20167032254 A KR 20167032254A KR 20160147852 A KR20160147852 A KR 20160147852A
Authority
KR
South Korea
Prior art keywords
computing devices
cluster
responding
distance threshold
information
Prior art date
Application number
KR1020167032254A
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 KR20160147852A publication Critical patent/KR20160147852A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1818Conference organisation arrangements, e.g. handling schedules, setting up parameters needed by nodes to attend a conference, booking network resources, notifying involved parties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • H04L51/20
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/222Monitoring or handling of messages using geographical location information, e.g. messages transmitted or received in proximity of a certain spot or area
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/16
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • H04W4/005
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)
  • Selective Calling Equipment (AREA)

Abstract

다양한 실시형태들은 정보를 공동작업하고 공유하는 것에 의해 인근의 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 일괄적으로 식별하기 위한 요청 디바이스 및 응답 디바이스에 의해 구현되는 방법들을 제공한다. 다양한 실시형태들에서, 요청 디바이스는 거리 임계치를, 응답 디바이스들의 거리 임계치 내에 있는 컴퓨팅 디바이스들에 관한 그룹화 정보에 대한 요청과 함께, 응답 디바이스들에 전송할 수도 있다. 요청 및 거리 임계치를 수신한 것에 응답하여, 각각의 응답 디바이스는 거리 임계치 내에 있는 다른 다수의 컴퓨팅 디바이스들을 식별할 수도 있고 이러한 정보를 요청 디바이스에 전송할 수도 있다. 요청 디바이스는 수신된 그룹화 정보에 기초하여 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 식별할 수도 있다. 변경가능한 거리 임계치 내의 다른 컴퓨팅 디바이스들을 검출하도록 응답 디바이스들을 구성하는 것에 의해, 요청 디바이스는 컴퓨팅 디바이스들의 식별된 클러스터들의 사이즈를 동적으로 조정할 수도 있다.

Description

연관에 기초하여 익명 타깃들에 메시징하는 올조인{ALLJOYN MESSAGING ANONYMOUS TARGETS BASED ON ASSOCIATION}
관련 출원들에 대한 상호 참조
본 출원은 2014년 4월 28일자로 출원된 "AllJoyn Messaging Anonymous Targets Based on Association" 이라는 명칭의 미국 가특허출원 제61/984,904호에 대한 우선권의 이익을 주장하고, 그 전체 내용은 본 명세서에 참조로 포함된다.
현재, 모바일 컴퓨팅 디바이스들은, 디바이스로 하여금 다른 호환가능 디바이스들 (예를 들어, 올조인® (AllJoyn®) 클라이언트를 실행하는 다른 모바일 컴퓨팅 디바이스들, 어플라이언스들 등) 을 인지하여 통신하는 것을 가능하게 하는, 퀄컴 (Qualcomm) 의 올조인® 과 같은 통신 애플리케이션을 인스톨/실행하는 것에 의해 근거리 통신 채널들을 통해 다른 디바이스들과 공개적으로 통신할 수도 있다. 이러한 디바이스-투-디바이스 (device-to-device) 통신 링크들을 통해, 연결된 디바이스들은 각각의 디바이스들의 브랜드들, 오퍼레이팅 시스템들, 및 구성 (configuration) 들에 관계없이 리소스들 및 스테이터스 (status) 정보를 이들 다른 디바이스들과 공유하는 것이 가능하다. 추가로, 이러한 디바이스들은 네트워크에 등록하거나 또는 네트워크로부터 지원을 받는 일 없이 서로 독립적으로 통신할 수도 있다.
다양한 실시형태들은 요청 디바이스에 의해 컴퓨팅 디바이스들의 클러스터를 식별하기 위한 방법들, 디바이스들, 및 비일시적 프로세서 판독가능 저장 매체들을 제공한다. 일부의 실시형태의 방법들은, 요청 디바이스 상에서, 클러스터를 정의하기 위한 거리 임계치를 결정하는 단계, 및 요청 디바이스로부터의 그룹화 (grouping) 정보에 대한 요청 및 거리 임계치를 응답 디바이스에 전송하는 단계를 포함할 수도 있다. 이러한 실시형태들에서, 방법은, 요청 디바이스 상에서, 응답 디바이스의 거리 임계치 내의 다수의 컴퓨팅 디바이스들을 나타내는 그룹화 정보를 응답 디바이스로부터 수신하는 단계, 및 요청 디바이스 상에서, 수신된 그룹화 정보에 기초하여 컴퓨팅 디바이스들의 클러스터를 식별하는 단계를 더 포함할 수도 있다.
일부 실시형태들에서, 방법은 컴퓨팅 디바이스들의 클러스터의 디스플레이를 요청 디바이스의 디스플레이 스크린 상에 제시하는 단계를 더 포함할 수도 있다. 이러한 실시형태들에서, 컴퓨팅 디바이스들의 클러스터의 디스플레이를 요청 디바이스의 디스플레이 스크린 상에 제시하는 단계는, 필터링 기준을 결정하는 단계, 결정된 필터링 기준에 기초하여 컴퓨팅 디바이스들의 식별된 클러스터 내의 컴퓨팅 디바이스들을 필터링하는 단계, 및 필터링된 컴퓨팅 디바이스들만을 포함하는 디스플레이를 요청 디바이스의 디스플레이 스크린 상에 제시하는 단계를 더 포함할 수도 있다. 일부 실시형태들에서, 방법은 컴퓨팅 디바이스들의 클러스터의 사용자 입력 선택을 수신하는 단계, 및 컴퓨팅 디바이스들의 선택된 클러스터 내의 각각의 컴퓨팅 디바이스에 통신물을 전송하는 단계를 더 포함할 수도 있다. 이러한 실시형태들에서, 컴퓨팅 디바이스들의 선택된 클러스터 내의 각각의 컴퓨팅 디바이스에 통신물을 전송하는 단계는, 컴퓨팅 디바이스들의 선택된 클러스터 내의 각각의 컴퓨팅 디바이스에 조화된 액션을 수행하라는 요청을 전송하는 단계를 더 포함할 수도 있다.
일부 실시형태들에서, 방법은, 요청 디바이스 상에서, 응답 디바이스의 거리 임계치 내의 다수의 컴퓨팅 디바이스들을 설명하는 설명 정보 (descriptive information) 를 응답 디바이스로부터 수신하는 단계를 더 포함할 수도 있고, 여기서, 요청 디바이스 상에서, 수신된 그룹화 정보에 기초하여 컴퓨팅 디바이스들의 클러스터를 식별하는 단계는, 그룹화 정보 및 설명 정보에 기초하여 컴퓨팅 디바이스들의 클러스터를 식별하는 단계를 포함한다. 이러한 실시형태들에서, 방법은 설명 정보에 기초하여 컴퓨팅 디바이스들의 클러스터의 디스플레이를 요청 디바이스의 디스플레이 스크린 상에 제시하는 단계를 더 포함할 수도 있다.
다양한 부가적인 실시형태들은 응답 디바이스에 의해 인근의 컴퓨팅 디바이스들을 식별하기 위한 방법들, 디바이스들, 및 비일시적 프로세서 판독가능 저장 매체들을 제공한다. 일부의 실시형태의 방법들은, 응답 디바이스 상에서, 요청 디바이스로부터 거리 임계치를 수신하는 단계, 응답 디바이스 상에서, 응답 디바이스의 거리 임계치 내의 임의의 컴퓨팅 디바이스들을 식별하는 단계, 및 응답 디바이스의 거리 임계치 내의 식별된 컴퓨팅 디바이스들에 관한 정보를 요청 디바이스에 전송하는 단계를 포함할 수도 있다.
일부 실시형태들에서, 응답 디바이스의 거리 임계치 내의 식별된 컴퓨팅 디바이스들에 관한 정보를 요청 디바이스에 전송하는 단계는, 응답 디바이스 상에서, 응답 디바이스의 거리 임계치 내의 다수의 컴퓨팅 디바이스들을 나타내는 그룹화 정보를 생성하는 단계, 및 응답 디바이스로부터의 그룹화 정보를 요청 디바이스에 전송하는 단계를 더 포함할 수도 있다. 일부 실시형태들에서, 방법은, 응답 디바이스 상에서, 응답 디바이스의 거리 임계치 내의 식별된 컴퓨팅 디바이스들로부터 설명 정보를 요청하는 단계, 응답 디바이스 상에서, 식별된 컴퓨팅 디바이스들로부터 설명 정보를 수신하는 단계, 및 응답 디바이스로부터의 수신된 설명 정보를 요청 디바이스에 전송하는 단계를 더 포함할 수도 있다.
다양한 실시형태들은 상술된 방법들의 동작들을 수행하도록 프로세서 실행가능 명령들로 구성된 컴퓨팅 디바이스를 포함할 수도 있다.
다양한 실시형태들은 모바일 통신 디바이스의 프로세서로 하여금 상술된 방법들의 동작들을 수행하게 하도록 구성된 프로세서 실행가능 명령들이 저장된 비일시적 프로세서 판독가능 매체들을 포함할 수도 있다.
다양한 실시형태들은 상술된 방법들의 동작들의 기능들을 수행하는 수단을 갖는 컴퓨팅 디바이스를 포함할 수도 있다.
본 명세서에 포함되고 이 명세서의 부분을 구성하는 첨부 도면들은 본 발명의 예시적인 실시형태들을 예시하고, 위에 제공된 일반적 설명 및 아래에 제공된 상세한 설명과 함께, 본 발명의 피처들을 설명하도록 기능한다.
도 1 은 다양한 실시형태들에서의 이용에 적합한 네트워크들의 통신 시스템 블록 다이어그램이다.
도 2 는 다양한 실시형태들에 따른 컴퓨팅 디바이스의 컴포넌트 블록 다이어그램이다.
도 3a 내지 도 3c 는 다양한 실시형태들에 따른 하나 이상의 응답 디바이스들로부터 수신된 정보에 기초하여 컴퓨팅 디바이스들의 클러스터들을 식별하도록 구성된 요청 디바이스의 예들을 예시하는 시스템 블록 다이어그램들이다.
도 4 는 다양한 실시형태들에 따른 응답 디바이스로부터 수신된 그룹화 정보에 기초하여 응답 디바이스의 거리 임계치 내의 컴퓨팅 디바이스들의 클러스터를 요청 디바이스 상에서 결정하기 위한 방법을 예시하는 프로세스 플로우 다이어그램이다.
도 5 는 다양한 실시형태들에 따른 응답 디바이스의 거리 임계치 내의 컴퓨팅 디바이스들의 특성들을 설명하는 응답 디바이스로부터 수신된 정보에 적어도 부분적으로 기초하여 컴퓨팅 디바이스들의 클러스터를 요청 디바이스 상에서 결정하기 위한 방법을 예시하는 프로세스 플로우 다이어그램이다.
도 6 은 다양한 실시형태들에 따른 요청 디바이스 상에서 디스플레이되는 컴퓨팅 디바이스들의 클러스터를 필터링하기 위한 방법을 예시하는 프로세스 플로우 다이어그램이다.
도 7 은 다양한 실시형태들에 따른 컴퓨팅 디바이스들의 클러스터의 각각의 멤버에게 조화된 액션을 전송하기 위한 방법을 예시하는 프로세스 플로우 다이어그램이다.
도 8 은 다양한 실시형태들에 따른 그룹화 정보에 대한 요청 디바이스로부터의 요청에 응답하기 위한 방법을 예시하는 프로세스 플로우 다이어그램이다.
도 9 는 일부의 실시형태의 방법들을 구현하기에 적합한 컴퓨팅 디바이스의 컴포넌트 블록 다이어그램이다.
다양한 실시형태들이 첨부 도면들을 참조하여 상세히 설명될 것이다. 가능하다면 어디서든지, 동일한 참조 부호들이 도면들 전반에 걸쳐 사용되어 동일하거나 유사한 부분들을 지칭할 것이다. 특정 예들 및 구현들에 대해 이루어진 언급들은 예시적인 목적들을 위한 것이며, 청구항들 또는 본 발명의 범위를 제한하려고 의도된 것이 아니다.
본 명세서에서 사용되는 바와 같이, 용어 "컴퓨팅 디바이스" 는 셀룰러 전화기들, 스마트 폰들, 개인용 또는 모바일 멀티-미디어 플레이어들, 개인 휴대 정보 단말기들, 랩톱 컴퓨터들, 개인용 컴퓨터들, 태블릿 컴퓨터들, 스마트 북들, 팜탑 컴퓨터들, 무선 전자 메일 수신기들, 멀티미디어 인터넷 가능 셀룰러 전화기들, 무선 게이밍 제어기들, 및 다른 전자 디바이스들과 통신하기 위한 프로그래밍가능 프로세서, 메모리, 및 회로부를 포함하는 유사한 전자 디바이스들 중 임의의 하나 또는 전부를 지칭한다. 다양한 양태들은 스마트 폰들과 같은 모바일 컴퓨팅 디바이스들에 유용할 수도 있어서, 이러한 디바이스들이 다양한 실시형태들의 설명들에서 참조된다.
컴퓨팅 디바이스는 통신 애플리케이션 (예를 들어, 올조인® (AllJoyn®)) 을 활용하여 동일한 애플리케이션을 실행하는 다른 컴퓨팅 디바이스들과 통신할 수도 있다. 그러나, 이러한 모바일 컴퓨팅 디바이스의 사용자는 디바이스들 (또는 이들 디바이스들의 사용자들) 의 그룹의 멤버들에 대한 연락처 정보 또는 식별 크리덴셜들의 결여에도 불구하고 그 사용자가 그 그룹과 통신하기를 원하는 상황들에 직면할 수도 있다. 예를 들어, 사용자는 회의실을 차지한 사람들의 그룹의 디바이스들에 메시징하여, 문을 열어서 무례하게 그들의 미팅을 방해해야 하는 일 없이 사용자가 수 분 내에 그 회의실을 이용하도록 스케줄링됨을 이들에게 리마인드하기를 원할 수도 있다. 다른 예에서, 사용자는 친목회에서의 사람들에게 메시징하기를 원할 수도 있지만, 이들의 연락처 정보를 알지 못하거나 또는 기억하지 못할 수도 있다.
컴퓨팅 디바이스 ("제 1" 컴퓨팅 디바이스) 의 사용자로 하여금 인근의 디바이스들의 그룹들과 통신하는 것을 이들 디바이스들에 대한 특정 연락처 정보의 결여에도 불구하고 가능하게 하기 위한 일부 솔루션들이 현재 존재한다. 이들 솔루션들에서, 제 1 컴퓨팅 디바이스는 제 2 컴퓨팅 디바이스로부터 인근의 디바이스들에 관한 정보를 요청한다. 이에 응답하여, 제 2 컴퓨팅 디바이스는 인근의 컴퓨팅 디바이스들 (예를 들어, "제 3" 컴퓨팅 디바이스, "제 4" 컴퓨팅 디바이스 등) 로부터의 신호 강도들을 계산하고 이들 계산된 신호 강도들을 제 1 컴퓨팅 디바이스에 통신한다. 제 1 컴퓨팅 디바이스에서, 제 2 컴퓨팅 디바이스 및 다른 인근의 컴퓨팅 디바이스들의 상대 위치들은 수신된 신호 강도 정보에 기초하여 계산될 수도 있고, 제 2, 제 3 등의 컴퓨팅 디바이스들의 상대 위치들/표현들은 하나 이상의 그룹들로서 제 1 컴퓨팅 디바이스 상에서 그래픽으로 디스플레이될 수도 있다. 제 1 컴퓨팅 디바이스의 사용자는 그 후에 디바이스들의 디스플레이된 그룹의 선택을 행할 수도 있고, 선택된 그룹의 멤버들에게 메시지를 전송할 수도 있다.
현재 솔루션들이 사용자의 컴퓨팅 디바이스로 하여금 컴퓨팅 디바이스들의 인근의 그룹들을 식별하게 하는 것을 가능하게 하지만, 이들 솔루션들은 현재, 사용자로 하여금 제 2 컴퓨팅 디바이스가 다른 컴퓨팅 디바이스를 찾아서 식별하는 거리를 제어하게 하지 못한다. 예를 들어, 사용자가 음식점에 함께 앉아있는 몇몇 사람들의 컴퓨팅 디바이스들에 메시징하는 것에만 단지 관심이 있을 수도 있지만, 사용자의 컴퓨팅 디바이스는 그 대신에 전체 음식점에 대한 컴퓨팅 디바이스들의 그룹을 생성하고 디스플레이하여, 그에 의해 이들 몇몇 사람들에게만 지시된 메시지들을 전송하는 사용자의 능력을 방해할 수도 있다.
현재 시스템들의 이러한 불편들을 극복하기 위해, 다양한 실시형태들에서, 종래의 컴퓨팅 디바이스들에서 수행되는 바와 같이 응답 디바이스의 임의적인 거리 내의 컴퓨팅 디바이스들의 리포트들을 수신하기보다는, 제 1 컴퓨팅 디바이스 ("요청 디바이스" 라고도 또한 지칭됨) 는 구성가능한 거리 임계치 (예를 들어, 소정의 신호 강도 값) 를 제 2 컴퓨팅 디바이스 ("응답 디바이스" 라고도 또한 지칭됨) 에 전송할 수도 있고 응답 디바이스가 그 구성가능한 거리 임계치 내에 있는 이들 컴퓨팅 디바이스들만을 식별하도록 요청할 수도 있다. 그 결과, 요청 디바이스는 거리 임계치를 조정하는 것에 의해 응답 디바이스에 의해 리포팅되는 그룹들의 사이즈들을 조정할 수도 있다.
종래의 솔루션들에서, 컴퓨팅 디바이스들의 상대 위치들만이 이들의 각각의 신호 강도 측정들에 기초하여 결정되기 때문에, 사용자는, 예컨대, 디스플레이된 그룹의 디바이스들을, 사용자가 그/그녀 앞에 실제로 보이는 디바이스들과 매칭시키는 것에 의해, 사용자의 컴퓨팅 디바이스 상에 디스플레이된 컴퓨팅 디바이스들의 그룹의 멤버들의 실제 아이덴티티들을 추측해야 하는데, 이는 컴퓨팅 디바이스들의 다수의 그룹들 또는 다수의 디바이스들이 그 영역에 있는 상황들에서는 어려울 수도 있다.
현재 시스템들의 이러한 불편들을 극복하기 위해, 다양한 실시형태들은 사용자의 요청 디바이스로 하여금 더 정확한 위치 결정들을 행하기 위해 컴퓨팅 디바이스들의 그룹의 멤버들의 다양한 설명 정보 (descriptive information) (예를 들어, 센서, 위치, 및 스테이터스 (status) 정보) 를 요청하고 수신하는 것을 가능하게 하여, 그에 의해 사용자가 메시지를 전송하기를 원하는 하나 이상의 컴퓨팅 디바이스들의 식별을 사용자가 인식하는 것이 더 쉬워진다.
개관에서, 다양한 실시형태들은 정보를 공동작업하고 공유하는 것에 의해 인근의 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 일괄적으로 식별하기 위한 요청 디바이스 및 응답 디바이스에 의해 구현되는 방법들을 제공한다. 구체적으로는, 다양한 실시형태들에서, 요청 디바이스는 (예를 들어, 사용자 입력으로서 수신된) 거리 임계치를 특정하는 메시지를, 각각의 응답 디바이스의 거리 임계치 내에 있는 컴퓨팅 디바이스들에 관한 그룹화 정보에 대한 요청과 함께, 하나 이상의 인근의 응답 디바이스들에 전송할 수도 있다. 요청 및 거리 임계치를 수신한 것에 응답하여, 각각의 응답 디바이스는 거리 임계치 내에 있는 다른 컴퓨팅 디바이스들을 식별할 수도 있고 이러한 정보를 요청 디바이스에 전송할 수도 있다. 요청 디바이스는 수신된 그룹화 정보에 기초하여 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 식별하기 위해 응답 디바이스들로부터 수신된 정보를 이용할 수도 있다. 조정된 거리 임계치들을 하나 이상의 응답 디바이스들에게 시그널링하는 것에 의해, 요청 디바이스는, 응답 디바이스들로부터 수신된 응답들로부터 생성되는 것이 가능한, 컴퓨팅 디바이스들의 식별된 클러스터들의 사이즈를 동적으로 조정하여, 그에 의해 그 클러스터에서의 디바이스들에 대한 연락처 정보의 결여에도 불구하고 적절한 또는 원하는 사이즈의 클러스터에서의 컴퓨팅 디바이스들을 식별하고 이들과 통신하는 보다 큰 능력을 요청 디바이스의 사용자에게 제공할 수도 있다.
다양한 실시형태들에서, 컴퓨팅 디바이스들 (예를 들어, 요청 디바이스 및 하나 이상의 응답 디바이스들) 은 퀄컴® (Qualcomm®) 에 의한 올조인® 과 같은, 공통 또는 호환가능 통신/메시징 애플리케이션을 통해 서로 통신할 수도 있다. 일부 실시형태들에서, 공통 통신/메시징 애플리케이션은, 공개 포트를 통해 하나의 컴퓨팅 디바이스로부터 다른 컴퓨팅 디바이스로 메시지들 및 커맨드들을 전송하는 것을 가능하게 할 수도 있는, 블루투스® 와 같은 다양한 통신 프로토콜들 위에서 실행하는 소프트웨어/API 계층일 수도 있다. 공통 통신/메시징 애플리케이션은 제 3 자, 예컨대 애플리케이션 스토어 (예를 들어, 애플® (Apple®) 의 앱 스토어® (App Store®)) 로부터 수신 및 인스톨될 수도 있다. 다른 실시형태들에서, 공통 통신/메시징 애플리케이션은 컴퓨팅 디바이스들 상에 이들의 각각의 오리지널 장비 제조자들에 의해 미리 인스톨될 수도 있다. 공통 통신 애플리케이션을 통해 메시지들을 서로 전송 및 수신하는 능력을 공유하는 것에 의해, 컴퓨팅 디바이스들은 이들의 각각의 모델들, 능력들, 및 디바이스 타입들 (예를 들어, 스마트 폰 대 (versus) 홈 어플라이언스) 에 관계없이 정보를 교환할 수도 있다.
다양한 실시형태들에서, 요청 디바이스로부터 거리 임계치를 수신한 것에 응답하여, 응답 디바이스는 응답 컴퓨팅 디바이스의 거리 임계치 내의 하나 이상의 컴퓨팅 디바이스들을 식별하기 위해 통신/메시징 애플리케이션을 이용할 수도 있다. 거리 임계치는 특정 수신기 신호 강도 표시 (receiver signal strength indication; RSSI) 값, 안테나 이득, GPS 좌표들에 의해 결정되는 것과 같은 거리 등에 대응하는 값일 수도 있다. 응답 디바이스는 (예를 들어, 수신된 거리 임계 값보다 더 높은 연관된 RSSI 값들로 모든 컴퓨팅 디바이스들을 식별하는) 거리 임계치의 타입에 기초하여 거리 임계 값 내의 하나 이상의 컴퓨팅을 식별할 수도 있다.
다양한 실시형태들에서, 응답 디바이스는 응답 디바이스의 거리 임계치 내에 있는 것으로 검출된 하나 이상의 컴퓨팅 디바이스들의 그룹화 정보를 생성할 수도 있고, 이 그룹화 정보를 요청 디바이스에 전송하여 요청 디바이스로 하여금 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 식별하는 것을 가능하게 할 수도 있다. 예를 들어, 응답 디바이스는, 요청 컴퓨팅 디바이스를 배제한, 4 개의 컴퓨팅 디바이스들이 거리 임계치 내에 있다는 것을 요청 디바이스에게 알릴 수도 있다. 이에 응답하여, 요청 디바이스는 (요청 디바이스를 배제한) 4 개의 컴퓨팅 디바이스들의 하나의 클러스터가 인근에 있다고 결정할 수도 있다.
일부 실시형태들에서, 응답 디바이스는 거리 임계치 내의 하나 이상의 컴퓨팅 디바이스에 관련된 다양한 타입들의 정보를 취득할 수도 있다. 예를 들어, 이러한 설명 정보는 (요청 및/또는 응답 디바이스들을 포함할 수도 있는) 거리 임계치 내의 식별된 컴퓨팅 디바이스들에 대한 위치 정보, 센서 정보, 및 스테이터스 정보 중 적어도 하나를 포함할 수도 있다. 위치 정보는 식별된 컴퓨팅 디바이스들의 포지션, 속도, 및/또는 이동 특성들, 예컨대 글로벌 포지셔닝 시스템 (GPS) 좌표 데이터, 나침반 방향 판독치들, 가속도계 데이터, 자이로스코프 정보 등을 설명할 수도 있다. 센서 정보는 식별된 컴퓨팅 디바이스들, 예컨대 광도계 (light-intensity meter) 들 및/또는 카메라들 상에 인스톨될 수도 있는 다양한 센서들로부터의 측정치들 및 판독치들을 포함할 수도 있다. 스테이터스 정보는 요청 디바이스의 사용자가 컴퓨팅 디바이스를 시각적으로 식별하는 것을 지원할 수도 있는 다른 타입들의 정보를 포함할 수도 있고, 컴퓨팅 디바이스가 액티브 음성 호 또는 인터넷/데이터 세션에 관여되는지 여부, 컴퓨팅 디바이스의 모델/디바이스-타입 등과 같은 넓은 범위의 정보를 포함할 수도 있다. 일괄적으로, 이들 타입들의 정보 및 인근의 컴퓨팅 디바이스들에 관련된 다양한 다른 정보는 본 명세서에서 "설명 정보" 라고 지칭될 수도 있고, 요청 디바이스는 이러한 설명 정보뿐만 아니라 다른 이용들을 활용하여 (예를 들어, 도 5 를 참조하여 설명되는 바와 같이) 인근의 컴퓨팅 디바이스들을 식별하거나 및/또는 컴퓨팅 디바이스들의 동일한 클러스터에 속하는 컴퓨팅 디바이스들을 결정할 수도 있다.
일부 실시형태들에서, 적어도 하나의 응답 디바이스로부터 수신된 그룹화 정보에 기초하여 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 식별한 것에 응답하여, 요청 디바이스는 요청 디바이스의 디스플레이 상에 하나 이상의 식별된 클러스터들을 디스플레이할 수도 있다. 요청 디바이스가 컴퓨팅 디바이스들의 하나 이상의 클러스터들의 멤버들에 대한 설명 정보를 수신한 일부 특정 실시형태들에서, 요청 디바이스는 사용자에게 디스플레이된 컴퓨팅 디바이스들의 클러스터들에 설명 정보를 포함시킬 수도 있다. 이러한 방식으로 요청 디바이스는 예컨대 요청 디바이스의 스크린 상에 디스플레이된 디바이스들의 각각의 클러스터를 사용자가 부근에 보이는 디바이스와 매칭시키는 것에 의해, 사용자가 각각의 클러스터의 멤버들을 시각적으로 식별하는 것을 도울 수도 있는 부가적인 정보를 사용자에게 제공할 수도 있다.
일부 실시형태들에서, 요청 디바이스는 디스플레이된 클러스터들 중 하나의 클러스터의 선택을 (예를 들어, 사용자 입력 선택으로서) 수신할 수도 있고, 메시지, 커맨드, 및/또는 임의의 다른 형태의 통신물을 선택된 클러스터의 컴퓨팅 디바이스들에게 전송할 수도 있다. 추가 실시형태들에서, 요청 디바이스는 동시에 액션을 수행하도록 각각의 멤버를 구성할 수도 있는 조화된 액션 또는 커맨드를 선택된 클러스터의 각각의 컴퓨팅 디바이스에 전송할 수도 있다. 예를 들어, 회의실에서의 컴퓨팅 디바이스들의 클러스터의 선택을 수신한 것에 응답하여, 요청 디바이스는 조화된 커맨드를 선택된 그룹의 각각의 멤버에게 전송하여 진동하고 회의실에서의 이들의 스케줄링된 시간이 만료되었음을 각각의 멤버의 사용자에게 알리는 메시지를 디스플레이할 수도 있다.
일부 실시형태들에서, 요청 디바이스는 하나 이상의 필터링 기준들에 기초하여 클러스터에서의 컴퓨팅 디바이스들을 선택적으로 디스플레이할 수도 있다. 디스플레이되는 컴퓨팅 디바이스들을 필터링하는 것에 의해, 요청 디바이스는 사용자의 의도된 목적들과 무관할 수도 있는 컴퓨팅 디바이스들을 제거할 수도 있다. 예를 들어, 사용자가 다른 사람의 스마트 폰에 메시징하려고 시도하고 있는 경우, 요청 디바이스는 (홈 어플라이언스들과 같은 다른 타입들의 디바이스들과는 대조적으로) 스마트 폰 디바이스들만이 디스플레이될 수도 있음을 나타내는 필터링 기준을 사용자 입력으로서 수신하여, 그에 의해 사용자로 하여금 다른 사람의 스마트 폰이 속하는 컴퓨팅 디바이스들의 클러스터를 빨리 식별하고 상술된 바와 같이 그 클러스터에 메시지를 전송하는 것을 개시하는 것을 가능하게 할 수도 있다.
참조의 용이를 위해, 거리 임계치 내의 하나 이상의 컴퓨팅 디바이스들에 관한 그룹화 정보 및/또는 설명 정보를 요청하는 컴퓨팅 디바이스는 본 명세서에서 "요청 디바이스" 라고 지칭되고, 요청 디바이스로부터의 요청을 수신하는 컴퓨팅 디바이스는 "응답 디바이스" 라고 지칭된다. 또한 참조의 용이를 위해, 요청 디바이스는 "제 1 디바이스" 또는 "제 1 컴퓨팅 디바이스" 라고 지칭될 수도 있는 한편, 응답 디바이스는 "제 2 디바이스" 또는 "제 2 컴퓨팅 디바이스" 라고 지칭될 수도 있다. 그러나, 이들 참조들은 단지 설명의 용이를 위한 것이고 특정 컴퓨팅 디바이스가 응답 디바이스 또는 요청 디바이스인 것으로 암시 또는 요구하려고 의도된 것이 아니다. 예를 들어, 일부 실시형태들에서, 요청 디바이스는 얼마간의 추후의 시간에서, 다른 요청 디바이스로부터 그룹화 정보에 대한 요청을 수신한 것에 응답하여 응답 컴퓨팅 디바이스가 될 수도 있다.
다양한 실시형태들은 다양한 통신 시스템들 (100) 내에서 구현될 수도 있고, 그 예가 도 1 에 예시된다. 모바일 네트워크 (102) 는 통상적으로 복수의 셀룰러 기지국들 (예를 들어, 기지국 (130)) 을 포함한다. 컴퓨팅 디바이스 (110) 는 기지국 (130) 으로의 셀룰러 연결 (132) 을 통해 모바일 네트워크 (102) 와 통신할 수도 있다. 셀룰러 연결 (132) 은 2-방향 무선 통신 링크들, 예컨대 4G, 3G, CDMA, TDMA, WCDMA, GSM, 및 다른 모바일 전화 통신 기술들을 통해 이루어질 수도 있다. 기지국 (130) 은 유선 연결 (134) 을 통해 모바일 네트워크 (102) 와 통신할 수도 있다. 컴퓨팅 디바이스 (110) 가 모바일 네트워크 (102) 에 연결된 것이 도시되지만, 일부 실시형태들 (미도시) 에서, 컴퓨팅 디바이스 (110) 는 2 개 이상의 모바일 네트워크들에 대한 2 개 이상의 서브스크립션 (subscription) 들을 포함할 수도 있고, 상술된 것들과 유사한 방식으로 이들 서브스크립션들에 연결할 수도 있다.
일부 실시형태들에서, 컴퓨팅 디바이스 (110) 는 예컨대 Wi-Fi 연결을 통해, 무선 액세스 포인트 (160) 와의 무선 연결 (162) 을 확립할 수도 있다. 무선 액세스 포인트 (160) 는 유선 연결 (166) 을 통해 인터넷 (164) 또는 다른 네트워크에 연결하도록 구성될 수도 있다.
다양한 실시형태들에서, 컴퓨팅 디바이스 (110) 는 공통 통신 애플리케이션 (예를 들어, 퀄컴® 에 의한 올조인®) 을 통해 다양한 다른 컴퓨팅 디바이스들 (120 내지 128) 과의 무선 연결 (152) (예를 들어, 블루투스®, Wi-Fi 다이렉트®, 또는 다른 근거리장/근거리 통신 연결) 을 확립할 수도 있다. 예를 들어, 컴퓨팅 디바이스 (110) 는 정보 및 통신물들을 랩톱 디바이스 (120), 개인용 컴퓨팅 디바이스 (122), 태블릿 컴퓨팅 디바이스 (124), 모바일 컴퓨팅 디바이스 (126) (예를 들어, 스마트 폰), 및 어플라이언스 디바이스 (128) (예를 들어, "스마트" 세탁기) 중 하나 이상과 교환할 수도 있다. 컴퓨팅 디바이스 (110) 는 또한 (또는 대안적으로) 공통 통신 애플리케이션을 통해 통신하는 것이 가능한 다양한 다른 컴퓨팅 디바이스들 (미도시) 에 연결할 수도 있다.
추가로, 일부 실시형태들 (미도시) 에서, 컴퓨팅 디바이스들 (120 내지 128) 은 공통 통신 애플리케이션을 통해 서로와의 무선 연결들을 확립할 수도 있다.
도 2 는 다양한 실시형태들을 구현하기에 적합한 컴퓨팅 디바이스 (200) 의 기능 블록 다이어그램이다. 다양한 실시형태들에 따르면, 컴퓨팅 디바이스 (200) 는 도 1 을 참조하여 설명된 것과 같은 컴퓨팅 디바이스 (110) 와 유사할 수도 있다.
도 1 및 도 2 를 참조하면, 컴퓨팅 디바이스 (200) 는 서브스크립션과 연관된 제 1 아이덴티티 모듈 SIM (204) 을 수용할 수도 있는 SIM 인터페이스 (202) 를 옵션적으로 포함할 수도 있다. 다양한 실시형태들에서 SIM 은, 예를 들어, GSM 및/또는 UMTS 네트워크들로의 액세스를 가능하게 하는, SIM 및/또는 USIM 애플리케이션들로 구성되는 유니버설 집적 회로 카드 (Universal Integrated Circuit Card; UICC) 일 수도 있다. UICC 는 또한 전화번호부 및 다른 애플리케이션들에 대한 스토리지를 제공할 수도 있다. 대안적으로, CDMA 네트워크에서, SIM 은 카드 상의 CDMA 가입자 아이덴티티 모듈 (CDMA subscriber identity module; CSIM) 또는 UICC 제거가능 사용자 아이덴티티 모듈 (removable user identity module; R-UIM) 일 수도 있다. 각각의 SIM 카드는 CPU, ROM, RAM, EEPROM 및 I/O 회로들을 가질 수도 있다.
컴퓨팅 디바이스 (200) 는 코더/디코더 (CODEC; 208) 에 커플링될 수도 있는, 범용 프로세서 (206) 와 같은 적어도 하나의 제어기를 포함할 수도 있다. CODEC (208) 은 차례로 스피커 (210) 및 마이크로폰 (212) 에 커플링될 수도 있다. 범용 프로세서 (206) 는 또한 메모리 (214) 에 커플링될 수도 있다. 메모리 (214) 는 프로세서 실행가능 명령들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체일 수도 있다. 예를 들어, 명령들은 대응하는 기저대역-RF 리소스 체인을 통해 SIM/서브스크립션에 관련된 라우팅 통신 데이터를 포함할 수도 있다.
메모리 (214) 는 오퍼레이팅 시스템 (OS) 뿐만 아니라, 사용자 애플리케이션 소프트웨어 및 실행가능 명령들을 저장할 수도 있다. 메모리 (214) 는 또한 어레이 데이터 구조와 같은 애플리케이션 데이터를 저장할 수도 있다.
범용 프로세서 (206) 및 메모리 (214) 는 각각 적어도 하나의 기저대역 모뎀 프로세서 (216) 에 커플링될 수도 있다. 컴퓨팅 디바이스 (200) 에서의 각각의 SIM (예를 들어, SIM (204)) 은 기저대역-RF 리소스 체인과 연관될 수도 있다. 기저대역-RF 리소스 체인은 본 명세서에서 일반적으로 "RF 리소스들" 이라고 지칭되는 하나 이상의 증폭기들 및 라디오들을 포함할 수도 있고, 무선 액세스 기술 (RAT) 과 통신하는 것/무선 액세스 기술 (RAT) 을 제어하는 것을 위한 기저대역/모뎀 기능들을 수행할 수도 있는 기저대역 모뎀 프로세서 (216) 를 포함할 수도 있다. 일부 실시형태들에서, 기저대역-RF 리소스 체인들은 기저대역 모뎀 프로세서 (216) (즉, 컴퓨팅 디바이스 (200) 상의 모든 RAT들에 대한 기저대역/모뎀 기능들을 수행하는 단일 디바이스) 를 공유할 수도 있다. 다른 실시형태들에서, 각각의 기저대역-RF 리소스 체인은 물리적으로 또는 논리적으로 별개의 기저대역 프로세서들 (예를 들어, BB) 을 포함할 수도 있다.
일부 실시형태들에서, RF 리소스 (218a) 및, 옵션적으로, RF 리소스 (218b) 는 상이한 무선 통신 프로토콜들과 연관될 수도 있다. 예를 들어, RF 리소스 (218a) 는 GSM RAT 를 통한 통신들과 연관되고 이 통신들을 가능하게 할 수도 있고, RF 리소스 (218b) 는 블루투스® RAT 와의 통신들과 연관되고 이 통신들을 가능하게 할 수도 있다. RF 리소스들 (218a, 218b) 은 각각 이들의 각각의 RAT들을 대신하여 송신/수신 기능들을 수행하는 트랜시버들일 수도 있다. RF 리소스들 (218a, 218b) 은 또한 별개의 송신 및 수신 회로부를 포함할 수도 있거나, 또는 송신기 및 수신기 기능들을 결합한 트랜시버를 포함할 수도 있다. RF 리소스들 (218a, 218b) 은 각각 무선 안테나 (예를 들어, 제 1 무선 안테나 (220a) 또는, 옵션적으로, 제 2 무선 안테나 (220b)) 에 커플링될 수도 있다. RF 리소스들 (218a, 218b) 은 또한 기저대역 모뎀 프로세서 (216) 에 커플링될 수도 있다.
일부 실시형태들에서, 범용 프로세서 (206), 메모리 (214), 기저대역 프로세서(들) (216), 및 RF 리소스들 (218a, 218b) 은 시스템-온-칩 (system-on-chip) 으로서 컴퓨팅 디바이스 (200) 에 포함될 수도 있다. 일부 실시형태들에서, SIM (204) 및 그의 대응하는 인터페이스 (202) 는 시스템-온-칩의 외부에 있을 수도 있다. 추가로, 다양한 입력 및 출력 디바이스들은 인터페이스들 또는 제어기들과 같은, 시스템-온-칩 상의 컴포넌트들에 커플링될 수도 있다. 컴퓨팅 디바이스 (200) 에서의 이용에 적합한 예시적인 사용자 입력 컴포넌트들은 키패드 (224), 터치스크린 디스플레이 (226), 및 마이크로폰 (212) 을 포함할 수도 있지만, 이들로 제한되지 않는다.
일부 실시형태들에서, 키패드 (224), 터치스크린 디스플레이 (226), 마이크로폰 (212), 또는 이들의 조합은 다른 컴퓨팅 디바이스와의 통신들을 개시하기 위한 사용자 입력을 수신하는 기능을 수행할 수도 있다. 예를 들어, 터치스크린 디스플레이 (226) 는 연락처 리스트로부터 연락처의 선택을 수신하거나 또는 전화 번호를 수신할 수도 있다. 다른 예에서, 터치스크린 디스플레이 (226) 및 마이크로폰 (212) 중 어느 하나 또는 이들 양쪽은 다른 컴퓨팅 디바이스와의 통신들 및/또는 발신 호를 개시하라는 요청을 수신하는 기능을 수행할 수도 있다. 일 예에서, 다른 컴퓨팅 디바이스와의 통신 세션을 개시하라는 요청은 마이크로폰 (212) 을 통해 수신된 음성 커맨드의 형태로 될 수도 있다. 인터페이스들은, 당업계에 알려져 있는 바와 같이, 컴퓨팅 디바이스 (200) 에서의 다양한 소프트웨어 모듈들과 기능들 사이에 제공되어 이들 사이의 통신을 가능하게 할 수도 있다.
일부 실시형태들에서, 컴퓨팅 디바이스 (200) 는 컴퓨팅 디바이스 (200) 로 하여금 공통 통신 애플리케이션 (234) (예를 들어, 올조인®) 의 카피 (copy) 를 작동시키는 다른 컴퓨팅 디바이스들과 통신하는 것을 가능하게 할 수도 있는 공통 통신 애플리케이션 (234) 을 포함할 수도 있다. 공통 통신 애플리케이션 (234) 은 메모리 (214) 에 저장되고 범용 프로세서 (206) 에 의해 실행되는 API들의 콜렉션 또는 소프트웨어 프로그램일 수도 있다. 공통 통신 애플리케이션 (234) 을 통해, 범용 프로세서 (206) 는 컴퓨팅 디바이스 (200) 또는 다른 디바이스 (즉, 요청 디바이스) 로 하여금 컴퓨팅 디바이스들의 하나 이상의 인근의 클러스터들을 식별하는 것을 가능하게 하도록 그룹화 정보, 거리 임계 값들, 및/또는 다른 설명 정보에 대한 요청들을 전송 및 수신할 수도 있다.
일부 실시형태들에서, 컴퓨팅 디바이스 (200) 는 컴퓨팅 디바이스 (200) 의 위치 및 이동을 결정함에 있어서 유용할 수도 있는 다양한 센서들 (230) 을 포함할 수도 있다. 예를 들어, 센서들 (230) 은 카메라, 자이로스코프, 가속도계, 광-센서 등을 포함할 수도 있다. 컴퓨팅 디바이스 (200) 는 또한, 예를 들어, RF 리소스 (218b) 및 제 2 무선 안테나 (220b) 를 통해 위성으로부터 GPS 신호들을 수신하는 것에 의해, 컴퓨팅 디바이스 (200) 의 GPS 좌표들을 수신/결정하는데 이용될 수도 있는 GPS 수신기 유닛 (232) 을 옵션적으로 포함할 수도 있다. 일부 특정 실시형태들에서, 컴퓨팅 디바이스 (200) 의 위치, 다른 센서 정보, 및/또는 스테이터스에 관한 정보 (즉, 설명 정보) 는 RF 리소스 (218a 또는 218b) 를 통해 공통 통신 애플리케이션 (234) 을 가진 다른 컴퓨팅 디바이스들과 교환될 수도 있다.
도 3a 내지 도 3c 는 다양한 실시형태들에 따라 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 일괄적으로 결정하기 위해 공통 통신 애플리케이션 (예를 들어, 공통 통신 애플리케이션 (234)) 을 통해 서로 통신하는 컴퓨팅 디바이스들 (예를 들어, 도 1 및 도 2 의 컴퓨팅 디바이스들 (110, 120 내지 128, 200)) 의 예시적인 시스템들을 예시한다.
도 3a 는 요청 디바이스 (301) 가, 응답 디바이스들 (302a 내지 302c) 로부터, 응답 디바이스들 (302a 내지 302c) 의 비교적 짧은 거리 임계치 내에 있는 인근의 디바이스들의 그룹화 정보를 각각 요청하는 일 예시적인 시스템 (300) 을 예시한다. 요청 디바이스 (301) 는 소정의 거리 값을 나타내는 거리 임계치를 결정할 수도 있다. 일부 실시형태들에서, 거리 임계치는, 예를 들어, 최소 RSSI 값, 최대 블루투스® 안테나 이득으로서, 및/또는 GPS 좌표들에 의해 결정되는 것과 같은 최소 공간 거리로서 표현될 수도 있다. 요청 디바이스 (301) 는 요청 디바이스의 사용자에 의해 조정될 수도 있는 슬라이더 입력 인터페이스 (314) 의 포지션에 기초하여 거리 임계치를 결정할 수도 있다.
요청 디바이스 (301) 는 결정된 거리 임계치 및 그룹화 정보에 대한 요청을 응답 디바이스들 (302a 내지 302c) 에 무선 연결들 (308a) 을 통해 전송할 수도 있다. 요청 디바이스 (301) 는 결정된 거리 임계치를 응답 디바이스들 (302a 내지 302c) 에 그룹화 정보에 대한 요청의 부분으로서 또는 별개의 통신의 부분으로서 전송할 수도 있다. 일부 실시형태들에서, 응답 디바이스들 (302a 내지 302c) 은 요청 디바이스 (301) 로부터 전송된 통신들의 소정의 범위 (예를 들어, 최대, 최소, 또는 다른 미리 결정된 범위) 내에 있을 수도 있다. 이러한 실시형태들에서, 요청 디바이스 (301) 는 소정의 통신 범위 내의 임의의 컴퓨팅 디바이스에 그룹화 정보에 대한 요청 및 거리 임계치를 전송할 수도 있다.
일부 실시형태들에서, 컴퓨팅 디바이스들 (301, 302a 내지 302c) 은 동일한 공통 통신 애플리케이션 (예를 들어, 공통 통신 애플리케이션 (234)) 을 활용하여, 그에 의해, 예컨대 공통 통신 애플리케이션을 통해 통신물들을 수신하도록 구성된 응답 디바이스들 (302a 내지 302c) 각각에 대한 공개 포트에 그룹화 정보에 대한 요청을 전송하는 것에 의해, 요청 디바이스 (301) 로 하여금 응답 디바이스들 (302a 내지 302c) 과 통신하는 것을 이들의 특정 연락처 정보를 알지 않고도 가능하게 할 수도 있다.
요청 디바이스 (301) 로부터 결정된 거리 임계 값 및 그룹화 정보에 대한 요청을 수신한 것에 응답하여, 응답 디바이스들 (302a 내지 302c) 각각은 거리 임계 값 내에 있는 이들의 각각의 부근들에서의 컴퓨팅 디바이스들을 식별할 수도 있다. 설명의 용이를 위해, 거리 임계치는 응답 디바이스들 (302a 내지 302c) 각각의 주위의 경계 (perimeter) 들 (306a 내지 306c) 로서 도 3a 에 예시된 예에서 표현되고, 컴퓨팅 디바이스가 경계들 (306a 내지 306c) 내측에 있을 때 컴퓨팅 디바이스는 응답 디바이스들 (302a 내지 302c) 중 하나의 응답 디바이스의 거리 임계치 내에 있다.
제 1 응답 디바이스 (302a) 는 무선 연결 (308b) 을 통해 신호들을 수신하거나 및/또는 제 2 응답 디바이스 (302b) 와 통신할 수도 있다. 제 2 응답 디바이스 (302b) 로부터 수신된 정보에 기초하여, 제 1 응답 디바이스 (302a) 는 제 2 응답 디바이스 (302b) 가 제 1 응답 디바이스 (302a) 의 거리 임계치 내에 (즉, 경계 (306a) 내에) 있다는 것을 결정할 수도 있다. 예를 들어, 제 1 응답 디바이스 (302a) 는 제 2 응답 디바이스 (302b) 과 연관된 RSSI 값을 측정할 수도 있고, 측정된 RSSI 값을, 거리 임계치와 연관된 RSSI 값과 비교하여 제 2 응답 디바이스 (302b) 가 거리 임계치보다 더 가깝다는 것을 결정할 수도 있다. 그 결과, 제 1 응답 디바이스 (302a) 는 거리 임계치 내에 총 2 개의 컴퓨팅 디바이스들 (즉, 제 1 및 제 2 응답 디바이스들 (302a, 302b)) 이 존재한다는 것을 무선 연결 (308a) 을 통해 요청 디바이스 (301) 에게 리포팅할 수도 있다. 일부 실시형태들에서, 응답 디바이스들 (302a 내지 302c) 은 거리 임계치 내에 있는 것으로 결정된 컴퓨팅 디바이스들에 요청 디바이스 (301) 를 포함시키지 않을 수도 있다.
이와 유사하게, 제 2 응답 디바이스 (302b) 는 무선 연결 (308b) 을 통해 제 1 응답 디바이스 (302a) 로부터 수신된 신호들/통신물들에 기초하여 제 1 응답 디바이스 (302a) 가 거리 임계 값보다 더 가깝다는 (즉, 경계 (306b) 내에 있다는) 것을 결정할 수도 있다. 그러나, 제 2 응답 디바이스 (302b) 는 무선 연결 (308c) 을 통해 제 3 응답 디바이스 (302c) 로부터 수신된 신호들/통신물들에 기초하여 제 3 응답 디바이스 (302c) 가 거리 임계 값보다 더 멀리 있다는 (즉, 경계 (306c) 외측에 있다는) 것을 결정할 수도 있다. 따라서, 제 2 응답 디바이스 (302b) 는 2 개의 컴퓨팅 디바이스들 (즉, 제 1 및 제 2 응답 디바이스들 (302a, 302b)) 이 거리 임계치 내에 있다는 것을 무선 연결 (308a) 을 통해 요청 디바이스 (301) 에게 리포팅할 수도 있지만, 제 3 응답 디바이스 (302c) 는 그의 존재를 알고 있더라도 리포팅하지 않는다.
어떠한 다른 컴퓨팅 디바이스들도 제 3 응답 디바이스 (302c) 의 거리 임계치 내에 (즉, 경계 (306c) 내에) 존재하지 않으므로, 제 3 응답 디바이스 (302c) 는 단지 하나의 컴퓨팅 디바이스 (즉, 그 자신) 가 거리 임계치 내에 있다는 것을 무선 연결 (308a) 을 통해 요청 디바이스 (301) 에게 리포팅할 수도 있다.
(테이블 (318) 에 요약된) 응답 디바이스들 (302a 내지 302c) 각각으로부터 그룹화 정보를 수신한 것에 응답하여, 요청 디바이스 (301) 는 인근에 컴퓨팅 디바이스들의 3 개의 구별되는 클러스터들: 제 1 응답 디바이스 (302a) 에 의해 리포팅되는 것과 같은 2 개의 컴퓨팅 디바이스들의 제 1 클러스터 (312a), 제 2 응답 디바이스 (302b) 에 의해 리포팅되는 것과 같은 2 개의 컴퓨팅 디바이스들의 제 2 클러스터 (312b), 및 제 3 응답 디바이스 (302c) 에 의해 리포팅되는 것과 같은 하나의 컴퓨팅 디바이스의 제 3 클러스터 (312c) 가 존재한다는 것을 결정할 수도 있다.
요청 디바이스 (301) 는 클러스터들 (312a 내지 312c) 을 디스플레이 패널 (예를 들어, 터치스크린 디스플레이 (226)) 상에 디스플레이할 수도 있다. 일부 실시형태들에서, 클러스터들 (312a 내지 312c) 각각 내의 컴퓨팅 디바이스들의 배향 및 배열은 임의적일 수도 있거나 또는 디바이스들의 상대 포지션들을 반영할 수도 있다. 요청 디바이스 (301) 가 (예를 들어, 도 3c 를 참조하여 설명되는 바와 같이) 응답 디바이스들 (302a 내지 302c) 로부터 다양한 위치, 스테이터스, 및 센서 정보를 수신하는 다른 실시형태들에서, 요청 디바이스 (301) 는 디바이스들의 실제 또는 상대 위치들을 반영하는 방식으로 클러스터들 (312a 내지 312c) 에 포함된 디바이스들을 디스플레이할 수도 있거나, 및/또는 요청 디바이스 (301) 는 사용자가 디스플레이된 클러스터들을 사용자가 영역에서 보이는 컴퓨팅 디바이스들과 시각적으로 매칭시키는 것을 지원할 수도 있는 다양한 다른 구성 (configuration) 들/배향들로 수신된 정보를 디스플레이할 수도 있다. 일부 실시형태들에서, 요청 디바이스 (301) 는 각각의 클러스터의 개개의 멤버들을 식별하는 정보를 수신할 수도 있고, 동일한 멤버들을 갖는 클러스터들 (예를 들어, 클러스터들 (312a, 312b)) 을 결합할 수도 있으며, 중복 클러스터들의 각각의 세트에 대해 단지 하나의 대표적인 클러스터만을 디스플레이할 수도 있다.
도 3a 에 예시된 예에서, 거리 임계 값은 슬라이더 입력 인터페이스 (314) 상에 나타낸 바와 같이 비교적 짧을 수도 있다. 일부 실시형태들에서, 응답 디바이스들이 비교적 가까운 디바이스들만을 단지 리포팅할 것이기 때문에 컴퓨팅 디바이스들의 비교적 보다 작은 클러스터들을 식별함에 있어서 보다 짧은 거리 임계 값이 유용할 수도 있다. 한편, 보다 긴 거리 임계 값을 응답 디바이스들에 전송하는 것에 의해, 요청 디바이스는 응답 디바이스들로 하여금 인근의 컴퓨팅 디바이스들 대부분을 식별하게 하여, 요청 디바이스로 하여금 컴퓨팅 디바이스들의 보다 큰 클러스터들을 식별하는 것을 가능하게 할 수도 있다.
도 3b 는 요청 디바이스 (예를 들어, 도 3a 의 요청 디바이스 (301)) 가 응답 디바이스들의 비교적 긴 거리 임계 값 내에 있는 인근의 디바이스들에 관한 응답 디바이스들 (302a 내지 302c) 로부터의 그룹화 정보를 요청하는 일 예시적인 시스템 (320) 을 예시한다. 상술된 바와 같이, 요청 디바이스 (301) 는 수신된 그룹화 정보를 이용하여 인근의 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 식별 또는 결정할 수도 있다.
도 3b 에 예시된 예에서, 요청 디바이스 (301) 는 도 3a 에 예시된 예에 도시된 거리 임계 값보다 더 큰 거리 임계 값을 - 예컨대 사용자에 의해 설정된 슬라이더 입력 인터페이스 (314) 의 포지션에 기초하여 - 결정하였다. 예를 들어, 요청 디바이스 (301) 의 사용자는 더 많은 컴퓨팅 디바이스들에게 메시징하기를 원할 수도 있어서, 그에 따라 비교적 큰 거리 임계 값을 입력할 수도 있고, 이 비교적 큰 거리 임계 값은 (예를 들어, 도 3a 에 예시된 예와 비교하면) 요청 디바이스 (301) 로 하여금 궁극적으로 더 많은 디바이스들을 포함하는 컴퓨팅 디바이스들의 클러스터들을 식별하게 할 수도 있다. 요청 디바이스 (301) 는 (예를 들어, 도 3a 를 참조하여 상술된 바와 같이) 무선 연결들 (308a) 을 통해 응답 디바이스들 (302a 내지 302c) 각각에게 결정된 거리 임계 값 및 그룹화 정보에 대한 요청을 전송할 수도 있다.
거리 임계 값을 수신한 것에 응답하여, 응답 디바이스들 (302a 내지 302c) 은 상술된 바와 같이 그 임계치 내에 있는 컴퓨팅 디바이스들을 결정/식별할 수도 있다. 도 3b 에 예시된 예에서, 제 1 응답 디바이스 (302a) 는 제 2 응답 디바이스 (302b) 로부터의 시그널링 및/또는 메시징을 수신할 수도 있고, 그 시그널링/메시징에 기초하여, 제 2 응답 디바이스 (302b) 가 거리 임계치보다 더 가깝다는 (즉, 경계 (322a) 내에 있다는) 것을 결정할 수도 있다. 제 1 응답 디바이스 (302a) 는 2 개의 컴퓨팅 디바이스들 (그 자신을 포함하고 요청 디바이스 (301) 를 배제함) 이 거리 임계치 내에 있다는 것을 요청 디바이스 (301) 에게 리포팅할 수도 있다.
제 2 응답 디바이스 (302b) 는 이와 유사하게, 제 1 및 제 3 응답 디바이스들 (302a, 302c) 이 거리 임계치보다 더 가깝다는 (즉, 경계 (322b) 내에 있다는) 것을, 무선 연결들 (308b, 308c) 을 통해 이들 디바이스들로부터 각각 수신된 신호들 및/또는 메시징에 기초하여 결정할 수도 있고, 제 2 응답 디바이스 (302b) 는 3 개의 컴퓨팅 디바이스들 (그 자신을 포함하고 요청 디바이스 (301) 를 배제함) 이 거리 임계치 내에 있다는 것을 응답 디바이스에게 리포팅할 수도 있다. 도 3a 에 예시된 예와 비교하면, 제 2 응답 디바이스 (302b) 는 비교적 더 많은 컴퓨팅 디바이스들이 거리 임계치 내에 있다는 것을 결정할 수도 있고, 그에 따라, 요청 디바이스 (301) 에게 보다 높은 개수를 리포팅할 수도 있다.
제 3 응답 디바이스 (302c) 는 무선 연결들 (308c, 308d) 을 통해 수신된 시그널링 및/또는 메시지들에 기초하여 제 2 응답 디바이스 (302b) 및 다른 컴퓨팅 디바이스 (304) 가 거리 임계치보다 더 가깝다는 (즉, 경계 (322c) 내에 있다는) 것을 식별할 수도 있다. 이에 응답하여, 제 3 응답 디바이스 (302c) 는 3 개의 컴퓨팅 디바이스들 (즉, 응답 디바이스들 (302b 및 302c) 및 다른 컴퓨팅 디바이스 (304)) 이 거리 임계치 내에 있다는 것을 요청 디바이스 (301) 에게 리포팅할 수도 있다. 다른 컴퓨팅 디바이스 (304) 는 요청 디바이스 (301) 와 직접적으로 통신하지 않을 수도 있는데, 이는 예를 들어 요청 디바이스 (301) 및 컴퓨팅 디바이스 (304) 가 통신 범위 밖에 있기 때문이다. 그럼에도 불구하고, 다른 컴퓨팅 디바이스 (304) 는 제 3 응답 디바이스 (302c) 의 임계 거리 내에 있을 수도 있고, 그에 따라 식별되고 요청 디바이스 (301) 에게 리포팅될 수도 있다.
(도 3b 에 예시된 테이블 (326) 에 요약된 것과 같은) 응답 디바이스들 (302a 내지 302c) 로부터 수신된 거리 내의 디바이스들의 리포팅된 개수들에 기초하여, 요청 디바이스 (301) 는 응답 디바이스들 (302a 내지 302c) 각각으로부터의 리포트들에 대응하는 컴퓨팅 디바이스들의 3 개의 구별되는 클러스터들이 존재한다는 것을 결정할 수도 있고, 이들을 디스플레이 패널 (예를 들어, 터치스크린 디스플레이 (226)) 상에 디스플레이할 수도 있다. 도 3b 에 예시된 예에서, 제 1 클러스터 (324a) 는 제 1 및 제 2 응답 디바이스들 (302a, 302b) 에 대응하는 2 개의 컴퓨팅 디바이스들을 포함하고, 제 2 클러스터 (324b) 는 제 1, 제 2, 및 제 3 응답 디바이스들 (302a 내지 302c) 에 대응하는 3 개의 컴퓨팅 디바이스들을 포함하고, 제 3 클러스터 (324c) 는 제 2 및 제 3 응답 디바이스들 (302b, 302c) 및 다른 컴퓨팅 디바이스 (304) 에 대응하는 3 개의 컴퓨팅 디바이스들을 포함한다. 상술된 바와 같이, 디스플레이된 클러스터들 (324a 내지 324c) 은 클러스터들 (324a 내지 324c) 의 각각의 멤버들의 표현들을 포함할 수도 있고, 이들 표현들은 다양한 구성들에 따라 포지셔닝되거나 및/또는 배향될 수도 있다.
일부 실시형태들에서, 요청 디바이스 (301) 는 디스플레이된 클러스터들 (324a 내지 324c) 중 하나를 선택하는 사용자 입력을 (예를 들어, 터치 스크린 디스플레이 상의 사용자 입력으로서) 수신할 수도 있고, 이에 응답하여, 요청 디바이스 (301) 는 선택된 클러스터에서의 컴퓨팅 디바이스들에게 메시지, 커맨드, 또는 다른 신호를 전송할 수도 있다. 선택된 클러스터가 요청 디바이스 (301) 의 통신 범위 밖에 있는 컴퓨팅 디바이스를 포함하는 일부 특정 실시형태들에서, 요청 디바이스 (301) 는 범위 밖의 컴퓨팅 디바이스와 간접적으로 통신할 수도 있다. 예를 들어, 요청 디바이스 (301) 는 컴퓨팅 디바이스 (304) 에 대해 의도된 메시지를 제 3 응답 디바이스 (302c) 에 전송할 수도 있고, 제 3 응답 디바이스 (302c) 는 요청 디바이스 (301) 를 대신하여 컴퓨팅 디바이스 (304) 에게 메시지를 포워딩할 수도 있고 요청 디바이스 (301) 에게 컴퓨팅 디바이스 (304) 로부터의 응답을 포워딩할 수도 있다.
도 3c 는 요청 디바이스 (301) 가, 응답 디바이스들 (342a 내지 342c) 로부터, 요청 디바이스로 하여금 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 더 정확히 결정하고 이들 클러스터들 내의 컴퓨팅 디바이스들을 식별하는 것을 가능하게 할 수도 있는 부가적인 설명 정보 및 인근의 디바이스들에 관한 그룹화 정보를 요청하는 일 예시적인 시스템 (340) 을 예시한다. 다양한 실시형태들에서, 요청 디바이스 (301) 는 수신된 그룹화 정보 및 설명 정보 (예를 들어, 센서 정보, 위치 정보, 스테이터스 정보 등) 를 이용하여 컴퓨팅 디바이스들의 하나 이상의 인근의 클러스터들을 식별 또는 결정할 수도 있다.
도 3c 에 예시된 예에서 (그리고 도 3b 를 참조하여 설명된 바와 같이), 요청 디바이스 (301) 는 거리 임계 값을 결정하고, 결정된 거리 임계 값 및 그룹화 정보에 대한 요청을 응답 디바이스들 (342a 내지 342c) 각각에게 무선 연결들 (360a) 을 통해 전송할 수도 있다. 일부 실시형태들에서, 그룹화 정보에 대한 요청은 또한, 요청 디바이스 (301) 가 클러스터에 속하는 특정 컴퓨팅 디바이스들을 결정하는 것을 도울 수도 있는 다양한 타입들의 센서 데이터, 위치 정보, 스테이터스 데이터 등을 포함하는 인근의 컴퓨팅 디바이스들에 대한 설명 정보에 대한 요청을 포함할 수도 있다. 요청 디바이스는 또한, 요청 디바이스의 사용자가 디스플레이된 클러스터를 사용자가 부근에 보이는 디바이스들과 시각적으로 매칭시키는 것을 지원하기 위해 요청 디바이스 (301) 로 하여금 디바이스들의 위치, 현재 동작들, 및 다른 정보의 더 정확한 표시들을 디스플레이하거나 또는 제시하는 것을 가능하게 할 수도 있는, 클러스터를 갖는 컴퓨팅 디바이스들에 관한 부가적인 정보를 요청할 수도 있다.
제 1 응답 디바이스 (342a) 는 예컨대 무선 연결 (360b) 을 통해 제 2 응답 디바이스 (342b) 로부터 신호들 및/또는 통신물들을 수신하는 것에 의해, 거리 임계치 내의 (예를 들어, 경계 (346a) 내의) 컴퓨팅 디바이스들을 검출할 수도 있다.
일부 실시형태들에서, 응답 디바이스로부터 정보에 대한 요청을 수신한 것에 응답하여, 컴퓨팅 디바이스는 설명 정보의 다양한 타입들을 포함하는 정보를 응답 디바이스에 전송할 수도 있다. 이러한 설명 정보의 예들로는 그의 현재 위치 (예를 들어, GPS 좌표들), 그의 이동 데이터 (예를 들어, 가속도계, 자이로스코프, 및 나침반 데이터), 그의 센서 데이터 (예를 들어, 광도계 판독치들 및 카메라 정보), 및 동작 스테이터스 정보 (예를 들어, 그의 디바이스-타입 및 그것이 액티브 데이터 또는 음성 호 중에 있는지 여부) 를 포함한다. 따라서, 도 3c 에 예시된 예에서, 제 1 응답 디바이스 (342a) 는 요청 디바이스 (301) 에 의한 이용을 위해 설명 정보에 대해 제 2 응답 디바이스 (342b) 에게 질의할 수도 있고, 제 2 응답 디바이스 (342b) 는 응답 디바이스 (342b) 의 디바이스 타입 (즉, 제 2 응답 디바이스 (342b) 가 세탁기임) 을 나타내는 설명 정보로 응답할 수도 있다.
제 1 응답 디바이스 (342a) 는 거리 임계치 내의 컴퓨팅 디바이스들 (즉, 제 1 및 제 2 응답 디바이스들 (342a, 342b)) 의 결정된 개수를 요청 디바이스 (301) 에 리포팅할 수도 있다. 제 1 응답 디바이스 (342a) 는 또한 다른 응답 디바이스들로부터 수신된 설명 정보 (예를 들어, 제 2 응답 디바이스 (342b) 의 디바이스 타입) 뿐만 아니라, 그 자신의 설명 정보 (예를 들어, 현재 나침반 판독치 (362)) 를 요청 디바이스 (301) 에 전송할 수도 있다.
(예를 들어, 도 3c 에 예시된 테이블 (358) 에 요약된 것과 같은) 컴퓨팅 디바이스들의 리포팅된 개수를 나타내는 그룹화 정보 및 부가적인 설명 정보를 제 1 응답 디바이스 (342a) 로부터 수신한 것에 응답하여, 요청 디바이스 (301) 는 2 개의 컴퓨팅 디바이스들의 클러스터 (352a) 가 존재한다는 것, (예를 들어, 나침반 판독치 (362) 에 기초하여) 클러스터 (352a) 내의 하나의 컴퓨팅 디바이스가 특정 방향으로 향하고 있다는 것, 그리고 클러스터 (352a) 내의 다른 컴퓨팅 디바이스가 세탁기라는 것을 결정할 수도 있다. 요청 디바이스 (301) 는 클러스터 (352a) 내의 컴퓨팅 디바이스들을 디스플레이할 수도 있다. 요청 디바이스 (301) 는 또한, 예컨대 하나의 컴퓨팅 디바이스가 나침반 판독치 (362) 와 일치하는 방향을 향하고 있음을 그리고 도 3c 에 예시된 예에서 다른 컴퓨팅 디바이스가 세탁기임을 나타내는 것에 의해, 클러스터 내의 컴퓨팅 디바이스와 연관된 설명 정보를 디스플레이할 수도 있다.
요청 디바이스 (301) 로부터 거리 임계 값을 수신한 것에 응답하여, 제 2 응답 디바이스 (342b) 는 이와 유사하게, 제 1 및 제 3 응답 디바이스들 (342a, 342c) 이 거리 임계치보다 더 가깝다는 (예를 들어, 경계 (346b) 내에 있다는) 것을 결정할 수도 있고, 제 1 및 제 3 응답 디바이스 (342a, 342c) 로부터 설명 정보 (예를 들어, 위치, 스테이터스, 센서 등의 정보) 를 요청하고 수신할 수도 있다. 도 3c 에 예시된 예에서, 제 2 응답 디바이스 (342b) 는 제 1 응답 디바이스 (342a) 로부터 나침반 판독치 (362) 를 수신할 수도 있고, 제 3 응답 디바이스 (342c) 가 음성 호에 현재 관여됨을 나타내는 스테이터스 정보 (364) 를 제 3 응답 디바이스 (342c) 로부터 수신할 수도 있다. 테이블 (358) 에 요약된 바와 같이, 제 2 응답 디바이스 (342b) 는 3 개의 컴퓨팅 디바이스들이 거리 임계치 내에 있음을 나타내는 그룹화 (즉, 응답 디바이스 (342a 내지 342c)) 를 위한 정보를 요청 디바이스 (301) 에 리포팅할 수도 있다. 제 2 응답 디바이스 (342b) 는 또한 제 1 응답 디바이스 (342a) 의 나침반 측정치 (362), 그의 디바이스 타입 (예를 들어, 세탁기), 및 제 3 응답 디바이스 (342c) 의 스테이터스 정보 (364) 를 요청 디바이스 (301) 에 전송할 수도 있다. 요청 디바이스 (301) 는 제 2 응답 디바이스 (342b) 로부터 수신된 정보를 활용하여 3 개의 컴퓨팅 디바이스들의 클러스터 (352b) 가 존재한다는 것, 컴퓨팅 디바이스들 중 하나가 나침반 판독치 (362) 와 관련하여 배향된다는 것, 다른 컴퓨팅 디바이스가 세탁기라는 것, 그리고 또 다른 컴퓨팅 디바이스가 스테이터스 정보 (364) 에 기초하여 액티브 음성 호에 현재 관여된다는 것을 결정할 수도 있다.
이와 유사하게, 제 3 응답 디바이스 (342c) 는 요청 디바이스 (301) 로부터 거리 임계 값 및 그룹화 정보에 대한 요청을 수신한 것에 응답하여 동일한 또는 유사한 동작들을 수행할 수도 있다. 그 결과, 제 3 응답 디바이스 (342a) 는 2 개의 컴퓨팅 디바이스들 (예를 들어, 제 1 및 제 2 응답 디바이스들 (342b, 342c)) 이 거리 임계치 내에 (예를 들어, 제 3 응답 디바이스 (342c) 주위의 경계 (346c) 내에) 있음을 나타내는 그룹화 정보를 리포팅할 수도 있고, 거리 임계치 내의 디바이스들에 관련된 부가적인 설명 정보 (예를 들어, 스테이터스 정보 (364) 및 제 2 응답 디바이스 (342b) 가 세탁기라는 것) 를 리포팅할 수도 있다. 제 3 응답 디바이스 (342c) 로부터 이 정보의 수신시, 요청 디바이스 (301) 는 2 개의 컴퓨팅 디바이스들의 클러스터 (352c) 가 존재한다는 것, 컴퓨팅 디바이스들 중 하나가 세탁기라는 것, 그리고 다른 컴퓨팅 디바이스가 액티브 음성 호 중에 있다는 것을 결정할 수도 있다. 요청 디바이스 (301) 는, 클러스터 (352c) 내의 하나의 컴퓨팅 디바이스가 세탁기라는 것 그리고 클러스터 (352c) 내의 다른 컴퓨팅 디바이스가 (전화 아이콘에 의해 예시되는 바와 같이) 음성 호 중에 있다는 것의 표시와 함께, 클러스터 (352c) 를 디스플레이할 수도 있다.
도 4 는 하나 이상의 응답 디바이스들로부터 수신된 그룹화 정보에 기초하여 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 결정하기 위해 요청 디바이스의 디바이스 프로세서에 의해 구현될 수도 있는 일 실시형태의 방법 (400) 을 예시한다. 방법 (400) 은 컴퓨팅 디바이스 (예컨대 도 1 내지 도 3 을 참조하여 설명된 컴퓨팅 디바이스들 (110, 200, 및 301)) 의 프로세서 (예를 들어, 도 2 의 범용 프로세서 (206), 기저대역 모뎀 프로세서 (216), 별개의 제어기 등) 로 구현될 수도 있다. 디바이스 프로세서는 블록 402 에서 방법 (400) 을 구현하는 애플리케이션이 활성화될 때에 응답하여 방법 (400) 의 동작들을 수행할 수도 있다. 이러한 애플리케이션은 공통 통신 애플리케이션 (예를 들어, 올조인®) 을 활성화시키는 것 또는 그 공통 통신 애플리케이션에 로그 온하는 것을 포함할 수도 있다.
블록 404 에서, 디바이스 프로세서는, 요청 디바이스에 대한 사용자 입력에 의해 결정되거나 및/또는 그 사용자 입력으로서 수신되는 값일 수도 있고 (예를 들어, RSSI 값, 블루투스® 안테나 이득, GPS 좌표들에 기초한 물리적 거리 등에 의해 나타내는 바와 같이) 특정 거리 값을 표현할 수도 있는 거리 임계치를 결정할 수도 있다. 다양한 실시형태들에서, 거리 임계치는 (예를 들어, 도 3a 및 도 3b 를 참조하여 상술된 바와 같이) 식별된 클러스터들에 포함된 컴퓨팅 디바이스들의 사이즈 또는 개수를 제한하기 위해 선택될 수도 있다.
블록 406 에서, 디바이스 프로세서는 인근에 있는 하나 이상의 응답 디바이스들을, 예컨대 이들 디바이스들로부터 전송된 신호들, 통신물들, 및/또는 메시지들에 대해 모니터링하는 것에 의해, 식별할 수도 있다. 일부 실시형태들에서, 디바이스 프로세서는 공통 통신 애플리케이션을 통해 인근의 응답 디바이스들로부터 전송된 무선 송신들에 대해 모니터링할 수도 있다.
블록 408 에서, 디바이스 프로세서는, 블록 404 에서 결정된 거리 임계치 내의 컴퓨팅 디바이스들의 그룹화 정보에 대한 요청을, 블록 406 에서 식별된 응답 디바이스들에 전송할 수도 있다. 일부 실시형태들에서, 디바이스 프로세서는 그룹화 정보에 대한 요청에 거리 임계치를 포함시킬 수도 있거나 또는, 대안적으로, 식별된 응답 디바이스들에게 거리 임계치를 별개의 메시지로 전송할 수도 있다.
블록 410 에서, 디바이스 프로세서는 블록 406 에서 식별된 응답 디바이스들로부터 그룹화 정보를 수신할 수도 있다. (예를 들어, 도 3a 내지 도 3c 를 참조하여) 설명된 바와 같이, 그룹화 정보는 요청 디바이스 상의 디바이스 프로세서로 하여금 컴퓨팅 디바이스들의 하나 이상의 클러스터들이 각각의 응답 디바이스의 부근 내에 있는지 여부를 결정하는 것을 가능하게 할 수도 있는 다양한 타입들의 정보 및 데이터를 포함할 수도 있다. 일부 실시형태들에서, 그룹화 정보는 각각의 응답 디바이스의 거리 임계 값 내에 있는 다수의 컴퓨팅 디바이스들을 나타낼 수도 있다. (예를 들어, 도 5 에 관련된) 일부 실시형태들에서, 하나 이상의 응답 디바이스들로부터 수신된 그룹화 정보는 디바이스 프로세서가 컴퓨팅 디바이스들의 클러스터의 멤버들의 특성들, 배향, 및/또는 위치를 결정하는데 이용될 수도 있는 데이터 및/또는 정보와 같은 설명 정보를 부가적으로 포함할 수도 있다.
블록 410 에서 수신된 그룹화 정보에 기초하여, 디바이스 프로세서는 블록 412 에서 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 식별할 수도 있다. 일부 실시형태들에서, 디바이스 프로세서는 각각의 응답 디바이스로부터 수신된 그룹화 정보에 기초하여 컴퓨팅 디바이스들의 클러스터를 식별할 수도 있다. 다시 말해, 디바이스 프로세서는 특정 응답 디바이스에 의해 전송된 특정 그룹화 정보에 대응하는 컴퓨팅 디바이스들의 클러스터를 생성할 수도 있다. 예를 들어, 디바이스 프로세서는 3 개의 응답 디바이스들로부터 그룹화 정보를 수신한 것에 응답하여 컴퓨팅 디바이스들의 3 개의 클러스터들이 존재한다는 것을 결정할 수도 있다. 일부 실시형태들에서, 디바이스 프로세서는 불필요한 그룹화 정보를 제거하는 것에 의해 컴퓨팅 디바이스들의 고유한 클러스터들만을 단지 식별할 수도 있다. 예를 들어, 디바이스 프로세서는 2 개의 응답 디바이스들이 동일한 컴퓨팅 디바이스들에 관한 정보를 리포팅할 가능성이 매우 많다는 것을 결정할 수도 있고, 그 결과, 디바이스 프로세서는 2 개의 상이한 응답 디바이스들로부터 수신한 리포트들에도 불구하고 단지 하나의 클러스터만이 존재한다는 것을 결정할 수도 있다.
블록 414 에서, 디바이스 프로세서는 블록 412 에서 결정된 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 디스플레이할 수도 있다. 일부 실시형태들에서, 디스플레이된 클러스터는 그 클러스터의 각각의 멤버뿐만 아니라, 사용자가 디스플레이된 클러스터를 그 사용자가 실제로 부근에서 볼 수도 있는 컴퓨팅 디바이스들과 매칭시키는 것을 지원할 수도 있는 임의의 식별 정보를 개별적으로 나타낼 수도 있다.
옵션적 결정 블록 416 에서, 디바이스 프로세서는 그것이 컴퓨팅 디바이스들의 선택된 클러스터와 통신하기 위한 사용자 입력을 수신하였는지 여부를 결정할 수도 있다. 일부 실시형태들에서, 요청 디바이스는 블록 414 에서 디스플레이된 컴퓨팅 디바이스들의 클러스터들 중 하나 (또는 그 이상) 를 선택하는 사용자 입력을 (예를 들어, 터치스크린 디스플레이 (226) 및/또는 다른 사용자 인터페이스 메커니즘을 통해) 수신할 수도 있다. 컴퓨팅 디바이스들의 선택된 클러스터와 통신하기 위한 사용자 입력이 요청 디바이스 상에서 수신되었다는 결정에 응답하여 (즉, 옵션적 결정 블록 416 = "예"), 프로세서 디바이스는 옵션적 블록 418 에서 선택된 클러스터 디바이스들의 각각의 멤버에게 통신물을 옵션적으로 전송할 수도 있다. 일부 실시형태들에서, 디바이스 프로세서는 공통 통신 애플리케이션 (예를 들어, 올조인®) 을 통해 컴퓨팅 디바이스들의 선택된 클러스터의 각각의 멤버에게 하나 이상의 메시지들, 신호들, 커맨드들 등을 전송하여, 그에 의해 요청 디바이스의 타입, 브랜드, 모델 등에 상관없이 요청 디바이스로부터 전송된 메시지들을 수신하고 프로세싱할 수도 있음을 보장할 수도 있다.
컴퓨팅 디바이스들의 선택된 클러스터와 통신하기 위한 사용자 입력이 요청 디바이스 상에서 수신되지 않았다는 결정에 응답하여 (즉, 옵션적 결정 블록 416 = "아니오") 또는 옵션적 블록 418 에서 컴퓨팅 디바이스들의 선택된 클러스터에 통신물을 전송한 것에 응답하여, 디바이스 프로세서는 결정 블록 420 에서 거리 임계치를 변화시킬지 여부를 결정할 수도 있다. 일부 실시형태들에서, 디바이스 프로세서는 상이한 거리 임계 값을 특정하는 새로운 사용자 입력이 수신되었는지 여부를 결정할 수도 있다. 예를 들어, 디바이스 프로세서는 보다 작은 디바이스 임계 값이 사용자 입력을 통해 수신되었다고 결정할 수도 있고, 이 사용자 입력은 컴퓨팅 디바이스들의 보다 작은 클러스터들과 통신하려는 사용자의 요망을 반영할 수도 있다.
거리 임계치를 변화시키지 않는 것으로 결정한 것에 응답하여 (즉, 결정 블록 420 = "아니오"), 디바이스 프로세서는 사용자 입력을 대기하는 루프에서 옵션적 결정 블록 416 의 동작들을 반복할 수도 있다. 거리 임계치를 변화시키는 것으로 결정한 것에 응답하여 (즉, 결정 블록 420 = "예"), 디바이스 프로세서는 블록 404 에서 새로운 거리 임계 값을 결정할 수도 있고, 상술된 바와 같이 방법 (400) 의 동작들을 계속 수행할 수도 있다.
도 5 는 하나 이상의 응답 디바이스들로부터 수신된 설명 정보 (예를 들어, 위치 정보, 센서 정보, 및/또는 스테이터스 정보) 에 기초하여 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 결정하기 위해 요청 디바이스의 디바이스 프로세서에 의해 구현될 수도 있는 일 실시형태의 방법 (500) 을 예시한다. 방법 (500) 은 컴퓨팅 디바이스 (예컨대 도 1 내지 도 3 을 참조하여 설명된 컴퓨팅 디바이스들 (110, 200, 및 301)) 의 프로세서 (예를 들어, 도 2 의 범용 프로세서 (206), 기저대역 모뎀 프로세서 (216), 별개의 제어기 등) 로 구현될 수도 있다. 방법 (500) 의 동작들은 도 4 를 참조하여 상술된 방법 (400) 의 블록들 410 내지 414 에서 수행되는 동작들의 실시형태들을 구현할 수도 있다. 따라서, 디바이스 프로세서는 방법 (400) 의 블록 410 에서 하나 이상의 응답 디바이스들로부터 그룹화 정보를 요청한 후에 방법 (500) 의 동작들을 수행하는 것을 시작할 수도 있다.
상술된 바와 같이, 요청 디바이스 상의 디바이스 프로세서는 컴퓨팅 디바이스들의 클러스터를 결정/식별할 때 컴퓨팅 디바이스에 관련된 다양한 타입들의 정보를 활용할 수도 있다. 예를 들어, 디바이스 프로세서는 컴퓨팅 디바이스들의 클러스터를 더 정확히 식별하기 위해 컴퓨팅 디바이스들의 위치, 특성들, 배향, 동작들 등에 관련된 설명 정보를 활용할 수도 있다. 디바이스 프로세서는 또한 설명 정보를 활용하여 식별된 클러스터의 멤버들의 위치, 배향, 및/또는 현재 활동들의 표시를 디스플레이하여, 그에 의해 요청 디바이스의 사용자가 디스플레이된 클러스터에서의 컴퓨팅 디바이스들을 부근에서 동작하는 디바이스들과 시각적으로 매칭시키는 것이 가능할 수도 있는 가능성을 증가시킬 수도 있다.
블록 502 에서, 디바이스 프로세서는 하나 이상의 식별된 응답 디바이스들의 거리 임계 값 내의 컴퓨팅 디바이스들에 관하여 방법 (400) 의 블록 406 에서 식별된 하나 이상의 응답 디바이스들로부터 설명 정보를 수신할 수도 있다. 일부 실시형태들에서, 설명 정보는 위치 정보, 센서 정보, 및 스테이터스 정보 중 적어도 하나를 포함할 수도 있다. (예를 들어, 도 3c 를 참조하여) 설명된 바와 같이, 설명 정보는 컴퓨팅 디바이스의 상대 또는 절대 위치 및/또는 그 컴퓨팅 디바이스의 이동 특성들을 나타낼 수도 있는 다양한 타입들의 데이터 또는 정보를 포함할 수도 있다. 예를 들어, 위치 정보는 컴퓨팅 디바이스가 특정 GPS 좌표에 위치됨을 그리고 컴퓨팅 디바이스의 가속도계가 컴퓨팅 디바이스 상에서 취득된 나침반 측정치에 의해 확증되는 전진 이동을 리포팅하고 있음을 나타낼 수도 있다. 설명 정보는 또한 또는 대안적으로, 하나 (또는 그 이상) 의 식별된 응답 디바이스들의 거리 임계치 내의 각각의 컴퓨팅 디바이스에 특정된 다양한 다른 타입들의 정보, 예컨대 (예를 들어, 데이터 호/인터넷 세션을 행하는) 이들의 현재 동작 스테이터스를 포함할 수도 있다.
블록 504 에서, 디바이스 프로세서는 방법 (400) 의 블록 410 에서 수신된 그룹화 정보에 기초하여 그리고 블록 504 에서 수신되는 수신된 설명 정보에 기초하여 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 식별할 수도 있다. 상술된 바와 같이, 디바이스 프로세서는 컴퓨팅 디바이스들의 하나 이상의 고유한 (즉, 불필요하거나 또는 중복되지 않는) 클러스터들을 식별하기 위해 그룹화 정보를 활용할 수도 있다. 일부 실시형태들에서, 디바이스 프로세서는 수신된 설명 정보에 적어도 부분적으로 기초하여 하나 이상의 고유한 클러스터들을 결정/식별하기 위해 각각의 응답 디바이스로부터 수신된 모든 정보를 컴파일할 수도 있다. 이러한 실시형태들에서, 디바이스 프로세서는 각각의 리포팅한 또는 리포팅된 컴퓨팅 디바이스에 대한 특정 식별 정보를 비교하는 것에 의해 2 개 이상의 응답 디바이스들이 컴퓨팅 디바이스들의 동일한 클러스터 (즉, 동일한 멤버들을 갖는 클러스터) 를 효과적으로 리포팅하고 있는지 여부를 결정할 수도 있다. 예를 들어, 2 개의 응답 디바이스들의 거리 임계치 내에 있는 것으로 리포팅된 컴퓨팅 디바이스들의 GPS 좌표들 및 나침반 판독치들에 기초하여, 디바이스 프로세서는 2 개의 응답 디바이스들이 동일한 컴퓨팅 디바이스들을 리포팅하고 있다는 것 그리고, 그에 따라, 컴퓨팅 디바이스들의 단지 하나의 클러스터가 이들 컴퓨팅 디바이스들을 표현하는데 필요하다는 것을 결정할 수도 있다. 다시 말해, 디바이스 프로세서는 다수의 클러스터들이 동일한 멤버들을 포함함을 정보의 다수의 세트들이 나타내는 상황들에서 컴퓨팅 디바이스들의 단지 하나의 클러스터만이 존재한다고 결정할 수도 있다.
블록 506 에서, 디바이스 프로세서는 수신된 그룹화 정보에 기초하여 그리고 수신된 설명 정보에 기초하여 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 디스플레이할 수도 있다. 일부 실시형태들에서, 디바이스 프로세서는 컴퓨팅 디바이스들의 클러스터 내의 각각의 컴퓨팅 디바이스를 디스플레이하여, 블록 502 에서 수신된 것과 같은 이들 컴퓨팅 디바이스들에 대한 설명 정보에 기초하여 결정된 것과 같은 이들의 상대 또는 절대 포지션을 정확히 반영할 수도 있다. 예를 들어, 클러스터 내의 컴퓨팅 디바이스는 그 컴퓨팅 디바이스와 연관된 나침반 측정치와 일치하는 방향으로 요청 디바이스의 디스플레이 상에 배향될 수도 있다.
일부 실시형태들에서, 디바이스 프로세서는 또한 컴퓨팅 디바이스들의 클러스터 내의 각각의 컴퓨팅 디바이스와 연관된 설명 정보 (예를 들어, 위치, 센서, 및/또는 스테이터스 정보) 에 주석을 달거나 또는 그렇지 않으면 그 설명 정보를 제시할 수도 있다. 예를 들어, 디바이스 프로세서는 디바이스의 현재 동작 스테이터스 또는 상태를 표현하는 특정 아이콘 (예를 들어, 도 3c 를 참조하여 설명된 바와 같이 컴퓨팅 디바이스가 액티브 음성 호에 현재 관여됨을 나타내기 위한 전화 아이콘) 을 이용하여 클러스터 내의 컴퓨팅 디바이스를 나타낼 수도 있다. 클러스터 내의 각각의 컴퓨팅 디바이스의 다양한 특성들을 설명하는 이 부가적인 정보를 사용자에게 제시하는 것에 의해, 디바이스 프로세서는 사용자가 컴퓨팅 디바이스들의 디스플레이 클러스터를 부근에서 가시적인 컴퓨팅 디바이스들과 매칭시키는 것이 가능한 가능성을 증가시킬 수도 있다.
디바이스 프로세서는 방법 (400) 의 옵션적 결정 블록 416 에서 컴퓨팅 디바이스들의 선택된 클러스터와 통신하기 위한 사용자 입력이 요청 디바이스 상에서 수신되었는지 여부를 결정하는 것으로 계속될 수도 있다. 다른 실시형태들에서, 디바이스 프로세서는 도 6 을 참조하여 아래에 설명되는 바와 같이 방법 (600) 을 실행하는 것으로 계속될 수도 있다.
도 6 은 컴퓨팅 디바이스들의 하나 이상의 필터링된 클러스터들을 디스플레이하기 위해 요청 디바이스의 디바이스 프로세서에 의해 구현될 수도 있는 일 실시형태의 방법 (600) 을 예시한다. 방법 (600) 은 컴퓨팅 디바이스 (예컨대 도 1 내지 도 3 을 참조하여 설명된 컴퓨팅 디바이스들 (110, 200, 및 301)) 의 프로세서 (예를 들어, 도 2 의 범용 프로세서 (206), 기저대역 모뎀 프로세서 (216), 별개의 제어기 등) 로 구현될 수도 있다. 방법 (600) 의 동작들은 도 5 를 참조하여 상술된 방법 (500) 의 블록 506 에서 수행되는 동작들의 실시형태들을 구현할 수도 있다. 따라서, 디바이스 프로세서는 방법 (500) 의 블록 504 에서 그룹화 정보 및 설명 정보 (예를 들어, 위치, 센서, 및/또는 스테이터스 정보) 에 기초하여 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 식별한 것에 응답하여 방법 (600) 의 동작들을 수행하는 것을 시작할 수도 있다.
결정 블록 602 에서, 디바이스 프로세서는 예컨대 컴퓨팅 디바이스의 소정의 타입만이 디스플레이될 수도 있다는 것을 특정하는 사용자 입력이 수신되었는지 여부를 결정하는 것에 의해, 방법 (500) 의 블록 504 에서 식별된 컴퓨팅 디바이스들의 하나 이상의 클러스터들에서의 컴퓨팅 디바이스들을 필터링할지 여부를 결정할 수도 있다. 다시 말해, 디바이스 프로세서는 사용자에게 디스플레이되는 컴퓨팅 디바이스들의 클러스터 내의 컴퓨팅 디바이스들을 선택할 때 사용자의 선호도들을 예상하거나 또는 그 사용자의 선호도들에 응답할 수도 있다. 컴퓨팅 디바이스들의 하나 이상의 식별된 클러스터들에 포함된 컴퓨팅 디바이스들을 필터링하지 않는 것으로 결정한 것에 응답하여 (즉, 결정 블록 602 = "아니오"), 디바이스 프로세서는 도 5 를 참조하여 상술된 바와 같이 방법 (500) 의 블록 502 에서 수신된 설명 정보 (예를 들어, 위치, 센서, 및/또는 스테이터스 정보) 에 기초하여 그리고 그룹화 정보에 기초하여 컴퓨팅 디바이스들의 하나 이상의 클러스터들을 디스플레이할 수도 있다.
프로세서가 컴퓨팅 디바이스들의 하나 이상의 클러스터들에 포함된 디바이스들을 필터링해야 한다는 결정에 응답하여 (즉, 결정 블록 602 = "예"), 디바이스 프로세서는 블록 604 에서 하나 이상의 필터링 기준들을 결정할 수도 있다. 이들 필터링 기준들은 사용자 입력으로서 수신된 사용자 선호도들을 포함할 수도 있다. 예를 들어, 사용자 입력은 (예를 들어, 홈 어플라이언스들과는 대조적으로) 스마트 폰들에만 메시징하려는/스마트 폰들만을 보려는 사용자의 요망을 나타낼 수도 있고, 디바이스 프로세서는 "디바이스 타입" 이 컴퓨팅 디바이스들의 클러스터들을 디스플레이할 때 적용될 필터링 기준이라는 것을 결정/식별할 수도 있다. 다른 예에서, 디바이스 프로세서는 소정의 방향을 향하는 컴퓨팅 디바이스들만이 디스플레이될 수도 있다는 것을 (예를 들어, 사용자 입력에 기초하여) 결정할 수도 있고, 이 소정의 방향은 클러스터의 각각의 멤버와 연관된 나침반 측정치들에 기초하여 결정될 수도 있다.
블록 606 에서, 디바이스 프로세서는 블록 604 에서 결정된 필터링 기준들에 기초하여 컴퓨팅 디바이스들의 하나 이상의 식별된 클러스터들을 필터링할 수도 있다. 일부 실시형태들에서, 컴퓨팅 디바이스들의 클러스터를 필터링하는 것에 의해, 디바이스 프로세서는 디스플레이될 수도 있는 클러스터에서의 이들 컴퓨팅 디바이스들만을 식별할 수도 있다. 디바이스 프로세서는 또한, 블록 610 에서 컴퓨팅 디바이스들의 하나 이상의 필터링된 클러스터들을 디스플레이하여, 단지 유용한 또는 관련있는 컴퓨팅 디바이스들만이 사용자에게 디스플레이됨을 보장할 수도 있다. 위의 예들에서, 디바이스 프로세서는 소정의 방향을 향하는 컴퓨팅 디바이스들만을 또는 스마트 폰들만을 디스플레이할 수도 있다.
디바이스 프로세서가 블록 610 에서 컴퓨팅 디바이스들의 필터링된 클러스터들을 디스플레이하든지 또는 블록 506 에서 필터링되지 않은 클러스터들을 디스플레이하든지 여부에 관계없이, 디바이스 프로세서는 선택된 클러스터 컴퓨팅 디바이스들과 통신하기 위한 사용자 입력이 요청 디바이스 상에서 수신되었는지 여부를 결정하는 것으로 방법 (400) 의 옵션적 결정 블록 416 에서 계속될 수도 있다.
도 7 은 컴퓨팅 디바이스들의 선택된 클러스터의 멤버들에게 조화된 액션들을 전송하기 위해 요청 디바이스의 디바이스 프로세서에 의해 구현될 수도 있는 일 실시형태의 방법 (418a) 을 예시한다. 방법 (700) 은 컴퓨팅 디바이스 (예컨대 도 1 내지 도 3 을 참조하여 설명된 컴퓨팅 디바이스들 (110, 200, 및 301)) 의 프로세서 (예를 들어, 도 2 의 범용 프로세서 (206), 기저대역 모뎀 프로세서 (216), 별개의 제어기 등) 로 구현될 수도 있다. 방법 (418a) 의 동작들은 도 4 를 참조하여 상술된 방법 (400) 의 옵션적 블록 418 에서 수행되는 동작들의 실시형태들을 구현할 수도 있다. 따라서, 디바이스 프로세서는 컴퓨팅 디바이스들의 선택된 클러스터와 통신하기 위한 사용자 입력이 요청 디바이스 상에서 수신되었다는 결정에 응답하여 (즉, 옵션적 결정 블록 416 = "예") 방법 (418a) 의 동작들을 수행하는 것을 시작할 수도 있다.
블록 702 에서, 디바이스 프로세서는 동시에 액션을 수행하도록 컴퓨팅 디바이스들의 선택된 클러스터의 각각의 멤버를 구성하는데 이용될 수도 있는 커맨드 또는 다른 시그널링일 수도 있는 조화된 액션을 결정할 수도 있다. 일부 실시형태들에서, 디바이스 프로세서는 요청 디바이스 상에서 수신된 사용자 입력에 기초하여 조화된 액션을 결정할 수도 있다. 예를 들어, 조화된 액션은 동일한 시간에 소리를 재생하도록 컴퓨팅 디바이스들의 선택된 클러스터의 각각의 멤버를 구성하라는 커맨드를 포함할 수도 있다. 클러스터에서의 모든 컴퓨팅 디바이스들을 프롬프팅 (prompting) 하는 것은, 각각의 디바이스가 소리를 재생할 때 단지 하나의 컴퓨팅 디바이스만이 소리를 재생한 경우보다 더 놓치기 (또는 무시하기) 어려울 것이기 때문에 선택된 클러스터에서의 컴퓨팅 디바이스들의 사용자들의 주의를 끌기에 유용할 수도 있다. 다른 예에서, 조화된 액션은 선택된 클러스터의 각각의 멤버에 대해 메시지를 디스플레이하는 것, 일부 기능을 개시하는 것, 셰이커를 활성화시키는 것 등에 관련될 수도 있다.
블록 704 에서, 디바이스 프로세서는 예컨대 공통 통신 애플리케이션을 통해, 컴퓨팅 디바이스들의 선택된 클러스터의 각각의 멤버에게 조화된 액션 요청을 전송할 수도 있다. 일부 실시형태들 (미도시) 에서, 조화된 액션을 수신한 것에 응답하여, 각각의 멤버는 동일한 시간에 조화된 액션을 수행할 수도 있다. 디바이스 프로세서는 도 4 를 참조하여 상술된 바와 같이 방법 (400) 의 결정 블록 420 에서 거리 임계 값을 변화시킬지 여부를 결정할 수도 있다.
도 8 은 응답 디바이스의 소정의 거리 임계 값 내에 있는 컴퓨팅 디바이스들을 설명하는 그룹 정보를 생성하기 위해 응답 디바이스의 디바이스 프로세서에 의해 구현될 수도 있는 일 실시형태의 방법 (800) 을 예시한다. 방법 (800) 은 컴퓨팅 디바이스 (예컨대 도 1 내지 도 3 을 참조하여 설명된 컴퓨팅 디바이스들 (110, 200, 301, 302a 내지 302c, 및 342a 내지 342c)) 의 프로세서 (예를 들어, 도 2 의 범용 프로세서 (206), 기저대역 모뎀 프로세서 (216), 별개의 제어기 등) 로 구현될 수도 있다. 디바이스 프로세서는 방법을 구현하는 애플리케이션이 블록 402 에서 활성화된 것에 응답하여 방법 (800) 의 동작들을 수행하는 것을 시작할 수도 있다. 이러한 애플리케이션은 공통 통신 애플리케이션 (예를 들어, 올조인®) 을 활성화시키는 것 또는 그 공통 통신 애플리케이션에 로그 온하는 것을 포함할 수도 있다.
블록 804 에서, 응답 디바이스 상의 디바이스 프로세서는 응답 디바이스의 거리 임계치 내의 컴퓨팅 디바이스들에 관련된 그룹화 정보에 대한 요청 디바이스로부터의 요청들에 대해 통신 채널을 모니터링할 수도 있다. 일부 실시형태들에서, 응답 디바이스는 그룹화 정보에 대한 요청들에 대한 공통 통신 애플리케이션과 연관된 공개 포트를 모니터링할 수도 있다. 상술된 바와 같이, 응답 디바이스는 요청 디바이스로부터 수신된 거리 임계 값에 의해 정의된 것과 같은 응답 디바이스 주위의 소정의 영역 내의 컴퓨팅 디바이스들에 관한 그룹화 정보를 수집할 수도 있다. 다시 말해, 요청 디바이스는 컴퓨팅 디바이스들의 클러스터로서 요청 디바이스 상에서 디스플레이될 수도 있는 영역에서의 컴퓨팅 디바이스들에 관한 정보를 식별하고 리포팅하는 것을 응답 디바이스에게 의존할 수도 있다.
결정 블록 806 에서, 디바이스 프로세서는 응답 디바이스의 거리 임계 값 내의 컴퓨팅 디바이스들에 관련된 그룹화 정보에 대한 요청 디바이스로부터의 요청이 수신되었는지 여부를 결정할 수도 있다. 그룹화 정보에 대한 요청이 수신되지 않았다는 결정에 응답하여 (즉, 결정 블록 806 = "아니오"), 디바이스 프로세서는 블록 804 에서 요청 디바이스로부터의 요청들에 대해 통신 채널을 계속 모니터링할 수도 있다.
원거리 임계치 내의 컴퓨팅 디바이스들에 관련된 그룹화 정보에 대한 요청이 요청 디바이스로부터 수신되었다는 결정에 응답하여 (즉, 결정 블록 806 = "예"), 디바이스 프로세서는 블록 808 에서 응답 디바이스의 수신된 거리 임계치 내의 하나 이상의 컴퓨팅 디바이스들을 식별할 수도 있다. 일부 실시형태들에서, 수신된 거리 임계 값은 최소 RSSI 값으로서 표현될 수도 있다. 이러한 실시형태들에서, 디바이스 프로세서는 수신된 거리 임계치와 연관된 RSSI 값과 동일하거나 또는 그보다 더 큰 RSSI 값을 신호들이 갖는 응답 디바이스 주위의 이들 컴퓨팅 디바이스들만을 단지 식별할 수도 있다. 다른 예에서, 디바이스 프로세서는 거리 임계치를 이용하여 블루투스® 안테나의 이득을 조정하여, 응답 디바이스가 수신된 거리 임계 값 내에 있는 디바이스들과 통신 (또는 디바이스들을 검출) 하는 것이 단지 가능함을 보장할 수도 있다.
옵션적 블록 810 에서, 디바이스 프로세서는 블록 808 에서 식별된 컴퓨팅 디바이스들로부터 (즉, 응답 디바이스의 수신된 거리 임계치 내에 있는 컴퓨팅 디바이스들로부터) 설명 정보 (예를 들어, 위치, 센서, 및/또는 스테이터스 정보) 를 요청할 수도 있다. 설명된 바와 같이, 이러한 타입들의 정보는 식별된 컴퓨팅 디바이스들의 다양한 특성들, 예컨대 이들의 각각의 위치들, 배향들, 현재 동작 스테이터스들 등에 관련될 수도 있다. 디바이스 프로세서는 옵션적 블록 812 에서 응답 컴퓨팅 디바이스들로부터 이러한 설명 정보를 옵션적으로 수신할 수도 있다. 일부 실시형태들에서, 이러한 정보의 요청 및 수신은 공통 통신 애플리케이션을 통해 식별된 컴퓨팅 디바이스들과 디바이스 프로세서 사이에서 교환되는 메시징/시그널링을 통해 행해질 수도 있다.
블록 814 에서, 디바이스 프로세서는 예컨대 거리 임계치 내의 다수의 식별된 컴퓨팅 디바이스들을 결정하는 것에 의해, 블록 806 에서 식별된 응답 디바이스의 수신된 거리 임계치 내의 컴퓨팅 디바이스들을 설명하는 그룹화 정보를 생성할 수도 있다. 일부 실시형태들에서, 그룹화 정보는 응답 디바이스에 관련된 상세들을 포함할 수도 있다. 예를 들어, 임계 값 내의 다수의 디바이스들은 응답 디바이스를 포함할 수도 있다.
디바이스 프로세서는 예컨대 공통 통신 애플리케이션으로 전송된 메시징을 통해, 블록 816 에서 요청 디바이스에 그룹화 정보를 전송할 수도 있고, 요청 디바이스는 그룹화 정보를 이용하여 컴퓨팅 디바이스들의 클러스터를 결정할 수도 있다. 옵션적 실시형태들에서, 디바이스 프로세서는 또한 옵션적 블록 818 에서 요청 컴퓨팅 디바이스에 설명 정보 (예를 들어, 위치, 센서 및/또는 스테이터스 정보) 를 전송하여, 그에 의해 (예를 들어, 도 5 및 도 6 을 참조하여 상술된 바와 같이) 요청 디바이스로 하여금 설명 정보에 기초하여 식별된 컴퓨팅 디바이스들을 디스플레이하거나 및/또는 그룹화 정보에서 표현된 식별된 컴퓨팅 디바이스들 사이를 구별하는 것을 가능하게 할 수도 있다.
디바이스 프로세서는 블록 804 에서 응답 디바이스의 일부 거리 임계치 내의 컴퓨팅 디바이스들에 관련된 그룹화 정보에 대한 요청 디바이스로부터의 다음 요청에 대해 다시 모니터링하는 것에 의해 루프에서 위의 동작들을 반복할 수도 있다.
다양한 실시형태들은 각각의 사용자들의 어드레싱 또는 개인 정보를 드러내는 일 없이 컴퓨팅 디바이스들 사이의 메시징 교환들을 가능하게 하는 공통 통신 애플리케이션을 이용하여 구현될 수도 있다. 컴퓨팅 디바이스들의 클러스터링이 분리 거리들에 기초하기 때문에, 공통 통신 프로토콜에 의해 요구되는 것들 외에는, (예를 들어, 랜덤 또는 애드 혹 식별자들에 기초하여) 익명일 수도 있는, 어떠한 디바이스 어드레스들도 교환될 필요가 없다. 또한, 나침반 방위들, 가속도, 호 상태 등에 관련된 부가적인 정보 요청들은 익명이고 각각의 사용자의 개인 정보를 드러내지 않을 수도 있는데, 이는 이러한 정보가 이러한 정보의 물리적 표시 (예를 들어, 컴퓨팅 디바이스가 포인팅하고 있는 곳 또는 사용자가 이들의 스마트 폰 상에서 대화하고 있는지 여부) 를 보기 위해 존재하는 누군가에게만 유용하기 때문이다.
다양한 실시형태들의 방법들은 다양한 컴퓨팅 디바이스들 중 임의의 컴퓨팅 디바이스에서 구현될 수도 있고, 그것 (예를 들어, 컴퓨팅 디바이스 (900)) 에 대한 예가 도 9 에 예시된다. 다양한 실시형태들에 따르면, 컴퓨팅 디바이스 (900) 는 도 1 및 도 2 를 참조하여 상술된 것과 같은 컴퓨팅 디바이스들 (110, 120, 200) 과 유사할 수도 있다.
컴퓨팅 디바이스 (900) 는 내부 메모리 (906) 및 터치스크린 제어기 (904) 에 커플링된 프로세서 (902) 를 포함할 수도 있다. 프로세서 (902) 는 일반 또는 특정 프로세싱 태스크들을 위해 설계된 하나 이상의 멀티-코어 집적 회로들일 수도 있다. 내부 메모리 (906) 는 휘발성 또는 비휘발성 메모리일 수도 있고, 또한 보안 및/또는 암호화된 메모리, 또는 비보안 및/또는 비암호화된 메모리, 또는 이들의 임의의 조합일 수도 있다. 터치스크린 제어기 (904) 및 프로세서 (902) 는 또한 저항식 센싱 터치스크린, 정전식 센싱 터치스크린, 적외선 센싱 터치스크린 등과 같은 터치스크린 패널 (912) 에 커플링될 수도 있다. 부가적으로, 컴퓨팅 디바이스 (900) 의 디스플레이는 터치 스크린 능력을 가질 필요는 없다.
컴퓨팅 디바이스 (900) 는 프로세서 (902) 및 안테나 (910) 에 커플링되고 셀룰러 통신물들을 전송 및 수신하도록 구성되는 셀룰러 네트워크 트랜시버 (908) 를 가질 수도 있다. 트랜시버 (908) 및 안테나 (910) 는 다양한 실시형태의 방법들을 구현하기 위한 상술된 회로부에서 이용될 수도 있다. 컴퓨팅 디바이스 (900) 는 트랜시버 (908) 및/또는 프로세서 (902) 에 커플링되고 상술된 바와 같이 구성되는 SIM 카드 (913) 를 포함할 수도 있다. 컴퓨팅 디바이스 (900) 는 셀룰러 네트워크를 통해 통신을 가능하게 하고 프로세서 (902) 에 커플링되는 셀룰러 네트워크 무선 모뎀 칩 (917) 을 포함할 수도 있다.
컴퓨팅 디바이스 (900) 는 또한 오디오 출력들을 제공하기 위한 스피커들 (914) 을 포함할 수도 있다. 컴퓨팅 디바이스 (900) 는 또한 본 명세서에서 논의된 컴포넌트들 중 전부 또는 일부를 포함하기 위해, 플라스틱, 금속, 또는 재료들의 조합으로 구성된 하우징 (920) 을 포함할 수도 있다. 컴퓨팅 디바이스 (900) 는 일회용 또는 재충전가능 배터리와 같은, 프로세서 (902) 에 커플링된 전력 소스 (922) 를 포함할 수도 있다. 재충전가능 배터리는 또한 컴퓨팅 디바이스 (900) 외부의 소스로부터 충전 전류를 수신하기 위해 주변 디바이스 커넥션 포트에 커플링될 수도 있다. 컴퓨팅 디바이스 (900) 는 또한 사용자 입력들을 수신하기 위한 물리적 버튼 (924) 을 포함할 수도 있다. 컴퓨팅 디바이스 (900) 는 또한 컴퓨팅 디바이스 (900) 를 턴 온 그리고 턴 오프시키기 위한 파워 버튼 (926) 을 포함할 수도 있다.
전술한 방법 설명들 및 프로세스 플로우 다이어그램들은 단지 예시적인 예들로서 제공된 것일 뿐이고, 다양한 실시형태들의 단계들이 제시된 순서로 수행되어야 함을 요구하거나 암시하려고 의도된 것이 아니다. 당업자에 의해 인식되는 바와 같이, 전술한 실시형태들에서의 단계들의 순서는 임의의 순서로 수행될 수도 있다. "그 후", "그 후에", "그 다음에" 등과 같은 단어들은 단계들의 순서를 제한하려고 의도된 것이 아니다; 이러한 단어들은 단지 방법들의 설명을 통해 독자를 가이드하기 위해 사용된다. 추가로, 예를 들어, "a", "an" 또는 "the" 와 같은 관사들을 사용한, 청구항 엘리먼트들에 대한 단수로의 임의의 언급은 그 엘리먼트를 단수로 제한하는 것으로 해석되어서는 안된다.
본 명세서에 개시된 실시형태들과 관련되어 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들, 및 알고리즘 단계들은 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들 양쪽의 조합들로서 구현될 수도 있다. 하드웨어와 소프트웨어의 이러한 상호교환가능성을 명확히 예시하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들, 및 단계들을 이들의 기능성의 관점에서 일반적으로 상술되었다. 이러한 기능성이 하드웨어로서 또는 소프트웨어로서 구현되는지 여부는 전체 시스템에 부과되는 설계 제약들 및 특정 애플리케이션에 좌우된다. 당업자들은 각각의 특정 애플리케이션에 대한 다양한 방법들로 설명된 기능성을 구현할 수도 있지만, 이러한 구현 판정들은 본 발명의 범위로부터의 벗어남을 야기시키는 것으로 해석되어서는 안된다.
본 명세서에 개시된 양태들과 관련되어 설명된 다양한 예시적인 로직들, 논리 블록들, 의지 모듈들 (will modules), 및 회로들을 구현하기 위해 이용된 하드웨어는, 본 명세서에서 설명된 기능들을 수행하도록 설계된 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 집적 회로 (ASIC), 필드 프로그래밍가능 게이트 어레이 (FPGA) 또는 다른 프로그래밍가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 이들의 임의의 조합으로 구현되거나 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안적으로는, 그 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 또한, 프로세서는 컴퓨팅 디바이스들의 조합, 예를 들어, DSP 및 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 협력하는 하나 이상의 마이크로프로세서들, 또는 임의의 다른 이러한 구성으로도 구현될 수도 있다. 대안적으로, 일부 단계들 또는 방법들은 주어진 기능에 특정된 회로부에 의해 수행될 수도 있다.
하나 이상의 예시적인 양태들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현되는 경우, 기능들은 하나 이상의 명령들 또는 코드로서 비일시적 컴퓨터 판독가능 저장 매체 또는 비일시적 프로세서 판독가능 저장 매체 상에 저장될 수도 있다. 본 명세서에 개시된 방법 또는 알고리즘의 단계들은, 비일시적 컴퓨터 판독가능 또는 프로세서 판독가능 저장 매체 상에 상주할 수도 있는 프로세서 실행가능 소프트웨어 모듈에서 구현될 수도 있다. 비일시적 컴퓨터 판독가능 또는 프로세서 판독가능 저장 매체들은 컴퓨터 또는 프로세서에 의해 액세스될 수도 있는 임의의 저장 매체들일 수도 있다. 제한이 아닌 예로서, 이러한 비일시적 컴퓨터 판독가능 또는 프로세서 판독가능 저장 매체들은 RAM, ROM, EEPROM, 플래시 메모리, CD-ROM 또는 다른 광학 디스크 스토리지, 자기 디스크 스토리지 또는 다른 자기 스토리지 디바이스들, 또는 명령들 또는 데이터 구조들의 형태로 원하는 프로그램 코드를 저장하는데 이용될 수도 있으며 컴퓨터에 의해 액세스될 수도 있는 임의의 다른 매체들을 포함할 수 있다. 디스크 (disk) 및 디스크 (disc) 는, 본 명세서에서 사용되는 바와 같이, 콤팩트 디스크 (CD), 레이저 디스크, 광 디스크, 디지털 다기능 디스크 (DVD), 플로피 디스크 및 블루레이 디스크를 포함하며, 여기서 디스크 (disk) 들은 데이터를 자기적으로 보통 재생하지만, 디스크 (disc) 들은 레이저로 데이터를 광학적으로 재생한다. 상기의 조합들도 또한 비일시적 컴퓨터 판독가능 및 프로세서 판독가능 매체들의 범위 내에 포함된다. 부가적으로, 방법 또는 알고리즘의 동작들은 컴퓨터 프로그램 제품에 포함될 수도 있는 비일시적 프로세서 판독가능 저장 매체 및/또는 컴퓨터 판독가능 저장 매체 상의 코드들 및/또는 명령들의 하나 또는 임의의 조합 또는 세트로서 상주할 수도 있다.
개시된 실시형태들의 이전 설명은 당업자가 본 발명을 제조하거나 이용하는 것을 가능하게 하도록 제공된다. 이들 실시형태들에 대한 다양한 변경들은 당업자들에게 쉽게 명백할 것이며, 본 명세서에 정의된 일반적 원리들은 본 발명의 사상 또는 범위로부터 벗어남이 없이 일부 실시형태들에 적용될 수도 있다. 따라서, 본 발명은 본 명세서에 보여진 실시형태들로 제한되도록 의도된 것이 아니라, 본 명세서에 개시된 원리들과 신규한 피처들 및 다음의 청구항들에 부합하는 가장 넓은 범위를 부여받게 하려는 것이다.

Claims (20)

  1. 요청 디바이스에 의해 컴퓨팅 디바이스들의 클러스터를 식별하는 방법으로서,
    상기 요청 디바이스 상에서, 클러스터를 정의하기 위한 거리 임계치를 결정하는 단계;
    상기 요청 디바이스로부터의 그룹화 (grouping) 정보에 대한 요청 및 상기 거리 임계치를 응답 디바이스에 전송하는 단계;
    상기 요청 디바이스 상에서, 상기 응답 디바이스의 상기 거리 임계치 내의 다수의 컴퓨팅 디바이스들을 나타내는 그룹화 정보를 상기 응답 디바이스로부터 수신하는 단계; 및
    상기 요청 디바이스 상에서, 수신된 상기 그룹화 정보에 기초하여 컴퓨팅 디바이스들의 클러스터를 식별하는 단계를 포함하는, 요청 디바이스에 의해 컴퓨팅 디바이스들의 클러스터를 식별하는 방법.
  2. 제 1 항에 있어서,
    상기 컴퓨팅 디바이스들의 클러스터의 디스플레이를 상기 요청 디바이스의 디스플레이 스크린 상에 제시하는 단계를 더 포함하는, 요청 디바이스에 의해 컴퓨팅 디바이스들의 클러스터를 식별하는 방법.
  3. 제 2 항에 있어서,
    상기 컴퓨팅 디바이스들의 클러스터의 디스플레이를 상기 요청 디바이스의 디스플레이 스크린 상에 제시하는 단계는,
    필터링 기준을 결정하는 단계;
    결정된 상기 필터링 기준에 기초하여 상기 컴퓨팅 디바이스들의 클러스터 내의 컴퓨팅 디바이스들을 필터링하는 단계; 및
    필터링된 상기 컴퓨팅 디바이스들만을 포함하는 디스플레이를 상기 요청 디바이스의 상기 디스플레이 스크린 상에 제시하는 단계를 포함하는, 요청 디바이스에 의해 컴퓨팅 디바이스들의 클러스터를 식별하는 방법.
  4. 제 1 항에 있어서,
    상기 컴퓨팅 디바이스들의 클러스터의 사용자 입력 선택을 수신하는 단계; 및
    상기 컴퓨팅 디바이스들의 선택된 상기 클러스터 내의 각각의 컴퓨팅 디바이스에 통신물을 전송하는 단계를 더 포함하는, 요청 디바이스에 의해 컴퓨팅 디바이스들의 클러스터를 식별하는 방법.
  5. 제 4 항에 있어서,
    상기 컴퓨팅 디바이스들의 선택된 상기 클러스터 내의 각각의 컴퓨팅 디바이스에 통신물을 전송하는 단계는, 상기 컴퓨팅 디바이스들의 선택된 상기 클러스터 내의 각각의 컴퓨팅 디바이스에 조화된 액션을 수행하라는 요청을 전송하는 단계를 포함하는, 요청 디바이스에 의해 컴퓨팅 디바이스들의 클러스터를 식별하는 방법.
  6. 제 1 항에 있어서,
    상기 응답 디바이스의 상기 거리 임계치 내의 상기 다수의 컴퓨팅 디바이스들을 설명하는 설명 정보 (descriptive information) 를 상기 응답 디바이스로부터 수신하는 단계를 더 포함하고,
    상기 요청 디바이스 상에서, 수신된 상기 그룹화 정보에 기초하여 상기 컴퓨팅 디바이스들의 클러스터를 식별하는 단계는, 상기 그룹화 정보 및 수신된 설명 정보에 기초하여 상기 컴퓨팅 디바이스들의 클러스터를 식별하는 단계를 포함하는, 요청 디바이스에 의해 컴퓨팅 디바이스들의 클러스터를 식별하는 방법.
  7. 제 6 항에 있어서,
    수신된 상기 설명 정보에 기초하여 상기 컴퓨팅 디바이스들의 클러스터의 디스플레이를 상기 요청 디바이스의 디스플레이 스크린 상에 제시하는 단계를 더 포함하는, 요청 디바이스에 의해 컴퓨팅 디바이스들의 클러스터를 식별하는 방법.
  8. 요청 디바이스로서,
    동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성된 프로세서를 포함하고,
    상기 동작들은,
    클러스터를 정의하기 위한 거리 임계치를 결정하는 것;
    상기 요청 디바이스로부터의 그룹화 정보에 대한 요청 및 상기 거리 임계치를 응답 디바이스에 전송하는 것;
    상기 응답 디바이스의 상기 거리 임계치 내의 다수의 컴퓨팅 디바이스들을 나타내는 그룹화 정보를 상기 응답 디바이스로부터 수신하는 것; 및
    수신된 상기 그룹화 정보에 기초하여 컴퓨팅 디바이스들의 클러스터를 식별하는 것
    을 포함하는, 요청 디바이스.
  9. 제 8 항에 있어서,
    상기 프로세서는, 상기 컴퓨팅 디바이스들의 클러스터의 디스플레이를 상기 요청 디바이스의 디스플레이 스크린 상에 제시하는 것을 더 포함하는 동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성되는, 요청 디바이스.
  10. 제 9 항에 있어서,
    상기 프로세서는, 상기 컴퓨팅 디바이스들의 클러스터의 디스플레이를 상기 요청 디바이스의 디스플레이 스크린 상에 제시하는 것이,
    필터링 기준을 결정하는 것;
    결정된 상기 필터링 기준에 기초하여 상기 컴퓨팅 디바이스들의 클러스터 내의 컴퓨팅 디바이스들을 필터링하는 것; 및
    필터링된 상기 컴퓨팅 디바이스들만을 포함하는 디스플레이를 상기 요청 디바이스의 상기 디스플레이 스크린 상에 제시하는 것
    을 포함하도록 하는 동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성되는, 요청 디바이스.
  11. 제 8 항에 있어서,
    상기 프로세서는,
    상기 컴퓨팅 디바이스들의 클러스터의 사용자 입력 선택을 수신하는 것; 및
    상기 컴퓨팅 디바이스들의 선택된 상기 클러스터 내의 각각의 컴퓨팅 디바이스에 통신물을 전송하는 것
    을 더 포함하는 동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성되는, 요청 디바이스.
  12. 제 11 항에 있어서,
    상기 프로세서는, 상기 컴퓨팅 디바이스들의 선택된 상기 클러스터 내의 각각의 컴퓨팅 디바이스에 통신물을 전송하는 것이,
    상기 컴퓨팅 디바이스들의 선택된 상기 클러스터 내의 각각의 컴퓨팅 디바이스에 조화된 액션을 수행하라는 요청을 전송하는 것
    을 포함하도록 하는 동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성되는, 요청 디바이스.
  13. 제 8 항에 있어서,
    상기 프로세서는, 상기 응답 디바이스의 상기 거리 임계치 내의 상기 다수의 컴퓨팅 디바이스들을 설명하는 설명 정보를 상기 응답 디바이스로부터 수신하는 것을 더 포함하는 동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성되고,
    상기 프로세서는, 수신된 상기 그룹화 정보에 기초하여 상기 컴퓨팅 디바이스들의 클러스터를 식별하는 것이, 상기 그룹화 정보 및 수신된 설명 정보에 기초하여 상기 컴퓨팅 디바이스들의 클러스터를 식별하는 것을 포함하도록 하는 동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성되는, 요청 디바이스.
  14. 제 13 항에 있어서,
    상기 프로세서는 또한, 수신된 상기 설명 정보에 기초하여 상기 컴퓨팅 디바이스들의 클러스터의 디스플레이를 상기 요청 디바이스의 디스플레이 스크린 상에 제시하는 것을 포함하는 동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성되는, 요청 디바이스.
  15. 인근의 컴퓨팅 디바이스들을 식별하기 위해 응답 디바이스 상에서 구현되는 방법으로서,
    상기 응답 디바이스 상에서, 요청 디바이스로부터 거리 임계치를 수신하는 단계;
    상기 응답 디바이스 상에서, 상기 응답 디바이스의 상기 거리 임계치 내의 임의의 컴퓨팅 디바이스들을 식별하는 단계; 및
    상기 응답 디바이스의 상기 거리 임계치 내의 식별된 컴퓨팅 디바이스들에 관한 정보를 상기 요청 디바이스에 전송하는 단계를 포함하는, 인근의 컴퓨팅 디바이스들을 식별하기 위해 응답 디바이스 상에서 구현되는 방법.
  16. 제 15 항에 있어서,
    상기 응답 디바이스의 상기 거리 임계치 내의 식별된 컴퓨팅 디바이스들에 관한 정보를 상기 요청 디바이스에 전송하는 단계는,
    상기 응답 디바이스 상에서, 상기 응답 디바이스의 상기 거리 임계치 내의 다수의 컴퓨팅 디바이스들을 나타내는 그룹화 정보를 생성하는 단계; 및
    상기 응답 디바이스로부터의 상기 그룹화 정보를 상기 요청 디바이스에 전송하는 단계를 포함하는, 인근의 컴퓨팅 디바이스들을 식별하기 위해 응답 디바이스 상에서 구현되는 방법.
  17. 제 15 항에 있어서,
    상기 응답 디바이스의 상기 거리 임계치 내의 식별된 상기 컴퓨팅 디바이스들로부터 설명 정보를 요청하는 단계;
    상기 응답 디바이스 상에서, 식별된 상기 컴퓨팅 디바이스들로부터 설명 정보를 수신하는 단계; 및
    상기 응답 디바이스로부터의 수신된 상기 설명 정보를 상기 요청 디바이스에 전송하는 단계를 더 포함하는, 인근의 컴퓨팅 디바이스들을 식별하기 위해 응답 디바이스 상에서 구현되는 방법.
  18. 응답 디바이스로서,
    동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성된 프로세서를 포함하고,
    상기 동작들은,
    요청 디바이스로부터 거리 임계치를 수신하는 것;
    상기 응답 디바이스의 상기 거리 임계치 내의 임의의 컴퓨팅 디바이스들을 식별하는 것; 및
    상기 응답 디바이스의 상기 거리 임계치 내의 식별된 컴퓨팅 디바이스들에 관한 정보를 상기 요청 디바이스에 전송하는 것
    을 포함하는, 응답 디바이스.
  19. 제 18 항에 있어서,
    상기 프로세서는, 상기 응답 디바이스의 상기 거리 임계치 내의 식별된 상기 컴퓨팅 디바이스들에 관한 정보를 상기 요청 디바이스에 전송하는 것이,
    상기 응답 디바이스의 상기 거리 임계치 내의 다수의 컴퓨팅 디바이스들을 나타내는 그룹화 정보를 생성하는 것; 및
    상기 응답 디바이스로부터의 상기 그룹화 정보를 상기 요청 디바이스에 전송하는 것
    을 포함하도록 하는 동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성되는, 응답 디바이스.
  20. 제 18 항에 있어서,
    상기 프로세서는,
    상기 응답 디바이스의 상기 거리 임계치 내의 식별된 상기 컴퓨팅 디바이스들로부터 설명 정보를 요청하는 것;
    식별된 상기 컴퓨팅 디바이스들로부터 설명 정보를 수신하는 것; 및
    상기 응답 디바이스로부터의 수신된 상기 설명 정보를 상기 요청 디바이스에 전송하는 것
    을 더 포함하는 동작들을 수행하기 위한 프로세서 실행가능 명령들로 구성되는, 응답 디바이스.
KR1020167032254A 2014-04-28 2015-03-06 연관에 기초하여 익명 타깃들에 메시징하는 올조인 KR20160147852A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461984904P 2014-04-28 2014-04-28
US61/984,904 2014-04-28
US14/638,520 US20150312113A1 (en) 2014-04-28 2015-03-04 AllJoyn Messaging Anonymous Targets Based on Association
US14/638,520 2015-03-04
PCT/US2015/019239 WO2015167666A1 (en) 2014-04-28 2015-03-06 Alljoyn messaging anonymous targets based on association

Publications (1)

Publication Number Publication Date
KR20160147852A true KR20160147852A (ko) 2016-12-23

Family

ID=54335818

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167032254A KR20160147852A (ko) 2014-04-28 2015-03-06 연관에 기초하여 익명 타깃들에 메시징하는 올조인

Country Status (7)

Country Link
US (1) US20150312113A1 (ko)
EP (1) EP3138245A1 (ko)
JP (1) JP2017522748A (ko)
KR (1) KR20160147852A (ko)
CN (1) CN106464569B (ko)
BR (1) BR112016024969A2 (ko)
WO (1) WO2015167666A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230063240A (ko) 2021-11-01 2023-05-09 주식회사 모이기술 블록체인 기반의 식물 거래 시스템

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150201025A1 (en) * 2014-01-10 2015-07-16 Brentwood Equities Ltd Establishing communication between electronic devices
US10652385B2 (en) * 2014-10-06 2020-05-12 Mitel Networks Corporation Method and system for viewing available devices for an electronic communication
US9984686B1 (en) * 2015-03-17 2018-05-29 Amazon Technologies, Inc. Mapping device capabilities to a predefined set
KR20160143136A (ko) * 2015-06-04 2016-12-14 엘지전자 주식회사 위치 기반 알림 시스템 및 그것의 제어방법
US10655951B1 (en) 2015-06-25 2020-05-19 Amazon Technologies, Inc. Determining relative positions of user devices
US10365620B1 (en) 2015-06-30 2019-07-30 Amazon Technologies, Inc. Interoperability of secondary-device hubs
KR20170055295A (ko) * 2015-11-11 2017-05-19 엘지전자 주식회사 이동 단말기 및 그 이동 단말기의 제어 방법
CN105471628B (zh) * 2015-11-17 2019-05-31 小米科技有限责任公司 智能设备分组系统、方法及装置
CN105515834B (zh) * 2015-11-27 2019-02-22 小米科技有限责任公司 设备分组管理系统、方法及装置
CN106878352A (zh) * 2015-12-10 2017-06-20 上海中兴软件有限责任公司 一种实现远程访问的方法、AllJoyn网关代理、云服务器及移动设备
CN107087011B (zh) 2016-02-14 2020-10-27 中兴通讯股份有限公司 一种远程访问的实现方法、装置和系统
CN107623873A (zh) * 2016-07-13 2018-01-23 中国科学院声学研究所 基于AllJoyn技术的多屏互动方法、设备和系统
CN111095969B (zh) * 2017-06-16 2023-05-30 交互数字Ce专利控股公司 用于信道探测的方法和设备
US10724867B1 (en) * 2017-08-07 2020-07-28 United Services Automobile Association (Usaa) Systems and methods for position-based building guidance
KR102338376B1 (ko) * 2017-09-13 2021-12-13 삼성전자주식회사 디바이스 그룹을 지정하기 위한 전자 장치 및 이의 제어 방법
CN108093493A (zh) * 2017-12-29 2018-05-29 上海爱优威软件开发有限公司 一种无线网络连接方法、无线网络系统及终端

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003205483A (ja) * 2001-11-07 2003-07-22 Sony Corp ロボットシステム及びロボット装置の制御方法
US7774001B2 (en) * 2005-12-16 2010-08-10 Sony Ericsson Mobile Communications Ab Device and method for determining where crowds exist
US20070250822A1 (en) * 2006-04-25 2007-10-25 Sbc Knowledge Ventures, L.P. Method and apparatus for importing content in a user-defined workflow
EP2588971A4 (en) * 2010-06-29 2013-11-20 Nokia Corp METHOD AND DEVICE FOR CONTEXT-BASED GROUPING
US20120150960A1 (en) * 2010-12-13 2012-06-14 Gargi Nalawade Social Networking
WO2013087088A1 (en) * 2011-12-12 2013-06-20 Greenpeak Technologies N.V. Responder device binding in a wireless system
ES2618320T3 (es) * 2012-05-04 2017-06-21 Itron, Inc. Verificación de la conexión de contadores a la red
CN103458354B (zh) * 2012-05-21 2017-03-15 腾讯科技(深圳)有限公司 一种基于位置的群组生成方法、装置及系统
US9071330B2 (en) * 2012-09-07 2015-06-30 Qualcomm Innovation Center, Inc. Peer-to-peer communication initiated by shared physical experience
CN104969649B (zh) * 2013-02-01 2019-04-09 苹果公司 Wifi实时流和蓝牙共存

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230063240A (ko) 2021-11-01 2023-05-09 주식회사 모이기술 블록체인 기반의 식물 거래 시스템

Also Published As

Publication number Publication date
WO2015167666A1 (en) 2015-11-05
JP2017522748A (ja) 2017-08-10
CN106464569B (zh) 2020-01-14
CN106464569A (zh) 2017-02-22
US20150312113A1 (en) 2015-10-29
EP3138245A1 (en) 2017-03-08
BR112016024969A2 (pt) 2017-08-15

Similar Documents

Publication Publication Date Title
CN106464569B (zh) 一种标识计算设备群集的方法及设备
US11825401B2 (en) Systems and methods for wirelessly modifying detection characteristics of portable devices
US10187919B2 (en) Proximity pairing based on signal strength
RU2658813C2 (ru) Способ и оборудование для управления электронным устройством
CN104333846B (zh) 位置提醒方法及装置
US8326228B2 (en) Headset locator device
US8611869B2 (en) Identification of an alternate contact for use in reaching a mobile device user
CN104640166B (zh) 通信方法及装置
KR102495118B1 (ko) 무선 디바이스 속성 통신
CN104301308B (zh) 通话控制方法及装置
CN115273433A (zh) 多用户环境中的智能警报
US20160142875A1 (en) Location aware personal communication device enabled public addressing (pa) system
US20180176968A1 (en) Apparatus, methods and computer programs for establishing wireless connections
CN109451786A (zh) 无人机管理方法及装置、通信连接建立方法及装置
JP2020507979A (ja) 呼制御方法および関連製品
US20170289155A1 (en) Communication between devices without establishing a persistent connection
CN104936255A (zh) 无线接入控制方法、装置、路由器及终端
CN105208510B (zh) 智能闹铃的方法及装置
CN104581615A (zh) 服务提供方法及装置
KR101674844B1 (ko) 통신 식별자 처리 방법, 장치, 프로그램 및 기록매체
CN109155727A (zh) 传输块调度间隔的配置、确定方法及装置和基站
WO2018201392A1 (zh) 为多模终端配置工作模式的方法及装置
CN105491632A (zh) 无线接入点的切换方法及装置
CN105307226B (zh) 信号源的选择方法、装置及系统
CN105205353B (zh) 一种信息处理方法和电子设备