KR102368456B1 - 피어 기반 장치 집합 동작 - Google Patents

피어 기반 장치 집합 동작 Download PDF

Info

Publication number
KR102368456B1
KR102368456B1 KR1020167035542A KR20167035542A KR102368456B1 KR 102368456 B1 KR102368456 B1 KR 102368456B1 KR 1020167035542 A KR1020167035542 A KR 1020167035542A KR 20167035542 A KR20167035542 A KR 20167035542A KR 102368456 B1 KR102368456 B1 KR 102368456B1
Authority
KR
South Korea
Prior art keywords
action
perform
devices
suitability
user
Prior art date
Application number
KR1020167035542A
Other languages
English (en)
Other versions
KR20170012336A (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 마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Publication of KR20170012336A publication Critical patent/KR20170012336A/ko
Application granted granted Critical
Publication of KR102368456B1 publication Critical patent/KR102368456B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4893Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • 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/23Reliability checks, e.g. acknowledgments or fault reporting
    • H04L51/30
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/4046Arrangements for multi-party communication, e.g. for conferences with distributed floor control
    • H04L65/4076
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/18Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

장치 집합은 사용자에게 메시지를 제공하는 것 또는 사용자가 촬영한 사진을 저장하는 것과 같은 동작을 수행하기 위해 연동할 수 있다. 모든 가용 장치에서 동작을 수행하는 것은 중복을 야기할 수 있고(예를 들면, 각 장치에서 사용자에게 동일한 메시지를 제시함), 사용자 선택에 의존하는 것(예를 들면, 사용자가 음악을 재생하도록 요청하고 구체적으로 장치를 지정함)은 귀찮은 일이 될 수 있다. 동작을 수행하기 위한 장치의 중앙집중형 서버 구동형 선택은 만일 서버가 접근 불능이면 문제가 발생할 수 있고, 및/또는 각 장치의 현재 상태가 현재 통보되지 않으면 부정확할 수 있다. 여기에서 제시된 기술에 따르면, 요청 장치가 장치 집합에 동작 초대를 방송한다. 각 장치는 동작을 수행하기 위한 자신의 적합성을 표시하는 적합성 보고를 제공한다. 요청 장치는 하나 이상의 적당한 장치를 식별하고, 동작을 수행하게 하는 동작 요청을 식별된 장치에 보낸다.

Description

피어 기반 장치 집합 동작{PEER-BASED DEVICE SET ACTIONS}
본 발명은 피어 기반 장치 집합 동작에 대한 것이다.
컴퓨팅 분야에서 많은 시나리오들은 사용자에 의해 조작되는 장치 집합 및 장치 집합 중의 적어도 하나의 장치가 동작을 수행하게 하는 요청을 수반한다. 제1 예로서, 사용자는 모바일 폰, 태블릿 및 머리 장착형 디스플레이와 같은 다양한 휴대용 및 웨어러블 장치를 이용할 수 있고, 메시징 서비스는 메시지, 또는 유입되는 음성 호출과 같이 다른 사용자와의 통신 세션에 참여하게 하는 초대를 사용자에게 제시하도록 장치 집합에게 요청할 수 있다. 제2 예로서, 사용자는 하나 이상의 장치에서 오디오 녹음의 재생과 같은 미디어의 제시(presentation)를 요청할 수 있다. 제3 예로서, 사용자는 카메라로 사진을 촬영하는 것과 같이 장치에서 일부 데이터를 발생할 수 있고, 이러한 데이터는 장치 집합 중의 하나 이상의 장치에 저장될 수 있다.
이 요약은 뒤의 상세한 설명 부분에서 추가로 설명되는 개념들의 선택을 단순화한 형태로 소개하기 위해 제공된다. 이 요약은 청구된 주제의 핵심적 특징 또는 본질적 특징을 식별하기 위한 것으로 의도되지 않고, 또한 청구된 주제의 범위를 제한하는 용도로 의도되지 않는다.
전술한 것들을 포함한 각종의 컴퓨팅 시나리오에서, 장치 집합 중의 장치에 의한 동작의 수행은 다양한 방법으로 달성될 수 있다. 이러한 제1의 예로서, 유입 메시지 또는 사용자에 대한 통신 세션 초대는 모든 장치에 전송될 수 있고, 메시지를 수신한 모든 장치는 그것을 사용자에게 제시할 수 있다(예를 들면, 각 장치에서의 팝업 통지). 그러나 이 기술은 다양한 장치에서 사용자에게 중복 제시를 야기할 수 있고 이것이 사용자를 귀찮게 할 수 있다. 게다가 일부 시나리오에서 메시지의 제시는 부적당하거나(예를 들면, 사용자가 회의에 참석하였을 때 오디오 경보음을 발생하는 오디오 가능 장치), 적용할 수 없거나(예를 들면, 이어폰처럼 화상을 디스플레이할 수 없는 장치에 의해 제시되는 화상을 인용하는 메시지), 및/또는 위험할 수 있다(예를 들면, 자동차를 운전중인 사용자에게 메시지를 제시하는 모바일 폰).
이러한 제2의 예로서, 사용자는 각종 장치와 상호작용하고 각각의 동작을 수행할 특정 장치를 표시할 수 있다. 예를 들면, 사용자는 음악과 같은 미디어의 제시를 요청할 뿐만 아니라 특히 헤드셋을 통하여 또는 특히 태블릿 장치의 스피커를 통하여 음악을 재생하게 하는 요청을 보내는 것과 같이 미디어를 연출하기 위해 원하는 장치를 선택할 수 있다. 그러나 동작을 수행해야 하는 장치의 명시적인 사용자 선택에 대한 신뢰성은 특히 그러한 동작이 빈번한 경우에 사용자에게 귀찮은 일이 될 수 있다.
이러한 제3의 예로서, 중앙집중형 메시지 분배 모델에 있어서, 각 장치의 상태를 통보받는 서버가 동작을 수행하기 위한 옵션을 평가하고, 장치 집합으로부터 특정 장치를 선택하며, 동작을 수행하도록 장치에게 지시할 수 있다. 그러나 그러한 중앙집중화는 동작을 수행할 수 있는 각 장치의 상태에 대한 최신 정보를 가진 서버에 의존한다. 그러한 통지는 비효율적이거나(예를 들면, 그러한 동작을 수행하도록 요청되지 않은 경우에도 장치로부터 서버로 빈번한 상태 갱신을 제공함) 및/또는 부정확할 수 있다(예를 들면, 장치 상태는 통지를 받는 서버보다 더 신속히 변경될 수 있고, 장치는 구식 정보에 기초하여 서버에 의해 선택될 수 있다). 더욱이, 만일 서버가 접근 불능이면(예를 들면, 서버가 전형적으로 인터넷을 통해 접근되지만 개인 영역 장치에 일시적으로 접근 불능일 때), 장치 집합은 그러한 임의의 동작을 수행할 수 없게 된다.
여기에서는 장치 집합 중의 장치들이 동작을 수행할 수 있게 하는 기술들이 제시된다. 그러한 기술에 따라서, 장치 집합에 방송하고 수행할 동작을 특정하는 동작 초대(action invitation)를 요청 장치(requesting device)로부터 수신한 때, 동작을 수행하기 위한 제1 장치의 적합성을 표시하는 적합성 보고를 상기 요청 장치에 전송하게 하고; 상기 적합성 보고에 응답하여 상기 동작을 수행하게 하는 동작 요청을 상기 요청 장치로부터 수신한 때, 상기 요청 장치를 대신하여 동작을 수행하게 한다. 이 기술은 또한 제2 동작을 수행하게 하는 요청을 국부 애플리케이션으로부터 수신한 때, 상기 제2 동작을 특정하는 동작 초대를 상기 장치 집합에 방송하게 하고; 상기 제2 동작을 수행하기 위한 응답 장치(responding device)의 적합성을 표시하는 적합성 보고를 상기 장치 집합 중 적어도 하나의 응답 장치로부터 수신한 때, 선택된 장치를 식별하기 위해 각각의 응답 장치의 각각의 적합성 보고를 평가하게 하고, 상기 제1 장치를 대신하여 동작을 수행하게 하는 제2 동작 요청을 상기 선택된 장치에 보내게 하는 것을 포함할 수 있다. 이 방식으로 장치 집합 중의 장치들은 여기에서 제시된 기술에 따라 동작 수행을 달성하기 위해 연동할 수 있다.
전술한 및 관련 목적을 달성하기 위해, 하기의 설명 및 첨부 도면은 소정의 예시적인 양태 및 구현을 설명한다. 이들은 하나 이상의 양태가 사용될 수 있는 각종 방법 중의 일부만을 표시한다. 본 발명의 다른 양태, 장점 및 신규 특징들은 첨부 도면과 함께 고려할 때 이하의 상세한 설명으로부터 명백하게 될 것이다.
도 1은 장치 집합의 사용자에게 메시지의 제시를 특색지우는 각종 시나리오를 보인 도이다.
도 2는 여기에서 제시되는 기술에 따라서 동작을 수행하는 장치 집합을 특색지우는 예시적인 시나리오를 보인 도이다.
도 3은 여기에서 제시되는 기술에 따라서 동작을 수행하도록 장치 집합 중의 장치를 구성하는 예시적인 방법을 보인 도이다.
도 4는 여기에서 제시되는 기술에 따라서 동작을 수행하도록 장치 집합과 상호작용하는 예시적인 시스템을 포함한 예시적인 장치를 보인 도이다.
도 5는 여기에서 설명하는 하나 이상의 기술을 구체화하도록 구성된 프로세서 실행가능 명령어를 저장하는 예시적인 메모리 장치를 보인 도이다.
도 6은 여기에서 제공된 기술들을 활용할 수 있는 예시적인 장치를 보인 도이다.
도 7은 여기에서 제시되는 기술에 따라서, 일련의 적합성 보고를 고려하여 동작을 수행하는 장치의 선택을 특색지우는 예시적인 시나리오를 보인 도이다.
도 8은 여기에서 제시되는 기술에 따라서, 제2 장치의 참여를 수반하여 동작을 수행하는 장치의 선택을 특색지우는 예시적인 시나리오를 보인 도이다.
도 9는 여기에서 제시되는 기술에 따라서, 일련의 적합성 보고를 고려하여 동작을 수행하는 장치의 다른 선택을 특색지우는 예시적인 시나리오를 보인 도이다.
도 10은 여기에서 제시되는 기술에 따라서, 일련의 적합성 보고를 고려하여 동작을 수행하는 장치의 제3 선택을 특색지우는 예시적인 시나리오를 보인 도이다.
도 11은 여기에서 설명하는 하나 이상의 기술이 구현될 수 있는 예시적인 컴퓨팅 환경을 보인 도이다.
이제, 청구된 주제를 도면을 참조하면서 설명한다. 도면에 있어서 동일한 참조 번호는 동일한 요소를 인용하기 위해 사용된다. 이하의 설명에서, 설명의 목적상, 청구된 주제의 완전한 이해를 제공하기 위해 여러 가지의 특정 세부들이 설명된다. 그러나 청구된 주제는 그러한 특정 세부 없이 실시될 수 있다는 것은 명백하다. 다른 예로서, 구조 및 장치들은 청구된 주제의 설명을 쉽게 하기 위해 블록도 형태로 도시된다.
A. 서문
도 1은 사용자(100)를 대신하여 장치 집합(102)이 동작을 수행하게 하는 예시적인 시나리오를 보인 것이다. 이 시나리오에서, 동작은 단문 메시지 서비스(SMS) 텍스트 메시지, 멀티미디어 메시징 서비스(MMS) 화상 메시지, 음성메일 메시지 또는 비디오와 같은 미디어 기록, 이메일 메시지, 또는 실시간 또는 준실시간 채팅 서비스를 통한 채팅 메시지와 같은 메시지(106)의 제시를 포함한다. 장치 집합(102)은 모바일 폰, 워크스테이션, 및 팜톱 또는 태블릿 폼팩터 장치와 같은 다양한 상황에서 빈번하게 사용하는 일련의 각종 장치(104)를 포함할 수 있다. 장치 집합(102)은 휴대용 미디어 플레이어, 홈 미디어 시스템, 휴대용 또는 고정식 게임 콘솔, 웨어러블 장치(예컨대 손목시계, 이어폰 또는 안경류), 글로벌 위치확인 시스템(GPS) 수신기 등의 내비게이션 장치, 및/또는 자동차 등의 기기와 같은, 사용자(100)가 활용하는 도시 생략된 다른 장치들을 또한 포함할 수 있다.
제1의 예시적인 시나리오(112)에서, 장치 집합(102)의 각 장치(104)는 메시지(106)를 수신하고 그 메시지(106)를 사용자(100)에게 제시하기 위해 시도한다. 예를 들면, 텍스트 메시지는 각 장치(104)에 단순 메시지 서비스를 통해 전달될 수 있고, 각 장치(104)는 그 메시지(106)를 사용자(100)에게 제시할 수 있다. 복수의 장치(104)로부터 메시지(106)의 이러한 방송이 사용자(100)에 의한 메시지의 수신을 보장할 수 있지만, 복수의 장치(104)에 의한 메시지(106)의 중복 제시는 사용자(100)를 귀찮게 할 수 있다. 예를 들면, 사용자(100)는 모바일 폰과 워크스테이션을 빈번하게 활용할 수 있고, 양측의 장치(104)로부터 메시지(106)를 신속히 수신할 수 있지만, 가끔 태블릿 폼팩터 장치(104)만을 이용할 수 있고, 수 일 후에 태블릿 장치(104)를 통해서 상기 메시지(106)의 제3 카피를 수신할 수 있다. 중복 제시의 귀찮음은 장치 집합(102) 내의 장치(104)들의 수에 비례하여 증가할 수 있다. 일 예로서, 일련의 전화기들이 건물 내에 제공될 수 있고, 유입 호출(incoming call)은 그 호출이 특정 전화기 근처에 있는 사용자(100)에게 의도된 것이라 하더라도, 및 사용자(100)가 건물 내에 없는 경우에도 모든 전화기들이 울리게 한다.
제2의 예시적인 시나리오(114)에서, 서버(108)는 장치 집합(102)의 장치(104)들의 상태를 계속적으로 또는 주기적으로 추적할 수 있다. 사용자(100)에게 보낼 메시지(106)를 수신한 때, 서버(108)는 각 장치(104)의 상태에 기초하여 특정 장치(104)의 선택(110)을 수행할 수 있고, 상기 메시지(106)를 사용자(100)에게 제시하도록 선택된 장치(104)에 보낼 수 있다. 이 제2의 예시적인 시나리오(114)는 사용자(100)에 대한 메시지(106)의 중복 제시를 감소시키지만, 이 아키텍처는 중대한 비효율성을 나타낼 수 있다. 제1 예로서, 장치(104)는 메시지(106)가 빈번하지 않은 경우에도, 서버(108)가 각 장치(104)의 상태에 대한 비교적 현재 정보 없이 선택(110)을 수행할 수 없기 때문에, 서버(108)가 상태를 빈번하게 통보받게 해야 한다. 그러나 그러한 서버(108)의 통보는 각 장치(104)의 가용 전력을 감소시킬 수 있다. 반대로, 만일 장치(104)가 서버로 하여금 각 장치(104)의 상태를 빈번하게 통보받게 하지 못하면, 서버(108)는 메시지(106)를 수신한 때 장치(104)의 바람직하지 않은 선택(110)을 수행할 수 있다. 예를 들면, 서버(108)는 구식 정보를 고려하여 선택(110)을 행할 수 있고, 메시지(106)가 현재 사용자(100)와 통신하고 있는 장치(104)에 의해 제시되게 하는 기회를 놓칠 수 있다.
다른 예시적인 시나리오는 장치 집합(102)이 동작을 수행할 수 있게 하기 위해 활용될 수 있다. 예를 들면, 사용자(100)는 특정 유형의 동작을 수행하기 위해 어떤 장치(104)를 사용해야 하는지 명시적으로 특정할 수 있다. 예를 들면, 사용자(100)는 이메일 메시지와 같이 장치(104)에서 특정 유형의 메시지를 수신하려고 의도할 때 특정 장치(104)에서 애플리케이션의 실행을 명시적으로 요청할 수 있다. 장치 집합(102)은 그에 따라서 선택된 장치(104)를 통해서만 사용자(100)에게 메시지(106)를 제시할 수 있다. 그러나 명시적 사용자 선택에의 의존성은 급속하게 귀찮아질 수 있다(예를 들면 장치 집합(102)이 빈번하게 동작을 수행하는 경우, 및/또는 사용자(100)가 특정 동작을 위한 장치(104)를 빈번하게 지정하는 것에 싫증난 경우). 게다가, 일부 시나리오에서, 사용자(100)는 특정 장치(104)를 선택하는 것을 잊어버릴 수 있다(예를 들면, 모바일 폰을 탑승 모드 또는 프라이버시 모드로 두는 것을 잊어버리고 따라서 사용자(100)가 회의 참석 등 부적당한 상황에 있을 때 모바일 폰이 울리게 할 수 있다). 일부 시나리오가 또한 사용자 선택과 모순될 수 있다. 예를 들면, 사용자(100)는 청취 전용 이어폰 장치를 사용자(100)에 대한 1차 인터페이스로서 지정할 수 있지만, 이어폰 장치는 시각적 멀티미디어 기반 메시지(예를 들면, MMS 텍스트 메시지)를 통해 사용자(100)에게 특정 이미지를 연출하지 못할 수 있다. 게다가, 일부 시나리오에서, 사용자(100)가 자동차를 운전하고 있는 동안 장치(104)의 디스플레이에서 제시되는 텍스트 메시지를 보도록 사용자(100)를 부추기는 것과 같이 사용자(100)에게 메시지(106)를 제시하는 것이 위험할 수 있다. 상기 및 기타의 단점들은 장치 집합(102)을 통하여 사용자(100)에게 메시지(106)를 제시하는 일부 기술에서 발생할 수 있다.
B. 제시된 기술
도 2는 여기에서 제시되는 기술에 따라서 동작(202)의 완료를 달성하도록 연동하는 장치(104)들의 장치 집합(102)을 특색지우는 예시적인 시나리오를 보인 도이다.
이 예시적인 시나리오에서, 첫번째(218)로, 장치 집합의 제1 장치(104)(예를 들면, 모바일 폰)가 장치 집합(102)이 동작(202)을 수행하게 하는 요청을 개시한다. 동작(202)을 수행하기 위한 요청은 요청 장치(200)에 의해 개시될 수 있고, 및/또는 외부 소스(예를 들면, 유입되는 호출)로부터 상기 요청 장치(200)에 의해 수신될 수 있다. 요청 장치(200)는 동작(202)을 특정하는 동작 초대(204)를 발생하고, 그 동작 초대(204)를 장치 집합(102)의 다른 장치(104)들에게 방송(206)한다. 예를 들면, 장치 집합(102)의 다른 장치(104)들은 와이파이 네트워크, 유선 근거리 통신망(LAN), 셀룰러 통신 네트워크, 인터넷 등의 광역 통신망(WAN), 및/또는 블루투스 장치 메시 등의 개인 영역 통신망(PAN)과 같은 네트워크(208)를 통해 접근할 수 있다. 대안적으로, 다른 장치(104)들은 동작 초대(204) 및 동작(202)을 특정하는 정보를 인코딩한, 수신기를 구비한 임의의 장치(104)에 의해 수신 가능한 라디오 방송과 같은 방송 기반 매체를 통해, 또는 전자기 스펙트럼의 적외선 부분의 광과 같은 광 전송을 통해 요청 장치(104)에 접근할 수 있다.
두번째(220)로, 동작 초대(204)를 수신한 장치 집합(102)의 각 장치(104)는 동작(202)을 수행하기 위한 그 적합성을 평가할 수 있다. 예를 들면, 장치(104)는 동작(202)의 파라미터를 식별하고 그 파라미터를 장치(104)의 리소스 및 능력(예를 들면, 연산 능력, 휘발성 및/또는 비휘발성 메모리, 네트워크 대역폭 및 입출력 능력), 요청된 동작을 수행하기 위한 장치(104)의 적절성, 및 장치(104)에 대한 사용자(102)의 접근성과 비교할 수 있다. 각각의 다른 장치(104)는 동작(202)을 수행하기 위한 응답 장치(212)의 적합성을 표시하는 적합성 보고(210)를 요청 장치(200)에 제공함으로써 상기 동작 초대(204)에 응답한다. 예를 들면, 유입되는 호출을 취급함에 있어서, 워크스테이션 장치(104)는 예컨대 저품질 마이크로폰 및 스피커를 반영하여 낮은 적합성을 표시할 수 있고, 태블릿 등의 휴대용 장치(212)는 예컨대 음성 통신 세션에 적합한 마이크로폰 및 스피커를 반영하여 높은 적합성을 표시할 수 있다. 적합성 보고(210)는 장치(104)에게 동작 초대(204)를 제공하기 위해 사용한 것과 동일한 통신 매체를 이용하여(예를 들면, 동일한 네트워크(208)를 이용하여), 및/또는 다른 통신 매체를 이용하여 상기 요청 장치(200)에 되돌려 보내질 수 있다.
세번째(222)로, 요청 장치(200)는 장치 집합(102) 내 응답 장치(214) 중 최고의 적합성 보고(210)를 가진 응답 장치(212)를 식별 및 선택할 수 있다. 그러므로 요청 장치(200)는 선택된 장치(214)가 동작(202)을 수행하도록 요청하는 동작 요청(216)을 상기 선택된 장치(214)에 전송할 수 있다. 동작 요청(216)은 이전 통신에서와 동일한 네트워크(208)를 통하여 전송될 수도 있고, 또는 다른 통신 매체를 통하여 전송될 수도 있다. 동작 요청(216)을 수신한 때, 선택된 장치(214)는 상기 요청 장치(200)를 대신하여 동작을 수행한다(예를 들면, 유입되는 호출을 수신하고 호출자와 사용자(100) 간의 통신 세션을 개시하도록 시도한다). 이 방식으로, 장치 집합(102)의 장치(104)들은 여기에서 제시된 기술에 따라 적당한 장치에 의해 동작(202)의 수행을 달성하도록 연동하고, 도 1의 예시적인 시나리오(100)에서 제공된 것을 포함한 그러한 다른 기술들의 각종 비용 및/또는 단점들을 감소 또는 회피한다.
C. 기술적 효과
여기에서 제시된 기술들은 장치 집합(102)이 동작(202)을 수행하게 하는 다른 기술들에 비하여 다양한 기술적 장점을 제공할 수 있다.
그러한 제1 예로서, 여기에서 제공된 것처럼 구성된 장치 집합(102)은 복수의 장치(104)에 의한 동작(202)의 중복 실행을 감소시킬 수 있다. 예를 들면, 다양한 장치(104)에서 사용자(100)에게 동일한 메시지(106)를 제시하기보다, 및/또는 각각의 장치(104)가 사용자(100)에게 특정 이벤트(예를 들면, 건물 내의 각각의 전화기가 울리게 하는 유입 호출)를 통지하게 하기보다, 제시된 기술은 동작(202)의 상황적으로 민감한 수행을 가능하게 한다. 그러한 수행은 중복적으로 수행되는 동작(202)의 비효율성 및 잠재적 귀찮음을 감소시킬 수 있다.
그러한 제2 예로서, 여기에서 제공된 것처럼 구성된 장치 집합(102)은 어떤 장치(104)가 어떤 동작(202)을 수행하게 할 것인지 특정함에 있어서 사용자(100)의 수반을 감소 또는 회피할 수 있다. 그러한 선택을 자동으로 수행하는 능력은 비교적 낮은 유지관리 및 자동화된 장치 선택을 제공할 수 있다.
그러한 제3 예로서, 여기에서 제공된 것처럼 구성된 장치 집합(102)은 (예를 들면, 네트워크 중지(outage) 또는 서버(108)의 고장에 기인하여) 접근 불능으로 될 수 있는 중앙집중화 서버(108)에서의 신뢰성을 감소시킬 수 있다. 서버(108)의 회피는 서버 중재 시나리오에서 수반되는 비용(예를 들면 가입비) 및 장비를 감소시킬 수 있다. 추가로, 사용자(100)의 장치(104) 중에서 선택의 분해능은 정보를 외부 서버에 전송하기보다 장치 집합(102) 내에서(예를 들면, 사용자(100)의 개인 영역 통신망 내에서)의 각종 동작(202)의 수행에 대한 정보를 보유함으로써 사용자(100)의 프라이버시를 촉진할 수 있다.
그러한 제4 예로서, 여기에서 제공된 것처럼 구성된 장치 집합(102)은 각각의 동작(202)을 수행하도록 장치(104)의 더 정확하고 미묘한 차이가 있는 선택을 제공할 수 있다. 장치(104)들의 각각의 상태를 서버(108)에 통보하도록 장치(104)들을 구성하기보다, 여기에서 제시되는 기술들은 장치(104)가 예를 들면 장치(104)의 하드웨어 및/또는 소프트웨어 능력, 장치(104)의 현재 작업 부하, 장치(104)의 물리적 위치 및/또는 사용자(102) 및/또는 다른 장치(104)에 대한 장치(104)의 근접성, 및 장치(104)의 현재 및 예측된 미래 환경을 평가하도록 구성되는 임의의 기준에 기초하여 동작(202) 수행에 대한 그 현재 적합성을 각각의 장치(104)가 결정할 수 있게 한다. 즉, 동작(202) 수행을 위한 각 장치(104)의 적합성의 결정은 각각의 장치(104)에 위임되고, 장치(104)가 평가하도록 구성되는 임의의 기준에 기초하여 각각의 장치(104)에 의해 취급될 수 있다. 더욱이, 장치(104)의 상태는 급속히 변할 수 있고, 특정 동작(202)에 대한 적합성 결정을 각각의 장치(104)에 할당하는 것은 서버(108)에 분산된 정보에 의해 달성될 수 있는 것보다 더 최신의 정보에 기초한 결정을 가능하게 한다.
그러한 제5 예로서, 제시된 기술의 일부 실시형태에 있어서, 장치 집합(102)의 피어 기반(peer-based) 아키텍처는 임의의 장치(104)가 동작(202)의 수행을 요청하고, 임의 다른 장치(104)가 동작(202) 수행의 제의(offer)로서 높은 적합성 보고(210)로 응답하게 할 수 있다. 그러므로 이 아키텍처는 많은 수 및 많은 유형의 장치(104)들이 요청된 동작(202)을 수행하는 장치 집합(102)의 능력을 저하시키지 않고 장치 집합(102)에 합류하거나 장치 집합(102)으로부터 떠날 수 있기 때문에 장치 집합(102)의 강건성 및 확장성을 촉진한다. 상기 및 기타의 기술적 효과는 여기에서 제시된 기술에 따라 장치 집합(102)의 구성을 통하여 달성될 수 있다.
D. 예시적인 실시형태
도 3은 장치 집합(102)의 제1 장치(104)가 동작(202)을 수행하게 하는 예시적인 방법(300)으로서 예시된, 여기에서 제시된 기술의 제1의 예시적인 실시형태를 보인 것이다. 예시적인 방법(300)은 제1 장치(104)가 여기에서 제시된 기술에 따라 동작하게 하는 명령어를 실행할 수 있는 프로세서를 구비한 제1 장치(104)를 수반한다. 예시적인 방법(300)은 메모리 회로, 하드 디스크 드라이브의 플래터, 반도체 기억 장치, 또는 자기 또는 광디스크와 같은 메모리 컴포넌트에 저장되고 상기 제1 장치(104)의 프로세서에 의해 실행된 때 상기 제1 장치(104)가 여기에서 제시된 기술에 따라 동작하게 하도록 조직된 명령어의 집합으로서 구현될 수 있다.
예시적인 방법(300)은 302에서 시작하고, 제1 장치(104)의 프로세서에서 명령어를 실행하는 단계(304)를 수반한다. 구체적으로, 명령어는 제1 장치(104)가, 장치 집합에 방송되고 수행될 동작(202)을 특정하는 동작 초대를 요청 장치로부터 수신한 때, 동작(202)을 수행하기 위한 제1 장치(104)의 적합성을 표시하는 적합성 보고(210)를 상기 요청 장치(200)에 보내게 한다(306). 명령어는 또한 제1 장치(104)가, 상기 적합성 보고(210)에 응답하여 동작(202)을 수행하게 하는 동작 요청(216)을 상기 요청 장치(200)로부터 수신한 때, 상기 요청 장치(200)를 대신하여 동작(202)을 수행하게 한다(308). 상기 요청 장치(200)를 대신하여 동작(202)의 수행을 달성한 때, 상기 예시적인 방법(300)은 상기 제1 장치에서 여기에서 제시된 기술의 구현을 달성하고 310에서 종료한다.
도 4는 장치 집합(102)의 제1 장치(402)가 장치 집합(102)의 제2 장치(104) 및 제3 장치(104)와 협력하여 동작(202)을 수행하게 하는 예시적인 시스템(406)을 특색지우는 예시적인 시나리오(400)로서 예시된, 여기에서 제시된 기술의 제2의 예시적인 실시형태를 보인 것이다. 예시적인 시스템(406)은 제1 장치(402)의 메모리에 저장된 명령어 집합을 포함한 컴포넌트의 집합으로서 각각 구현될 수 있고, 여기에서 상기 각 컴포넌트의 명령어는, 상기 제1 장치(402)의 프로세서(404)에 의해 실행된 때, 상기 제1 장치(402)가 여기에서 제시된 기술의 일부를 수행하게 한다.
예시적인 시스템(406)은 수행될 동작(202)을 표시하는 장치 집합(102) 내에서의 방송(예를 들면, 요청 장치(200)에 의한 동작 초대(204) 방송)을 수신한 때 동작(202)을 수행하기 위한 상기 제1 장치(402)의 적합성을 표시하는 적합성 보고(210)를 돌려 보내고; 상기 적합성 보고(210)에 응답하여 동작(202)을 수행하게 하는 상기 제1 장치(402)에 대한 동작 요청(216)을 수신한 때 상기 요청 장치(200)를 대신하여 동작(202)을 수행하는 동작 수행기(408)를 포함한다. 예시적인 시스템(406)은 제2 동작(202)을 수행하게 하는 제2 요청을 상기 제1 장치(402)의 프로세서(404)에서 실행하는 국부 애플리케이션으로부터 수신한 때 장치 집합(102)에 대하여 제2 요청을 방송하고(예를 들면, 국부 애플리케이션에 의해 요청된 동작(202)을 특정하는 동작 초대(204)로서); 상기 제2 동작(202)을 수행하기 위한 응답 장치(212)의 적합성을 각각 표시하는 적합성 보고(210)를 상기 장치 집합(102)의 적어도 2개의 응답 장치(212)로부터 수신한 때 상기 적어도 2개의 응답 장치(212) 중에서 선택된 장치(214)를 식별하고, 상기 선택된 장치(214)에게 상기 제2 동작(202)을 수행하도록 요청하는 동작 요청기(410)를 또한 포함한다. 이 방식으로 예시적인 시스템(406)은 제1 장치(402)가 여기에서 제시된 기술에 따라 장치 집합(102)에 의한 동작(202)의 수행에 참여하게 한다.
다른 하나의 실시형태는 여기에서 제시된 기술을 적용하도록 구성된 프로세서 실행가능 명령어를 포함한 컴퓨터 판독가능 매체를 수반한다. 이러한 컴퓨터 판독가능 매체는 예를 들면 장치의 프로세서에 의해 실행된 때 장치로 하여금 여기에서 제시된 기술들을 구현하게 하는 일련의 컴퓨터 판독가능 명령어를 인코딩한 메모리 반도체(예를 들면, 정적 랜덤 액세스 메모리(SRAM), 동적 랜덤 액세스 메모리(DRAM), 및/또는 싱크로너스 동적 랜덤 액세스 메모리(SDRAM) 기술을 활용한 반도체), 하드 디스크 드라이브의 플래터, 플래시 메모리 장치, 또는 자기 디스크 또는 광디스크(CD-R, DVD-R 또는 플로피 디스크 등)와 같은 유형체의 장치를 수반하는 컴퓨터 판독가능 기억 장치를 포함할 수 있다. 이러한 컴퓨터 판독가능 매체는 각종 물리적 현상(예를 들면, 전자기 신호, 음파 신호 또는 광신호)을 통해서 및 각종의 유선 시나리오(예를 들면, 이더넷 또는 광섬유 케이블을 경유하는 것) 및/또는 무선 시나리오(예를 들면, 와이파이 등의 무선 근거리 통신망(WLAN), 블루투스 등의 개인 영역 통신망(PAN), 또는 셀룰러 또는 라디오 네트워크)로 전파될 수 있고, 장치의 프로세서에 의해 실행된 때 장치로 하여금 여기에서 제시된 기술들을 구현하게 하는 일련의 컴퓨터 판독가능 명령어를 인코딩한 신호와 같은 각종 유형의 통신 매체를 (컴퓨터 판독가능 기억 장치를 배제한 기술들의 분류로서) 또한 포함할 수 있다.
이러한 방식으로 안출될 수 있는 예시적인 컴퓨터 판독가능 매체는 도 5에 도시되어 있고, 여기에서 구현예(600)는 컴퓨터 판독가능 데이터(504)가 인코딩된 컴퓨터 판독가능 메모리 장치(502)(예를 들면, CD-R, DVD-R, 또는 하드 디스크 드라이브의 플래터)를 포함한다. 이 컴퓨터 판독가능 데이터(504)는 컴퓨팅 장치(510)의 프로세서(504)에서 실행된 때 컴퓨팅 장치(510)로 하여금 여기에서 설명한 원리에 따라 동작하게 하는 일련의 컴퓨터 명령어(506)를 포함한다. 이러한 제1 실시형태에 있어서, 프로세서 실행가능 명령어(506)는 도 3의 예시적인 방법(300)과 같이 제1 장치(104)가 장치 집합(102)을 대신하여 동작(202)을 수행하게 하는 방법을 수행하도록 구성될 수 있다. 이러한 제2 실시형태에 있어서, 프로세서 실행가능 명령어(506)는 도 4의 예시적인 시스템(406)과 같이 제1 장치(402)가 장치 집합(102)에 의한 동작(202)의 수행에 참여하게 하도록 구성된 시스템을 구현하도록 구성될 수 있다. 이 컴퓨터 판독가능 매체의 일부 실시형태는 이 방식으로 구성된 프로세서 실행가능 명령어를 저장하도록 구성된 컴퓨터 판독가능 기억 장치(예를 들면, 하드 디스크 드라이브, 광디스크 또는 플래시 메모리 장치)를 포함할 수 있다. 이러한 많은 컴퓨터 판독가능 매체는 여기에서 제시된 기술에 따라 동작하게끔 구성되도록 당업자에 의해 안출될 수 있다.
E. 변형예
여기에서 설명한 기술들은 많은 양태의 변형예로 안출될 수 있고, 일부 변형예는 상기 및 다른 기술들의 다른 변형예에 비하여 추가적인 장점을 제공하고 및/또는 단점들을 줄일 수 있다. 더욱이, 일부 변형예는 조합으로 구현될 수 있고, 일부 조합은 상승작용적 협력을 통하여 추가의 장점 및/또는 감소된 단점을 특색지을 수 있다. 변형예들은 각종 실시형태에서 개별적인 및/또는 상승작용적 장점을 제공하도록 각종 실시형태(예를 들면, 도 3의 예시적인 방법(300); 도 4의 예시적인 시스템(406); 및 도 5의 예시적인 메모리 장치(502))에서 통합될 수 있다.
E1. 시나리오
상기 기술들의 실시형태 중에서 변할 수 있는 제1 양태는 그러한 기술이 활용될 수 있는 시나리오와 관련이 있다.
이 제1 양태의 제1 변형예로서, 여기에서 제시된 기술들은 워크스테이션, 랩톱, 태블릿, 전화기 및 기타의 통신 장치, 헤드셋, 이어폰, 안경류, 손목시계, 휴대용 게임 장치, 텔레비전 등의 휴대용 미디어 플레이어 및 응용 기기와 같은 다양한 장치(104)의 구성을 달성하도록 활용될 수 있다.
도 6은 여기에서 제공된 기술들이 구현될 수 있는 이어폰 장치(602)를 특색지우는 예시적인 시나리오(600)를 보인 것이다. 이 이어폰 장치(602)는 사용자(100)가 착용할 수 있고, 여기에서 제시된 기술들을 구현하기 위해 사용할 수 있는 컴포넌트들을 포함할 수 있다. 예를 들면, 이어폰 장치(602)는 사용자(100)의 머리(610)의 귀(612)에 착용할 수 있는 하우징(604)과, 사용자(100)의 귀(612)에 오디오 메시지를 사출하도록 배치된 스피커(606)와, 사용자(100) 주위의 오디오 샘플을 검출하는 마이크로폰(608)을 포함할 수 있다. 여기에서 제시된 기술에 따라서, 이어폰 장치(602)는 유입 메시지 또는 통신 세션의 수신시에 사용자(100)와 통신하는 것; 다른 개인과 통신 세션을 개시하기 위해 장치 집합(102)의 다른 장치(104)를 호출하는 것(예를 들면, 사용자(100)로부터의 통신 데이터를 인터넷 등의 네트워크에 전송하기 위해 다른 장치(104)에 대한 동작 초대(204)를 보내는 것); 및/또는 음성 메모를 저장 및/또는 전사는 것(transcribing)과 같이 사용자(100)에 의해 발생된 데이터를 수신 및 처리하는 것과 같은 장치 집합(102)을 대신하는 동작(202)의 수행에 참여할 수 있다. 이 방식으로, 도 6의 예시적 시나리오에서 예시된 것과 같은 이어폰 장치(602)는 여기에서 제시된 기술에 참여할 수 있다.
이 제1 양태의 제2 변형예로서, 여기에서 제시된 기술은 특정 사용자(100) 또는 단체가 소유한 장치(104)들의 집합; 특정 지역에서 전개되는 장치(104)들의 집합; 및/또는 파일 서버의 집합과 같이 특정 임무를 가진 장치(104)들의 집합과 같은 다양한 장치 집합(102)과 함께 활용될 수 있다. 더욱이, 장치 집합(102)의 장치(104)들은 블루투스와 같은 개인 영역 통신망(PAN); 와이파이 또는 셀룰러 네트워크와 같은 유선 및/또는 무선 근거리 통신망(LAN); 또는 인터넷 또는 인터넷에서 전개되는 가상 사설 네트워크(VPN)와 같은 광역 통신망(WAN)을 포함한 다양한 방법으로 통신할 수 있다.
이 제1 양태의 제3 변형예로서, 여기에서 제시된 기술은 다양한 동작(202)의 수행을 달성하도록 활용될 수 있다. 이러한 제1 예로서, 동작(202)은 각종 형태의 데이터의 수신, 발생, 평가, 저장 및/또는 전송을 포함할 수 있다. 이러한 제2 예로서, 동작(202)은 사용자(100)를 포함하도록 의도된 통신 세션과 같은 특정 사용자(100), 또는 장치(104)의 조력으로 사용자(100)가 수행하고자 하는 물리적 활동을 수반할 수 있다. 이러한 제3 예로서, 동작(202)은 특정 지역의 기상 상태의 모니터링과 같은 특정의 장소 또는 물체를 포함할 수 있다. 이러한 제4 예로서, 동작(202)은 사용자(100)가 현재 소지하고 있는 장치와 같이 하나 이상의 장치에 적용할 수 있는 특수 환경 또는 상황을 포함할 수 있다. 더욱이, 동작(202)은 요청 장치(200)에서 실행하는 국부 애플리케이션을 대신해서, 및/또는 서버와 같이 장치 집합(102)의 외부에 있는 원격 장치를 대신해서 요청 장치(200)에 의해 개시될 수 있다. 당업자라면 여기에서 제시된 기술들을 활용할 수 있는 많은 이러한 시나리오들을 안출할 수 있을 것이다.
E2. 장치 적합성
여기에서 제시된 기술들의 실시형태 중에서 변할 수 있는 제2 양태는 장치 집합(102)의 장치(104)가 요청된 동작(202)을 수행하기 위한 그 적합성을 결정 및 보고하는 방식을 수반한다.
이 제2 양태의 제1 변형예로서, 제1 장치(104)는 제1 장치(104)에 의해 사용자(100)의 적합성에 따라 동작(202)을 수행하기 위한 자신의 적합성을 결정할 수 있다. 그 제1 예로서, 접근성은 사용자(100)의 근접성을 포함할 수 있다. 예를 들면, 동작(202)은 사용자(100)에게 제시되는 오디오 경고를 포함할 수 있고, 적합성은 사용자(100)가 제1 장치(104)의 가청 범위 내에 있는 것의 검출을 포함할 수 있다. 그 제2 예로서, 동작(202)은 사용자(100)의 이미지 포착 동작을 포함할 수 있고, 적합성은 제1 장치(104)의 카메라에 대한 사용자(100)의 가시성을 포함할 수 있다. 그 제3 예로서, 동작(202)은 특정 질문에 대답하는 사용자(100)의 능력과 같은 사용자(100)의 응대(attention)를 활용할 수 있고, 적합성은 사용자(100)가 현재 제1 장치(104)에 응대하고 있는지 여부 및/또는 사용자(100)가 제1 장치(104)에게 응대할 수 있는지 여부에 따라 결정될 수 있다. 이러한 개념의 특이성은 예를 들면 사용자(100)의 자동차 내에 있는 3개의 장치(104), 즉 자동차의 격실(compartment)에 배치되어 사용자(100)에 근접하지 않은 제1 장치(104); 사용자(100)가 자동차를 운전하는 동안 활용할 수 없는 시청 장치와 같이 사용자(100) 부근에 있지만 사용자가 안전을 위해 응대할 수 없는 제2 장치(104); 및 사용자(100)와 더 안전하게 통신할 수 있는 오디오 장치와 같이 사용자(100) 부근에 있고 사용자(100)의 응대를 활용할 수 있는 제3 장치(104)의 조합에 따라 설명될 수 있다.
이 제2 양태의 제2 변형예로서, 제1 장치(104)는 동작(202)을 수행하는 제1 장치(104)의 장치 능력에 따라 동작(202)을 수행하기 위한 자신의 적합성을 결정할 수 있다. 그 제1 예로서, 동작(202)은 사용자(100)의 이미지 포착 동작을 포함할 수 있고, 상기 제1 장치(104)의 적합성은 제1 장치(104)가 적당한 카메라를 갖고 있는지 여부를 고려하여 결정될 수 있다. 그 제2 예로서, 동작(202)은 출력 장치를 통하여 사용자(100)에게 오디오 메시지를 제시하는 동작을 포함할 수 있고, 상기 제1 장치(104)는 만일 자신이 오디오 출력 장치를 포함하고 있으면 높은 적합성을 갖는 것으로서, 및 만일 자신이 오디오 메시지를 텍스트 메시지로 제시하기 위해 오디오 전사 컴포넌트 및 시각적 출력 장치를 포함하고 있으면 더 낮지만 아직은 긍정적인 적합성을 갖는 것으로서 자신을 식별할 수 있다.
이 제2 양태의 제3 변형예로서, 제1 장치(104)는 그 가용 처리력, 기억 용량 또는 네트워크 대역폭과 같이 제1 장치(104)의 리소스 가용성에 따라 동작(202)을 수행하기 위한 자신의 적합성을 결정할 수 있다. 특수한 예로서, 리소스 가용성은 제1 장치(104)의 전력 용량, 예를 들면, 제1 장치(104)가 벽의 콘센트와 같은 무제한 전원에 의해 동작하는지; 완전히 충전된 배터리와 같이 제한이 있지만 풍부한 전원에 의해 동작하는지; 또는 거의 소모된 배터리와 같이 제한이 있고 불충분한 배터리에 의해 동작하는지와 같은 전력 용량을 포함할 수 있다.
이 제2 양태의 제4 변형예로서, 제1 장치(104)는 사용자(100)가 특정한 사용자 선호도에 따라 동작(202)을 수행하기 위한 자신의 적합성을 결정할 수 있다. 예를 들면, 동작(202)은 사용자(100)에게 제시될 오디오 메시지를 포함하고, 제1 장치(104)가 사용자(100)에게 오디오 메시지를 제시할 수 있는 스피커를 포함하고 있는 경우에도 사용자는 제1 장치(104)가 오디오 메시지를 제시하지 않게 하는 자신의 선호도를 표시할 수 있다. 따라서, 제1 장치(104)는 동작(202)에 대하여 부적합한 것으로 자신을 식별할 수 있다. 반대로, 사용자(100)는 다른 장치(104)들이 더 높은 적합성을 갖는 것으로 자동으로 결정된 경우에도 사용자(100)에게 텍스트 메시지를 제시하는 것과 같은 특정 유형의 모든 동작(202)을 특정 장치(104)가 수행하게 하도록 특정할 수 있다.
도 7은 고려사항들의 조합이 사용자(100)에 대한 오디오 메시지의 제시를 포함한 동작(202)을 수행하기 위한 장치 집합(102)의 장치(104)의 적합성을 결정하기 위해 활용되고 각 장치(104)의 적합성이 적합성 점수(702)로서 보고되는 예시적인 시나리오(700)를 예시한 것이다. 워크스테이션과 같은 제1 장치(104)는 사용자(100)가 장치(104) 부근에 없다고 결정하고, 따라서 비교적 낮은 적합도 점수(702)인 25%를 제시할 수 있다. 모바일 폰과 같은 제2 장치(104)는 오디오 메시지를 제시할 수 있고 사용자(100)가 존재한다고 결정하지만, 그 전원이 약해졌음을 식별하고, 따라서 고우선순위 작업을 위해 전력을 절약하기 위해 60%의 적합성 점수(702)를 제시할 수 있다. 웨어러블 이어폰과 같은 제3 장치(104)는 장치가 사용자(100) 근처에 있고, 풍부한 전원을 특색지우며, 이어폰 장치(104)가 사용자(100)의 귀 부근에 배치된 스피커를 포함한 것으로 결정할 수 있지만, 사용자(100)는 현재 구두 대화에 참여하고 있고 오디오 메시지가 바람직하지 않게 주의를 산만하게 하거나 또는 사용자(100)의 주의를 돌리지 않고 수신하기가 어렵다고 결정할 수 있다. 그래서 제2 장치(104)는 70%의 적합성 점수(702)를 제시할 수 있다. 팜톱 컴퓨터를 포함한 제4 장치(104)는 장치가 사용자(100) 근처에 있고 풍부한 전원을 갖지만 오디오 컴포넌트가 없다고 결정할 수 있다. 그럼에도 불구하고, 제4 장치(104)는 사용자에게 제시하기 위해 오디오 메시지를 텍스트로 변환할 수 있고, 그래서 제4 장치(104)는 80%의 적합성 점수(702)를 보고할 수 있다. 제4 장치(104)가 최고의 적합성 점수를 보고하기 때문에, 오디오 메시지를 초기에 수신한 요청 장치(200)는 여기에서 제시된 기술에 따라서 변환하고 사용자(100)에게 제시하기 위해 상기 제4 장치(104)에 오디오 메시지를 전송할 수 있다.
이 제2 양태의 제5 변형예로서, 일부 동작(202)은 장치 집합(102)의 2개 이상 장치(104)의 연동을 수반한다. 예를 들면, 제1 장치(104)는 비디오를 기록하게 하는 요청을 사용자(100)로부터 수신하고 비디오를 포착할 수 있는 비디오 카메라를 포함하지만 적당한 스토리지를 갖지 않을 수 있다. 제1 장치(104)는 제1 장치(104)에 의해 포착된 비디오 스트림을 저장함으로써 비디오의 기록에 참여하도록 제2 장치(104)에게 요청할 수 있다. 제2 장치(104)가 비디오를 저장하기 위한 높은 적합성(예를 들면, 풍부한 기억 용량)을 표시할 때, 제1 장치(104)와 제2 장치(104)는 동작(202)을 협력적으로 수행할 수 있다. 예를 들면, 제1 장치(104)는 스트림을 포착하고 그 스트림을 제2 장치(104)에 전송할 수 있으며, 제2 장치(104)는 스트림을 수신하고 비디오를 저장한다. 대안적으로, 만일 사용자(100)로부터 요청을 수신한 제1 장치(104)가 또한 카메라를 포함하지 않으면, 제1 장치(104)는 비디오를 포착하기 위한 적합성을 표시하도록 장치 집합(102)의 장치(104)에게 요청할 수 있고, 제3 장치(104)가 비디오를 포착하기 위한 높은 적합성을 보고할 때 제2 장치(104)와 제3 장치(104)는 비디오의 기록을 협력적으로 달성할 수 있다.
도 8은 요청 장치(200)가 네트워크 통신(예를 들면, 인터넷을 통해 수신된 오디오 스트림을 사용자(100)에게 재생하는 것)을 수반하는 동작(202)을 수행하게 하는 요청을 국부 애플리케이션 및/또는 사용자로부터 수신하는 상기 제2 양태의 제6 변형예를 예시한 것이다. 제3 장치(104)는 풍부한 전력 용량을 비롯해서 동작(202)에 대한 높은 적합성을 개별적으로 표시할 수 있다. 그러나 요청 장치(200)는 제1 네트워크(208)(예를 들면, 인터넷 등의 광역 통신망)를 통해 제2 장치(104)와 통신할 수 있고, 제2 장치(200)는 제2 네트워크(208)(예를 들면, 블루투스 네트워크 등의 개인 영역 통신망)를 통해 제3 장치(104)와 통신할 수 있지만, 제3 장치(104)는 제1 네트워크(208)와 접속되지 않을 수 있다. 따라서, 요청 장치(200)에 의해 전송된 동작 초대(204)는 제1 네트워크(208)를 통해 제2 장치(104)에 전송될 수 있고, 제2 장치(104)는 장치 집합(102)의 모든 가용 장치(104)가 동작 초대(204)를 수신하고 그 동작 초대(204)에 응답하는 것을 보장하기 위해 제2 네트워크(208)를 통해 제3 장치(104)에 동작 초대(204)를 재전송할 수 있다. 게다가 제3 장치(104)는 동작(202)의 수행이 제2 장치(104)에 의한 참여를 수반한다고 결정할 수 있다. 예를 들면, 제3 장치(104)는 오디오 스트림을 방송하는 제1 네트워크(102)에 대한 사슬(tether)로서 제2 장치(104)를 통해 오디오 스트림을 수신할 수 있다. 따라서, 제3 장치(104)는 제2 장치(104)의 적합성을 또한 고려하여 동작(202)을 수행하기 위한 그 적합성을 평가할 수 있다. 예를 들면, 제3 장치(104)는 제3 장치(104)에 의해 수행되는 동작(202)에 참여하는 제2 장치(104)의 적합성에 대하여 제2 장치(104)에게 질의하는 적합성 질의(802)를 제2 장치(104)에게 보낼 수 있다. 제2 장치(104)는 낮은 적합성(예를 들면, 불충분한 전원)을 표시하는 참여 적합성 보고(804)를 제3 장치(104)에 전송함으로써 응답할 수 있다. 그러므로 제3 장치(104)는 제2 장치(104)를 통한 오디오 스트림의 스트리밍이 그 불충분한 전원의 고갈을 야기할 수 있기 때문에 동작(202)의 수행에 대한 낮은 적합성을 보고할 수 있다.
여기에서 제시된 기술의 제6 변형예로서, 장치 집합(102)의 장치(104)는 미래의 시간에 제1 장치의 미래 적합성을 고려하여 동작(202) 수행을 위한 자신의 적합성을 결정할 수 있다. 그 제1 예로서, 제1 장치(104)는 자신이 제한되지만 풍부한 전원 비축량을 갖고 있다고 결정할 수 있지만, 사용자가 제1 장치(104)를 사용할 것으로 기대되고 그때의 풍부한 전원에 의존할 때, 사용자(100)가 열차 여행시에 장치(102)를 소지하려 한다고 결정할 수 있다. 따라서 제1 장치(104)는 그 전원이 풍부하다 하더라도 미래의 시간에 전력 용량에 대한 예상되는 미래의 우선순위화에 기인하여 현재의 시간에 동작(202)의 수행에 대한 낮은 적합성을 보고할 수 있다. 그러한 제2 예로서, 제1 장치(104)는 자신이 동작(202)을 수행하는데 현재 부적합하다고 결정하지만, 미래의 시간에는 동작(202) 수행에 대한 높은 적합성을 제시할 것으로 예상할 수 있다. 예를 들면, 장치(104)는 현재 장치(104)에 접근할 수 없지만 가까운 미래에 장치(104) 부근에 있을 것으로 예상되는 사용자(100)에게 메시지를 제시하도록 요청받을 수 있다. 그러므로 장치(104)는 동작(202) 수행에 대한 높은 적합성을 보고할 수 있다(현재로서, 또는 현재의 적합성은 낮지만 예상되는 미래의 적합성은 높다는 표시로서, 이것은 현재 사용자(100)가 존재하는 다른 장치가 현재 높은 적합성을 제시하지 않는 한 장치(104)의 선택을 가능하게 한다). 고려사항의 조합을 비롯한 이러한 많은 고려사항은 여기에서 제시된 기술에 따라 장치 집합(102)을 대신하여 동작(202)을 수행하기 위한 장치(104)의 적합성을 결정 및 보고하기 위해 활용될 수 있다.
E3. 적당한 장치에서의 동작 수행
여기에서 제시된 기술들의 실시형태 중에서 변할 수 있는 제3 양태는 장치 집합(102)의 장치(104)의 적합성 보고(210)를 고려하여 동작을 수행하는 방식을 수반한다.
이 제3 양태의 제1 변형예로서, 요청 장치(200)는 장치 집합(102)의 응답 장치(212) 중에서 동작(202)에 대한 최고 적합성을 보고하는 장치(104)를 식별하고, 동작(202)을 수행하기 위해 선택된 장치(104)를 문의하는 동작 요청(216)을 보낼 수 있다. 대안적으로, 요청 장치(200)는 그들의 보고된 적합성에 기초하여 장치 집합(102)의 장치(104)들의 부분집합을 장치 집합(102)의 응답 장치(212)들 중에서 선택하고, 상기 선택된 장치 부분집합의 각각의 선택된 장치(214)에 동작 요청(216)을 보낼 수 있다. 추가의 예로서, 동작(202)이 동작 우선순위와 연관된 경우, 요청 장치(200)는 동작(202)이 완료시까지 수행되는 것을 보장하기 위해 동작(202)의 동작 우선순위에 비례하는 부분집합 크기를 가진 응답 장치 부분집합(예를 들면, 고우선순위 동작(202)을 위한 장치들의 큰 부분집합)을 응답 장치(212) 중에서 식별할 수 있다.
도 9는 상기 제3 양태의 제1 변형예를 특색지우는 예시적인 시나리오(900)를 예시한 것이다. 이 예시적인 시나리오(900)에서, 동작(200)은 사용자(100)에 대한 메시지의 제시를 포함하고, 장치 집합(102)의 응답 장치(212)는 메시지를 제시하기 위해 각 장치의 적합성을 표시하는 응답성 보고(210)로 응답할 수 있다. 그러나 메시지의 메시지 우선순위(902)에 따라서, 요청 장치(200)는 메시지를 제시하는 선택된 장치(214)를 다르게 식별할 수 있다. 만일 메시지 우선순위(902)가 낮으면, 요청 장치(200)는 동작(202)을 수행하기 위한 최고 적합성을 보고하는 단일 응답 장치(212)를 선택할 수 있다. 그러나 만일 메시지 우선순위(902)가 중간이면, 요청 장치(200)는 보고된 최고 적합성을 가진 제1 장치(104)를 먼저 선택하고, 만일 제1 장치(104)가 사용자(100)에 대한 메시지 제시에 성공하지 못하면 요청 장치(200)는 동작(202)을 재시도하기 위해 중간 적합성을 보고하는 제2 장치(104)를 선택할 수 있다. 만일 메시지 우선순위(902)가 긴급 메시지와 같이 높으면, 요청 장치(200)는 응답 장치(212) 모두를 선택하고, 고우선순위 메시지의 급속한 전달을 보장하기 위해 모든 응답 장치(212)에 동작 요청(216)을 보낼 수 있다. 이 방식으로, 요청 장치(200)는 메시지의 메시지 우선순위(902)를 고려하여 동작(202)을 수행할 선택된 장치(214)를 식별할 수 있다.
상기 제3 양태의 제2 변형예로서, 선택된 장치(214)는 동작(202)의 완료를 달성한 때 요청 장치(200)에 통지할 수 있다. 대안적으로 또는 추가로, 최초에 동작의 완료를 달성하는 데 실패한 경우, 상기 선택된 장치(214)는 상기 요청 장치(200)에 실패를 통지하고, 및/또는 요청 장치(200)를 대신하여 두번째로 동작을 재시도할 수 있다. 실패의 통지를 수신한 때(및/또는 선택된 장치(214)가 디스에이블되거나 전원 또는 접속이 끊어진 경우에 발생할 수 있는, 특정 시간 프레임 내에 동작(202) 완료의 보고를 수신하지 못한 때), 요청 장치(200)는 그에 따라서 장치 집합(102)의 제2 장치(104)를 동작(202) 수행을 위해 선택할 수 있다. 유사하게, 만일 요청 장치(200)가 국부 애플리케이션 및/또는 장치 집합(102)의 외부에 있는 원격 장치를 대신하여 장치 집합(102)에 의해 동작(202)의 수행을 요청하면, 요청 장치(200)는 선택된 장치(214)에 의한 동작(202) 수행의 완료 및/또는 실패의 통지를 전송할 수 있다.
도 10은 장치 집합(102)에 의해 사용자(100)에게 메시지(106)의 전송을 수반하는 동작의 완료를 특색지우는 예시적인 시나리오(1000)를 예시한 것이다. 이 예시적인 시나리오(1000)에 있어서, 첫번째(1004)에서, 요청 장치(200)(예를 들면, 워크스테이션)는 사용자(100)에게 제시할 메시지(106)를 수신하지만, 사용자(100)가 요청 장치(200) 근처에 없다고 검출한다. 그러므로 요청 장치(200)는 동작 초대를 장치 집합(102)에게 보내고, 사용자(100)가 현재 소지하고 있는 모바일 폰과 같은 제1 장치(104)는 높은 적합성을 보고하며, 사용자(100) 근처에 없는 태블릿과 같은 제2 장치(104)는 낮은 적합성을 보고한다. 그러므로 요청 장치(200)는 메시지(106)의 제시를 요청하는 동작 요청(216)을 제1 장치(104)에 보낸다. 그러나 사용자(100)는 상기 제1 장치(104)에 주의를 기울이지 않을 수 있다(예를 들면, 제1 장치(104)는 사용자의 주머니 속에 있고 검출되지 않거나, 또는 사용자(100)는 제1 장치로부터 멀리 떨어져 있을 수 있다). 그러므로 제1 장치(104)는 사용자(100)가 메시지(106)의 수신에 실패한 것을 검출할 수 있고(예를 들면, 사용자(100)의 부재 검출 또는 사용자(1000)에 의한 수령통지 부재), 실패 통지(1002)를 요청 장치(200)에게 보낼 수 있다. 두번째(1006)에서, 실패 통지(1002)를 수신한 후에, 요청 장치(200)는 동작(202)을 수행할 제2의 선택된 장치(214)를 식별하기 위해 동일한 동작(202)에 대한 다른 동작 초대(204)를 보낼 수 있다. 상기 두번째(1006)에서, 낮은 적합성을 이미 보고한 제2 장치(104)는 예를 들면 사용자(100)가 이제 제2 장치(104)를 적극적으로 이용하기 때문에 이제 높은 적합성을 보고할 수 있다. 그러므로 요청 장치(200)는 메시지(106)에 대한 제2 동작 요청(216)을 상기 제2 장치(104)에게 보낼 수 있고, 상기 제2 장치(104)는 메시지(106)를 사용자(100)에게 성공적으로 제시할 수 있으며, 따라서 요청 장치(200)에게 완료 보고를 보낼 수 있다. 이 방식으로, 장치 집합(102)의 장치(104)들은 여기에서 제시되는 기술에 따라 요청 장치(200)를 대신하여 동작(202)의 완료를 달성하기 위해 연동할 수 있다.
E. 컴퓨팅 환경
도 11 및 이하의 설명은 여기에서 설명하는 기술 중의 하나 이상의 실시형태를 구현하기 위한 적당한 컴퓨팅 환경의 간단하고 일반적인 설명을 제공한다. 도 11의 운영 환경은 적당한 운영 환경의 단지 일 예이고 운영 환경의 기능 또는 사용자의 범위에 대한 임의의 제한을 제시하는 것으로 의도되지 않는다. 예시적인 컴퓨팅 장치는, 비제한적인 예를 들자면, 퍼스널 컴퓨터, 서버 컴퓨터, 핸드헬드 또는 랩톱 장치, 모바일 장치(예를 들면, 모바일 폰, 개인용 정보 단말기(PDA), 미디어 플레이어 등), 멀티프로세서 시스템, 가전제품, 미니컴퓨터, 메인프레임 컴퓨터, 임의의 전술한 시스템 및 장치를 포함한 분산형 컴퓨팅 환경 등을 포함한다.
반드시 필요한 것은 아니지만, 실시형태들은 하나 이상의 컴퓨팅 장치에 의해 실행되는 "컴퓨터 판독가능 명령어"의 일반적인 관계로 설명된다. 컴퓨터 판독가능 명령어는 컴퓨터 판독가능 매체를 통하여 분산될 수 있다(뒤에서 설명함). 컴퓨터 판독가능 명령어는 특정의 태스크를 수행하거나 특정의 추상 데이터 유형을 구현하는 함수, 오브젝트, 응용 프로그래밍 인터페이스(API), 데이터 구조 등과 같은 프로그램 모듈로서 구현될 수 있다. 전형적으로, 컴퓨터 판독가능 명령어의 기능은 각종 환경에서 필요에 따라 결합 또는 분산될 수 있다.
도 11은 여기에서 제공하는 하나 이상의 실시형태를 구현하도록 구성된 컴퓨팅 장치(1102)를 포함한 시스템(1100)의 예를 보인 것이다. 일 구성에 있어서, 컴퓨팅 장치(1102)는 적어도 하나의 처리 장치(1106)와 메모리(1108)를 포함한다. 컴퓨팅 장치의 정확한 구성 및 유형에 따라서, 메모리(1108)는 휘발성(예를 들면, RAM), 비휘발성(예를 들면, ROM, 플래시 메모리 등) 또는 이들의 임의 조합일 수 있다. 이 구성은 도 11에서 파선(1104)으로 도시되어 있다.
다른 실시형태에서, 장치(1102)는 추가의 특징 및/또는 기능을 포함할 수 있다. 예를 들면, 장치(1102)는 비제한적인 예를 들자면 자기 스토리지, 광 스토리지 등을 포함한 추가의 스토리지(예를 들면, 분리형 및/또는 비분리형)를 또한 포함할 수 있다. 이러한 추가의 스토리지는 도 11에서 스토리지(1110)로 도시되어 있다. 일 실시형태에 있어서, 여기에서 제공하는 하나 이상의 실시형태를 구현하기 위한 컴퓨터 판독가능 명령어는 스토리지(1110)에 저장될 수 있다. 스토리지(1110)는 운영체제, 응용 프로그램 등을 구현하기 위한 다른 컴퓨터 판독가능 명령어를 또한 저장할 수 있다. 컴퓨터 판독가능 명령어는 예를 들면 처리 장치(1106)에 의한 실행을 위해 메모리(1108)에 로드될 수 있다.
여기에서 사용하는 용어 "컴퓨터 판독가능 매체"는 컴퓨터 판독가능 기억 장치를 포함한다. 컴퓨터 판독가능 기억 장치는 휘발성 및/또는 비휘발성, 분리형 및/또는 비분리형일 수 있고, 컴퓨터 판독가능 명령어 또는 다른 데이터를 저장하는 각종 유형의 물리적 장치를 수반할 수 있다. 메모리(1108) 및 스토리지(1110)는 컴퓨터 기억 매체의 예이다. 컴퓨터 판독가능 기억 장치는, 비제한적인 예를 들자면, RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, 디지털 다기능 디스크(DVD) 또는 다른 광학 스토리지, 자기 카세트, 자기 테이프, 및 자기 디스크 스토리지 또는 다른 자기 기억 장치를 포함한다.
장치(1102)는 장치(1102)가 다른 장치와 통신하게 하는 통신 접속(1116)을 또한 포함할 수 있다. 통신 접속(1116)은, 비제한적인 예를 들자면, 모뎀, 네트워크 인터페이스 카드(NIC), 집적 네트워크 인터페이스, 무선 주파수 송신기/수신기, 적외선 포트, USB 접속, 또는 컴퓨팅 장치(1102)를 다른 컴퓨팅 장치에 접속하기 위한 다른 인터페이스를 포함할 수 있다. 통신 접속(1116)은 유선 접속 또는 무선 접속을 포함할 수 있다. 통신 접속(1116)은 통신 매체를 송신 및/또는 수신할 수 있다.
용어 "컴퓨터 판독가능 매체"는 통신 매체를 포함할 수 있다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어 또는 다른 데이터를 반송파 또는 다른 운송 메카니즘과 같은 "피변조 데이터 신호"로 구체화하고, 임의의 정보 전달 매체를 포함한다. 용어 "피변조 데이터 신호"는 그 하나 이상의 특성 집합을 갖거나 정보를 신호에 인코딩하는 방식으로 변경된 신호를 포함할 수 있다.
장치(1102)는 키보드, 마우스, 펜, 음성 입력 장치, 터치 입력 장치, 적외선 카메라, 비디오 입력 장치 및/또는 임의의 다른 입력 장치와 같은 입력 장치(1114)를 포함할 수 있다. 하나 이상의 디스플레이, 스피커, 프린터 및/또는 임의의 다른 출력 장치와 같은 출력 장치(1112)가 또한 장치(1102)에 포함될 수 있다. 입력 장치(1114)와 출력 장치(1112)는 유선 접속, 무선 접속 또는 이들의 임의 조합을 통해 장치(1102)에 접속될 수 있다. 일 실시형태에 있어서, 다른 컴퓨팅 장치로부터의 입력 장치 또는 출력 장치가 컴퓨팅 장치(1102)의 입력 장치(1114) 또는 출력 장치(1112)로서 사용될 수 있다.
컴퓨팅 장치(1102)의 각종 컴포넌트는 버스와 같은 각종의 상호접속에 의해 접속될 수 있다. 이러한 상호접속은 PCI 익스프레스, 범용 직렬 버스(USB), 파이어와이어(IEEE 1394), 광학 버스 구조 등과 같은 주변 컴포넌트 상호접속(PCI)을 포함할 수 있다. 다른 실시형태에 있어서, 컴퓨팅 장치(1102)의 각종 컴포넌트는 네트워크에 의해 상호접속될 수 있다. 예를 들면, 메모리(1108)는 네트워크에 의해 상호접속된 상이한 물리적 위치에 소재하는 복수의 물리적 메모리 장치로 구성될 수 있다.
당업자라면 컴퓨터 판독가능 명령어를 저장하기 위해 사용하는 기억 장치들은 네트워크 전역에 분산될 수 있다는 것을 인식할 것이다. 예를 들면, 네트워크(1118)를 통해 접근 가능한 컴퓨팅 장치(1102)는 여기에서 제공하는 하나 이상의 실시형태를 구현하는 컴퓨터 판독가능 명령어를 저장할 수 있다. 컴퓨팅 장치(1102)는 컴퓨팅 장치(1120)에 접근하고 실행을 위해 컴퓨터 판독가능 명령어의 일부 또는 전부를 다운로드할 수 있다. 대안적으로, 컴퓨팅 장치(1102)는 필요할 때 컴퓨터 판독가능 명령어의 피스(piece)를 다운로드할 수 있고, 또는 일부 명령어는 컴퓨팅 장치(1102)에서 실행되고 일부 명령어는 컴퓨팅 장치(1120)에서 실행될 수 있다.
F. 용어의 용법
비록 본 발명을 구조적 특징 및/또는 방법적 동작에 특유한 언어로 설명하였지만, 첨부된 특허 청구범위에서 규정되는 본 발명은 위에서 설명한 특유의 특징 또는 동작으로 반드시 제한되는 것이 아니라는 점을 이해하여야 한다. 그보다, 위에서 설명한 특유의 특징 및 동작은 특허 청구범위를 구현하는 예시적인 형태로서 개시된다.
본 명세서에서 사용한 용어 "컴포넌트", "모듈", "시스템", "인터페이스" 등은 하드웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어 또는 실행 소프트웨어와 같은 컴퓨터 관련 엔티티를 인용하는 것으로 일반적으로 의도된다. 예를 들면, 컴포넌트는, 비제한적인 예를 들자면, 프로세서에서 동작하는 프로세스, 프로세서, 오브젝트, 실행 코드, 실행 스레드, 프로그램 및/또는 컴퓨터일 수 있다. 예로서, 컨트롤러에서 동작하는 애플리케이션과 컨트롤러는 둘 다 컴포넌트일 수 있다. 하나 이상의 컴포넌트가 프로세스 및/또는 실행 스레드에 있을 수 있고, 컴포넌트는 하나의 컴퓨터에 국부화되거나 및/또는 2개 이상의 컴퓨터에 분산될 수 있다.
또한, 청구된 주제는 개시된 주제를 구현하도록 컴퓨터를 제어하는 소프트웨어, 펌웨어, 하드웨어 또는 이들의 임의 조합을 생성하는 표준 프로그래밍 및/또는 엔지니어링 기술을 이용하여 방법, 장치 또는 제조 물품으로서 구현될 수 있다. 여기에서 사용하는 용어 "제조 물품"은 임의의 컴퓨터 판독가능 장치, 캐리어 또는 매체로부터 접근 가능한 컴퓨터 프로그램을 포함하도록 의도된다. 물론, 당업자라면 청구된 주제의 범위 또는 정신으로부터 벗어나지 않고 상기 구성에 대하여 많은 수정이 이루어질 수 있다는 것을 인식할 것이다.
실시형태의 각종 동작이 여기에서 제공된다. 일 실시형태에 있어서, 여기에서 설명한 동작 중의 하나 이상은 하나 이상의 컴퓨터 판독가능 매체에 저장되고 컴퓨팅 장치에 의해 실행된 때 컴퓨팅 장치가 여기에서 설명한 동작들을 수행하게 하는 컴퓨터 판독가능 명령어를 구성할 수 있다. 일부 또는 모든 동작들을 설명한 순서는 이러한 동작들이 반드시 순서 의존적임을 암시하는 것으로 해석되지 않아야 한다. 이 설명의 이익을 갖는 당업자라면 다른 순서를 예상할 수 있을 것이다. 또한, 모든 동작들이 여기에서 제공한 각 실시형태에 반드시 있어야 하는 것이 아님을 이해할 것이다.
더욱이, 단어 "예시적인"은 예, 사례 또는 예시로서 소용되는 의미로 여기에서 사용된다. "예시적인" 것으로서 여기에서 설명한 임의의 양태 또는 설계는 다른 양태 또는 설계보다 장점이 있는 것으로서 반드시 해석될 필요가 없다. 오히려, 단어 "예시적인"의 사용은 개념을 구상적 형태로 제시하는 것으로 의도된다. 이 명세서에서 사용하는 용어 "또는"은 배타적 "또는"보다는 내포적 "또는"을 의미하는 것으로 의도된다. 즉, 다른 방식으로 특정되거나 문맥으로부터 명확하지 않는 한, "X는 A 또는 B를 사용한다"는 임의의 자연적인 내포적 치환을 의미하는 것으로 의도된다. 즉, 만일 X가 A를 사용하거나; X가 B를 사용하거나; 또는 X가 A와 B 둘 다를 사용하면, "X는 A 또는 B를 사용한다"는 상기 사례들 중 어느 경우에도 만족된다. 또한, 이 명세서 및 첨부된 특허 청구범위에서 사용되는 단수 형태 표현은 다른 방식으로 특정되거나 단수 형태를 지시한다고 문맥으로부터 명확하지 않는 한 일반적으로 "하나 이상"을 의미하는 것으로 해석될 수 있다.
또한, 본 발명을 하나 이상의 구현예와 관련하여 도시하고 설명하였지만, 당업자에게는 이 명세서 및 첨부 도면을 읽고 이해한 것에 기초하여 등가적인 대안예 및 수정예가 가능할 것이다. 본 발명은 이러한 모든 수정예 및 대안예를 포함하고 이하의 특허 청구범위에 의해서만 그 범위가 제한된다. 특히 전술한 컴포넌트(예를 들면, 요소, 리소스 등)에 의해 수행되는 각종 기능과 관련해서, 그러한 컴포넌트를 설명하기 위해 사용된 용어들은 다른 방식으로 표시되지 않는 한, 여기에서 설명한 본 발명의 예시적인 구현예에서 기능을 수행하는 개시된 구조와 구조적으로 동등하지 않다 하더라도, (예를 들면, 기능적으로 동등한) 개시된 컴포넌트의 특정 기능을 수행하는 임의의 컴포넌트에 대응하는 것으로 의도된다. 또한, 본 발명의 특이한 특징이 몇 가지 구현예 중 하나와 관련해서만 설명되었지만, 그러한 특징은 임의의 주어진 또는 특수한 응용에 바람직하고 장점이 있는 경우 다른 구현예의 하나 이상의 다른 특징과 결합될 수 있다. 더 나아가, 용어 "포함한다", "가진", "갖는다", "구비한" 또는 이들의 변체가 상세한 설명 또는 특허 청구범위에서 사용되는 정도로, 이러한 용어들은 용어 "포함하는"과 유사한 방식으로 내포적으로 의도된다.

Claims (26)

  1. 사용자의 장치 집합(device set) 중의 제1 장치로 하여금 동작(action)들을 수행하게 하는 방법에 있어서,
    상기 제1 장치의 프로세서 상에서 명령어를 실행하는 단계를 포함하고, 상기 명령어는, 상기 제1 장치로 하여금,
    요청 장치로부터, 상기 사용자의 장치 집합의 각각의 장치로의 제1 동작 초대 방송을 수신하고, 수행될 제1 동작을 특정하게 하고,
    상기 제1 동작을 수행하기 위한 상기 제1 장치의 적합성을 표시하는 적합성 보고(suitability report)―상기 제1 장치의 적합성은 적어도, 상기 제1 동작을 수행하기 위한 상기 제1 장치의 장치 능력에 기초함―를 상기 요청 장치에 보내게 하고,
    상기 요청 장치로부터 그리고 상기 적합성 보고에 응답하여, 상기 제1 동작을 수행하라는 제1 동작 요청을 수신하면, 상기 요청 장치를 대신하여 상기 제1 동작을 수행하게 하고,
    국부 애플리케이션으로부터, 제2 동작을 수행하라는 요청을 수신하면, 상기 제2 동작을 특정하는 제2 동작 초대를 상기 장치 집합에 방송하게 하고,
    복수의 응답 장치로부터, 상기 제2 동작을 수행하기 위한 상기 응답 장치의 적합성을 표시하는 복수의 적합성 보고를 수신하게 하고,
    상기 응답 장치의 복수의 적합성 보고를 평가하여 상기 제2 동작을 수행할 선택된 장치를 식별하게 하고,
    상기 제1 장치를 대신하여 상기 제2 동작을 수행하라는 제2 동작 요청을 상기 선택된 장치에 보내게 하고,
    상기 명령어는 또한, 상기 제1 장치로 하여금,
    미래 시간에 상기 제1 장치의 미래 적합성에 따라 상기 제1 동작을 수행하기 위한 상기 제1 장치의 적합성을 식별하게 하고,
    상기 제1 동작을 수행하라는 동작 요청을 수신하면,
    상기 미래 시간까지 상기 요청을 저장하고,
    상기 미래 시간에 상기 요청 장치를 대신하여 상기 제1 동작을 수행하게 하는 것인, 방법.
  2. 제1항에 있어서,
    상기 제1 동작은 상기 장치 집합의 사용자를 수반하고,
    상기 명령어는 또한, 상기 제1 장치로 하여금 상기 제1 장치에 의한 상기 사용자의 접근성에 따라 상기 제1 동작을 수행하기 위한 상기 제1 장치의 적합성을 식별하게 하는 것인, 방법.
  3. 제1항에 있어서,
    상기 명령어는 또한, 상기 제1 장치로 하여금 상기 제1 장치의 전력 용량에 따라 상기 제1 동작을 수행하기 위한 상기 제1 장치의 적합성을 식별하게 하는 것인, 방법.
  4. 제1항에 있어서,
    상기 제1 장치에 의해 수행되는 제1 동작은 또한 제2 장치에 의한 참여를 수반하고,
    상기 명령어는 또한, 상기 제1 장치로 하여금 상기 제1 동작을 수행하기 위한 상기 제1 장치 및 제2 장치의 적합성을 식별하게 하고,
    상기 제1 동작을 수행하는 것은, 상기 요청 장치를 대신하여 상기 제2 장치의 참여로 상기 제1 동작을 수행하는 것을 더 포함하는 것인, 방법.
  5. 제4항에 있어서,
    상기 제1 동작을 수행하기 위한 상기 제2 장치의 적합성을 식별하는 것은,
    상기 제2 장치의 상기 제1 동작에의 참여의 적합성에 대해 상기 제2 장치에 질의하는 것과,
    상기 제2 장치로부터, 상기 제2 장치의 상기 제1 동작에의 참여의 적합성의 참여 적합성 보고를 수신하는 것을 더 포함하는 것인, 방법.
  6. 삭제
  7. 제1항에 있어서,
    상기 명령어는 또한, 상기 제1 장치로 하여금 상기 장치 집합의 사용자의 사용자 선호에 의해 특정된 상기 제1 동작을 수행하기 위한 상기 제1 장치의 적합성을 식별하게 하는 것인, 방법.
  8. 프로세서를 구비하고 사용자의 장치 집합에 포함되는 제1 장치로 하여금 동작들을 수행하게 하는 시스템에 있어서,
    동작 수행기와,
    동작 요청기를 포함하고,
    상기 동작 수행기는,
    상기 사용자의 장치 집합의 각각의 장치 내에서, 수행될 제1 동작을 표시하는 방송을 수신하면, 상기 제1 동작을 수행하기 위한 상기 제1 장치의 적합성을 표시하는 제1 적합성 보고―상기 제1 장치의 적합성은 적어도, 상기 제1 동작을 수행하기 위한 상기 제1 장치의 장치 능력에 기초함―를 반환하고,
    상기 제1 적합성 보고에 응답하여, 상기 제1 장치에 대한 상기 제1 동작을 수행하라는 동작 요청을 수신하면, 상기 제1 동작을 수행하고,
    상기 동작 요청기는,
    국부 애플리케이션으로부터, 제2 동작을 수행하라는 제2 요청을 수신하면, 상기 사용자의 장치 집합의 각각의 장치에 상기 제2 요청을 방송하고,
    상기 장치 집합 중의 적어도 2개의 응답 장치로부터, 상기 제2 동작을 수행하기 위한 상기 응답 장치의 적합성을 각각 표시하는 제2 적합성 보고를 수신하면, 상기 적어도 2개의 응답 장치 중에서, 선택된 장치를 식별하고,
    상기 선택된 장치에 상기 제2 동작을 수행할 것을 요청하고,
    상기 동작 수행기는 또한,
    미래 시간에 상기 제1 장치의 미래 적합성에 따라 상기 제1 동작을 수행하기 위한 상기 제1 장치의 적합성을 식별하고,
    상기 제1 동작을 수행하라는 동작 요청을 수신하면,
    상기 미래 시간까지 상기 요청을 저장하고,
    상기 미래 시간에 상기 제1 동작을 수행하는 것인, 시스템.
  9. 제8항에 있어서,
    상기 제1 적합성 보고는 상기 제1 동작을 수행하기 위한 상기 제1 장치의 적합성을 표시하는 적합성 점수를 포함하고,
    상기 선택된 장치를 식별하는 것은, 상기 적어도 2개의 응답 장치의 각각의 적합성 보고 중에서 가장 높은 적합성 점수를 특정하는 응답 장치를 식별하는 것을 포함하는 것인, 시스템.
  10. 제8항에 있어서,
    상기 선택된 장치를 식별하는 것은, 상기 적어도 2개의 응답 장치 중에서, 상기 제2 동작을 수행하기 위한 응답 장치 부분집합을 식별하는 것을 더 포함하고,
    상기 선택된 장치에 상기 제2 동작을 수행할 것을 요청하는 것은, 상기 응답 장치 부분집합의 각각의 응답 장치에 대해, 각각의 응답하는 제2 장치에 상기 제2 동작을 수행할 것을 요청하는 것을 포함하는 것인, 시스템.
  11. 명령어를 저장한 메모리 장치에 있어서, 상기 명령어는, 사용자의 장치 집합 중의 제1 장치의 프로세서 상에서 실행될 때에, 상기 제1 장치로 하여금 상기 장치 집합을 대신하여,
    요청 장치로부터, 상기 사용자의 장치 집합의 각각의 장치로의 제1 동작 초대 방송을 수신하고, 수행될 제1 동작을 특정하고,
    상기 제1 동작을 수행하기 위한 상기 제1 장치의 적합성을 표시하는 제1 적합성 보고―상기 적합성은 적어도, 상기 제1 동작을 수행하기 위한 상기 제1 장치의 장치 능력에 기초함―를 상기 요청 장치에 보내고,
    상기 요청 장치로부터 그리고 상기 제1 적합성 보고에 응답하여, 상기 제1 동작을 수행하라는 제1 동작 요청을 수신하면, 상기 요청 장치를 대신하여 상기 제1 동작을 수행하고,
    국부 애플리케이션으로부터, 제2 동작을 수행하라는 요청을 수신하면, 상기 제2 동작을 특정하는 제2 동작 초대를 상기 장치 집합에 방송하고,
    복수의 응답 장치로부터, 상기 제2 동작을 수행하기 위한 상기 응답 장치의 적합성을 표시하는 복수의 적합성 보고를 수신하고,
    상기 응답 장치의 복수의 적합성 보고를 평가하여 상기 제2 동작을 수행할 선택된 장치를 식별하고,
    상기 제1 장치를 대신하여 상기 제2 동작을 수행하라는 제2 동작 요청을 상기 선택된 장치에 보냄으로써,
    동작들을 수행하게 하고,
    상기 동작들은,
    미래 시간에 상기 제1 장치의 미래 적합성에 따라 상기 제1 동작을 수행하기 위한 상기 제1 장치의 적합성을 식별하게 하는 것,
    상기 제1 동작을 수행하라는 동작 요청을 수신하면,
    상기 미래 시간까지 상기 요청을 저장하고,
    상기 미래 시간에 상기 요청 장치를 대신하여 상기 제1 동작을 수행하게 하는 것을 더 포함하는 것인, 메모리 장치.
  12. 제11항에 있어서,
    상기 제1 동작은 상기 제1 장치와 상기 요청 장치에 의해 수행되고,
    상기 제1 동작을 수행하는 것은, 상기 요청 장치로 상기 제1 동작을 수행하는 것을 더 포함하는 것인, 메모리 장치.
  13. 제11항에 있어서,
    상기 동작들은, 상기 제1 동작의 완료를 달성하면, 상기 요청 장치에 상기 제1 동작의 완료를 통지하는 것을 더 포함하는 것인, 메모리 장치.
  14. 명령어를 저장한 메모리 장치에 있어서, 상기 명령어는, 사용자의 장치 집합 중의 제1 장치의 프로세서 상에서 실행될 때에, 상기 제1 장치로 하여금 상기 장치 집합을 대신하여,
    요청 장치로부터, 상기 사용자의 장치 집합의 각각의 장치로의 제1 동작 초대 방송을 수신하고, 수행될 제1 동작을 특정하고,
    상기 제1 동작을 수행하기 위한 상기 제1 장치의 적합성을 표시하는 제1 적합성 보고―상기 적합성은 적어도, 상기 제1 동작을 수행하기 위한 상기 제1 장치의 장치 능력에 기초함―를 상기 요청 장치에 보내고,
    상기 요청 장치로부터 그리고 상기 제1 적합성 보고에 응답하여, 상기 제1 동작을 수행하라는 제1 동작 요청을 수신하면, 상기 요청 장치를 대신하여 상기 제1 동작을 수행하고,
    국부 애플리케이션으로부터, 제2 동작을 수행하라는 요청을 수신하면, 상기 제2 동작을 특정하는 제2 동작 초대를 상기 장치 집합에 방송하고,
    복수의 응답 장치로부터, 상기 제2 동작을 수행하기 위한 상기 응답 장치의 적합성을 표시하는 복수의 적합성 보고를 수신하고,
    상기 응답 장치의 복수의 적합성 보고를 평가하여 상기 제2 동작을 수행할 선택된 장치를 식별하고,
    상기 제1 장치를 대신하여 상기 제2 동작을 수행하라는 제2 동작 요청을 상기 선택된 장치에 보냄으로써,
    동작들을 수행하게 하고,
    상기 동작들은, 제1 시간에 상기 제1 동작의 완료를 달성하는데 실패하면,
    제2 시간까지 상기 제1 동작 요청을 저장하는 것과,
    상기 제2 시간에 상기 요청 장치를 대신하여 상기 제1 동작을 재시도하는 것을 더 포함하는 것인, 메모리 장치.
  15. 제11항에 있어서,
    상기 동작들은, 상기 제1 동작의 완료 실패를 검출하면, 상기 요청 장치에 상기 제1 동작의 완료 실패를 통지하는 것을 더 포함하는 것인, 메모리 장치.
  16. 제11항에 있어서,
    상기 동작들은, 상기 선택된 장치로부터, 상기 제2 동작의 완료 실패의 통지를 수신하면,
    상기 제2 동작을 수행하기 위한 제2 선택된 장치를 식별하는 것과,
    상기 제2 선택된 장치에 상기 제2 동작 요청을 보내는 것을 더 포함하는 것인, 메모리 장치.
  17. 사용자의 장치 집합 중의 제1 장치로 하여금 동작들을 수행하게 하는 방법에 있어서,
    요청 장치로부터, 상기 사용자의 장치 집합의 각각의 장치로의 동작 초대 방송을 수신하고 수행될 동작―상기 동작은 제2 장치에 의한 참여를 수반함―을 특정하는 단계와,
    적어도, 상기 제1 장치 및 제2 장치의 능력에 기초하여 상기 동작을 수행하기 위한 상기 제1 장치 및 제2 장치의 적합성을 식별하는 단계와,
    상기 동작 초대의 수신에 응답하여, 상기 동작을 수행하기 위한 상기 제1 장치 및 제2 장치의 적합성을 표시하는 적합성 보고를 상기 요청 장치에 보내는 단계와,
    상기 요청 장치로부터 그리고 상기 적합성 보고에 응답하여, 상기 동작을 수행하라는 동작 요청을 수신하면, 상기 요청 장치를 대신하여 상기 제2 장치의 참여로 상기 동작을 수행하는 단계를 포함하고,
    상기 방법은,
    미래 시간에 상기 제1 장치의 미래 적합성에 따라 상기 동작을 수행하기 위한 상기 제1 장치의 적합성을 식별하는 단계와,
    상기 동작을 수행하라는 동작 요청을 수신하면,
    상기 미래 시간까지 상기 요청을 저장하는 단계와,
    상기 미래 시간에 상기 요청 장치를 대신하여 상기 동작을 수행하는 단계를 더 포함하는, 방법.
  18. 제17항에 있어서,
    국부 애플리케이션으로부터, 제2 동작을 수행하라는 요청을 수신하는 단계와,
    상기 제2 동작을 특정하는 제2 동작 초대를 상기 장치 집합에 방송하는 단계와,
    상기 장치 집합 중의 적어도 하나의 응답 장치로부터, 상기 제2 동작을 수행하기 위한 상기 응답 장치의 적합성을 표시하는 적합성 보고를 수신하면, 각각의 응답 장치의 각각의 적합성 보고를 평가하여 선택된 장치를 식별하는 단계와,
    상기 제1 장치를 대신하여 상기 동작을 수행하라는 제2 동작 요청을 상기 선택된 장치에 보내는 단계를 더 포함하는, 방법.
  19. 제17항에 있어서,
    상기 동작은 상기 장치 집합의 사용자를 수반하고,
    상기 방법은, 상기 제1 장치에 의한 상기 사용자의 접근성에 따라 상기 동작을 수행하기 위한 상기 제1 장치의 적합성을 식별하는 단계를 더 포함하는 것인, 방법.
  20. 제17항에 있어서,
    상기 제1 장치의 전력 용량에 따라 상기 동작을 수행하기 위한 상기 제1 장치의 적합성을 식별하는 단계를 더 포함하는, 방법.
  21. 제17항에 있어서,
    상기 동작을 수행하기 위한 상기 제2 장치의 적합성을 식별하는 단계는,
    상기 제2 장치의 상기 동작에의 참여의 적합성에 대해 상기 제2 장치에 질의하는 단계와,
    상기 제2 장치로부터, 상기 제2 장치의 상기 동작에의 참여의 적합성의 참여 적합성 보고를 수신하는 단계를 더 포함하는 것인, 방법.
  22. 삭제
  23. 제17항에 있어서, 상기 동작은 메시지 통지를 디스플레이하는 것인, 방법.
  24. 제1항에 있어서, 상기 제1 동작은 메시지 통지를 디스플레이하는 것인, 방법.
  25. 제8항에 있어서, 상기 제1 동작은 메시지 통지를 디스플레이하는 것인, 시스템.
  26. 제11항에 있어서, 상기 제1 동작은 메시지 통지를 디스플레이하는 것인, 메모리 장치.
KR1020167035542A 2014-05-19 2015-05-16 피어 기반 장치 집합 동작 KR102368456B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/281,468 US9571441B2 (en) 2014-05-19 2014-05-19 Peer-based device set actions
US14/281,468 2014-05-19
PCT/US2015/031268 WO2015179254A1 (en) 2014-05-19 2015-05-16 Peer-based device set actions

Publications (2)

Publication Number Publication Date
KR20170012336A KR20170012336A (ko) 2017-02-02
KR102368456B1 true KR102368456B1 (ko) 2022-02-25

Family

ID=53385939

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167035542A KR102368456B1 (ko) 2014-05-19 2015-05-16 피어 기반 장치 집합 동작

Country Status (5)

Country Link
US (1) US9571441B2 (ko)
EP (1) EP3146427B1 (ko)
KR (1) KR102368456B1 (ko)
CN (1) CN106416186B (ko)
WO (1) WO2015179254A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160351030A1 (en) * 2015-06-01 2016-12-01 Securonet Virtual safety network
US11121990B2 (en) * 2017-12-21 2021-09-14 International Business Machines Corporation Methods and systems for optimizing delivery of electronic communications
CN108513347B (zh) * 2018-03-30 2021-01-08 维沃移动通信有限公司 一种数据传输方法及电子设备

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002033541A2 (en) 2000-10-16 2002-04-25 Tangis Corporation Dynamically determining appropriate computer interfaces
US7257610B2 (en) 2001-10-17 2007-08-14 Microsoft Corporation Systems and methods for sending coordinated notifications
US6986136B2 (en) * 2001-10-30 2006-01-10 Hewlett-Packard Development Company, L.P. Web-based imaging service enabling jobs to be interrupted gracefully
US7890960B2 (en) 2003-03-26 2011-02-15 Microsoft Corporation Extensible user context system for delivery of notifications
US7996458B2 (en) * 2004-01-28 2011-08-09 Apple Inc. Assigning tasks in a distributed system
US8666037B2 (en) * 2005-03-23 2014-03-04 Paul M. Schwartz Alert provisioning system and method
US7366972B2 (en) 2005-04-29 2008-04-29 Microsoft Corporation Dynamically mediating multimedia content and devices
US20060288362A1 (en) * 2005-06-16 2006-12-21 Pulton Theodore R Jr Technique for providing advertisements over a communications network delivering interactive narratives
US8478300B2 (en) * 2005-12-20 2013-07-02 Microsoft Corporation Proximity service discovery in wireless networks
US7620610B2 (en) * 2006-06-27 2009-11-17 Microsoft Corporation Resource availability for user activities across devices
CN1996881A (zh) * 2006-12-19 2007-07-11 华为技术有限公司 媒体资源分配的方法、装置和系统
US8131302B2 (en) * 2007-07-20 2012-03-06 Broadcom Corporation Method and system for dynamically splitting jobs across multiple agnostic processors in wireless system
US8249638B2 (en) * 2008-03-31 2012-08-21 Hong Kong Applied Science and Technology Research Institute Company Limited Device and method for participating in a peer-to-peer network
US7991896B2 (en) 2008-04-21 2011-08-02 Microsoft Corporation Gesturing to select and configure device communication
US8365183B2 (en) * 2008-09-02 2013-01-29 Ca, Inc. System and method for dynamic resource provisioning for job placement
US9519728B2 (en) * 2009-12-04 2016-12-13 Time Warner Cable Enterprises Llc Apparatus and methods for monitoring and optimizing delivery of content in a network
US20120245995A1 (en) * 2011-03-21 2012-09-27 Mpanion, Inc. Method and system for enabling location based advertisements with pay for performance
US9271320B2 (en) * 2011-06-21 2016-02-23 Lg Electronics Inc. Method for performing communication between devices in a wireless access system, and device for same
EP2566106A1 (en) * 2011-09-02 2013-03-06 Nagravision S.A. System and method for controlling operating of consumption appliances
US8352546B1 (en) 2011-12-08 2013-01-08 Google Inc. Contextual and location awareness for device interaction
CN103391206B (zh) * 2012-05-07 2016-12-14 中国移动通信集团公司 一种任务调度方法及其装置
US9250983B2 (en) * 2012-06-01 2016-02-02 Blackberry Limited System and method for sharing items between electronic devices
CN104429155A (zh) * 2012-07-16 2015-03-18 三星电子株式会社 用于处理无线通信系统中的拓扑结构的方法和装置
GB2499281B (en) * 2012-09-28 2014-06-25 Imagination Tech Ltd Method, system and device for selecting a device to satisfy a user request

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
공개특허공보 제10-2008-0085843호(2008.09.24.) 1부*

Also Published As

Publication number Publication date
CN106416186B (zh) 2019-07-26
WO2015179254A1 (en) 2015-11-26
CN106416186A (zh) 2017-02-15
US9571441B2 (en) 2017-02-14
EP3146427B1 (en) 2023-09-13
US20150334071A1 (en) 2015-11-19
EP3146427A1 (en) 2017-03-29
KR20170012336A (ko) 2017-02-02

Similar Documents

Publication Publication Date Title
RU2694273C2 (ru) Основанная на местоположении передача аудиосообщений
US11949725B2 (en) Alarms for a system of smart media playback devices
US8615221B1 (en) System and method for selection of notification techniques in an electronic device
AU2014201252B2 (en) Method and apparatus for providing state information
US20150356836A1 (en) Conversation cues within audio conversations
US9253439B2 (en) Managing complex video call scenarios in volte calls
US10673641B2 (en) Connecting to a conference device
JP2017516167A (ja) 個人の存在に関連するアクションの実行
KR20130033443A (ko) 자동 통지자 할당
US20140172140A1 (en) Method and apparatus for cross device audio sharing
US9806795B2 (en) Automated earpiece cache management
US20140222951A1 (en) Apparatus and method for syncing device notifications
US20190074991A1 (en) Outputting audio based on user location
US20120151357A1 (en) Presenting device availability statuses
KR102368456B1 (ko) 피어 기반 장치 집합 동작
US10764442B1 (en) Muting an audio device participating in a conference call
US9537921B2 (en) Mobile-to-mobile streaming of real-time content for presentation by an output device
US20140108560A1 (en) Dynamic routing of a communication based on contextual recipient availability
US10003932B2 (en) Participation request messaging to members of a conversation group
US20240244097A1 (en) Alarms for a system of smart media playback devices
US9444928B1 (en) Queueing voice assist messages during microphone use
US9445395B1 (en) Suppressing alert messages based on microphone states of connected devices

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant