KR20170088351A - 다중 장치 협업 기법 - Google Patents

다중 장치 협업 기법 Download PDF

Info

Publication number
KR20170088351A
KR20170088351A KR1020177014257A KR20177014257A KR20170088351A KR 20170088351 A KR20170088351 A KR 20170088351A KR 1020177014257 A KR1020177014257 A KR 1020177014257A KR 20177014257 A KR20177014257 A KR 20177014257A KR 20170088351 A KR20170088351 A KR 20170088351A
Authority
KR
South Korea
Prior art keywords
collaboration
computing device
collaborative
content
user
Prior art date
Application number
KR1020177014257A
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 KR20170088351A publication Critical patent/KR20170088351A/ko

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Operations Research (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명의 양상들은 일반적으로 소스 컴퓨팅 장치와 수신지 컴퓨팅 장치 사이에서 콘텐츠를 공유하기 위한 협업 메커니즘을 자동으로 선택하는 방법에 관한 것이다. 협업 메커니즘은 협업 애플리케이션에 이용가능한 다수의 협업 메커니즘 중 하나일 수 있다. 본 발명의 양상들은 선택된 콘텐츠를 공유하기 위한 현재의 네트워크 상태, 하드웨어 상태, 및 품질 요건에 최적화된 협업 메커니즘을 자동으로 선택할 수 있다. 본 발명의 양상들에 의해 이용되는 다수의 네트워크 및 처리 조건들은 방법을 선택하는 사용자에 의해 쉽게 이용가능하지 않거나 식별되지 않을 수 있다.

Description

다중 장치 협업 기법{MULTI-DEVICE COLLABORATION}
온라인 협업/회의 공간에서, 다른 참가자들과 콘텐츠를 공유하는 다수의 방법이 있을 수 있다. 상이한 공유 기술은 상이한 목적에 맞게 최적화된다. 예를 들어, 데스크탑 공유는 프리젠테이션을 만드는 효과적인 방법일 수 있다. 그러나 해당 프레젠테이션을 공동으로 편집하려면, 사용자는 다른 사용자와 동시에 협업하여 변경 작업을 수행할 수 있도록 그 다른 사용자와 해당 파일/프로그램을 공유해야 할 수 있다.
본 요약은 이하의 상세한 설명에서 더 설명되는 선택된 개념들을 간단한 형식으로 소개하기 위해 제공된다. 본 요약은 청구된 주제의 주요 특징이나 필수적인 특징을 식별하기 위한 것이 아니며 청구된 주제의 범위를 결정하는 데 도움을 주기 위해 별도로 사용되려는 것도 아니다.
본 발명의 양상들은 일반적으로 소스 컴퓨팅 장치와 수신지 컴퓨팅 장치 사이에서 콘텐츠를 공유하기 위한 협업 메커니즘을 자동으로 선택하는 방법에 관한 것이다. 협업 메커니즘은 협업 애플리케이션에 이용가능한 여러 협업 메커니즘 중 하나일 수 있다.
이용가능한 협업 메커니즘들 모두는 수용가능한 공유 메커니즘을 선택하는 것을 사용자측면에서 시간 소모적인 프로세스로 만들어버릴 수 있다. 현재, 사용자는 협업 메커니즘을 선택하도록 요청받을 수 있다. 사용자는 네트워크 상태, 하드웨어 특성 및 기타 요소를 고려하지 않고 과거 경험을 토대로 협업 메커니즘을 선택할 가능성이 높다. 결과적으로, 사용자는 기술적으로 비효율적일 뿐만 아니라 미적으로 불쾌한 협업 세션을 생성하는 협업 메커니즘을 선택할 수 있다.
본 발명의 양상들은 선택된 콘텐츠를 공유하기 위해 현재의 네트워크 상태, 하드웨어 조건 및 품질 요구사항에 대해 최적화된 협업 메커니즘을 자동으로 선택할 수 있다. 본 발명의 양상들에 의해 이용되는 많은 네트워크 및 처리 조건들은 방법을 선택하는 사용자에 의해 쉽게 이용가능하지 않거나 식별가능하지 않다. 또한, 사용자는 협업 환경 내의 다양한 컴포넌트가 최적의 협업 메커니즘의 선택에 어떻게 영향을 미치는지 이해하지 못할 수도 있다. 사용자는 이용가능한 컴퓨터 및 네트워크 리소스를 비효율적으로 사용하는 협업 옵션을 선택할 수 있다. 본 발명의 양상들은 사용자 시간을 절약할 수 있고, 또한 협업 환경을 평가하여 사용자의 협업 의도를 만족시키는 효율적인 협업 메커니즘을 선택함으로써 컴퓨터 및 네트워크 리소스를 보다 효율적으로 사용할 수 있게 한다.
본 발명의 양상은 첨부된 도면을 참조하여 이하에서 상세히 설명된다.
도 1은 본 발명의 양상들을 구현하기에 적합한 예시적인 컴퓨팅 환경의 블록도이다.
도 2는 본 발명의 일 양상에 따른 분산 컴퓨팅 환경을 도시하는 다이어그램이다.
도 3은 본 발명의 일 양상에 따라, 협업 메커니즘을 선택하기 위한 결정 프로세스를 나타내는 흐름도이다.
도 4는 본 발명의 일 양상에 따라, 협업 메커니즘을 선택하기 위한 결정 프로세스를 나타내는 흐름도이다.
도 5는 협업 컴퓨팅 아키텍처를 나타내는 다이어그램이다.
도 6은 본 발명의 일 양상에 따라, 소스 컴퓨터 장치로부터 수신지 컴퓨터 장치로 콘텐츠를 공유하기 위한 협업 메커니즘을 선택하는 방법을 도시하는 다이어그램이다.
도 7은 본 발명의 일 양상에 따라, 소스 컴퓨터로부터 수신지 컴퓨터로 콘텐츠를 공유하기 위한 협업 메커니즘을 선택하는 방법을 도시하는 다이어그램이다.
본 발명의 양상의 주제는 법정 요구 사항을 충족시키기 위해 본원에서 특별하게 기재된다. 그러나, 설명 그 자체는 본 특허의 범위를 제한하지 않는다. 오히려, 본 발명자는 청구대상이 다른 현재 또는 미래의 기술과 함께, 본 문헌에서 설명된 것과 유사한 단계들의 조합 또는 다른 단계들을 포함하도록 다른 방식으로 실시될 수 있다고 간주한다. 또한, "단계" 및/또는 "블록"이라는 용어는 본원에서 사용되는 방법의 상이한 요소를 의미하기 위해 사용될 수 있지만, 이들 용어는, 개별 단계들의 순서가 명시적으로 설명되지 않으면, 본 명세서에서 개시된 다양한 단계들 간의 임의의 특정한 순서를 암시하는 것으로 해석되어서는 안된다.
본 발명의 양상들은 일반적으로 소스 컴퓨팅 장치와 수신지 컴퓨팅 장치 간에 공유될 콘텐츠에 대한 협업 메커니즘을 자동으로 선택하는 방법에 관한 것이다. 협업 메커니즘은 협업 애플리케이션에 이용가능한 여러 협업 메커니즘 중 하나 일 수 있다. 협업 메커니즘은 컴퓨팅 장치들 간에 데스크톱, 모니터 또는 개별 애플리케이션의(프로세스, 윈도우 또는 화면 영역을 통한) 공유를 지원할 수 있다. 또한, 협업 애플리케이션은 파일 전송(즉, 사용자가 두 명 이상의 사용자 간에 문서를 교환할 수 있는 기능)을 지원할 수도 있다.
협업 애플리케이션은 사람들이 서로 동기식으로 통신할 수 있게 한다. 협업 애플리케이션은 음성 및 화상 회의와 같은 동기 통신을 용이하게 할 수 있다. 협업 애플리케이션은 또한 협업 세션 동안 콘텐츠 공유를 용이하게 할 수 있다. 예시적인 콘텐츠 공유는 데스크톱 공유, 애플리케이션 윈도우 공유 및 파일 전송을 포함한다. 데스크톱 및 애플리케이션 윈도우는 웹 액세스 컴패니언 기술을 통해, 또는 변환된 콘텐츠를 렌더링할 수 있는 수신지 장치의 소프트웨어로 콘텐츠의 변환된 버전을 전송하는 특별 프로토콜을 통해 공유될 수 있다. 이러한 광범위한 공유 카테고리 외에도, 그 카테고리 내에서 다른 해상도 및 기타 특성이 선택될 수 있다. 협업 애플리케이션은 인스턴트 메시징, 프레즌스(presence), 파일 전송, 피어-투-피어 및 멀티파티 음성 및 화상 호출, 애드 혹(ad hoc) 및 구조화된 회의(오디오, 비디오 및 웹), 및 공중 전화망("PSTN") 연결을 위한 기능을 포함하지만 이에 제한되지 않는 통합 통신 플랫폼을 포함할 수 있다.
협업 메커니즘에 대한 이용가능한 모든 옵션 및 셋업은 수용가능한 협업 메커니즘을 선택하는 것을 사용자에게 시간 소모적인 프로세스이게 할 수 있다. 현재, 사용자는 협업 메커니즘을 선택하도록 요청받을 수 있다. 사용자는 네트워크 상태, 하드웨어 특성 및 기타 요소를 고려하지 않고 과거 경험을 토대로 협업 메커니즘을 선택할 가능성이 높다. 결과적으로, 사용자는 기술적으로 비효율적일 뿐만 아니라 미적으로 불쾌한 협업 세션을 생성하는 협업 메커니즘을 선택할 수 있다.
본 발명의 양상들은 선택된 콘텐츠를 공유하기 위해 현재의 네트워크 상태, 하드웨어 상태 및 품질 요구사항에 최적화된 협업 메커니즘을 자동으로 선택할 수 있다. 본 발명의 양상들에 의해 이용되는 많은 네트워크 및 처리 조건은 협업 메커니즘을 선택하는 사용자에 의해 쉽게 이용가능하지 않거나 식별가능하지 않다. 또한, 사용자는 협업 환경 내의 다양한 컴포넌트가 최적의 협업 메커니즘의 선택에 어떻게 영향을 미치는지 이해하지 못할 수도 있다. 사용자는 이용가능한 컴퓨터 및 네트워크 리소스를 비효율적으로 사용하는 협업 옵션을 선택할 수 있다. 본 발명의 양상들은 사용자 시간을 절약할 수 있고, 협업 환경을 평가하여 사용자 협업 의도를 또한 만족시키는 효율적인 협업 메커니즘을 선택함으로써 컴퓨터 및 네트워크 리소스를 보다 효율적으로 사용할 수 있게 한다.
본 발명의 다양한 양상은 소스 및 수신지 컴퓨팅 장치 모두에 대한 컴퓨터 프로파일 정보에 액세스할 수 있다. 컴퓨터 프로파일 정보는 설치된 프로그램, 하드웨어 특성, 이용가능 대역폭 및 유사한 컴퓨팅 측면을 포함할 수 있다. 본 발명의 양상은 사용자가 컴퓨터 프로파일 정보를 공유하는 허가를 제공하거나 보류하도록 허용하는 옵트 인 또는 옵트 아웃 인터페이스를 제공할 수 있다.
본 발명의 다양한 양상은 사용자 프로파일 정보를 기록하고 액세스할 수 있다. 사용자 프로필 정보는 명시적 사용자 협업 설정 및 이전 협업 세션에서 사용되었거나 선택된 협업 기술의 기록을 포함한다. 사용자 프로필 정보는 이름, 이메일 주소 및 기타 개인 정보도 포함할 수 있다. 본 발명의 양상은 사용자가 사용자 프로파일 정보를 공유하는 허가를 제공하거나 보류하도록 허용하는 옵트 인 또는 옵트 아웃 인터페이스를 제공할 수 있다.
본 발명의 양상에 대한 개관을 간략하게 설명하였으며, 이하에서는 본 발명의 양상들을 구현하는데 사용하기에 적합한 예시적인 동작 환경이 설명된다.
예시적인 동작 환경
일반적으로 도면을 참조하고, 특히 처음에는 도 1을 참조하면, 본 발명의 양상을 구현하기 위한 예시적인 동작 환경이 도시되어 있고 일반적으로 컴퓨팅 장치(100)로서 지정되어 있다. 컴퓨팅 장치(100)는 적절한 컴퓨팅 환경의 일례에 지나지 않으며 본 발명의 사용 또는 기능의 범위에 대해 어떠한 제한도 두지 않으려 한다. 컴퓨팅 장치(100)는 도시된 컴포넌트들 중 임의의 하나 또는 이들의 조합과 관련된 임의의 의존성 또는 요구사항을 갖는 것으로 해석되어서는 안된다.
본 발명은 개인용 정보 단말기 또는 다른 휴대용 장치와 같은 컴퓨터 또는 다른 머신에 의해 실행되는 프로그램 컴포넌트와 같은 컴퓨터 실행가능 명령어를 포함하는 컴퓨터 코드 또는 머신 사용가능 명령어의 일반적인 맥락에서 설명될 수 있다. 일반적으로, 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등을 포함한 프로그램 컴포넌트는 특정 작업을 수행하거나 특정 추상 데이터 유형을 구현하는 코드를 지칭한다. 본 발명의 양상은 핸드헬드 장치, 소비자 전자 장치, 범용 컴퓨터, 특수 컴퓨팅 장치 등을 포함한 다양한 시스템 구성에서 실시될 수 있다. 본 발명의 양상은 또한 작업이 통신 네트워크를 통해 연결된 원격 처리 장치에 의해 수행되는 분산형 컴퓨팅 환경에서도 실시될 수 있다.
계속해서 도 1을 참조하면, 컴퓨팅 장치(100)는 메모리(112), 하나 이상의 프로세서(114), 하나 이상의 프리젠테이션 컴포넌트(116), 입/출력(I/O) 포트(118), I/O 컴포넌트(120) 및 예시적인 전력 공급장치(122)를 직접적으로 또는 간접적으로 결합시키는 버스(110)를 포함한다. 버스(110)는(어드레스 버스, 데이터 버스 또는 이들의 조합과 같은) 하나 이상의 버스일 수 있는 것을 나타낸다. 도 1의 다양한 블록은 명료함을 위해 선으로 표시되어 있지만, 실제로는 다양한 컴포넌트들을 묘사하는 것은 그리 명확하지 않고, 은유적으로 말하면 선은 보다 정확히는 회색이고 흐릿하다. 예를 들어, 디스플레이 장치와 같은 프리젠테이션 컴포넌트를 I/O 컴포넌트(120)로 고려할 수 있다. 또한, 프로세서는 메모리를 갖는다. 본 발명의 발명자들은 그러한 것이 본 기술의 본질임을 인식하고, 도 1은 본 발명의 하나 이상의 양상과 관련하여 사용될 수 있는 예시적인 컴퓨팅 장치를 나타냄을 다시 한번 강조한다. "워크스테이션", "서버", "랩탑", "핸드헬드 장치" 등과 같은 범주들 사이의 구별은 없는데, 그 이유는 이들 모두는 도 1의 범위 내에서 고려되고 "컴퓨터" 또는 "컴퓨팅 장치"를 지칭하기 때문이다.
컴퓨팅 장치(100)는 통상적으로 다양한 컴퓨터 판독가능 매체를 포함한다. 컴퓨터 판독가능 매체는 컴퓨팅 장치(100)에 의해 액세스될 수 있는 임의의 이용 가능한 매체일 수 있고 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체 모두를 포함한다. 제한없는 예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술에서 구현되는 휘발성 및 비휘발성, 분리형 및 비분리형 매체 모두를 포함한다.
컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, DVD 또는 다른 광학 디스크 저장소, 자기 카세트, 자기 테이프, 자기 디스크 저장소 또는 다른 자기 저장 장치를 포함한다. 컴퓨터 저장 매체는 전파되는 데이터 신호를 포함하지 않는다.
통신 매체는 전형적으로 반송파 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호 내에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터를 포함하고 임의의 정보 전달 매체를 포함한다. "변조된 데이터 신호"라는 용어는 신호 내에 정보를 인코딩하는 방식으로 자신의 하나 이상의 특성을 설정하거나 변경한 신호를 의미한다. 제한이 아닌 예로서, 통신 매체는 유선 네트워크 또는 직접 유선 연결과 같은 유선 매체, 및 음향, RF, 적외선 및 다른 무선 매체와 같은 무선 매체를 포함한다. 전술한 것들 중 임의의 것의 조합 또한 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
메모리(112)는 휘발성 및/또는 비휘발성 메모리의 형태로 컴퓨터 저장 매체를 포함한다. 메모리(112)는 분리형, 비분리형, 또는 이들의 조합일 수 있다. 예시적인 메모리는 고체 상태 메모리, 하드 드라이브, 광디스크 드라이브 등을 포함한다. 컴퓨팅 장치(100)는 버스(110), 메모리(112) 또는 I/O 컴포넌트(120)와 같은 다양한 엔티티로부터 데이터를 판독하는 하나 이상의 프로세서(114)를 포함한다. 프리젠테이션 컴포넌트(들)(116)는 사용자 또는 다른 장치에 데이터 표시를 제시한다. 예시적인 프리젠테이션 컴포넌트(116)는 디스플레이 장치, 스피커, 프린팅 컴포넌트, 진동 컴포넌트 등을 포함한다. I/O 포트(118)는 컴퓨팅 장치(100)가 I/O 컴포넌트(120)를 비롯한 다른 장치(이들 중 일부는 내장될 수 있음)에 논리적으로 결합될 수 있게 해준다.
예시적인 I/O 컴포넌트는 마이크로폰, 조이스틱, 게임 패드, 위성 접시, 스캐너, 프린터, 디스플레이 장치, 무선 장치,(스타일러스, 키보드 및 마우스와 같은) 제어기, 자연스러운 사용자 인터페이스(NUI) 등을 포함한다. 실시예에서, 프리핸드(freehand) 사용자 입력을 디지털 방식으로 포착하기 위해, 펜 디지타이저(도시되지 않음) 및 동반 입력 기기(또한 도시되지는 않았지만 단지 예로서 펜 또는 스타일러스를 포함할 수 있음)가 제공된다. 펜 디지타이저와 프로세서(들)(114) 사이의 연결은 직접적일 수 있고 또는 당업계에 공지된 직렬 포트, 병렬 포트 및/또는 다른 인터페이스 및/또는 시스템 버스를 사용하는 커플링을 통해 이루어질 수 있다. 또한, 디지타이저 입력 컴포넌트는 디스플레이 장치와 같은 출력 컴포넌트로부터 분리된 컴포넌트일 수 있거나, 일부 실시예에서는 디지타이저의 사용가능 입력 영역은 디스플레이 장치의 디스플레이 영역과 함께 확장될 수 있거나, 디스플레이 장치와 함께 집적될 수 있거나, 또는 디스플레이 장치 위에 놓이거나 그 디스플레이 장치에 부착된 별도 장치로 존재할 수 있다. 임의의 및 모든 이러한 변형 및 이들의 임의의 조합은 본 발명의 실시예의 범위 내에 있는 것으로 고려된다.
NUI는 사용자에 의해 생성된 에어 제스처, 음성 또는 다른 생체 입력을 처리한다. 적절한 NUI 입력은 컴퓨팅 장치(100)와 연계하여 표현하기 위한 잉크 스트로크(ink strokes)로서 해석될 수 있다. 이들 요청은 추후 처리를 위해 적절한 네트워크 요소로 전송될 수 있다. NUI는 음성 인식, 터치 및 스타일러스 인식, 얼굴 인식, 생체 인식, 스크린 상 및 스크린에 인접한 제스처 인식, 에어 제스처, 머리 및 안구 추적, 및 컴퓨팅 장치(100) 상의 디스플레이와 관련된 터치 인식의 임의의 조합을 구현한다. 컴퓨팅 장치(100)는 제스처 검출 및 인식을 위해 입체 카메라 시스템, 적외선 카메라 시스템, RGB 카메라 시스템 및 이들의 조합과 같은 깊이 카메라를 구비할 수 있다. 또한, 컴퓨팅 장치(100)는 동작의 검출을 가능하게 하는 가속도계 또는 자이로스코프를 구비할 수 있다. 가속도계 또는 자이로스코프의 출력은 몰입형 증강 현실 또는 가상 현실을 렌더링하기 위해 컴퓨팅 장치(100)의 디스플레이에 제공될 수 있다.
컴퓨팅 장치는 무선기기를 포함할 수 있다. 무선기기는 무선 통신을 송신 및 수신한다. 컴퓨팅 장치는 다양한 무선 네트워크를 통해 통신 및 매체를 수신하도록 구성된 무선 단말일 수 있다. 컴퓨팅 장치(100)는 코드 분할 다중 액세스("CDMA"), 모바일용 글로벌 시스템("GSM") 또는 시분할 다중 액세스("TDMA") 등과 같은 무선 프로토콜을 통해 다른 장치들과 통신할 수 있다. 무선 통신은 근거리 연결, 장거리 연결 또는 단거리 및 장거리 무선 원격통신 연결의 조합일 수 있다. "단거리" 및 "장거리" 유형의 연결을 언급할 때, 두 장치 간의 공간적 관계를 언급하는 것이 아니다. 대신, 일반적으로 단거리 및 장거리를 서로 다른 카테고리 또는 유형의 연결(즉, 기본 연결 및 보조 연결)로 언급한다. 단거리 연결은 802.11 프로토콜을 사용하는 WLAN 연결과 같은 무선 통신 네트워크에 대한 액세스를 제공하는 장치에 대한 Wi-Fi® 연결(예를 들어, 모바일 핫 스폿)을 포함할 수 있다. 다른 컴퓨팅 장치에 대한 블루투스 연결은 단거리 연결의 두 번째 예이다. 장거리 연결은 CDMA, GPRS, GSM, TDMA 및 802.16 프로토콜 중 하나 이상을 사용하는 연결을 포함할 수 있다.
이제 도 2를 참조하면, 다중 장치 컴퓨팅 환경(200)이 도시되어 있다. 도 2 내의 2개 이상의 장치는 서로 통신하여 콘텐츠가 통신될 수 있는 협업 세션을 형성할 수 있다.
본 명세서에서 사용되는 바와 같이, 협업 환경은 콘텐츠를 공유하는 소스 컴퓨팅 장치 및 콘텐츠를 수신하는 하나 이상의 수신지 컴퓨팅 장치를 포함한다. 수신 및 송신 컴퓨터로 설명되지만, 협업 환경에서, 수신 컴퓨터는 송신 컴퓨터로 신속하게 전환할 수 있으며 반대의 경우도 마찬가지이다. 본 발명의 양상은 선택된 콘텐츠를 공유하는 것에 관한 것으로서, 소스 컴퓨터는 사용자가 공유될 콘텐츠를 지정하는 장치이다. 콘텐츠 자체는 소스의 컴퓨팅 장치의 컴퓨터 메모리 내에 또는 원격 저장소, 예를 들어, 로컬 영역 네트워크 또는 광역 네트워크를 통해 액세스 가능한 데이터 센터 또는 다른 저장 메커니즘에 저장될 수 있다. 일 양상에서, 선택된 콘텐츠는 초기에 수신 장치에 저장되지 않는다.
협업 환경은 소스 컴퓨팅 장치, 하나 이상의 수신지 컴퓨팅 장치, 및 콘텐츠가 장치들 간에 통신되는 네트워크를 포함한다. 또한, 협업 서비스(212)를 용이하게 하는 하나 이상의 컴퓨팅 장치(예를 들어, 데이터 센터 서버)는 또한 본 발명의 특정 양상에 대한 협업 환경의 일부로 간주될 수 있다. 협업 서비스(212)는 영상 공유, 음성 회의 및 다른 협업 기술을 위해 장치들 간에 브리지를 생성할 수 있다. 다른 양상들에서, 협업 환경은 협업 서비스(212)를 포함하지 않는다.
협업 서비스(212)는 인터넷과 같은 광역 통신망을 통해 액세스가능한 데이터 센터 또는 다수의 데이터 센터에 상주할 수 있다. 협업 서비스(212)는 협업 세션이 발생하고 있는 특정 시간에 일정량의 컴퓨팅 리소스를 할당받을 수 있다. 협업 서비스(212)에 할당되는 리소스의 양은 때때로 달라질 수 있다. 관련 컴퓨팅 리소스는 이용가능 처리, 비디오 렌더링 및 네트워킹 리소스를 포함한다.
협업 환경은 사용자 1, 2, 3, 4 및 5가 다양한 장치를 통해 서로 협업할 수있게 한다. 알 수 있는 바와 같이, 사용자는 하나 이상의 장치와 연관될 수 있다. 협업 환경은 인터넷일 수 있는 광역 네트워크(250)를 통해 장치들을 연결한다. 광역 네트워크(250)는 하나 이상의 상이한 종류의 협업 메커니즘을 가능하게 할 수 있는 협업 서비스(212)에 연결된다. 광역 네트워크(250)는 또한 가정용 LAN(220), 제1 업무용 LAN(230), 제2 업무용 LAN(240), 및 셀 타워(cell tower)로 대표되는 이동식 액세스 네트워크(246)를 포함하는 몇몇 로컬 네트워크에 연결된다.
사용자 1은 사용자 1 태블릿(222), 사용자 1 게임 콘솔(224), 사용자 1 전화기(226) 및 사용자 1 PC(228)를 포함하는 다수의 컴퓨팅 장치와 관련된다. 사용자 1 태블릿(222) 및 사용자 1 게임 콘솔(224)은 가정용 LAN(220)을 통해 광역 네트워크(250)에 연결될 수 있다. 가정용 LAN(220)은 무선 및 유선 연결 모두를 포함할 수 있다. 사용자 1 전화기(226) 및 사용자 1 PC(228)는 제1 업무용 LAN(230)을 통해 광역 네트워크(250)에 연결된다. 제2 사용자는 제1 업무용 LAN(230)에 연결된 사용자 2 PC(232)와 관련된다. 제3 사용자는 제1 업무용 LAN(230)에 또한 연결된 사용자 3 PC(234)와 관련된다. 사용자 4 태블릿(242) 및 사용자 4 PC(244)는 제2 업무용 LAN(240)에 접속된다. 사용자 5 태블릿(248)은 이동식 액세스 네트워크(246)에 연결된다.
능동 협업 세션(active collaboration session)에 참여려면 사용자는 컴퓨팅 장치에 능동적으로 참여해야 한다. 사용자는 여러 컴퓨팅 장치를 동시에 사용할 수 있는데, 예를 들어, 사용자는 스마트폰으로 전화를 걸면서 자신의 PC에 로그인할 수 있다. 그러나, 협업 세션을 위해, 사용자는 그 세션의 일부가 될 협업 애플리케이션에 참여해야 한다. 일부 사용자와 관련된 여러 장치는 수신지 사용자가 어떤 장치를 적극적으로 사용하고 있는지를 소스 사용자가 명확히 알 수 없을 때 최적의 협업 메커니즘을 선택하는 것이 어려울 수 있음을 보여준다. 협업 서비스(212)는 사람이 협업 환경 내에서 사용하고 있는 장치의 특성을 결정할 수 있는 로그인 또는 등록 프로세스를 용이하게 할 수 있다.
본 발명의 양상들은 소스 장치로부터 하나 이상의 수신지 장치로 공유될 콘텐츠에 대한 협업 메커니즘을 자동으로 선택한다. 공유는 협업 애플리케이션 내에서 발생할 수 있다. 예를 들어, 진행중인 협업 세션은 사용자 1, 4 및 5 사이에서 진행될 수 있다. 사용자 1은 사용자 1 게임 콘솔(224)을 사용하여 협업 세션에 액세스한다. 사용자 4는 사용자 4 태블릿(242)을 사용하여 협업 세션에 액세스하고, 사용자 5는 사용자 5 태블릿(248)을 사용하여 협업 세션에 액세스한다. 이 예에서, 협업 환경 내의 유일한 장치는 사용자 1 게임 콘솔(224), 사용자 4 태블릿(242) 및 사용자 5 태블릿(248)이다. 협업 환경은 또한 가정용 LAN(220), 광역 네트워크(250), 제 2 업무용 LAN(240) 및 모바일 액세스 네트워크(246)를 포함한다. 이 예에서, 제 1 업무용 LAN(230)은 협업 환경의 일부가 아닌데, 그 이유는 제 1 업무용 LAN(230)에 연결된 장치는 협업 세션에 적극적으로 참여하지 않기 때문이다. 협업 서비스(212) 및 협업 서비스를 용이하게 하는 컴퓨팅 장치는 또한 이 예에서 협업 환경의 일부이다.
협업 세션 동안, 사용자 1은 협업 세션에서 다른 사용자들과 프리젠테이션을 공유하기를 원할 수 있다. 사용자 1은 협업 애플리케이션에 의해 제공된 사용자 인터페이스를 통해 콘텐츠를 선택하고, 그것을 협업 세션 내의 개별 구성원 또는 협업 세션 내의 모든 구성원과 공유하도록 지정할 수 있다. 이어서, 본 발명의 양상들은 선택된 콘텐츠를 공유하기 위한 최적의 협업 메커니즘을 결정하기 위해 협업 환경의 속성들을 평가할 것이다. 사용자 1이 콘텐츠를 선택했기 때문에, 사용자 1 게임 콘솔(224)은 소스 컴퓨팅 장치가 되고 사용자 4 태블릿(242) 및 사용자 5 태블릿(248)은 수신지 컴퓨팅 장치가 된다. 특정 장치에 대한 소스 및 수신지 지정은 특정 공유 이벤트와 관련이 있다. 예를 들어 사용자 4가 다른 장치와 제2 콘텐츠를 공유하기로 결정한 경우 지정이 변경될 수 있다. 공유를 위한 협업 메커니즘을 선택하기 위해 사용되는 프로세스 및 고려되는 요소의 예가 도 3 내지 도 7을 참조하여보다 상세하게 설명된다.
이제 도 3을 참조하면, 본 발명의 실시예에 따라, 정적 협업 메커니즘이 선택되는지 능동 협업 메커니즘이 선택되는지 여부를 결정하도록 설계된 결정 프로세스(300)가 도시되어 있다. 능동 공유 메커니즘을 선택할지 정적 공유 메커니즘을 선택할지 여부는 능동적 메소드에 대한 임계치가 협업 환경에 의해 충족되는지 여부에 기초한다. 환경 내의 각각의 수신지 장치에 대해 서로 다른 협업 메커니즘이 선택될 수 있다. 결정 프로세스(300)는 협업 메커니즘을 선택하는 데 사용될 수 있는 프로세스의 한 예일 뿐이다. 결정 프로세스(300)는 프로세스(400)와 같은 다른 결정 프로세스와 결합되어 협업 메커니즘을 선택할 수 있다.
능동 협업 메커니즘은 콘텐츠에 대한 실시간 액세스 및 소스 사용자가 콘텐츠에 대해 수행하는 조작에 대한 실시간 액세스를 제공한다. 예를 들어, 능동 협업 메커니즘은 사용자가 콘텐츠에 대해 행하는 변경을 그 변경이 이루어질 때 보여준다. 능동 협업 메커니즘은 연속적인 대역폭 및 처리 사용량의 관점에서 정의될 수도 있다. 일 양상에서, 능동 협업 메커니즘은 협업 세션 동안 적어도 50 kbps, 예를 들어, 적어도 100 kbps, 또는 적어도 200 kbps, 또는 적어도 500 kbps의 평균값을 사용한다. 이 컨텍스트에서 사용되는 바와 같이, "연속적인"은 3분 초과, 예를 들어, 10분 또는 30분 동안 협업 세션이 계속됨을 의미한다. 데이터 전송 및 처리는 협업 세션 내에서 변동될 수 있으며 위에 나열된 속도를 평균으로 한다. 예시적인 능동 협업 메커니즘은 데스크탑 공유 및 애플리케이션 윈도우 공유를 포함한다. 데스크톱 또는 애플리케이션 윈도우가 공유되면, 수신지 사용자는 해당 애플리케이션 윈도우에서 소스 사용자가 무엇을 보고 있는지를 알 수 있다. 예를 들어, 수신지 사용자는 사용자가 콘텐츠를 조작할 때 마우스 포인터가 화면을 가로 질러 움직이는 것을 볼 수 있다. 능동 공유 메커니즘은 네트워크 및 장치 성능이 능동 협업을 처리할 수 있을 때 보다 풍부한 사용자 경험을 제공할 수 있다. 그렇지 않으면, 능동 협업은 저조한 사용자 경험을 제공할 수 있다.
정적 협업 메커니즘은 한 번에 콘텐츠 전체를 전송하고 소스 사용자의 콘텐츠 조작에 대한 지속적인 업데이트를 제공하지 않는다. 예를 들어, 프레젠테이션이나 문서와 같은 파일을 전송하는 것은 정적 협업 메커니즘의 예이다.
제1 결정 포인트는 네트워크 상태(302)가 능동 협업에 대한 하나 이상의 임계치를 만족시키는지를 평가한다. 네트워크 임계치는 가정용 LAN(220)과 같은 소스 네트워크 및 가정용 LAN(220)과 광역 네트워크(250) 간의 연결을 통한 이용가능한 대역폭을 포함할 수 있다. 네트워크 상태는 광역 네트워크(250)와 협업 서비스(212) 간의 네트워크 상태를 또한 포함할 수 있다. 이것은 데이터 서비스 네트워크 임계치로서 설명될 수 있다. 수신지 장치에 연결하기 위한 이용가능 다운로드 대역폭은 임계치와 비교될 수 있다. 이 임계치는 능동 공유 메커니즘에 의해 소비될 대역폭과 같을 수 있다. 각 수신지 장치는 개별적으로 평가될 수 있으며 서로 다른 수신지 장치에 대해 서로 다른 공유 메커니즘이 선택될 수 있다. 즉, 사용자 4 태블릿(242)에 대해 대역폭 임계치가 만족되면, 사용자 4 태블릿(242)에 대해 능동 공유 메커니즘이 선택될 수 있다. 그러나, 임계치가 사용자 5 태블릿(248)에 대해 만족되지 않으면, 사용자 5 태블릿(248)에 대해 정적 공유 메커니즘이 사용될 수 있다. 이는 수 많은 요소들의 평가에 따라 서로 다른 수신지 장치들에 대해 협업 메커니즘이 상이할 수 있음을 예시한다.
가용 대역폭 외에, 사용자 5 태블릿(248)에 대해 데이터 제한과 같은 다른 데이터 전송 관련 요소가 고려될 수 있다. 데이터 제한이 존재하면, 사용자 5 태블릿(248)은 네트워크 임계치 테스트를 만족시키지 않는 것으로 간주되거나 또는 정적 협업 메커니즘용으로 지정될 수 있다.
결정 프로세스(300)로 돌아가서, 네트워크 상태가 능동 협업에 대한 하나 이상의 임계치를 만족하지 않으면, 정적 협업 메커니즘이 선택된다(304). 네트워크 상태가 소스 장치, 협업 서비스 및 다수의 수신지 장치에서의 네트워크 상태를 포함할 수 있다면, 하나 이상의 장치가 배터리 전원으로 작동하는지 여부가 판정된다(306). 일반적으로, 능동 협업 메커니즘은 에너지 집약적이며 배터리를 소모할 수 있다. 사용자 1 게임 콘솔(224)이 배터리 전원으로 작동하지 않을 가능성이 있지만, 사용자 4 태블릿(242) 및 사용자 5 태블릿(248)은 배터리로 작동되거나 플러그인될 수 있다. 랩탑은 배터리로 작동하거나 플러그인될 수 있는 또 다른 예의 장치이다.
하나 이상의 장치가 배터리로 동작하면, 선택적으로, 배터리 충전 레벨이 임계치와 비교된다(308). 충전 레벨이 임계치 초과인 경우, 능동 협업 결정 프로세스의 나머지 부분이 평가될 수 있다. 배터리 레벨이 충전된 임계치보다 낮으면, 정적 협업 메커니즘이 선택된다(304).
결정 포인트(306)에서 장치들 중 어느 것도 배터리로 동작하지 않는 경우, 결정 지점(310)에서 협업 세션 내의 컴퓨터들은 임계 처리 능력 또는 가용성 요건을 충족시키는 지에 대해 평가된다. 결정 지점(310)에서, 현재의 조건이 능동 협업 메커니즘에 적합한지를 결정하기 위해 컴퓨터 특성이 평가된다. 컴퓨터 특성은 사용가능한 처리, 사용가능한 코덱, 및 하나 이상의 능동 협업 메커니즘을 사용하는 기능에 영향을 줄 수 있는 기타 특성을 포함할 수 있다. 하나의 양상에서, 임계치 특성은 가장 요구사항이 적은 능동 협업 메커니즘에 요구되는 것과 일치한다. 예를 들어, 각각이 서로 다른 요구사항을 가진 3개의 상이한 능동 협업 메커니즘이 이용가능할 수 있다. 이 경우, 전체 임계치는 소스 컴퓨팅 장치에서 이용가능한 가장 요구사항이 적은 능동 협업 메커니즘과 일치하도록 설정될 수 있다.
다른 특성은 수신지 장치에 설치된 애플리케이션을 포함할 수 있다. 예를 들어, 능동 애플리케이션은 수신지 컴퓨팅 장치에 협업 클라이언트가 설치될 것을 요구할 수 있다. 이 클라이언트 애플리케이션이 설치되어 있지 않은 경우, 능동 협업 메커니즘을 선택하는 기준이 충족되지 않을 수 있다. 한편, 다수의 능동 협업 메커니즘이 이용가능하고 그들 중 하나만이 설치되어 있지 않은 클라이언트를 요구하는 경우, 기준은 만족될 수 있고 클라이언트가 설치될 것을 요구하는 협업 메커니즘은 실현가능한 선택에서 제거될 수 있다. 이 제거는 후술되는 선택 엔진(320)을 통해 행해질 수 있다. 오직 하나의 능동 협업 메커니즘만이 가능한 경우, 소스 장치들 중 하나에 설치될 필요가 있는 클라이언트 애플리케이션의 고장은 결정 지점(310)에서의 능동 선택 기준이 실패하게 하고 정적 협업 메커니즘이 선택되게 할 수 있다(304).
컴퓨터 특성 및 속성 모두가 다양한 임계치에 비교되고 만족되는 경우, 결정 지점(312)에서, 협업 서비스는 적절한 가용성에 대해 평가받을 수 있다. 언급한 바와 같이, 협업 서비스는 하나 이상의 데이터 센터에 상주하고 특정 협업 메커니즘을 용이하게 할 수 있다. 예를 들어, 협업 서비스를 사용하는 능동 협업 메커니즘은 협업 서비스를 통해 공유되는 웹 페이지를 생성한다. 즉, 콘텐츠는 적극적으로 소스 컴퓨팅 장치로부터 협업 서비스로 전송되며 이 협업 서비스에서 콘텐츠는 소스 컴퓨팅 장치 상의 브라우저를 통해 액세스되는 웹 콘텐츠로 변환된다. 이러한 서비스를 수행하기 위해, 협업 서비스는 이용가능한 처리를 가질 필요가 있다. 따라서, 협업 서비스의 현재 성능 또는 가용성은 하나 이상의 능동 협업 메커니즘을 용이하게 하기 위한 적절한 가용성에 대해 평가된다. 협업 서비스가 이용가능한 성능을 가지고 있지 않은 경우, 정적 협업 메커니즘이 선택될 수 있다(304).
협업 서비스의 가용성에 대한 변형예는 소스 사용자에게 할당된 서비스 품질("QOS")의 사용일 수 있다. 상이한 소스 사용자는 협업 서비스에 대한해 상이한 레벨의 액세스를 가질 수 있다. 서비스의 품질은 이용가능한 용량과 비교될 수 있고, 능동 협업을 용이하게 하는데 필요한, 심지어 이용가능한 용량을 사용자에게 부여할지 여부를 결정하는 데 사용될 수 있다. 예를 들어, 수요가 최고인 기간 동안, 낮은 할당된 QOS를 갖는 사용자는 협업 서비스에 대한 액세스가 거부될 수 있는 반면, 높은 할당된 QOS를 갖는 사용자는 협업 서비스에 대한 액세스가 허락될 수 있다.
네트워크 상태, 배터리 상태, 컴퓨터 특성 및 협업 서비스 모두가 능동 협업을 위한 기준을 만족시키는 경우, 단계(314)에서 능동 협업 메커니즘이 선택된다. 능동 협업 메커니즘의 선택은 소스 컴퓨팅 장치 상에서 및/또는 수신지 장치와 연계하여 다수의 능동 협업 메커니즘이 이용가능한지 여부를 결정하는 것을 포함할 수 있다. 예를 들어, 다수의 능동 협업 메커니즘이 소스 장치에서 이용가능하지만 필요한 클라이언트가 수신지 장치 상에 설치되어 있지 않은 경우, 오직 하나의 능동 협업 메커니즘만이 이용가능할 수 있고 이 경우 그 오직 하나의 협업 메커니즘이 단계(318)에서 선택된다. 이와 달리, 이용가능한 능동 협업 메커니즘 중 어느 것이 사용되어야 하는지를 결정하기 위해 선택 엔진(320)이 사용될 수 있다. 선택 엔진(320)은 결정 프로세스를 진행할 수 있다. 예를 들어, 선택 엔진(320)은 최적의 협업 메커니즘을 선택하기 위해 편집 데이터로 훈련되는 머신 학습 메커니즘일 수 있다. 협업 메커니즘의 자동 선택은 원하는 품질을 달성하는데 필요한 것보다 많은 리소스를 사용할 수 있는 사용자 선택 프로그램 또는 기본 프로그램 대신에 사용자의 품질 요구를 만족시키는 기술을 선택함으로써 소스 컴퓨팅 장치, 수신지 컴퓨팅 장치 상의 컴퓨터 리소스 및/또는 서버 리소스의 사용을 최적화할 수 있다. 자동화된 선택은 또한 협업 메커니즘을 선택해야 하는 필요성을 제거함으로써 사용자의 시간을 절약할 수 있다. 대신, 사용자는 공유될 콘텐츠를 선택할 수 있고 콘텐츠를 공유하기 위한 가장 효율적인 협업 메커니즘은 자동으로 선택될 수 있다. 선택 엔진(320)은 몇몇 요소를 고려하여 그 선택을 최적화할 수 있다. 이들 요소는 이하에서 설명될 것이며, 공동 편집이 선택되는지 여부, 협업 장치의 배터리 상태 등을 포함할 수 있다.
이제 도 4를 참조하면, 본 발명의 양상에 따라, 공동 편집할 수 있는 협업 메커니즘을 선택하는 결정 프로세스(400)를 나타내는 흐름도가 도시되어 있다. 이 프로세스(400)는 선택 엔진(320)과 같은 선택 엔진에 의해 수행될 수 있다. 일부 협업 메커니즘은 여러 사람이 다른 컴퓨팅 장치로부터의 파일, 프리젠테이션, 또는 스프레드시트와 같은 콘텐츠를 함께 공동으로 편집할 수 있게 해준다. 다른 협업 메커니즘은 공동 편집을 허용하지 않지만 오직 프리젠테이션만을 허용한다. 프리젠테이션 협업 메커니즘은 수신지 사용자가 콘텐츠를 보는 것과 그 콘텐츠에 대한 소스 사용자의 조작을 허용하지만 수신 사용자가 콘텐츠를 변경하는 것은 허용하지 않는다. 공동으로 편집한다는 것은 소스 사용자가 교정 또는 변경을 수행하도록 음성적 또는 시각적 연결을 통해 제안하는 것과는 대조적으로, 콘텐츠를 직접 편집하는 것을 말한다.
이 결정 지점(402)에서, 공유할 콘텐츠를 선택한 소스 사용자가 그 콘텐츠를 공동으로 편집할 의도가 있는지 여부를 결정하기 위한 분석이 수행된다. 그 의도는 의도 엔진에 의해 결정될 수 있다. 의도 엔진은 협업 서비스에서, 소스 장치 상에서, 또는 다른 곳에서 실행될 수 있다. 의도 엔진은 사용자가 공동으로 편집하거나 공유할 의도가 있는지 여부를 제안하는 편집 태그를 갖는 협업 세션 특성의 코퍼스(corpus)에 의해 훈련된 머신 학습 알고리즘일 수 있다.
예를 들어, 협업 세션 내의 각각의 장치의 위치는 사용자가 공유할 의도를 가지고 있는지 여부를 판정하는데 사용되는 요소가 될 수 있다. 일반적으로, 서로 가까이에 있는, 예를 들어 1/4 마일 내에 있는 사용자는 프레젠테이션을 위해 함께 만나는 경향이 있다. 한편, 협업 세션은 사용자가 가까운 거리에 있을 때 구성될 수 있고, 따라서, 각 사용자는 자신의 장치로 입력을 제공할 수 있다. 사용자가 임계 근접 범위보다 멀리 분산되면, 프레젠테이션하려는 의도가 추론될 수 있다.
특히, 현재 협업 세션 내의 동일한 사용자와의 사용자의 이전 협업 활동 및 선택된 콘텐츠의 유형과 같은 다른 정보가 사용자가 공유하거나 편집할 의도가 있는지 여부를 결정하는데 사용될 수 있다.
결정 지점(402)에서 사용자가 편집하려는 의도가 없는 것으로 판단되면, 단계(404)에서 프리젠테이션 최적화된 협업 메커니즘이 선택된다. 대조적으로, 결정 지점(402)에서, 편집하려는 의도가 있는 것으로 판단되면, 단계(406)에서 공동 편집 협업 메커니즘이 선택된다.
결정 지점(408 및 414) 모두는 협업 환경이 능동 공유를 지원하는지 여부를 결정하려 한다. 능동 공유 메커니즘은 프리젠테이션 및 공동 편집 모두에 이용가능할 수 있다. 능동 또는 정적 결정은 도 3을 참조하여 이전에 설명하였으며, 결정 지점(414) 및 결정 지점(408)에서 능동 협업 메커니즘이 최적인지 여부를 결정하는데 적용될 수 있다.
능동 공동 편집 메커니즘이 요구되는 경우, 단계(418)에서, 이용가능한 능동 협업 메커니즘으로부터 능동 공동 편집 메커니즘이 선택된다.
능동 공동 편집 시스템이 요구되지 않는 경우, 단계(416)에서, 정적 공동 편집 시스템이 선택된다.
능동 프레젠테이션 메커니즘이 요구되는 경우 단계(412)에서 능동 프레젠테이션 메커니즘이 선택된다.
정적 프리젠테이션 메커니즘이 요구되는 경우, 단계(410)에서 정적 프리젠 테이션 메커니즘이 선택된다.
단계(410, 412, 416, 418)의 각각에서, 이용가능 협업 메커니즘으로부터의 추가 선택을 위해 전술한 선택이 선택 엔진(320)에 제공된다. 예를 들어, 단계(418)에서, 선택 엔진(320)은 몇몇 능동 공동 편집 협업 메커니즘에서 선택할 것을 요구받을 수 있다.
이제 도 5를 참조하면, 본 발명의 양상에 따른 협업 컴퓨팅 환경(500)이 도시된다. 협업 컴퓨팅 환경(500)은 앞서 설명한 소스 컴퓨팅 장치(502) 및 협업 서비스(212)를 포함한다. 단순화하기 위해, 하나 이상의 수신지 장치는 포함되어 있지 않다.
소스 컴퓨팅 장치(502)는 전술한 컴퓨팅 장치(100)와 유사할 수 있다. 소스 컴퓨팅 장치(502)는 운영 체체(520)를 포함한다. 운영 체제는 잘 알려져 있고 따라서 본 명세서에서는 상세히 설명하지 않는다. 운영 체제(520)는 소스 컴퓨팅 장치(502) 상의 하드웨어의 하드웨어 상태를 확인할 수 있는 기능을 가지고 있다. 하드웨어 상태를 검출하고 보고하는데 사용되는 기능들의 집합은 본 명세서에서 하드웨어 상태 컴포넌트(522)로 설명된다. 일 양상에서, 하드웨어 상태 컴포넌트(522)는 운영 체제의 일부가 아니며 대신 상위 레벨의 애플리케이션이다.
하드웨어 상태 컴포넌트(522)는 복수의 진단 도구 및 중앙 처리 장치("CPU") 사용 및 그래픽 처리 장치("GPU") 용량 및 현재 부하와 같은 요소들을 보고할 수 있는 보고 도구를 포함할 수 있다. 하드웨어 상태 컴포넌트(522)는 또한 이용가능한 능동 메모리 및 협업 메커니즘의 성능에 영향을 줄 수 있는 다른 제한 또는 특성에 대해 보고할 수 있다.
소스 컴퓨팅 장치(502)는 또한 하나 이상의 네트워크 인터페이스(525) 및 하나 이상의 코덱스(526)를 포함한다. 네트워크 인터페이스는 소스 컴퓨팅 장치(502)가 Wi-Fi 네트워크, 이더넷 연결, USB 포트, 또는 다른 장치 또는 네트워크에 연결하기 위한 다른 메커니즘과 연결될 수 있게 해주는 무선기기 및 관련 소프트웨어를 포함할 수 있다. 코덱스(526)는 비디오를 코딩 및 디코딩할 수 있는 기능을 제공한다. 코덱스는 미디어 플레이어 및 다른 애플리케이션과 연관될 수 있다. 상이한 장치는 상이한 이용가능한 코덱스 그룹을 가질 수 있다. 본 발명의 양상에서, 선택 컴포넌트는 수신지 및 소스 장치 상에 설치된 코덱스와 호환가능한 협업 메커니즘을 선택할 수 있다.
소스 컴퓨팅 장치(502)는 파일(531), 파일(532) 및 파일 N(533)을 갖는 파일 저장소(530)를 포함하고, N은 100, 1,000, 100,000 등과 같은 정수이다. 파일 저장소(530)는 애플리케이션 파일과 구별될 수 있는 콘텐츠 파일을 지정한다. 콘텐츠 파일은 특정 파일이 애플리케이션에 의해 처리되도록 포맷됨을 나타내도록 파일 확장자 또는 기타 메커니즘을 통해 애플리케이션과 연관될 수 있다. 한편, 애플리케이션 파일은 애플리케이션의 동작을 가능하게 하고 다르게는 프로그램 파일로서 설명될 수 있으며, .exe 등의 확장을 가질 수 있다.
소스 컴퓨팅 장치(502) 상의 애플리케이션은 협업 애플리케이션(512), 스프레드시트 애플리케이션(515), 이메일 애플리케이션(516) 및 프레젠테이션 애플리케이션(518)을 포함한다. 파일 저장소(530) 내의 파일들이 이들 애플리케이션들 중 하나와 연관될 수 있거나 또는 이들 중 어느 것과도 연관되 않을 수 있다. 예를 들어, 협업 애플리케이션(512)은 특정 형식의 파일과 연관되지 않지만 여러 파일 형식에 액세스할 수 있다.
협업 애플리케이션(512)은 선택 컴포넌트(513)를 포함한다. 이 선택 컴포넌트(513)는 본 명세서에서 도 3, 도 4, 도 6 및 도 7을 참조하여 설명한 것과 같은 선택 메커니즘 또는 메소드 중 일부를 수행한다. 선택 컴포넌트(513)는 협업 애플리케이션(512)과는 별개일 수 있고 독립적인 애플리케이션으로서 동작할 수 있다. 예를 들어, 컴퓨팅 장치는 다수의 협업 애플리케이션을 포함할 수 있고, 선택 엔진(513)은 상이한 상황에서 협업 메커니즘의 선택을 최적화하기 위해 다수의 협업 애플리케이션과 인터페이싱할 수 있다.
선택 컴포넌트(513)는 협업 환경의 다양한 특성을 평가할 수 있다. 특성은 소스 컴퓨팅 장치, 수신지 컴퓨팅 장치(들), 및 시스템에 관련된 특성을 포함한다. 소스 컴퓨팅 장치에 관한 것으로서 간주되는 특성은 연결 유형(예를 들어, 유선/무선/3G/LET), 대기시간(latency), 손실, 연결 품질/신호 세기를 포함하는 소스 네트워크 특성을 포함한다. 수신지 특성은 스크린 크기, 모바일 대 데스크탑 대 태블릿, 터치 등을 포함할 수 있다.
디지털 보조 단말기(540)는 사용자의 선호 및 활동을 관리하는 것을 도울 수 있다. 디지털 보조 단말기(540)는 선택 컴포넌트(513) 및 협업 애플리케이션 또는 다른 애플리케이션, 예를 들어 소스 컴퓨팅 장치에서 동작하는 이메일 애플리케이션(516)에 정보를 제공할 수 있다. 특히, 디지털 보조 단말기(540)는 사용자의 선호를 저장할 수 있고, 소스 장치의 사용자와 협업 세션 내의 다른 사용자 사이의 관계를 이해할 수 있다. 예를 들어, 디지털 보조 단말기(540)는 세션 내의 사용자들이 동일한 회사에 있는 동료인지 또는 다른 회사에서 일하는 직원인지 여부를 이전 접촉에 대한 분석을 통해 통계적으로 추론할 수 있다. 디지털 보조 단말기(540)는 협업 세션 내의 사용자들이 서로와의 통신 이력을 가지고 있는지 여부를 판정할 수 있고 그들의 관계 친밀도를 추론할 수 있다. 이 정보는 전술한 바와 같이 결정 엔진 또는 의도 엔진에 제공되어 최적의 협업 메커니즘을 선택하는데 도움을 준다. 예를 들어, 일부 협업 메커니즘은 다른 협업 메커니즘보다 높은 레벨의 보안을 제공한다. 협업 세션 내의 참가자들 중 하나 이상이 다른 엔티티를 위해 일하는 경우, 증가된 보안을 선호한다는 것이 추론될 수 있고 보다 높은 보안을 갖는 협업 메커니즘이 선택될 수 있다. 디지털 보조 단말기(540)는 또한 협업 애플리케이션(512)과 인터페이싱하여 협업 세션을 구성하기 위한 하드웨어 및 사용자 주소를 식별하는데 도움을 줄 수 있다.
협업 서비스(212)는 협업 세션을 용이하게 하는데 도움을 준다. 협업 서비스(212)는 데이터 센서에 상주할 수 있다. 협업 서비스(212)는 임의의 주어진 시간에서 유한한 수의 컴퓨터 리소스를 할당받을 수 있다. 컴퓨팅 리소스는 능동 메모리, 네트워크 리소스 및 처리 능력을 포함할 수 있다. 처리 능력은 CPU 및 GPU 관련 기능 모두를 포함할 수 있다. 일 양상에서, 협업 서비스(212)는 다양한 사용자 간의 협업 세션을 협상하는데 사용된다. 즉, 통신이 협업 서비스를 통해 전달될 수 있거나 협업 서비스는 클라이언트들 간의 직접 통신을 용이하게 할 수 있다.
협업 서비스는 사용자 레코드 컴포넌트(550), 네트워크 테스팅 컴포넌트(552), 장치 테스팅 컴포넌트(555), 협업 컴포넌트(556), 및 선택 컴포넌트(558)를 포함한다. 협업 컴포넌트(556)는 영상 회의 및 음성 회의를 포함한 협업 서비스를 직접 제공할 수 있다. 협업 컴포넌트(556)는 또한 콘텐츠 공유의 소정의 인스턴스를 용이하게 할 수 있다.
사용자 레코드 컴포넌트(550)는 관련 있는 경우 가입 정보를 유지할 수 있다. 사용자 레코드 컴포넌트(550)는 또한 사용자의 이전 협업 세션의 기록을 포함할 수 있다. 이전 사용자 협업 세션으로부터의 데이터는 공유되는 데이터의 유형, 편집이 발생했는지 여부, 해당 세션 동안 사용된 협업 메커니즘, 임의의 오류 메시지 또는 협업 세션 내의 하나 이상의 사용자로부터 수신된 불만, 사용자 선호 및 과거 사용자 협업 세션의 기타 특성을 포함할 수 있다.
네트워크 테스팅 컴포넌트(552)는 협업 세션에 진입하는 다양한 장치들 사이의 이용가능 대역폭 및 다른 네트워크 특성을 확인하는데 사용될 수 있다. 네트워크 테스팅 컴포넌트(552)는 이러한 정보를, 특정 상황에 대한 최적의 협업 메커니즘을 확인하려고 하는 선택 컴포넌트(513)와 같은 컴포넌트에 전달할 수 있다.
장치 테스팅 컴포넌트(555)는 하드웨어 프로파일 및 현재의 동작 특성을 확인하기 위해 협업 세션 내의 장치들에게 질의할 수 있다. 하드웨어 프로파일은 예를 들어, 태블릿 또는 스마트폰이 어떤 종류의 해상도를 지원할 수 있는지를 이해하는데 유용할 수 있다. 장치 테스팅 컴포넌트(555)는 또한 CPU, GPU, 메모리 또는 다른 컴포넌트의 현재 부하 또는 이용가능성을 판정하기 위해 하드웨어 상태 컴포넌트(5220와 같은 컴포넌트에 질의할 수 있고 이 데이터를 선택 컴포넌트(513)에 전달할 수 있다.
선택 컴포넌트(558)는 선택 컴포넌트(513)와 연계하여 동작할 수 있거나, 선택 컴포넌트(513)에 대한 대안일 수 있다. 다시 말해, 선택 컴포넌트(558)는 협업 메커니즘의 선택을 용이하게 하거나 수행할 수 있다. 선택 컴포넌트(558)를 협업 서비스(212)에 포함시키는 것은 최적일 수 있다.
이제 도 6을 참조하면, 본 발명의 양상에 따라, 콘텐츠를 소스 컴퓨터 장치로부터 수신지 컴퓨터 장치로 공유하기 위한 협업 메커니즘을 선택하는 방법(600)을 보여주는 흐름도가 도시되어 있다.
단계(610)에서, 수신지 사용자와 콘텐츠를 공유하라는 요청이 소스 컴퓨팅 장치에서 실행되는 협업 애플리케이션을 통해 수신된다. 수신지 사용자는 수신지 컴퓨팅 장치를 능동적으로 사용하여 협업 세션에 참여한다. 소스 컴퓨팅 장치로부터 수신지 컴퓨팅 장치로 콘텐츠를 통신하는데 복수의 협업 메커니즘이 이용가능하다. 협업 애플리케이션은 사용자가 상이한 컴퓨팅 장치를 통해 서로 음성을 사용해 동기식으로 통신할 수 있게 해주는 애플리케이션일 수 있다.
단계(620)에서, 소스 컴퓨팅 장치, 수신지 컴퓨팅 장치, 및 소스 컴퓨팅 장치로부터 수신지 컴퓨팅 장치로 콘텐츠를 통신하는데 이용되는 네트워크를 포함하는 협업 환경에 대한 복수의 협업 특성이 확인된다. 협업 환경은 다수의 수신지 컴퓨팅 장치를 포함할 수 있다.
수신지 컴퓨팅 장치의 특성은 수신지 컴퓨팅 장치의 중앙 처리 장치("CPU")에 대한 세부사항 및 CPU에 대한 현재의 처리 부하를 포함할 수 있다. 특성은 수신지 컴퓨팅 장치의 그래픽 처리 장치("GPU")에 대한 세부사항 및 GPU에 대한 현재의 처리 부하를 또한 포함할 수 있다.
특성은 네트워크의 특성을 포함할 수 있다. 예를 들어, 소스 컴퓨팅 장치와 수신지 컴퓨팅 장치 간의 네트워크 연결에 대한 대기시간, 소스 컴퓨팅 장치가 콘텐츠를 출력하는데 이용가능한 소스 네트워크 대역폭, 및 수신지 컴퓨팅 장치가 콘텐츠를 수신하는데 이용가능한 수신지 네트워크 대역폭 각각이 특성일 수 있다.
협업 특성은 수신지 컴퓨팅 장치가 현재 동작하는데 배터리 전원을 사용하고 있지 않음을 나타내는 배터리 상태를 포함할 수 있다. 특성은 또한 수신지 장치가 배터리 전원으로 실행되는 경우 배터리의 충전 레벨을 포함할 수 있다.
복수의 협업 특성은 하나 이상의 능동 협업 메커니즘을 용이하게 하는 데이터 센터에서 호스팅되는 협업 서비스에 대한 현재의 가용성 정보를 포함할 수 있다. 이 가용성 정보는 처리 또는 네트워크 리소스와 같은 이용가능 컴퓨팅 리소스일 수 있다.
단계(630)에서, 소스 사용자 또는 수신지 사용자로부터의 입력없이, 복수의 협업 특성이 능동 협업 메커니즘을 사용하기 위한 기준을 만족시키기 때문에, 이용가능 정적 협업 메커니즘보다는, 콘텐츠를 통신하는데 사용되도록 능동 협업 메커니즘이 선택된다. 기준을 만족시킬 수 있는 다양한 방식이 가능하다. 일 양상에서, 기준은 능동 협업 메커니즘이 사용될 수 있는 환경과 능동 협업 메커니즘이 사용될 수 없는 환경 간을 구별할 수 있는 하나 이상의 임계 값(특성 당 하나의 값)을 포함한다. 각각의 이용가능 능동 협업 메커니즘에 상이한 기준 또는 임계치가 적용될 수 있다. 예를 들어, 보다 낮은 해상도의 데스크탑 공유는 이용가능 네트워크 대역폭의 128kbps의 임계치를 가질 수 있다. 보다 높은 해상도의 데스크탑 공유는 이용가능 네트워크 대역폭 임계치의 400kbps를 가질 수 있다. 임의의 이용가능 능동 협업 메커니즘에 대한 임계치가 만족되는 경우, "기준"은 만족될 수 있다.
기준을 만족시키는 두 번째 방식에 있어서, 다수의 특성을 함께 고려하여 임의의 능동 협업 메커니즘이 현재 특성에 대해 최적의 선택인지 여부를 결정하는 머신 학습 메커니즘에 의해 복수의 협업 특성이 평가된다. 머신 학습 메커니즘이 능동 협업 메커니즘을 선택하지 않는 경우, 기준이 만족된다. 머신 학슴 메커니즘을 훈련시키는데 사용되는 훈련 데이터는 능동 협업 메커니즘이 특성에 대해 최적화되는지 여부를 나타내는 태그와 함께 복수의 협업 특성을 포함할 수 있다. 이와 달리, 훈련 데이터는 협업 특성의 주어진 세트에 대해 어떤 협업 메커니즘이 최적인지를 나타낼 수 있다. 훈련 데이터는, 예를 들어 능동 협업 메커니즘을 용이하게 하는데 부적절한 대역폭이 이용가능한 경우 능동 협업 메커니즘이 선택되지 않도록 보장하기 위해 생성되기 때문에, 이 훈련 데이터는 사실상 엄격한 임계치를 포함할 수 있다.
기준은 능동 협업 메커니즘에 의해 생성된 예상 처리 부하를 임계량 너머 초과하는 CPU, GPU 또는 CPU와 GPU 모두의 이용가능 처리 용량을 포함할 수 있다. 이용가능 처리 용량은 CPU 또는 GPU의 처리 용량과 현재의 처리 부하 간의 차이로서 계산될 수 있다. 일 양상에서, 각각의 능동 협업 메커니즘에 대해 다른 임계치가 사용된다. 만족되지 않는 임계치와 연관된 능동 협업 메커니즘은 요청을 전송하도록 선택가능한 목록에서 제거될 수 있다. 임계치를 만족시키는 것들은 선택을 위한 추가 분석을 수용하는 그룹에 포함될 수 있다.
기준은 네트워크에 관련된 임계치를 포함할 수 있다. 예를 들어, 네트워크에 대한 복수의 협업 특성 각각은 능동 협업 메커니즘을 사용하여 콘텐츠를 전달하기 위한 대응하는 품질 기준을 만족시킬 필요가 있다. 품질 임계치는 각각의 능동 협업 메커니즘마다 다르게 설정될 수 있다. 충족되지 않는 임계치와 연관된 능동 협업 메커니즘은 요청을 전달하는데 선택될 수 있는 것으로부터 제거될 수 있다. 임계치를 만족시키는 것은 선택을 위한 추가 분석을 수용하는 그룹에 포함될 수 있다.
기준은 수신지 컴퓨팅 장치가 현재 동작하는데 배터리 전원을 사용하고 있지 않을 것을 요구할 수 있다. 기준은 현재 동작하는데 배터리 전원을 사용하는 경우 수신지 컴퓨팅 장치가 임계 배터리 레벨 위에 있을 것을 요구할 수 있다.
기준은 데이터 센터가 현재 하나 이상의 능동 협업 세션을 호스팅하기에 충분한 가용성을 갖고 있는 것을 포함할 수 있다.
단계(640)에서, 소스 컴퓨팅 장치로부터의 콘텐츠는 수신지 컴퓨팅 장치로 전달되기 위해 네트워크에 출력된다. 제1 능동 협업 메커니즘이 콘텐츠를 전달하는 데 사용된다.
이제 도 7을 참조하면, 소스 컴퓨터로부터 수신지 컴퓨터로 콘텐츠를 공유하기 위한 협업 메커니즘을 선택하는 방법(700)이 제공된다.
단계(710)에서, 수신지 사용자의 컴퓨팅 장치와 콘텐츠를 공유하라는 요청이 소스 컴퓨팅 장치에서 실행되는 협업 애플리케이션을 통해 수신된다. 수신지 사용자는 수신지 컴퓨팅 장치를 능동적으로 사용한다. 소스 컴퓨팅 장치로부터 수신지 컴퓨팅 장치로 콘텐츠를 통신하는 데 복수의 협업 메커니즘이 이용가능하다.
단계(720)에서, 소스 컴퓨팅 장치, 수신지 컴퓨팅 장치, 및 소스 컴퓨팅 장치로부터 수신지 컴퓨팅 장치로 콘텐츠를 통신하는데 이용되는 네트워크를 포함하는 협업 환경에 대해 복수의 협업 특성이 확인된다.
일 양상에서, 협업 특성은 소스 사용자 및 수신지 사용자 간의 이전 협업에 대한 설명일 수 있다.
단계(730)에서, 소스 사용자 또는 수신지 사용자부터의 입력없이, 복수의 협업 특성이 공동 편집 협업 메커니즘을 사용하기 위한 의도 기준을 만족시키기 때문에, 이용가능 비-편집 협업 메커니즘보다는, 콘텐츠를 통신하는데 공동 편집 협업 메커니즘이 사용될 것이라는 결정이 행해진다. 기준을 만족시킬 수 있는 다양한 방식이 가능하다. 일 양상에서, 기준은 공동 편집 협업 메커니즘이 사용되려 할 수 있는 환경을 식별하는 하나 이상의 임계 값(특성 당 하나의 값)을 포함한다. 각각의 이용가능 능동 협업 메커니즘에 상이한 기준 또는 임계치가 적용될 수 있다. 임의의 이용가능 능동 협업 메커니즘에 대한 임계치가 만족되는 경우, "기준"은 만족될 수 있다.
기준을 만족시키는 두 번째 방식에 있어서, 특성 모두를 함께 고려하고 편집이 의도되는지 여부를 결정하는 머신 학습 메커니즘에 의해 복수의 협업 특성이 평가된다. 머신 학습 메커니즘이 공동 편집 협업 메커니즘을 선택하지 않는 경우, 기준은 만족되지 않는다. 머신 학습 메커니즘을 훈련시키는데 사용되는 훈련 데이터는 편집이 의도되는지 여부를 나타내는 태그와 함께 복수의 협업 특성을 포함할 수 있다. 훈련 데이터는 어떤 협업 메커니즘이 사용자에 의해 의도되는지를 나타내도록 편집을 통해 태그된다.
본 명세서에서 사용되는 의도는 마음의 상태는 아니다. 그 보다, 의도는, 관찰가능 특성이 주어졌을 때 사용자가 어떠한 의도를 가질 통계적 확률이다. 관찰가능 특성은 협업 특성을 포함한다. 관찰가능 특성은 또한 사용자 이전 선택 및 그 선택이 행해졌을 때의 협업 특성을 포함할 수 있다. 관찰가능 특성은 또한 명시적인 사용자 선호를 포함할 수 있다. 소스 사용자 및 수신자 사용자 모두로부터의 데이터가 고려될 수 있다.
일 양상에서, 의도 기준은 임계 지리적 근접 범위 내에서의 소스 컴퓨팅 장치의 위치 및 수신지 컴퓨팅 장치의 위치를 포함한다. 일 양상에서, 지리적 근접 범위는 200m 미만이다.
단계(740)에서, 콘텐츠는 제1 공동 편집 협업 메커니즘을 이용하여 수신지 컴퓨팅 장치로 통신하기 위해 소스 컴퓨팅 장치로부터 네트워크로 출력된다. 일 양상에서, 제1 공동 편집 협업 메커니즘이 콘텐츠와 관련된 정보 권한 관리 기준에 부합하기 때문에, 복수의 공동 편집 협업 메커니즘으로부터 제1 공동 편집 협업 메커니즘이 선택된다. 다른 양상에서, 제1 공동 편집 협업 메커니즘이 수신지 컴퓨팅 장치에 설치되어 있기 때문에, 복수의 공동 편집 협업 메커니즘으로부터 제1 공동 편집 협업 메커니즘이 선택된다.
본 발명의 예시적인 실시예는 특징 실시예와 관련하여 설명되었으며, 모든 측면에서 제한보다는 예시적이려 한다. 본 발명의 범위를 벗어나지 않고 본 발명이 속하는 기술 분야의 당업자에게 다른 실시예도 명백해질 것이다.
실시예 1. 프로세서를 구비한 컴퓨팅 장치에 의해 실행되는 경우 컴퓨팅 장치로 하여금, 소스 컴퓨터 장치로부터 수신지 컴퓨터 장치로 콘텐츠를 공유하기 위한 협업 메커니즘을 선택하는 방법을 수행하게 하는 컴퓨터 실행가능 명령어를 저장한 하나 이상의 컴퓨터 저장 매체로서, 방법은 수신지 컴퓨팅 장치와 콘텐츠를 공유하라는 요청을 소스 컴퓨팅 장치에서 실행중인 협업 애플리케이션을 통해 수신하는 단계- 소스 컴퓨팅 장치로부터 수신지 컴퓨팅 장치로 콘텐츠를 통신하는데 복수의 협업 메커니즘이 이용가능함 -와, 소스 컴퓨팅 장치, 수신지 컴퓨팅 장치, 및 소스 컴퓨팅 장치로부터 수신지 컴퓨팅 장치로 콘텐츠를 통신하는데 이용되는 네트워크를 포함하는 협업 환경에 대한 복수의 협업 특성을 확인하는 단계와, 소스 사용자 또는 수신지 사용자로부터의 입력없이, 복수의 협업 특성이 능동 협업 메커니즘을 사용하기 위한 기준을 만족시키기 때문에, 이용가능 정적 협업 메커니즘보다는, 능동 협업 메커니즘이 콘텐츠를 통신하는데 사용되는 것으로 결정하는 단계와, 제1 능동 협업 메커니즘을 사용하여, 수신지 컴퓨팅 장치로 통신하기 위해 콘텐츠를 소스 컴퓨팅 장치로부터 네트워크로 출력하는 단계를 포함한다.
실시예 2. 전술한 실시예의 매체에 있어서, 수신지 컴퓨팅 장치에 대한 복수의 협업 특성은 수신지 컴퓨팅 장치의 중앙 처리 장치("CPU")에 대한 세부사항 및 CPU에 대한 현재의 처리 부하를 포함하고, 기준은 능동 협업 메커니즘에 의해 생성된 예상 처리 부하를 임계량 너머로 초과하는 이용가능 처리 용량을 포함하고, 이 이용가능 처리 용량은 CPU의 처리 용량과 현재의 처리 부하 간의 차이로서 계산된다.
실시예 3. 위 실시예들 중 임의의 실시예의 매체에 있어서, 네트워크에 대한 복수의 협업 특성은, 소스 컴퓨팅 장치와 수신지 컴퓨팅 장치 사이의 네트워크 연결에 대한 대기 시간(latency period)과, 소스 컴퓨팅 장치가 콘텐츠를 출력하기 위한 가용 소스 네트워크 대역폭과, 수신지 컴퓨팅 장치가 콘텐츠를 수신하기 위한 가용 수신지 네트워크 대역폭을 포함하는 그룹으로부터 선택되고, 기준은 네트워크에 대한 복수의 협업 특성을 더 포함하되, 각 협업 특성은 능동 협업 메커니즘을 사용하여 콘텐츠를 통신하기 위한 대응하는 품질 임계치를 만족시킨다.
실시예 4. 위 실시예들 중 임의의 실시예의 매체에 있어서, 복수의 협업 특성은 수신지 컴퓨팅 장치가 현재 동작하는데 배터리 전원을 사용하고 있지 않음을 나타내는 배터리 상태를 포함하고, 기준은 수신지 컴퓨팅 장치가 동작하는데 현재 배터리 전원을 사용하고 있지 않을 것을 요구한다.
실시예 5. 위 실시예들 중 임의의 실시예의 매체에 있어서, 복수의 협업 특성은 수신지 컴퓨팅 장치가 현재 동작하는데 배터리 전원을 사용하고 있음을 나타내는 배터리 상태를 포함하고, 기준은 수신지 컴퓨팅 장치가 동작하는데 현재 배터리 전원을 사용하고 있는 경우 임계 배터리 레벨보다 높은 레벨을 가질 것을 요구한다.
실시예 6. 위 실시예들 중 임의의 실시예의 매체에 있어서, 협업 환경에 대한 복수의 협업 특성은 하나 이상의 능동 협업 메커니즘을 용이하게 하는 데이터 센터에서 호스팅되는 협업 서비스에 대한 현재의 가용성 정보를 포함하고, 기준은 데이터 센터가 능동 협업 세션의 추가 인스턴스를 호스팅할 수 있는 충분한 가용성을 현재 가지고 있는 것을 더 포함한다.
실시예 7. 위 실시예들 중 임의의 실시예의 매체에 있어서, 협업 애플리케이션은 사용자가 상이한 컴퓨팅 장치를 통해 서로 음성을 사용하여 동기식으로 통신할 수 있게 해주는 애플리케이션이다.
실시예 8. 소스 컴퓨터로부터 수신지 컴퓨터로 콘텐츠를 공유하기 위한 협업 메커니즘을 선택하는 방법으로서, 이 방법은 수신지 컴퓨팅 장치와 콘텐츠를 공유하라는 요청을 소스 컴퓨팅 장치에서 실행중인 협업 애플리케이션을 통해 수신하는 단계- 소스 컴퓨팅 장치로부터 수신지 컴퓨팅 장치로 콘텐츠를 통신하는데 복수의 협업 메커니즘이 이용가능함 -와, 소스 컴퓨팅 장치, 수신지 컴퓨팅 장치, 및 소스 컴퓨팅 장치로부터 수신지 컴퓨팅 장치로 콘텐츠를 통신하는데 이용되는 네트워크를 포함하는 협업 환경에 대한 복수의 협업 특성을 확인하는 단계와, 소스 사용자 또는 수신지 사용자로부터의 입력없이, 복수의 협업 특성이 공동 편집 협업 메커니즘을 사용하기 위한 의도 기준(intent criteria)을 만족시키기 때문에, 이용가능 비-편집 협업 메커니즘보다는, 공동 편집 협업 메커니즘이 콘텐츠를 통신하는데 사용되는 것으로 결정하는 단계와, 제1 공동 편집 협업 메커니즘을 사용하여, 수신지 컴퓨팅 장치로 통신하기 위해 콘텐츠를 소스 컴퓨팅 장치로부터 네트워크로 출력하는 단계를 포함한다.
실시예 9. 실시예 8의 방법에서, 의도 기준은 임계 지리적 근접 범위 내에 있는 소스 컴퓨팅 장치의 위치 및 수신지 컴퓨팅 장치의 위치를 포함한다.
실시예 10. 실시예 9의 방법에서, 임계 지리적 근접 범위는 200미터보다 작다.
실시예 11. 실시예 8 내지 실시예 10 중 임의의 실시예의 방법에서, 복수의 협업 특성은 소스 사용자와 수신지 사용자 간의 이전 협업에 관한 정보를 더 포함한다.
실시예 12. 실시예 8 내지 실시예 11 중 임의의 실시예의 방법에서, 방법은 제1 공동 편집 협업 메커니즘이 콘텐츠와 연관된 정보 권한 관리 기준에 부합하기 때문에, 복수의 공동 편집 협업 메커니즘으로부터 제1 공동 편집 협업 메커니즘을 선택하는 단계를 더 포함한다.
실시예 13. 실시예 8 내지 실시예 12 중 임의의 실시예의 방법에서, 방법은 제1 공동 편집 협업 메커니즘을 용이하게 하는 프로그램이 수신지 컴퓨팅 장치상에 설치되어 있기 때문에 복수의 공동 편집 협업 메커니즘으로부터 제1 공동 편집 협업 메커니즘을 선택하는 단계를 더 포함한다.
실시예 14. 실시예 8 내지 실시예 13 중 임의의 실시예의 방법에서, 네트워크에 대한 복수의 협업 특성은, 소스 컴퓨팅 장치와 수신지 컴퓨팅 장치 사이의 네트워크 연결에 대한 대기 시간(latency period)과, 소스 컴퓨팅 장치가 콘텐츠를 출력하기 위한 가용 소스 네트워크 대역폭과, 수신지 컴퓨팅 장치가 콘텐츠를 수신하기 위한 가용 수신지 네트워크 대역폭을 포함하는 그룹으로부터 선택되고, 방법은 복수의 협업 특성이 제1 공동 편집 협업 메커니즘을 사용하기 위한 기준을 만족시키기 때문에 제1 공동 편집 협업 메커니즘을 선택하는 단계를 더 포함하며, 기준은 각각이 제1 공동 편집 협업 메커니즘을 사용하여 콘텐츠를 통신하기 위한 해당 품질 임계치를 만족시키는 네트워크에 대한 복수의 협업 특성을 더 포함한다.
실시예 15. 실시예 8 내지 실시예 13 중 임의의 실시예의 방법에서, 방법은 복수의 협업 특성이 제1 공동 편집 협업 메커니즘을 사용하는 데 요구되는 기준을 만족시키기 때문에 제1 공동 편집 협업 메커니즘을 선택하는 단계를 더 포함하되, 기준은 콘텐츠의 파일 형식에 대한 품질 임계치를 포함한다.
실시예 16. 컴퓨팅 장치의 사용자가 콘텐츠를 통신하는 협업 환경을 생성하도록 구성된 소스 컴퓨팅 장치로서, 이 장치는 제1 수신지 컴퓨팅 장치에 또한 액세스가능한 네트워크와 통신하도록 구성된 네트워크 인터페이스와, 컴퓨터 프로세서와, 컴퓨터 실행가능 명령어를 저장한 컴퓨터 저장 매체를 포함하되, 컴퓨터 실행가능 명령어는 컴퓨터 프로세서에 의해 실행될 때, 소스 컴퓨팅 장치로 하여금, (1) 소스 컴퓨팅 장치의 사용자가 제1 수신지 컴퓨팅 장치의 수신지 사용자와 통신할 수 있도록 구성된 협업 애플리케이션용 사용자 인터페이스를 생성하고- 이 사용자 인터페이스는 소스 사용자가 공유하기 위한 콘텐츠를 선택할 수 있도록 구성되고, 협업 애플리케이션은 복수의 콘텐츠 공유 메커니즘을 가짐 -, (2) 소스 컴퓨팅 장치, 수신지 컴퓨팅 장치, 제1 능동 협업 메커니즘을 용이하게 하도록 구성된 데이터 센터, 및 소스 컴퓨팅 장치로부터 수신지 컴퓨팅 장치로 콘텐츠를 통신하는데 이용되는 네트워크를 포함하는 협업 환경에 대한 복수의 협업 특성을 확인하고, (3) 소스 사용자 또는 수신지 사용자로부터의 입력없이, 복수의 협업 특성이 능동 협업 메커니즘을 사용하기 위한 기준을 만족시킴으로 인해, 이용가능 정적 협업 메커니즘보다는, 능동 협업 메커니즘이 콘텐츠를 통신하는데 사용되는 것으로 결정하며, (4) 제1 능동 협업 메커니즘을 사용하여, 수신지 컴퓨팅 장치로 통신하기 위해 콘텐츠를 소스 컴퓨팅 장치로부터 네트워크로 출력하게 한다.
실시예 17. 실시예 16의 소스 컴퓨팅 장치에 있어서, 기준은 제1 능동 협업 메커니즘이 임계치 아래로 있도록 하는 데이터 센터 내의 현재 처리 부하를 더 포함한다.
실시예 18. 실시예 16 및 17 중 임의의 실시예의 소스 컴퓨팅 장치에 있어서, 기준은 네트워크에 대한 복수의 협업 특성을 더 포함하며, 복수의 협업 특성 각각은 능동 협업 메커니즘을 사용하여 콘텐츠를 통신하기 위한 해당 품질 임계치를 만족시킨다.
실시예 19. 실시예 16 내지 18 중 임의의 실시예의 소스 컴퓨팅 장치에 있어서, 기준은 능동 협업 메커니즘에 의해 생성된 예상 처리 부하를 임계량 너머로 초과하는 소스 컴퓨팅 장치의 가용 처리 용량을 포함하고, 이 가용 처리 용량은 CPU의 처리 용량과 현재 처리 부하 사이의 차이로서 계산된다.
실시예 20. 실시예 16 내지 19 중 임의의 실시예의 소스 컴퓨팅 장치에 있어서, 콘텐츠는 소스 컴퓨팅 장치상의 컴퓨터 저장 매체 내에 저장되고, 이 콘텐츠는 협업 애플리케이션이 아닌 컴퓨터 애플리케이션과 연관된 파일 형식을 갖는 데이터 파일이다.
결론
본 발명의 양상들은 제한적이기보다 예시적으로 설명되었다. 특정 특징 및 하위 조합들이 이용될 수 있고 다른 특징 및 하위 조합을 참조하지 않고 이용될 수 있다는 것을 이해할 수 있을 것이다. 이것은 청구항의 범위 내에서 고려되며 그 범위 내에 속한다.

Claims (13)

  1. 소스 컴퓨터로부터 수신지 컴퓨터로 콘텐츠를 공유하기 위한 협업 메커니즘을 선택하는 방법으로서,
    수신지 컴퓨팅 장치와 콘텐츠를 공유하라는 요청을 소스 컴퓨팅 장치에서 실행중인 협업 애플리케이션을 통해 수신하는 단계- 상기 소스 컴퓨팅 장치로부터 상기 수신지 컴퓨팅 장치로 상기 콘텐츠를 통신하는데 복수의 협업 메커니즘이 이용가능함 -와,
    상기 소스 컴퓨팅 장치, 상기 수신지 컴퓨팅 장치, 및 상기 소스 컴퓨팅 장치로부터 상기 수신지 컴퓨팅 장치로 상기 콘텐츠를 통신하는데 이용되는 네트워크를 포함하는 협업 환경에 대한 복수의 협업 특성을 확인하는 단계와,
    소스 사용자 또는 수신지 사용자로부터의 입력없이, 상기 복수의 협업 특성이 공동 편집 협업 메커니즘을 사용하기 위한 의도 기준(intent criteria)을 만족시킴으로 인해, 이용가능 비-편집 협업 메커니즘보다는, 상기 공동 편집 협업 메커니즘이 상기 콘텐츠를 통신하는데 사용되는 것으로 결정하는 단계와,
    제1 공동 편집 협업 메커니즘을 사용하여, 상기 수신지 컴퓨팅 장치로 통신하기 위해 상기 콘텐츠를 상기 소스 컴퓨팅 장치로부터 상기 네트워크로 출력하는 단계를 포함하는 방법.
  2. 제1항에 있어서,
    상기 의도 기준은 임계 지리적 근접 범위 내에 있는 상기 소스 컴퓨팅 장치의 위치 및 상기 수신지 컴퓨팅 장치의 위치를 포함하는 방법.
  3. 제2항에 있어서,
    상기 임계 지리적 근접 범위는 200미터보다 작은 방법.
  4. 제1항에 있어서,
    상기 복수의 협업 특성은 상기 소스 사용자와 상기 수신지 사용자 간의 이전 협업에 관한 정보를 더 포함하는 방법.
  5. 제1항에 있어서,
    상기 제1 공동 편집 협업 메커니즘이 상기 콘텐츠와 연관된 정보 권한 관리 기준에 부합하기 때문에, 복수의 공동 편집 협업 메커니즘으로부터 상기 제1 공동 편집 협업 메커니즘을 선택하는 단계를 더 포함하는 방법.
  6. 제1항에 있어서,
    상기 제1 공동 편집 협업 메커니즘을 용이하게 하는 프로그램이 상기 수신지 컴퓨팅 장치상에 설치되어 있기 때문에 복수의 공동 편집 협업 메커니즘으로부터 상기 제1 공동 편집 협업 메커니즘을 선택하는 단계를 더 포함하는 방법.
  7. 제1항에 있어서,
    상기 네트워크에 대한 상기 복수의 협업 특성은,
    상기 소스 컴퓨팅 장치와 상기 수신지 컴퓨팅 장치 사이의 네트워크 연결에 대한 대기 시간(latency period)과,
    상기 소스 컴퓨팅 장치가 상기 콘텐츠를 출력하기 위한 가용 소스 네트워크 대역폭과,
    상기 수신지 컴퓨팅 장치가 상기 콘텐츠를 수신하기 위한 가용 수신지 네트워크 대역폭
    을 포함하는 그룹으로부터 선택되고,
    상기 방법은 상기 복수의 협업 특성이 상기 제1 공동 편집 협업 메커니즘을 사용하기 위한 기준을 만족시키기 때문에 상기 제1 공동 편집 협업 메커니즘을 선택하는 단계를 더 포함하며, 상기 기준은 각각이 상기 제1 공동 편집 협업 메커니즘을 사용하여 상기 콘텐츠를 통신하기 위한 해당 품질 임계치를 만족시키는 상기 네트워크에 대한 상기 복수의 협업 특성을 더 포함하는
    방법.
  8. 제1항에 있어서,
    상기 복수의 협업 특성이 상기 제1 공동 편집 협업 메커니즘을 사용하는 데 요구되는 기준을 만족시키기 때문에 상기 제1 공동 편집 협업 메커니즘을 선택하는 단계를 더 포함하되, 상기 기준은 상기 콘텐츠의 파일 형식에 대한 품질 임계치를 포함하는
    방법.
  9. 컴퓨팅 장치의 사용자가 콘텐츠를 통신하는 협업 환경을 생성하도록 구성된 소스 컴퓨팅 장치로서,
    제1 수신지 컴퓨팅 장치에 또한 액세스가능한 네트워크와 통신하도록 구성된 네트워크 인터페이스와,
    컴퓨터 프로세서와,
    컴퓨터 실행가능 명령어를 저장한 컴퓨터 저장 매체를 포함하되,
    상기 컴퓨터 실행가능 명령어는 상기 컴퓨터 프로세서에 의해 실행될 때, 상기 소스 컴퓨팅 장치로 하여금,
    (1) 상기 소스 컴퓨팅 장치의 사용자가 상기 제1 수신지 컴퓨팅 장치의 수신지 사용자와 통신할 수 있도록 구성된 협업 애플리케이션용 사용자 인터페이스를 생성하고- 상기 사용자 인터페이스는 소스 사용자가 공유하기 위한 콘텐츠를 선택할 수 있도록 구성되고, 상기 협업 애플리케이션은 복수의 콘텐츠 공유 메커니즘을 가짐 -,
    (2) 상기 소스 컴퓨팅 장치, 수신지 컴퓨팅 장치, 제1 능동 협업 메커니즘을 용이하게 하도록 구성된 데이터 센터, 및 상기 소스 컴퓨팅 장치로부터 상기 수신지 컴퓨팅 장치로 상기 콘텐츠를 통신하는데 이용되는 네트워크를 포함하는 상기 협업 환경에 대한 복수의 협업 특성을 확인하고,
    (3) 상기 소스 사용자 또는 수신지 사용자로부터의 입력없이, 상기 복수의 협업 특성이 능동 협업 메커니즘을 사용하기 위한 기준을 만족시키기 때문에, 이용가능 정적 협업 메커니즘보다는, 상기 능동 협업 메커니즘이 상기 콘텐츠를 통신하는데 사용되는 것으로 결정하며,
    (4) 제1 능동 협업 메커니즘을 사용하여, 상기 수신지 컴퓨팅 장치로 통신하기 위해 상기 콘텐츠를 상기 소스 컴퓨팅 장치로부터 상기 네트워크로 출력하게 하는
    소스 컴퓨팅 장치.
  10. 제9항에 있어서,
    상기 기준은 상기 제1 능동 협업 메커니즘을 용이하게 하도록 구성된 상기 데이터 센터 내의 현재 처리 부하가 임계치 아래에 있는 것을 더 포함하는
    소스 컴퓨팅 장치.
  11. 제9항에 있어서,
    상기 기준은 상기 네트워크에 대한 상기 복수의 협업 특성을 더 포함하며, 상기 복수의 협업 특성 각각은 상기 능동 협업 메커니즘을 사용하여 상기 콘텐츠를 통신하기 위한 해당 품질 임계치를 만족시키는
    소스 컴퓨팅 장치.
  12. 제9항에 있어서,
    상기 기준은 상기 능동 협업 메커니즘에 의해 생성된 예상 처리 부하를 임계량 너머로 초과하는 상기 소스 컴퓨팅 장치의 가용 처리 용량을 포함하고, 상기 가용 처리 용량은 상기 CPU의 처리 용량과 현재 처리 부하 사이의 차이로서 계산되는
    소스 컴퓨팅 장치.
  13. 제9항에 있어서,
    상기 콘텐츠는 상기 소스 컴퓨팅 장치상의 상기 컴퓨터 저장 매체 내에 저장되고, 상기 콘텐츠는 상기 협업 애플리케이션이 아닌 컴퓨터 애플리케이션과 연관된 파일 형식을 갖는 데이터 파일인
    소스 컴퓨팅 장치.
KR1020177014257A 2014-11-26 2015-11-20 다중 장치 협업 기법 KR20170088351A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/555,214 US20160149969A1 (en) 2014-11-26 2014-11-26 Multi-device collaboration
US14/555,214 2014-11-26
PCT/US2015/061714 WO2016085771A1 (en) 2014-11-26 2015-11-20 Multi-device collaboration

Publications (1)

Publication Number Publication Date
KR20170088351A true KR20170088351A (ko) 2017-08-01

Family

ID=54834920

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177014257A KR20170088351A (ko) 2014-11-26 2015-11-20 다중 장치 협업 기법

Country Status (5)

Country Link
US (1) US20160149969A1 (ko)
EP (1) EP3224779A1 (ko)
KR (1) KR20170088351A (ko)
CN (1) CN107004183A (ko)
WO (1) WO2016085771A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016200018A1 (en) * 2015-06-08 2016-12-15 Samsung Electronics Co., Ltd. Method and apparatus for sharing application
US10719289B2 (en) * 2015-11-05 2020-07-21 Topcon Positioning Systems, Inc. Monitoring and control display system and method using multiple displays in a work environment
US10116711B2 (en) * 2015-12-14 2018-10-30 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Determining and providing data related to collaboration event
US11115444B2 (en) * 2016-08-10 2021-09-07 Dolby Laboratories Licensing Corporation Private communications in virtual meetings
US10230780B2 (en) * 2016-12-28 2019-03-12 Intel Corporation Methods and apparatus for collaborative content rendering
US11258834B2 (en) * 2018-10-05 2022-02-22 Explain Everything, Inc. System and method for recording online collaboration
CN110415807B (zh) * 2019-07-30 2020-04-17 南京林业大学 一种康复设备协同工作方法和***
US11882192B2 (en) 2022-05-25 2024-01-23 Microsoft Technology Licensing, Llc Intelligent near-field advertisement with optimization

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8375082B2 (en) * 2003-04-17 2013-02-12 Hewlett-Packard Development Company, L.P. Communications systems and methods
US9294291B2 (en) * 2008-11-12 2016-03-22 Adobe Systems Incorporated Adaptive connectivity in network-based collaboration
US9088527B2 (en) * 2011-02-08 2015-07-21 Avaya Inc. Method and system for communication session bandwidth control based on actual bandwidth usage
US8738706B1 (en) * 2011-11-16 2014-05-27 Google Inc. Systems and methods for collaborative document editing
US20130305163A1 (en) * 2012-05-09 2013-11-14 Microsoft Corporation Screen and Associated File Sharing
US9571604B2 (en) * 2012-07-05 2017-02-14 Nokia Technologies Oy Method and apparatus for distributing collaborative content
US10027723B2 (en) * 2013-04-12 2018-07-17 Provenance Asset Group Llc Method and apparatus for initiating communication and sharing of content among a plurality of devices

Also Published As

Publication number Publication date
US20160149969A1 (en) 2016-05-26
CN107004183A (zh) 2017-08-01
WO2016085771A1 (en) 2016-06-02
EP3224779A1 (en) 2017-10-04

Similar Documents

Publication Publication Date Title
KR20170088351A (ko) 다중 장치 협업 기법
US10291576B2 (en) Sharing user information with proximate devices
CN101952817B (zh) 在场位置信息
US10652172B2 (en) Smart automatic composition of short messaging responses
US8473850B2 (en) Methods and apparatuses for displaying and managing content during a collaboration session
US20160085698A1 (en) Device-specific user context adaptation of computing environment
US9450898B2 (en) Shared resource and session model using presence data
US7966376B2 (en) Preventing the capture of chat session text
US20110173262A1 (en) Methods and apparatuses for selectively displaying information to an invited participant
US20070156923A1 (en) Methods and apparatuses for tracking progress of an invited participant
US7984498B2 (en) Methods and apparatuses for selecting privileges for use during a data collaboration session
JP6190391B2 (ja) 他所での作業ステータスによるリモートで応対可能なユーザーの表示
US20160014055A1 (en) Monitoring instant messaging usage
US8296362B2 (en) Methods and apparatuses for dynamically enforcing privileges for use during a data collaboration session
US20180308036A1 (en) Mitigating absence of skill input during collaboration session
US20130346517A1 (en) Personal mode contextual presence
US20240098122A1 (en) Unplanned remote collaboration
JP2008129981A (ja) 接続先決定サーバ及び負荷分散方法