KR101565665B1 - 네트워크 통신 환경에서 커뮤니컨트 상호작용을 촉진하는 방법 - Google Patents
네트워크 통신 환경에서 커뮤니컨트 상호작용을 촉진하는 방법 Download PDFInfo
- Publication number
- KR101565665B1 KR101565665B1 KR1020137006722A KR20137006722A KR101565665B1 KR 101565665 B1 KR101565665 B1 KR 101565665B1 KR 1020137006722 A KR1020137006722 A KR 1020137006722A KR 20137006722 A KR20137006722 A KR 20137006722A KR 101565665 B1 KR101565665 B1 KR 101565665B1
- Authority
- KR
- South Korea
- Prior art keywords
- delete delete
- communicators
- communicator
- identified
- communication
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 206
- 230000003993 interaction Effects 0.000 title claims description 79
- 230000001737 promoting effect Effects 0.000 title claims 2
- 238000000034 method Methods 0.000 claims description 51
- 230000000694 effects Effects 0.000 claims description 42
- 230000008859 change Effects 0.000 claims description 2
- 230000000007 visual effect Effects 0.000 abstract description 28
- 230000002452 interceptive effect Effects 0.000 abstract description 9
- 108091006146 Channels Proteins 0.000 description 45
- 101150054987 ChAT gene Proteins 0.000 description 42
- 101100203187 Mus musculus Sh2d3c gene Proteins 0.000 description 42
- 238000012800 visualization Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 17
- 230000008569 process Effects 0.000 description 15
- 230000004044 response Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000009877 rendering Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000007654 immersion Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000007480 spreading Effects 0.000 description 3
- 238000003892 spreading Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000001404 mediated effect Effects 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 102400001284 Vessel dilator Human genes 0.000 description 1
- 101800001899 Vessel dilator Proteins 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 235000012813 breadcrumbs Nutrition 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- HFHZKZSRXITVMK-UHFFFAOYSA-N oxyphenbutazone Chemical compound O=C1C(CCCC)C(=O)N(C=2C=CC=CC=2)N1C1=CC=C(O)C=C1 HFHZKZSRXITVMK-UHFFFAOYSA-N 0.000 description 1
- 239000003973 paint Substances 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/043—Real-time or near real-time messaging, e.g. instant messaging [IM] using or handling presence information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/142—Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/06—Message adaptation to terminal or network requirements
- H04L51/066—Format adaptation, e.g. format conversion or compression
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
Abstract
각 클라이언트 네트워크 노드(12, 14)로부터 동작하는 커뮤니컨트가 상이한 서버 애플리케이션(44)에 접속하는 네트워크 통신 환경(10)에서, 타겟 커뮤니컨트에 관련되는 커뮤니컨트가 확인되고, 상이한 서버 애플리케이션(44)에 대한 관련된 커뮤니컨트의 상태가 결정되며, 관련된 커뮤니컨트의 표시 및 관련된 커뮤니컨트의 결정된 상태가 타겟 커뮤니컨트에 전달된다. 관련된 커뮤니컨트의 그래픽 표현 및 상이한 서버 애플리케이션(44)으로의 접속과 관련하여 관련된 커뮤니컨트의 상태의 그래픽 표시가 디스플레이상에 디스플레이된다. 또한, 커뮤니컨트 중 하나 이상의 각각의 개별적인 그래픽 표현을 포함하는 콘택트 리스트가 하나 이상의 커뮤니컨트에 의해 개별적으로 연결되는 확인된 종류의 현재 상호작용 활동을 나타내는 시각적 큐와 연관하여 디스플레이될 수 있다. 하나의 범용 사용자 식별자가 각 커뮤니컨트를 식별하기 위해 사용될 수 있다.
Description
대면하는 통신이 실용적이지 못한 경우, 사람들은 통신 필요를 충족시키기 위해 하나 이상의 기술적 해결책에 의존하는 경우가 종종 있다. 전형적으로 이들 해결책은 대면하는 통신의 하나 이상의 양태를 시뮬레이션하도록 설계된다. 전형적인 전화 시스템은 전화를 건 사람들 사이의 음성 통신을 가능하게 한다. 인스턴트 메시지("채팅"이라고도 함) 통신 시스템은 인스턴트 메시지 서버에 의해 상호접속되는 인스턴트 메시지 컴퓨터 클라이언트를 통해 사용자가 실시간으로 텍스트 메시지를 통신할 수 있게 한다. 어떤 인스턴트 메시징 시스템은 또한 사용자 제어가능한 그래픽 객체("아바타"라고도 함)에 의해 사용자가 가상 환경에 표현될 수 있게 한다. 상호작용형 가상 현실 통신 시스템은 원격 위치의 사용자가 다수의 실시간 채널을 통해 통신하고 3차원 가상 공간에서 제각기의 아바타를 조작하여 서로 상호작용할 수 있게 한다. 실시간 네트워크 통신을 위한 향상된 인터페이스가 요구된다.
본 발명과 관련된 배경기술로는 미국 특허 출원 제11/923,629호 및 미국 특허 출원 제12/694,126호를 참조할 수 있다.
본 발명과 관련된 배경기술로는 미국 특허 출원 제11/923,629호 및 미국 특허 출원 제12/694,126호를 참조할 수 있다.
도 1은 제 1 클라이언트 네트워크 노드, 제 2 클라이언트 네트워크 노드 및 서버 노드를 포함하는 네트워크 통신 환경의 실시예의 도면이다.
도 2는 콘택트가 개별적으로 접속되는 서버 애플리케이션에 의해 정의되는 개별적인 통신 콘텍스트의 커뮤니컨트의 콘택트를 도시하는 그래픽 사용자 인터페이스의 도면이다.
도 3은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 4은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 5은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 6은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 7a는 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 7b는 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 7c는 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 8은 네트워크 통신 환경에서의 커뮤니컨트 상호작용을 촉구하는 방법의 실시예의 흐름도이다.
도 9은 네트워크 통신 환경에서의 커뮤니컨트 상호작용을 촉구하는 방법의 실시예의 흐름도이다.
도 10은 소셜 그래프의 실시예의 도면이다.
도 11은 네트워크 통신 환경에서의 커뮤니컨트 상호작용을 촉구하는 방법의 실시예의 흐름도이다.
도 12는 도 1에 도시된 네트워크 통신 환경의 실시예의 도면이다.
도 13은 클라이언트 노드의 실시예의 도면이다.
도 14a는 컴퓨터 데이터 파일의 실시예의 블록도이다.
도 14b는 도 14a의 컴퓨터 데이터 파일의 섹션을 정의하는 기록을 저장하는 컴퓨터 데이터 파일 섹션 정의 데이터 베이스의 실시예의 도면이다.
도 15a는 소프트웨어 애플리케이션 파일의 실시예의 블록도이다.
도 15b는 도 15a의 소프트웨어 애플리케이션의 섹션을 정의하는 기록을 저장하는 소프트웨어 애플리케이션 섹션 정의 데이터 베이스의 실시예의 도면이다.
도 16a는 도 15a의 소프트웨어 애플리케이션의 섹션으로 맵핑되는 존을 갖는 추상적 가상 공간의 실시예를 도시하는 도면이다.
도 16b는 도 15a의 소프트웨어 애플리케이션의 섹션으로 맵핑되는 존을 갖는 2개의 가상 공간의 실시예를 도시하는 도면이다.
도 17은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 18은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 19은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 20은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 21는 도 1에 도시된 네트워크 통신 환경의 실시예의 도면이다.
도 22는 네트워크 통신 환경에서의 커뮤니컨트 상호작용을 촉구하는 방법의 실시예의 흐름도이다.
도 23은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 2는 콘택트가 개별적으로 접속되는 서버 애플리케이션에 의해 정의되는 개별적인 통신 콘텍스트의 커뮤니컨트의 콘택트를 도시하는 그래픽 사용자 인터페이스의 도면이다.
도 3은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 4은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 5은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 6은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 7a는 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 7b는 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 7c는 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 8은 네트워크 통신 환경에서의 커뮤니컨트 상호작용을 촉구하는 방법의 실시예의 흐름도이다.
도 9은 네트워크 통신 환경에서의 커뮤니컨트 상호작용을 촉구하는 방법의 실시예의 흐름도이다.
도 10은 소셜 그래프의 실시예의 도면이다.
도 11은 네트워크 통신 환경에서의 커뮤니컨트 상호작용을 촉구하는 방법의 실시예의 흐름도이다.
도 12는 도 1에 도시된 네트워크 통신 환경의 실시예의 도면이다.
도 13은 클라이언트 노드의 실시예의 도면이다.
도 14a는 컴퓨터 데이터 파일의 실시예의 블록도이다.
도 14b는 도 14a의 컴퓨터 데이터 파일의 섹션을 정의하는 기록을 저장하는 컴퓨터 데이터 파일 섹션 정의 데이터 베이스의 실시예의 도면이다.
도 15a는 소프트웨어 애플리케이션 파일의 실시예의 블록도이다.
도 15b는 도 15a의 소프트웨어 애플리케이션의 섹션을 정의하는 기록을 저장하는 소프트웨어 애플리케이션 섹션 정의 데이터 베이스의 실시예의 도면이다.
도 16a는 도 15a의 소프트웨어 애플리케이션의 섹션으로 맵핑되는 존을 갖는 추상적 가상 공간의 실시예를 도시하는 도면이다.
도 16b는 도 15a의 소프트웨어 애플리케이션의 섹션으로 맵핑되는 존을 갖는 2개의 가상 공간의 실시예를 도시하는 도면이다.
도 17은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 18은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 19은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 20은 그래픽 사용자 인터페이스의 실시예의 도면이다.
도 21는 도 1에 도시된 네트워크 통신 환경의 실시예의 도면이다.
도 22는 네트워크 통신 환경에서의 커뮤니컨트 상호작용을 촉구하는 방법의 실시예의 흐름도이다.
도 23은 그래픽 사용자 인터페이스의 실시예의 도면이다.
이하의 설명에서, 동일한 참조번호는 동일한 요소를 식별하도록 사용된다. 또한, 도면은 도식적인 방식으로 실시예의 주요 특징을 설명하도록 의도된다. 도면은 실제 실시예의 모든 특징을 도시하거나 도시된 요소의 상대적 크기를 도시하도록 의도된 것이 아니며, 실제 규격대로 도시된 것이 아니다.
I. 용어의 정의
"커뮤니컨트""는 하나 이상의 네트워크 접속을 통해 다른 사람들과 통신하거나 상호작용하는 사람이며, 통신 또는 상호작용은 가상 영역의 콘텍스트에서 발생할 수도 있고 아닐 수도 있다. "사용자"는 설명을 위해 특정 관점을 정의하는 특정 네트워크 노드를 운영하는 커뮤니컨트다.
사용자의 "콘택트"는, 사용자와 콘택트 중 적어도 하나에 의해 선언되는( 및 선택적으로 다른 이에 의해 확정되는) 명시적 소셜 네트워크 묶음(tie)에 의해 또는 사용자와 사람 사이의 상호작용으로부터 추론되는 소셜 네트워크 묶음에 의해 사용자에 접속되는 커뮤니컨트 또는 다른 사람이다.
"커뮤니컨트 상호작용"은 커뮤니컨트와 다른 네트워크 개체 사이의 직접 또는 간접 동작 또는 영향의 일종이며, 이는 예를 들어 다른 커뮤니컨트, 가상 영역 또는 네트워크 서비스를 포함할 수 있다. 커뮤니컨트 상호작용의 예시적 종류는 실시간으로 서로 통신하는 커뮤니컨트와, 가상 영역으로 진입하는 커뮤니컨트와, 네트워크 서비스로부터 리소스로의 액세스를 요청하는 커뮤니컨트를 포함한다.
"소셜 네트워크"는 사회적 구조 또는 하나 이상의 종류의 상호의존성에 의해 연결되는 노드의 맵이다. "노드"는 네트워크의 개별적인 개체(가령, 개별적인 커뮤니컨트, 커뮤니컨트 그룹 또는 단체)를 나타낸다. 소셜 네트워크 "묶음(tie)"은 소셜 네트워크에서 한 쌍의 개체 사이의 관계를 나타낸다. 노드는 다양한 상이한 종류의 묶음에 의해 상호접속될 수 있다. 소셜 네트워크 "프로파일"은 한 명의 사용자와 연관되는 데이터 세트이다. 이들 데이터는 사용자를 식별하는 속성(가령, 사용자 이름, 나이, 성별, 지리적 위치)과, 사용자의 친구 및 아는 이들을 식별하는 속성과, 사용자의 관심대상을 식별하는 속성(가령, 좋아하는 음악, 책, 영화, 스포츠, 음식)과, 사용자의 선호도를 식별하는 속성(가령, 사용자와 연관되는 리소스로의 액세스를 시스템이 어떻게 제어할지에 관한 제한)을 포함할 수 있다.
"컴퓨터"는 컴퓨터 판독 가능한 매체에 임시로 또는 영구적으로 저장되는 컴퓨터 판독 가능한 인스트럭션에 따라 데이터를 처리하는 임의의 머신, 디바이스 또는 장치이다. "컴퓨터 운영 시스템"은 작업의 성능과, 연산 리소스 및 하드웨어 리소스의 공유를 관리하고 조정하는 컴퓨터 시스템의 소프트웨어 구성요소이다. "소프트웨어 애플리케이션"(소프트웨어, 애플리케이션, 컴퓨터 소프트웨어, 컴퓨터 애플리케이션, 프로그램 및 컴퓨터 프로그램)은 컴퓨터가 하나 이상의 특정 작업을 수행하기 위해 해석하고 실행하는 인스트럭션 세트이다. "컴퓨터 데이터 파일"은 소프트웨어 애플리케이션에 의한 사용을 위해 데이터를 저장하는 정보 블록이다.
"윈도우"는 통상적으로 사용자 인터페이스를 포함하는 디스플레이의 가상 영역이다. 윈도우는 전형적으로 소프트웨어 프로세스의 출력을 디스플레이하고, 전형적으로 사용자가 소프트웨어 프로세스에 대한 명령 또는 데이터를 입력할 수 있게 한다. 부모를 갖는 윈도우를 "자식 윈도우"라고 한다. 부모를 갖지 않거나 부모가 데스크톱 윈도우는 "상위 레벨 윈도우"라고 한다. "데스크톱"은 GUI(graphical user interface)의 배경을 칠하고 모든 소프트웨어 프로세스에 의해 디스플레이되는 모든 윈도우에 대한 베이스로서 기능하는 시스템 정의 윈도우이다.
"데이터베이스"는 컴퓨터에 의해 검색될 수 있는 표준화 양식으로 제공되는 기록의 체계적인 수집이다. 데이터베이스는 하나의 컴퓨터 상의 하나의 컴퓨터 판독가능한 데이터 저장 매체에 저장될 수 있거나 하나 이상의 컴퓨터상의 다수의 컴퓨터 판독 가능한 데이터 저장 매체에 걸쳐 분배될 수 있다.
"데이터 싱크"(이하 간단히 "싱크"라고 함)는 데이터를 수신하는 임의의 디바이스(가령, 컴퓨터), 디바이스의 일부 또는 소프트웨어이다.
"데이터 소스"(이하 간단히 "소스"라고 함)는 데이터를 발신하는 임의의 디바이스(가령, 컴퓨터), 디바이스의 일부 또는 소프트웨어이다.
"네트워크 노드"(간단히 "노드"라고도 함)는 통신 네트워크의 접합 또는 접속점이다. 예시적 네트워크 노드는, 단말, 컴퓨터 및 네트워크 스위치를 포함하지만 이에 한정되는 것은 아니다. "서버" 네트워크 노드는 정보 또는 서비스에 대한 요청에 응답하는 네트워크상의 호스트 컴퓨터이다. "클라이언트" 네트워크 노드는 서버로부터 정보 또는 서비스를 요청하는 네트워크상의 컴퓨터이다. "네트워크 접속"은 2개의 통신 네트워크 노드들 사이의 링크이다. "근거리 네트워크 노드"라는 용어는 현재 상호작용의 주요 주체인 네트워크 노드를 지칭한다. "원거리 네트워크 노드"라는 용어는 네트워크 통신 링크에 의해 근거리 네트워크 노드에 접속되는 네트워크 노드를 지칭한다. "접속 핸들"은 네트워크 노드의 커뮤니컨트, 리소스 또는 서비스와의 네트워크 접속을 수립하기 위해 사용될 수 있는 포인터 또는 식별자(가령, URI(uniform resource identifier))이다. "네트워크 통신"은 네트워크 접속을 통해 한 네트워크 노드로부터 다른 네트워크 노드로 전송 또는 전달되는 임의의 종류의 정보(가령, 텍스트, 음성, 오디오, 비디오, 전자 메일 메시지, 데이터 파일, 모션 데이터 스트림 및 데이터 패킷)를 포함할 수 있다.
"리소스"는 네트워크를 통해 액세스 가능한 임의의 종류의 정보(가령, 웹 페이지, 파일, 스트리밍 데이터 및 프레즌스 데이터) 또는 서비스(가령, 다른 사용자와의 통신 링크를 수립하는 서비스)를 지칭한다. 리소스는 URI(uniform resource identifier)에 의해 식별될 수 있다.
동기식 회의는 커뮤니컨트가 동시에 참석하는 통신을 지칭한다. 동기식 회의는 인스턴트 메시징(가령, 텍스트 채팅), 오디오 회의, 비디오 회의, 애플리케이션 공유 및 파일 공유 기술을 포함하는 모든 종류의 네트워크형 협동 기술을 포함한다.
"커뮤니컨트 상호작용"은 커뮤니컨트와 다른 네트워크 개체 사이의 직접 또는 간접 동작 또는 영향의 일종이며, 이는 예를 들어 다른 커뮤니컨트, 가상 영역 또는 네트워크 서비스를 포함할 수 있다. 커뮤니컨트 통신의 예시적 종류는 실시간으로 서로 통신하는 커뮤니컨트와, 가상 영역으로 진입하는 커뮤니컨트와, 네트워크 서비스로부터 리소스로의 액세스를 요청하는 커뮤니컨트를 포함한다.
"프레즌스(presence)"는 통신하고자 하는 네트워킹된 개체(가령, 커뮤니컨트, 서비스 또는 디바이스)의 능력 및 의사를 지칭하는데, 이러한 의사는 네트워크상의 개체의 상태에 관한 정보를 검출하고 획득하는 능력 및 개체에 접속하는 능력에 영향을 준다.
"실시간 데이터 스트림"은 연속적인 흐름으로 구조화되고 처리되는 데이터이며, 지연이 없거나 감지하지 못할 정도의 지연으로 수신되도록 설계된다. 실시간 데이터 스트림은 음성, 비디오, 사용자 움직임의 디지털 표현과, 얼굴 표정 및 기타 물리적 현상과, 신속한 전송, 신속한 실행 또는 신속한 전송 및 실행 양자로부터 이점을 얻을 수 있는 연산 환경을 포함하며, 예를 들어, 아바타 움직임 인스트럭션, 텍스트 채팅, 실시간 데이터 피드(가령, 센서 데이터, 머신 제어 인스트럭션, 트랜잭션 스트림 및 주식 시세 정보 피드) 및 파일 전송을 포함한다.
"링크"는 2개의 네트워크 노드들 사이의 접속이며 실시간 통신을 위해 2개의 노드에 의해 할당되는 전체 대역폭을 나타낸다. 각 링크는 제각기의 실시간 데이터 스트림을 전송하는 채널로 분할된다. 채널은 링크로 할당된 전체 대역폭 내의 특정 스트림으로 할당된다.
"가상 영역"("영역" 또는 "장소"로서도 지칭됨)은 컴퓨터 관리 공간 또는 장면의 표현이다. 가상 영역은 통상적으로 1차원, 2차원 또는 3차원 표현이지만, 일부 실시예에서는 가상 공간은 하나의 점에 대응할 수 있다. 종종, 가상 영역은 물리적, 현실 공간을 시뮬레이션하도록 설계된다. 예를 들어, 전형적인 컴퓨터 모니터를 사용하여, 가상 영역은 3차원 컴퓨터 생성 공간의 2차원 그래픽으로서 시각화될 수 있다. 그러나, 가상 영역은 스위칭 룰을 구현하기 위해 연관 시각화를 요구하지 않는다. 가상 영역은 전형적으로 가상 영역 개요의 인스턴스를 지칭하는데, 이 개요는 변수와 관련하여 가상 영역의 구조 및 콘텐츠를 정의하고, 인스턴스는 특정 콘텍스트로부터 해결된 값과 관련하여 가상 영역의 구조 및 콘텐츠를 정의한다.
"가상 영역 애플리케이션"("가상 영역 지정"이라고도 함)은 가상 환경을 생성하는 데에 사용되는 가상 영역의 기술(description)이다. 가상 영역 애플리케이션은 통상적으로 기하학, 물리학적 정의 및 가상 영역의 하나 이상의 존(zone)과 연관되는 실시간 스위칭 룰을 포함한다.
"가상 환경"은 적어도 하나의 가상 영역을 포함하고 커뮤니컨트들 사이의 실시간 통신을 지원하는 컴퓨터 관리 공간의 표현이다.
"존(zone)"은 적어도 하나의 스위칭 룰 또는 통치 규칙과 연관되는 가상 영역의 지역이다. "스위칭 룰"은 하나 이상의 실시간 데이터 소스의 접속 또는 접속 해제를 지정하고 하나 이상의 선행 조건을 겪는 하나 이상의 실시간 데이터 싱크를 지정하는 인스트럭션이다. 스위칭 룰은 가상 영역의 콘텍스트에서 통신하는 네트워크 노드들 사이에서 실시간 데이터 스트림의 스위칭(가령, 라우팅, 접속 및 접속 해제)을 제어한다. 통치 규칙은, 리소스로의 커뮤니컨트의 액세스(가령, 영역, 영역의 지역 또는 영역 또는 지역의 콘텐츠), 액세스 범위 및 액세스에 수반되는 결과(가령, 그 액세스에 관련되는 청각적 기록이 저장되어야 하는 요구조건)를 제어한다. "렌더링 가능한 존(renderable zone)"은 각각의 시각화와 연관되는 존이다.
가상 영역의 "위치"는 가상 영역의 한 지점 또는 영역의 위치 또는 볼륨을 지칭한다. 전형적으로, 지점은 가상 영역 내의 한 스폿을 정의하는 1차원, 2차원 또는 3차원 좌표(가령, x,y,z)의 하나의 세트로 표현된다. 전형적으로, 영역은 가상 영역의 폐쇄된 2차원 형상의 경계를 정의하는 3개 이상의 동일평면상의 꼭지점들의 3차원 좌표에 의해 표현된다. 전형적으로, 볼륨은 가상 영역의 폐쇄된 3차원 형상의 경계를 정의하는 4개 이상의 비동일평면상의 꼭지점들의 3차원 좌표에 의해 표현된다.
"공간적 상태"는 가상 영역에서 사용자가 프레즌스(presence)를 갖는 위치를 기술한다. 전형적으로, 공간적 상태 속성은 사용자가 프레즌스를 갖는 존의 각각에 대해 각각의 값(가령, zone_ID 값)을 갖는다.
"통신 상태"는 커뮤니컨트 각각이 통신하도록 구성되는 각 통신 채널의 상태를 기술하는 속성이다.
가상 영역의 콘텍스트에서, "객체(object)"(간혹 "프롭(prop)"이라고도 함)는 가상 영역의 기하구조와는 별도로 유용하게 취급될 수 있는 가상 영역의 구분된 요소의 일종이다. 예시적 객체는 문, 포탈, 윈도우, 뷰 스크린 및 스피커폰을 포함한다. 전형적으로, 객체는 가상 영역의 속성 및 특성과 별도이며 구분되는 속성 또는 특성을 갖는다. "아바타"는 가상 영역에서의 커뮤니컨트를 나타내는 객체이다.
"통계적 분석"이라는 용어는 일반화 또는 추론을 위해 데이터를 분석하거나, 예측 모델의 변수의 값을 결정하거나, 데이터를 요약하는 하나 이상의 메트릭을 결정하거나, 데이터의 하나 이상의 양태 또는 대상을 분류하는 프로세스를 지칭한다.
본 명세서에서 사용되는 바와 같이, "포함한다"는 용어는 포함한다는 의미를 갖지만 이에 한정되지 않으며, "포함하는"이라는 용어는 포함하는의 의미를 갖지만 이에 한정되지 않는다. "기초하는"이라는 용어는 적어도 부분적으로 기초한다는 것을 의미한다.
II. 네트워크 통신 환경에서 커뮤니컨트 상호작용 촉진
A. 서론
본 명세서에서 설명되는 실시예는 네트워크 통신 환경에서 커뮤니컨트 상호작용을 촉진하는 향상된 시스템 및 방법을 제공한다. 특히, 이들 실시예는 상이한 통신 콘텍스트에 걸쳐 커뮤니컨트의 콘택트의 실시간 이용 가능성 및 활동의 실시간 시각화를 제공한다. 이 시각화는 전형적으로 커뮤니컨트의 콘택트에 의해 수행되고 있는 실시간 활동을 표시하는 시각적 큐(cue)를 포함한다. 실시간 시각화에 의해 제공되는 정보는 커뮤니컨트에게 더 많은 네트워크 상호작용 결정(가령, 언제 콘택트와 상호작용할지)이 통보될 수 있게 하고, 커뮤니컨트가 다른 커뮤니컨트와 상호작용을 개시하고 커뮤니컨트가 알지 못했을 수 있는 커뮤니컨트의 콘텍스트(가령, 커뮤니컨트들 사이에서 진행 중인 상호작용)에 합류하도록 권장한다. 일부 실시예는 커뮤니컨트의 콘택트를 상이한 서버 애플리케이션에 관한 각각의 상태에 따라 그룹으로 분류되는 도상학적 아바타로서 도시하고 있다. 예를 들어, 커뮤니컨트의 콘택트는 상이한 서버 애플리케이션에 대해 각 멤버쉽 상태 및/또는 프레즌스 상태에 따라 그룹화될 수 있다. 또한 일부 실시예는 실시간 네트워크된 통신의 상부에 공간적 메타포(metaphor)를 적용할 수 있다. 공간적 메타포는, 실시간 네트워크된 통신에 포함되는 커뮤니컨트의 현재 통신 상태의 콘텍스트의 추가적인 가상 큐를 제공한다. 또한, 공간적 메타포는, 실시간 네트워크된 통신에 참가하는 커뮤니컨트들에 의해 사용되는 다양한 인터페이스 요소의 표현을 체계화하는 콘텍스트를 제공한다.
도 1은, 네트워크(20)에 의해 상호접속되는 제 1 클라이언트 네트워크 노드(12)(Client Node A)와, 제 2 클라이언트 네트워크 노드(14)(Client Network Node B)와, 가상 환경 생성자(18)를 포함하는 예시적 네트워크 통신 환경(10)의 실시예를 도시하고 있다. 네트워크(20)는 근거리 네트워크(LAN)와, 도시지역 통신망(MAN)과, 광대역 네트워크(WAN)(가령, 인터넷) 중 하나를 포함할 수 있다. 전형적으로, 네트워크(20)는 네트워크 노드들 사이의 다양한 상이한 매체 종류(가령, 텍스트, 음성, 오디오 및 비디오)의 전송을 지원하는 다수의 상이한 연산 플랫폼 및 전송 시설을 포함한다.
제 1 클라이언트 네트워크 노드(12)는 유형의 컴퓨터 판독 가능한 메모리(22), 프로세서(24) 및 (디스플레이를 포함하는) 입력/출력(I/O) 하드웨어(26)를 포함한다. 프로세서(24)는 메모리(22)에 저장되는 적어도 하나의 통신 애플리케이션(28)을 실행한다. 전형적으로 제 2 클라이언트 네트워크 노드(14)는 제 1 클라이언트 네트워크 노드(12)와 실질적으로 동일한 전반적인 방식으로 구성되는데, 적어도 하나의 통신 애플리케이션(32)을 저장하는 유형의 컴퓨터 판독 가능한 메모리(30)와, 프로세서(34)와, (디스플레이를 포함하는) 입력/출력(I/O) 하드웨어(36)를 구비한다.
네트워크 노드(12, 14) 각각은 하나 이상의 소스 세트 및 하나 이상의 예시적 싱크 세트를 갖는다. 각 소스는 특정 데이터 스트림 콘텐츠 종류의 데이터를 발신하는 디바이스 또는 구성요소이며, 각 싱크는 특정 데이터 스트림 콘텐츠 종류의 데이터를 수신하는 디바이스 또는 구성요소이다. 동일한 데이터 스트림 콘텐츠 종류의 소스 및 싱크는 "상보적(complementary)"인 것으로 본 명세서에서 지칭된다. 예시적 소스는 오디오 소스(가령, 마이크로폰과 같은 오디오 캡처 디바이스), 비디오 소스(가령, 비디오 카메라와 같은 비디오 캡처 디바이스), 채팅 소스(가령, 키보드와 같은 텍스트 캡처 디바이스), 모션 데이터 소스(가령, 컴퓨터 마우스와 같은 포인팅 디바이스) 및 기타 소스(가령, 파일 공유 소스 또는 맞춤형 실시간 데이터 스트림의 소스)를 포함한다. 예시적 싱크는 오디오 싱크(가령, 스피커 또는 헤드폰과 같은 오디오 렌더링 디바이스), 비디오 싱크(가령, 디스플레이 모니터와 같은 비디오 렌더링 디바이스), 채팅 싱크(가령, 디스플레이 모니터와 같은 텍스트 렌더링 디바이스), 모션 데이터 싱크(가령, 디스플레이 모니터와 같은 움직임 렌더링 디바이스) 및 기타 싱크(가령, 공유 파일을 프린팅하기 위한 프린터, 전술한 것과는 상이한 실시간 데이터 스트림을 렌더링하는 장치 또는 분석 또는 맞춤형 디스플레이를 위한 실시간 스트림을 처리하는 소프트웨어)를 포함한다.
각 소스는 소스가 데이터를 발신하기 위해 이용 가능한 활동 상태와, 소스가 데이터를 발신하기 위해 이용 가능하지 않은 비활동 상태를 갖는다. 유사하게, 각 싱크는 싱크가 데이터를 수신하기 위해 이용 가능한 활동 상태와, 싱크가 데이터를 수신하기 위해 이용 가능하지 않은 비활동 상태를 갖는다. 전형적으로, 소스 및 싱크의 상태는 통신 애플리케이션(28, 32)에 의해 제공되는 제어를 통해 클라이언트 노드(12, 14)를 동작시키는 커뮤니컨트에 의해 제어될 수 있다. 예를 들어, 일부 실시예에서, 통신 애플리케이션(28, 32)는 클라이언트 네트워크 노드(12, 14)상에 로컬 마이크로폰 및 로컬 스피커(가령, 헤드셋)를 온/오프하기 위한 사용자 콘트롤을 제공한다.
가상 환경 생성자(18)는 네트워크 인프라스트럭쳐 서비스 환경(42)을 제공하고 상이한 서버 애플리케이션(44)을 호스팅하는 적어도 하나의 서버 네트워크 노드(40)를 포함한다. 클라이언트 노드(12, 14)로부터 제각기 동작하는 커뮤니컨트들은 통신 애플리케이션(28, 32)을 통해 서버 애플리케이션(44)에 접속한다. 서버 애플리케이션(44)의 하나 이상은, 클라이언트 노드(12, 14) 사이의 통신 중 하나 이상의 종류를 지원하는 동기식 회의 서버 애플리케이션(가령, 인스턴트 메시징, 텍스트 채팅, 오디오 회의, 비디오 회의, 애플리케이션 공유 및 파일 공유)이다. 네트워크 인프라스트럭쳐 서비스 환경(42)은 전형적으로 커뮤니컨트들 사이의 상호작용의 기록(48)을 포함하는 관계 데이터베이스(46) 및 각 커뮤니컨트들과 연관되는 소셜 네트워크 프로파일(50)을 유지한다. 각 상호작용 기록(48)은 한 쌍의 커뮤니컨트들 사이의 상호작용 콘텍스트를 기술한다.
각 소셜 네트워크 프로파일(50)은 전형적으로 각 커뮤니컨트를 기술하거나 커뮤니컨트에 의해 가정되는 모습을 기술하는 신원 특징(가령, 이름, 연령, 성별 및 우편 주소와 같은 지리적 위치 정보)와, 커뮤니컨트에 의해 선언되는 명시적 관계 정보, 네트워크 통신 환경(10)에서 커뮤니컨트의 상호작용으로부터 추론되는 관계 정보를 포함한다.
클라이언트 노드(12, 14)상에서 제각기 동작하는 통신 애플리케이션(28, 32)은 전형적으로 소프트웨어 및 하드웨어 리소스를 포함하는데, 이는, 관리 정책, (사용자의 프레즌스의 익스포테이션에 관한 선호도 및 서버 애플리케이션 및 다른 사용자로의 사용자 접속을 포함하는) 사용자 선호도 및 다른 설정과 함께, 다른 네트워크 노드와의 실시간 접속의 관리에 영향을 주는 로컬 구성을 정의한다.
네트워크 노드들 사이의 네트워크 접속은 다양한 상이한 스트림 처리 토폴로지로 배열될 수 있는데, 피어 투 피어 아키텍처, 서버 중재 아키텍처 및 피어 투 피어 아키텍처와 서버 중재 아키텍처의 양태를 조합하는 하이브리드 아키텍처를 포함한다. 이러한 종류의 예시적 토폴로지는 2007년 10월 24일에 출원된 미국 특허 출원 제 11/923,629 호에 개시되어 있다.
2007년 10월 24일에 출원된 미국 특허 출원 11/923,634 및 2009년 12월 4일에 출원된 미국 특허 출원 12/630,973에 개시되어 있다.
일부 실시예에서, 2010년 6월 29일에 출원된 미국 특허 출원 12/825,512에 개시된 스트림 전송 프로토콜에 따라, 서버 네트워크 노드(40)는 클라이언트 통신 세션을 원격으로 관리하고 클라이언트 네트워크 노드(12, 14)상에 오디오 및 그래픽 렌더링 엔진을 구성할 뿐만 아니라, 원격으로 호스팅되는 서버 애플리케이션(44)으로부터 클라이언트 네트워크 노드로 인스트럭션(정의라고도 함)을 송신하여 데이터 스트림을 스위칭한다. 이들 실시예 중 일부에서, 서버 애플리케이션(44)에서 지정되는 스위칭 룰에 따라, 서버 노드(40)는 상보적 소스 및 싱크들 중 활동하는 것들 사이에서 각 데이터 스트림을 상호접속시키기 위해 클라이언트 노드(12, 14)를 구성하는 제공 메시지를 클라이언트 노드(12, 14) 각각에 송신한다.
통신 애플리케이션(28, 32), 서버 애플리케이션(44) 및 네트워크 인프라스트럭쳐 서비스 환경(42)은 함께 네트워크 노드(12, 14)상에서 동작하는 커뮤니컨트들 사이의 통신을 관리하는 플랫폼(이하, 플랫폼)을 제공한다. 플랫폼은 서버 애플리케이션(44)에 의해 정의되는 상이한 통신 콘텍스트에 걸친 커뮤니컨트들의 실시간 이용 가능성 및 활동을 추적한다. 실시간 시각화의 형태로 커뮤니컨트들에 제공되는 정보는 커뮤니컨트에게 더 많은 네트워크 상호작용 결정(가령, 언제 콘택트와 상호작용할지)이 통보될 수 있게 하고, 커뮤니컨트가 다른 커뮤니컨트와 상호작용을 개시하고 커뮤니컨트가 알지 못했을 수 있는 커뮤니컨트의 콘텍스트(가령, 커뮤니컨트들 사이에서 진행 중인 상호작용)에 합류하도록 권장한다. 일부 실시예에서, 실시간 시각화는 서버 애플리케이션의 콘텍스트에서 커뮤니컨트의 프레즌스 및 활동에 관한 시각적인 큐를 포함한다. 이들 시각적 큐의 표현은 전형적으로 서버 애플리케이션에 의해 설정되는 통치 규칙, 관리 정책 및 (사용자의 프레즌스의 익스포테이션에 관한 선호도 및 영역 및 다른 사용자로의 사용자의 접속을 포함하는) 사용자 선호도 중 하나 이상에 의존한다. 또한, 사용자의 세부사항 및 상호활동의 레벨은 사용자가 특정 서버 애플리케이션 또는 서버 애플리케이션의 특정 존의 멤버인지 또는 프레즌스를 갖는지에 의존할 수 있다.
B. 콘택트 이용 가능성 및 활동의 실시간 시각화
도 2는 네트워크 통신 환경(10)의 예시적 실시예(52)를 도시하고 있는데, 여기서 가상 환경 생성자는 커뮤니컨트들 (C1A, C2A, C3A, C1B, C2B, C1C, C2C 및 C3C) 세트가 제각기 접속되는 3개의 서버 애플리케이션(54, 56, 58)을 포함한다. 이 예에서, (색칠된 원으로 표시되는) 커뮤니컨트들 C2A, C1B, C1C 및 C3C는 커뮤니컨트(C3A)의 콘택트이다. 플랫폼은, C3A에 대한, 서버 애플리케이션(54 내지 58)에 의해 정의되는 상이한 통신 콘텍스트에 걸친 콘택트의 실시간 이용 가능성 및 동작의 시각화를 생성한다. 특히, 플랫폼은 각 통신 콘텍스트에서 C3A의 콘택트를 도시하는 그래픽 사용자 인터페이스(60)를 생성하는데, 여기서 커뮤니컨트는 제각기의 그래픽 표현(즉, 아바타)에 의해 표현된다. 따라서, 콘택트(C2A)는 커뮤니컨트(C1A 및 C3A)와 함께 애플리케이션(A)의 콘텍스트로 도시되는데, 이는 또한 애플리케이션 A에 접속되고; 콘택트 C1B는 커뮤니컨트(C2B)와 함께 애플리케이션(?)의 콘텍스트로 도시되는데, 이는 또한 애플리케이션(B)에 접속되며, 콘택트(C1C 및 C3C)는 커뮤니컨트(C2C)와 함께 애플리케이션(C)의 콘텍스트로 도시되고, 이 또한 애플리케이션(C)에 접속된다. 이 방식으로, 커뮤니컨트(C3A)는 자신의 콘택트 중 어느 것이 통신 및 기타 상호작용을 위해 이용 가능한지를 확인하고, 자신의 콘택트의 이용 가능성의 현재 콘텍스트로 확인하며, 자신의 콘택트가 접속되는 서버 애플리케이션 및 자신의 콘택트가 현재 다른 커뮤니컨트와 상호작용하고 있는지 및 이들 커뮤니컨트의 신원을 포함한다.
또한, 그래픽 사용자 인터페이스(60)는 커뮤니컨트가 통신하도록 구성되는 다양한 통신 채널의 상태를 보여준다.
예를 들어, 커뮤니컨트의 로컬 스피커 채널의 "온" 또는 "오프" 상태는 커뮤니컨트의 그래픽 표현(66)상에 헤드폰 그래픽(64)의 존재 여부로 도시된다. 커뮤니컨트의 스피커가 온 상태이면, 헤드폰 그래픽(64)이 존재하며, 커뮤니컨트의 스피커가 오프 상태이면, 헤드폰 그래픽(64)이 존재하지 않는다. 커뮤니컨트의 마이크로폰의 "온" 또는 "오프" 상태는 커뮤니컨트의 그래픽 표현상에 마이크로폰 그래픽(67)의 존재 여부 및 일련의 확장하는 파장으로 커뮤니컨트의 그래픽 표현으로부터 동적으로 퍼져나가는 일련의 동심원들(68)로 표시된다. 마이크로폰이 온 상태이면 마이크로폰 그래픽(67) 및 퍼져나가는 동심원들(68)이 존재하며, 마이크로폰이 오프 상태이면, 마이크로폰 그래픽(67) 및 퍼져나가는 동심원들(68)이 존재하지 않는다. 헤드폰 그래픽(64), 마이크로폰 그래픽(67) 및 퍼져나가는 동심원들(68)은 커뮤니컨트의 사운드 플래이백 및 마이크로폰 디바이스의 상태의 시각적 큐로서 기능한다. 커뮤니컨트의 텍스트 채팅 채널의 "온" 또는 "오프" 상태는 커뮤니컨트의 그래픽 표현에 인접하는 손 그래픽(69)의 존재 여부로 도시된다. 커뮤니컨트가 다른 네트워크 노드로 텍스트 채팅 데이터를 전송하면 손 그래픽(69)이 나타나고, 커뮤니컨트가 텍스트 채팅 데이터를 전송하지 않으면 손 그래픽(69)은 나타나지 않는다. 일부 실시예에서, 텍스트 채팅 데이터는 키보드 키가 눌려질 때에만 전송되는데, 이 경우 커뮤니컨트의 텍스트 채널의 시각화는 손 그래픽(69)의 온 및 오프 플래싱으로서 보여진다. People Pane(62)에 도시된 시각적 큐로부터, 커뮤니컨트는 커뮤니컨트가 통신을 위해 이용 가능한지 및 커뮤니컨트가 현재 다른 커뮤니컨트와 통신하고 있는지를 추론할 수 있다.
도 3은 그래픽 사용자 인터페이스의 다른 실시예(70)를 도시하고 있는데, 상이한 통신 콘텍스트에 걸쳐 타겟 커뮤니컨트(이 예에서는 "Art") 의 콘택트 일부 또는 전부의 실시간 이용 가능성 및 활동을 도시하고 있다. 그래픽 유저 인터페이스(70)는 Art가 동작하고 있는 클라이언트 네트워크 노드의 디스플레이상에서 생성된다. 그래픽 유저 인터페이스(70)는 Art의 커뮤니컨트가 2개의 서버 애플리케이션 그룹(72, 74) 및 콘택트 그룹(76)으로 분할되는 것을 도시하고 있다. 서버 애플리케이션 그룹(72, 74)은 Art가 멤버인 서버 애플리케이션 각각에 대응하며 Art 및 Art의 콘택트 중 적어도 하나가 존재하는지에 관련된다. 콘택트 그룹(76)은 서버 애플리케이션 그룹 어디에도 표현되지 않는 Art의 콘택트의 전부 또는 선택된 부분을 포함한다. 커뮤니컨트의 제 1 서버 애플리케이션 그룹(72)은 "Application 1"이라는 헤더 바(header bar)로 라벨링된 섹션(78) 내에 포함되며, 이는 서버 애플리케이션 "Application 1"에 프레즌스를 갖는 커뮤니컨트 전부를 식별한다. 통신의 제 2 서버 애플리케이션 그룹(74)은 "Application 2" 헤더 바로 라벨링된 섹션(80) 내에 포함되며, 이는 서버 애플리케이션 "Application 2" 프레즌스를 갖는 커뮤니컨트 전부를 식별한다. 통신의 콘택트 그룹(76)은 "Contact" 헤더 바로 라벨링된 섹션(82) 내에 포함되며, 제 1 및 제 2 서버 애플리케이션 그룹(72, 74) 어디에도 도시되지 않은(즉, 애플리케이션 1 및 애플리케이션 2 어디의 멤버도 아니고 존재하지 않는) Art의 콘택트 모두를 식별한다. 헤더 바 각각은, 선택적으로 접히도록 토글될 수 있으며 연관 섹션(78, 80, 82)을 확장시킬 수 있는 제각기의 토글 콘트롤(84, 86, 88)을 포함한다.
도 3에 도시된 실시예에서, 서버 애플리케이션 섹션(78, 80)은 각 서버 애플리케이션에서 현재 프레즌스를 갖는 (Art 또는 Art의 콘택트 중 적어도 하나를 포함하는) 커뮤니컨트의 그래픽 표현(아바타)을 포함하고, 콘택트 섹션(82)은 애플리케이션 1 및 애플리케이션 2 어디에도 존재하지 않고 어디의 멤버도 아닌 Art의 콘택트 중 나머지의 전부의 그래픽 표현(즉, 아바타)을 포함한다. 도시된 예에서, Art 및 Beth는 서버 애플리케이션 1의 멤버이고, Art, Carl 및 Dan은 서버 애플리케이션 2의 멤버이며 Ed는 서버 애플리케이션 2의 게스트이고, Fran, Garth, Helen, Jack 및 Kim은 서버 애플리케이션 1의 멤버도 서버 애플리케이션 2의 멤버도 아니다. 이 예에서, Dan, Fran, Garth, Helen, Jack 및 Kim은 Art의 콘택트이고, Beth, Carl, 및 Ed은 Art의 콘택트가 아니다.
각 커뮤니컨트는 커뮤니컨트(즉, "Art," "Beth," "Carl," "Dan," "Ed," "Fran," "Garth," "Helen," "Jack," 및 "Kim")의 사용자 이름으로 라벨링되는 원형의 요정(circular sprite)로 시각적으로 표현된다. 또한, 각 요정은 커뮤니컨트에 관한 추가적인 정보를 포함하는 각 상태와 연관될 수 있다. 일부 실시예에서, 각 상태 라인은 다음의 정보, 프레즌스(가령, 서버 애플리케이션 또는 그 서버 애플리케이션의 존), 이용 가능성(가령, 바쁨, 한가함), 상태 메시지(Out of the office next Wednesday) 및 커뮤니컨트가 동작하는 클라이언트 노드의 이름(가령, "워크스테이션 1" 또는 "모바일 폰") 중 적어도 하나를 포함할 수 있다. 일부 실시예에서, 섹션(78, 80, 82) 각각의 커뮤니컨트 아바타의 공간적 위치는 사용자 이름을 알파벳 순으로 정렬하여 배치된다. 다른 실시예에서, 서버 애플리케이션(78, 80) 각각의 커뮤니컨트 아바타의 공간적 위치는, 커뮤니컨트가 서버 애플리케이션과의 제각기의 프레즌스를 수립했을 때의 관점에서 커뮤니컨트의 시간적 순서에 따라 정렬되어 배치된다. 콘택트 섹션(82)의 커뮤니컨트 아바타의 공간적 위치는 사용자 이름을 알파벳 순으로 정렬하여, 콘택트 빈도에 따라, 최신 콘택트 순으로, 또는 다른 분류 또는 필터링 기준에 따라 분류될 수 있다.
서버 애플리케이션의 콘텍스트에서 커뮤니컨트의 활동은, 각 커뮤니컨트가 통신하도록 구성되는 다양한 통신 채널의 상태로부터 추론될 수 있다. 통신 채널의 상태는, 섹션(78, 80, 82)의 커뮤니컨트의 그래픽 표현과 연관되어 도시되는 시각적 큐에 의해 그래픽 사용자 인터페이스(70)에 도시된다. 도 2에 도시된 실시예에서와 같이, 커뮤니컨트의 로컬 스피커 채널의 "온" 또는 "오프" 상태는 커뮤니컨트의 요정에 헤드폰 그래픽(90)의 존재 여부로 도시된다. 요정으로 표현된 커뮤니컨트의 스피커가 온 상태이면 헤드폰 그래픽(90)이 존재하며(요정Art, Carl 및 Dan 참조), 커뮤니컨트의 스피커가 오프 상태이면 헤드폰 그래픽(90)이 존재하지 않는다(요청 Beth 및 Ed 참조). 커뮤니컨트의 마이크로폰의 "온" 또는 "오프" 상태는 커뮤니컨트의 요정의 마이크로폰 그래픽(90)의 존재 여부로 도시된다. 마이크로폰이 온 상태이면 마이크로폰 그래픽(90)이 존재하며(요정Dan 참조), 마이크로폰이 오프 상태이면 마이크로폰 그래픽(90)이 존재하지 않는다(요정 Art, Beth, Carl, 및 Ed 참조). 헤드폰 그래픽(90) 및 마이크로폰 그래픽(92)은 커뮤니컨트의 사운드 플레이 백 및 마이크로폰 디바이스의 활동 상태의 시각적 큐를 제공한다. 커뮤니컨트의 텍스트 채팅 채널의 활동 상태는 커뮤니컨트의 요정에 인접하는 손 그래픽(94)의 존재 여부로 도시된다(요정 Beth 참조). 따라서, 커뮤니컨트가 다른 네트워크 노드로 텍스트 채팅 데이터를 전송하면 손 그래픽(94)이 나타나고, 커뮤니컨터가 텍스트 채팅 데이터를 전송하지 않으면 손 그래픽(94)은 나타나지 않는다. 일부 실시예에서, 텍스트 채팅 데이터는 키보드 키가 눌려질 때에만 전송되는데, 이 경우 커뮤니컨트의 텍스트 채널의 시각화는 손 그래픽(94)의 온 및 오프 플래싱으로서 보여진다.
도 3에 도시된 예에서, 서버 애플리케이션의 멤버는, 멤버의 존재 여부에 관한, 그 서버 애플리케이션의 콘텍스트에서 발생하는 커뮤니컨트의 활동의 시각적 큐를 수신할 수 있다. 따라서, Art에게 표현되는 그래픽 사용자 인터페이스(70)는 (Art가 존재하는) 애플리케이션 1에 존재하는 커뮤니컨트의 통신 채널 상태 및 (Art가 존재하지 않는) 애플리케이션 2에 존재하는 커뮤니컨트의 통신 채널 상태를 표시하는 시각적 큐를 보여준다.
그래픽 사용자 인터페이스(70)에서, Art의 콘택트는 서버 애플리케이션 및 콘택트 그룹(72 내지 76)에 걸쳐 중복되지 않는다. 다른 실시예에서, 콘택트 그룹(76)은 Art의 콘택트가 서버 애플리케이션 그룹(72, 74)의 어디에 포함되는지에 무관하게 Art의 콘택트 전부를 포함할 수 있다. 예를 들어, 도 4는 콘택트 섹션(82)이 Art의 콘택트의 전부 또는 선택된 부분을 포함하는 콘택트 그룹을 포함하는, 그래픽 사용자 인터페이스(70)의 실시예를 도시하고 있다. 도시된 예에서, Dan은 서버 애플리케이션 2 그룹(74) 및 콘택트 그룹(108) 모두에서 나타난다.
도 5는 그래픽 사용자 인터페이스(70)의 다른 실시예(110)를 도시하고 있는데, 상이한 통신 콘텍스트에 걸쳐 타겟 커뮤니컨트(이 예에서는 "Art"의 콘택트의 일부 또는 전부의 실시간 이용 가능성 및 활동을 도시하고 있다. 일 실시예에서, Art가 멤버인 각 서버 애플리케이션마다 그리고 Art와 Art의 콘택트 중 적어도 하나에 관해, 서버 애플리케이션의 멤버는 서버 애플리케이션에 대해 그 프레즌스의 상태에 의해 분할된다. 따라서, 1의 멤버는 그룹(112) 및 그루(114)로 분류되며, 2의 멤버는 Present 그룹(116) 및 Not Present 그룹(118)로 분류된다. 이 방식으로, Art는 각 서버 애플리케이션에 누가 존재하며 어느 멤버가 존재하지 않는지를 쉽게 시각화할 수 있다. 그룹(112 내지 118)의 각각은 제각기의 토글 콘트를(120, 122, 124, 126)과 연관되는 "Present" 또는 "Not present" 라벨로 각각 라벨링되며, 선택적으로 접히고 연관 그룹(112 내지 114)을 확장시키도록 토글링될 수 있다.
도 6은 그래픽 사용자 인터페이스(100)의 다른 실시예(128)를 도시하고 있는데, 상이한 통신 콘텍스트에 걸쳐 타겟 커뮤니컨트(이 예에서는 Art의 콘택트의 일부 또는 전부의 실시간 이용 가능성 및 활동을 도시하고 있다. 이 그래픽 사용자 인터페이스 실시예는 추가 "Zone of Co-Presence" 서버 애플리케이션 필터링 기준을 포함하고 Contact 그룹에서 나열되는 커뮤니컨트를 필터링하기 위한 추가 필터링 기준을 포함한다는 점을 제외하고는 그래픽 사용자 인터페이스(110)에 대응한다.
Zone of Co-Presence 필터링 기준은 서버 애플리케이션의 특정 존 내에서 함께 존재하는 커뮤니컨트를 식별한다.
따라서, 각 서버 애플리케이션에 대해, 서버 애플리케이션의 동일한 존 내에 존재하는 2명 이상의 커뮤니컨트의 각 그룹은 그래픽 사용자 인터페이스(128)의 개별적이고 선택적으로 확장 가능하고 접힐 수 있는 Zone of Co-Presence 영역(130)에 나열된다. Art의 콘택트의 일부 또는 전부를 포함하는 Zone of Co-Presence의 도시는, Art가 멤버인 서버 애플리케이션에 의해 정의되는 통신 콘텍스트의 모두에 걸쳐 발생하는 상호작용의 모두를 Art가 쉽게 시각화할 수 있게 한다. 이 방식으로, Art는 참가하기를 원하는 어떤 진행 중인 상호작용이 있는지를 판단할 수 있다.
추가적인 필터링 기준은 Art의 콘택트가 Art와의 상호작용 빈도에 의해 분류되는 Frequent 콘택트 그룹(132)과, Art의 콘택트가 최근 Art와의 상호작용순으로 분류되는 Recent 콘택트 그룹(134)과, Art의 콘택트가 제 3의 서비스(가령, 인스턴트 메시징 애플리케이션 또는 소셜 네트워크 등)에 의해 정의되는 상이한 카테고리에 따라 필터링되는 한 쌍의 Third-Party Categories (136, 138)와, 현재 온라인 상태인 Art의 콘택트의 전부를 나열하는 Online 콘택트 그룹(140)과, 현재 오프라인 상태인 Art의 콘택트의 전부를 나열하는 Offline(즉, 네트워크(20)로부터 접속 해제된) 콘택트 그룹(142)를 포함한다.
그래픽 사용자 인터페이스 실시예(70, 106, 110 및 128) 각각(도 3 내지 도 6 참조)은 Chat 버튼(98), Get 버튼(100), Invite 버튼(102) 및 Accounts 버튼(104)을 포함하는 제각기의 툴바(96)를 포함한다. 이들 제어 버튼의 선택에 의해 호출될 수 있는 기능은 도 7a 내지 7c와 관련하여 후술할 것이다.
Chat 버튼(98)(도 7a)을 선택하면, Art가 존재하는 서버 애플리케이션(즉, 도시된 예에서는 Application 1)에 존재하는 다른 커뮤니컨트들과의 채팅을 Art가 개시할 수 있게 하는 Chat 윈도우(150)(도 7b)가 열린다. Chat 버튼(98)을 선택하면 별도의 Chat 윈도우(150)가 열린다. Chat 윈도우(150)는 툴바(152), 채팅 로그 영역(154), 텍스트 박스(156) 및 Send 버튼(158)을 포함한다. Chat 윈도우(150)는 또한 통합형 People Pane(159)을 포함한다. Chat 버튼(98)에 의해 호출되는 방법 및 기능의 실시예에 관한 추가적인 세부사항은 2009년 1월 15일에 출원된 미국 특허 출원 12/354,709의 § IV.B.2에 개시되어 있다.
Get 버튼(100)(도 7a)을 선택하면 선택된 Location(161)(가령, 서버 애플리케이션 또는 서버 애플리케이션 내의 존)으로 하나 이상의 커뮤니컨트를 Art가 초대할 수 있게 하는 Get 윈도우(160)가 열린다. Art가 현재 주목하고 있는 서버 애플리케이션 외의 서버 애플리케이션마다 Get 윈도우(160)는, Get 버튼을 클릭하면 Contact List(110)에서 선택된 사람을 나열하는 수신자 필드(162)를 포함한다. 또한, Art는 이메일 주소, 이름 또는 다른 핸들(handle)을 수신자 필드로 타이핑할 수 있다. 이 시스템은 이메일 주소, 이름 또는 다른 핸들을 참조할 것이며, (이 시스템이 이메일 주소, 이름 또는 다른 핸들을 인식하면) 수신자 필드의 수신자의 아바타에게 색을 칠할 것이다. Send 버튼(166)을 선택하면, 플랫폼은 선택된 Location(161)에서 Art에게 합류하라는 초대를 선택된 커뮤니컨트들에게 전송한다. 이 메시지는 그 시점에서 수신자의 이용 가능성에 의존하여 채팅 메시지 또는 이메일 메시지를 통해 수신자에게 송신된다. Art는 초대에 Message(168)(가령, "Application 1에서 나에게 합류하세요")를 포함하는 옵션을 갖는다.
Invite 버튼(102)을 선택하면, Art가 현재 서버 애플리케이션에 존재하지 않는 커뮤니컨트를 현재 서버 애플리케이션으로 초대할 수 있게 하는 Invite 열린다. Art가 이용 가능한 커뮤니컨트 리스트에서 하나 이상의 커뮤니컨트를 선택하면, 플랫폼은 각 서버 애플리케이션 또는 존에서 Art로 합류하라는 초대를 선택된 커뮤니컨트에게 전송한다. Invite 버튼(102)에 의해 호출되는 방법 및 기능의 실시예에 관한 추가적인 세부사항은 2009년 1월 15일에 출원된 미국 특허 출원 12/354,709의 § IV.B.4에 개시되어 있으며, Contact 윈도의 Get 버튼과 연관된다.
버튼(104)을 선택하면, Art가 자신의 계정 정보를 관리할 수 있게 하는 윈도구가 열린다.
또한, Art는 그래픽 사용자 인터페이스(70, 106, 110 및 128)에 나열되는 커뮤니컨트의 그래픽 표현 중 하나에 마우스오버(mouseover)하여 각 커뮤니컨트에 관한 추가적인 정보가 나타나게 할 수 있다. 예를 들어, 도 7a에 도시된 바와 같이, Kim의 요정(170)에 마우스오버하면, Kim에 관한 정보를 보여주는 정보 윈도우(172)가 나타난다. 이 예에서, 정보 윈도우(172)는 Kim으로부터의 메시지(즉, "Out of the office next Wednesday") 지역 시간 정보, 위치 정보 및 하이퍼텍스트 링크를 보여준다. 정보 윈도우(172)는 Kim과 채팅을 개시하기 위한 Chat 버튼 및 Kim을 선택된 위치로 초대하기 위한 Get 버튼을 갖는 툴바를 포함한다. Chat 버튼 및 Get 버튼에 의해 호출되는 방법 및 기능의 실시예에 관한 추가적인 세부사항은 2009년 1월 15일에 출원된 미국 특허 출원 12/354,709의 §IV.B.2 및 §IV.B.4에 각각 개시되어 있다.
C. 네트워크 통신 환경으로 커뮤니컨트를 인터페이싱
1. 개요
도 8은, 플랫폼이 클라이언트 노드(12, 14) 중 하나를 운영하는 타겟 커뮤니컨트와 네트워크 통신 환경의 다른 커뮤니컨트 사이의 상호작용을 촉진시키는 방법의 실시예를 도시하고 있다. 이 방법에 따르면, 타겟 커뮤니컨트는 클라이언트 노드를 서버 애플리케이션(44) 중 타겟에 접속하도록 유도한다(도 8, 블록(174)). 타겟 서버 애플리케이션을 호스팅하는 서버 노드는 타겟 커뮤니컨트에 관련되는 커뮤니컨트들 중 하나를 확인한다(도 8, 블록(176)). 서버 노드는 상이한 서버 애플리케이션(44)에 대해 관련된 커뮤니컨트의 상태를 결정한다(도 8, 블록(178)). 서버 노드는 타겟 커뮤니컨트에 관련 커뮤니컨트들의 표시 및 관련 커뮤니컨트들의 결정된 상태를 전송한다(도 8, 블록(180)). 디스플레이상에, 클라이언트 노드는 관련된 커뮤니컨트의 그래픽 표현 및 상이한 서버 애플리케이션으로의 접속과 관련하여 관련된 커뮤니컨트의 상태의 그래픽 표시를 디스플레이한다(도 8, 블록(184)).
전술한 바와 같이, 일부 실시예에서, 다수의 상이한 서버 애플리케이션은 커뮤니컨트들 사이의 동기식 회의를 가능하게 한다.
서버 애플리케이션 중 특정한 하나는 커뮤니컨트들 각각이 연관될 수 있는 다수의 존을 가질 수 있다. 이들 실시예에서, 서버 노드는 전형적으로 관련 커뮤니컨트들 각각이 특정 서버 애플리케이션의 존 중 어느 것에 연관되는지의 표시를 타겟 커뮤니컨트로 전송한다. 관련 커뮤니컨트 각각에 대해, 서버 노드는 관련 커뮤니컨트가 적어도 하나의 다른 커뮤니컨트와 함께 존재하는 존 각각을 결정할 수 있고, 서버 노드는 타겟 커뮤니컨트에 관련 커뮤니컨트의 결정된 멤버쉽의 표시를 전송한다. (후술할) 일부 실시예에서, 특정 서버 애플리케이션의 존 각각은 물리적 환경의 요소의 각 그래픽 표현과 연관된다. 예를 들어, 특정 서버 애플리케이션의 존 각각은 오피스 환경의 물리적 공간의 각 그래픽 표현과 연관될 수 있다.
일부 실시예에서 서버 노드는 관련 커뮤니컨트 각각에 대해 관련 커뮤니컨트가 멤버쉽을 갖는 서버 애플리케이션 각각을 결정할 수 있고, 서버 노드는 관련 커뮤니컨트의 결정된 멤버쉽의 표시를 타겟 커뮤니컨트에 전송한다.
관련 커뮤니컨트를 확인하는 데에 있어서(도 8, 블록(176)), 서버 노드는 타겟 커뮤니컨트가 서버 애플리케이션과 제각기 연관되어 상호작용한 커뮤니컨트들을 관련 커뮤니컨트로서 식별할 수 있다. 이 프로세스에서, 서버 노드는 타겟 커뮤니컨트가 서버 애플리케이션과 제각기 연관되어 제공되는 실시간 통신 시설을 통해 통신한 커뮤니컨트를 관련 커뮤니컨트로서 식별할 수 있다. 실시간 통신 시설은 오디오 통신 시설, 비디오 통신 시설, 실시간 텍스트 채팅 시설 및 파일 공유 통신 시설 중 적어도 하나를 포함할 수 있다.
관련 커뮤니컨트를 확인하는 데에 있어서, 서버 노드는 타겟이 콘택트로서 주장한 커뮤니컨트들을 "관련 커뮤니컨트"로서 식별할 수 있다.
서버 노드는 타겟 커뮤니컨트에게 네트워크 통신 환경에 현재 접속되어 있는 관련 커뮤니컨트의 표시 및 네트워크 통신 환경에 현재 접속되어 있지 않은 관련 커뮤니컨트의 표시를 전송할 수 있다.
일부 실시예에서, 관련 커뮤니컨트의 상태를 결정하는 프로세스(도 8, 블록(178))는 관련 커뮤니컨트 각각에 대해 관련 커뮤니컨트가 프레즌스를 갖는 서버 애플리케이션 각각을 결정하는 것을 포함한다. 전형적으로 서버 노드는 관련 커뮤니컨트가 어느 서버 애플리케이션에 대해 각각 프레즌스를 갖는지의 표시를 타겟 커뮤니컨트에 전송한다. 일부 실시예에서, 서버 애플리케이션 중 특정 서버 애플리케이션은 커뮤니컨트들이 각자의 프레즌스를 수립할 수 있는 다수의 존 중 하나를 가지며, 관련 커뮤니컨트 각각에 대해 서버 노드는 관련 커뮤니컨트가 프레즌스를 갖는 특정 서버 애플리케이션의 존 각각을 결정하고, 특정 서버 애플리케이션의 존 중 어느 것이 관련 커뮤니컨트가 각자의 프레즌스를 갖는지의 표시를 타겟 커뮤니컨트에 전송한다.
일부 실시예에서, 서버 노드는 관련 커뮤니컨트를 분류하고 분류 표시를 타겟 커뮤니컨트에 전송한다. 일부 실시예에서, 분류는 관련 커뮤니컨트가 제각기 연관되는 서버 애플리케이션에 따라 관련 커뮤니컨트를 서버 애플리케이션 그룹으로 그룹화하는 것을 포함한다. 각 서버 애플리케이션 그룹 내에서, 서버 노드는 관련 커뮤니컨트 각각을 각 서버 애플리케이션으로의 접속 상태에 의해, 네트워크 통신 환경의 타겟 커뮤니컨트와의 상호작용 빈도에 의해, 또는 네트워크 통신 환경의 타겟 커뮤니컨트와의 최근 상호작용순으로 관련 커뮤니컨트들을 각각 분류할 수 있다. 일부 실시예에서, 서버 애플리케이션 중 특정한 하나는 커뮤니컨트들 각각이 프레즌스를 수립할 수 있는 다수의 존을 가질 수 있다. 이들 실시예에서, 그룹화는 관련 커뮤니컨트들이 제각기 연관되는 특정 서버 애플리케이션의 존 중 하나에 따라 특정 서버 애플리케이션과 연관되는 관련 커뮤니컨트들 각각을 존 그룹으로 그룹화하는 것을 포함할 수 있다. 그룹화는, 관련 커뮤니컨트들 중 적어도 둘이 공존하는 존들에 따라 특정 서버 애플리케이션과 연관되는 관련 커뮤니컨트들 각각을 그룹화하는 것을 포함할 수 있다. 일부 실시예에서, 분류는, 특정 서버 애플리케이션의 존들 중 어느 것에서 타겟 커뮤니컨트가 프레즌스를 갖는지에 따라 존 그룹을 분류하는 것을 포함한다. 일부 실시예에서, 분류는, 서버 애플리케이션 각각과의 접속 상태에 따라 관련 커뮤니컨트를 그룹화하는 것을 포함한다. 분류는, 서버 애플리케이션 전부와 접속되지 않은 관련 커뮤니컨트들을 함께 그룹화하는 것을 포함할 수 있다.
일부 실시예에서, 서버 노드는 관련 커뮤니컨트들 각각의 실시간 활동 상태를 결정하며, 결정된 실시간 활동 상태의 표시를 타겟 커뮤니컨트에 전송한다. 결정은, 관련 커뮤니컨트들 각각의 실시간 통신 활동(가령, 오디오 통신 활동, 비디오 통신 활동, 실시간 텍스트 채팅 활동 및 파일 공유 활동)을 결정하는 것을 포함한다.
일부 실시예에서, 서버 노드는 서버 애플리케이션 각각과 관련하여 관련 커뮤니컨트들 각각과 통신하기 위해 이용 가능한 통신 채널을 결정한다. 이들 실시예에서, 서버 노드는 관련 커뮤니컨트들 각각 및 서버 애플리케이션 각각과 관련하여 결정된 통신 채널의 표시를 타겟 커뮤니컨트로 전송한다. 이용 가능한 통신 채널의 결정은, 관련 커뮤니컨트들 각각의 실시간 통신 기능과 서버 애플리케이션 각각에 의해 인에이블되는 실시간 통신 시설을 비교하는 것을 포함할 수 있다. 일부 실시예에서, 실시간 통신 채널은 오디오 통신 채널, 비디오 통신 채널, 실시간 텍스트 채팅 채널 및 파일 공유 채널 중 적어도 하나를 포함할 수 있다.
일부 실시예에서, 클라이언트 노드에 의해 수신되는 표시(도 8, 블록(182))는 관련 커뮤니컨트가 어느 서버 애플리케이션에서 각각 프레즌스를 갖는지에 대한 표시를 포함한다. 이들 실시예에서, 클라이언트 노드는 전형적으로 관련 커뮤니컨트가 프레즌스를 갖는 서버 애플리케이션 각각과 관련하여 관련 커뮤니컨트의 그래픽 표현을 디스플레이한다. 일부 실시예에서, 서버 애플리케이션 중 특정한 하나는 커뮤니컨트들 각각이 프레즌스를 수립할 수 있는 다수의 존을 가질 수 있다. 이들 실시예에서, 클라이언트 노드는 전형적으로 관련 커뮤니컨트들 각각에 대해 관련 커뮤니컨트가 프레즌스를 갖는 특정 서버 애플리케이션의 존 각각의 표시를 포함한다. 이 경우, 클라이언트 노드는 전형적으로 관련 커뮤니컨트가 프레즌스를 갖는 특정 서버 애플리케이션의 존의 각각과 관련하여 관련 커뮤니컨트의 그래픽 표현을 디스플레이한다. 일부 실시예에서, 클라이언트 노드는 물리적 환경(가령, 오피스 환경)의 그래픽 표현 요소로서 존을 디스플레이한다.
클라이언트 노드에 의해 수신되는 표시는 전형적으로 관련 커뮤니컨트들 각각이 연관되는 서버 애플리케이션의 표시를 포함한다. 일부 실시예에서, 클라이언트 노드는 관련 커뮤니컨트가 제각기 연관되는 서버 애플리케이션에 따라 서버 애플리케이션 그룹으로 그룹화된 그래픽 표현을 디스플레이하는 것을 포함한다. 각 서버 애플리케이션 그룹 내에서, 클라이언트 노드는 각 서버 애플리케이션으로의 접속 상태에 의해, 네트워크 통신 환경의 타겟 커뮤니컨트와의 상호작용 빈도에 의해, 또는 네트워크 통신 환경의 타겟 커뮤니컨트와의 최근 상호작용순으로 분류된 관련 커뮤니컨트 각각의 그래픽 표현을 디스플레이할 수 있다.
일부 실시예에서, 서버 애플리케이션 중 특정한 하나는 커뮤니컨트들 각각이 프레즌스를 수립할 수 있는 다수의 존을 가질 수 있다. 이들 실시예에서, 클라이언트 노드는 관련 커뮤니컨트들이 제각기 연관되는 특정 서버 애플리케이션의 존 중 하나에 따라 존 그룹으로 그룹화된 특정 서버 애플리케이션과 연관되는 관련 커뮤니컨트들 각각의 그래픽 표현을 디스플레이할 수 있다. 이 프로세서에서, 클라이언트 노드는, 관련 커뮤니컨트들 중 적어도 둘이 공존하는 존들에 따라 그룹화된 특정 서버 애플리케이션과 연관되는 관련 커뮤니컨트들 각각의 그래픽 표현을 디스플레이하는 것을 포함할 수 있다. 클라이언트 노드는, 특정 서버 애플리케이션의 존들 중 어느 것에서 특정 타겟 커뮤니컨트가 프레즌스를 갖는지에 따라 분류된 존 그룹을 디스플레이하는 것을 포함할 수 있다. 클라이언트 노드는, 서버 애플리케이션 각각과의 접속 상태에 따라 그룹화된 관련 커뮤니컨트의 그래픽 표현을 디스플레이하는 것을 포함한다. 이 프로세스에서, 클라이언트 노드는 서버 애플리케이션 모두에 접속되지 않은 관련 커뮤니컨트들의 함께 그룹화된 그래픽 표현을 디스플레이할 수 있다.
일부 실시예에서, 클라이언트 노드에 의해 수신되는 표시는 관련 커뮤니컨트들 각각의 실시간 활동 상태의 표시를 포함한다. 이들 실시예에서, 클라이언트 노드는 관련 커뮤니컨트의 그래픽 표현 각각과 관련되는 실시간 활동 상태의 그래픽 표현을 디스플레이할 수 있다. 실시간 통신 활동은 전형적으로 오디오 통신 활동, 비디오 통신 활동, 실시간 텍스트 채팅 활동 및 파일 공유 활동 중 적어도 하나를 포함한다.
일부 실시예에서, 클라이언트 노드에 의해 수신되는 표시는, 서버 애플리케이션 각각과 관련하여 관련 커뮤니컨트들 각각과 통신하기 위해 이용 가능한 통신 채널의 표시를 포함한다. 이들 실시예에서, 클라이언트 노드는 관련 커뮤니컨트의 그래픽 표현 각각과 관련되는 통신 채널의 그래픽 표현을 디스플레이할 수 있다. 실시간 통신 채널은 전형적으로 오디오 통신 채널, 비디오 통신 채널, 실시간 텍스트 채팅 채널 및 파일 공유 채널 중 적어도 하나를 포함할 수 있다.
클라이언트 노드에 의해 수신되는 표시는, 네트워크 통신 환경에 접속되는 관련 커뮤니컨트의 표시 및 네트워크 통신 환경에 접속되지 않는 관련 커뮤니컨트의 표시를 포함할 수 있다. 이들 실시예에서, 클라이언트 노드는 네트워크 통신 환경에 접속되는 관련 커뮤니컨트들의 그래픽 표현과 관련되는 온라인 접속 상태 표시자를 디스플레이할 수 있고, 클라이언트 노드는 네트워크 통신 환경에 접속되지 않는 관련 커뮤니컨트들의 그래픽 표현와 연관되는 오프라인 접속 상태 표시자를 디스플레이할 수 있다.
도 9는, 플랫폼이 클라이언트 노드(12, 14) 중 하나를 운영하는 특정 커뮤니컨트와 네트워크 통신 환경의 다른 커뮤니컨트 사이의 상호작용을 촉진시키는 방법의 실시예를 도시하고 있다. 이 방법에 따르면, 클라이언트 노드는, 네트워크 통신 환경에서 커뮤니컨트들 각각에 의해 각각 연결되는 상이한 종류의 실시간 통신 활동의 표시를 수신한다(도 9, 블록(183)). 디스플레이상에서, 클라이언트 노드는 커뮤니컨트들 중 하나 이상의 각각의 그래픽 표현을 포함하는 콘택트 리스트를 디스플레이하는데, 디스플레이하는 것은 하나 이상의 그래픽 표현과 관련하여 하나 이상의 커뮤니컨트에 의해 개별적으로 연결되는 현재 상호작용 활동의 확인된 종류를 나타내는 시각적 큐를 도시하는 것을 포함한다.
일부 실시예에서, 클라이언트 노드는 커뮤니컨트들 각각의 통신 활동으로부터 유도되는 콘텐츠를 포함하는 실시간 데이터 스트림과, 수신된 실시간 데이터 스트림의 종류를 식별하는 콘텐츠 유형 식별자의 형태인 각 표시를 포함한다. 이들 실시예에서, 클라이언트 노드는 각 콘텐츠 유형 식별자로부터 실시간 통신 활동의 각 종류를 결정한다. 또한, 이 클라이언트 노드는 전형적으로 수신된 실시간 데이터 스트림으로부터 사람이 감지할 수 있는 출력을 생성한다.
일부 실시예에서, 클라이언트 노드는 네트워크 통신 환경에서 커뮤니컨트들 중 특정 커뮤니컨트에 의해 연결되는 실시간 채팅 동작의 표시를 수신하고, 특정 커뮤니컨트의 그래픽 표현과 관련하여 실시간 채팅 동작을 표시하는 시각적 큐를 디스플레이한다.
일부 실시예에서, 클라이언트 노드는 네트워크 통신 환경에서 커뮤니컨트들 중 특정 커뮤니컨트에 의해 연결되는 실시간 파일 공유 동작의 표시를 수신하고, 특정 커뮤니컨트의 그래픽 표현과 관련하여 실시간 파일 공유 동작을 표시하는 시각적 큐를 디스플레이한다.
일부 실시예에서, 클라이언트 노드는 네트워크 통신 환경에서 커뮤니컨트들 중 특정 커뮤니컨트에 의해 연결되는 실시간 애플리케이션 공유 동작의 표시를 수신하고, 특정 커뮤니컨트의 그래픽 표현과 관련하여 실시간 애플리케이션 공유 동작을 표시하는 시각적 큐를 디스플레이한다.
일부 실시예에서, 클라이언트 노드는 네트워크 통신 환경에서 커뮤니컨트들 중 특정 커뮤니컨트에 의해 연결되는 실시간 음성 동작의 표시를 수신하고, 특정 커뮤니컨트의 그래픽 표현과 관련하여 실시간 음성 동작을 표시하는 시각적 큐를 디스플레이한다.
2. 커뮤니컨트들간의 연관 및 커뮤니컨트와 서버 애플리케이션과의 연관
커뮤니컨트는 전형적으로 다른 커뮤니컨트의 "콘택트"가 되어 다른 커뮤니컨트에 관련되는데, 커뮤니컨트는, 커뮤니컨트들 중 적어도 하나에 의해 선언되는( 및 선택적으로 다른 이에 의해 확정되는) 명시적 소셜 네트워크 묶음(tie)에 의해 또는 커뮤니컨트들 사이의 상호작용으로부터 추론되는 소셜 네트워크 묶음에 의해 다른 커뮤니컨트에 연결된다. 일부 실시예에서, 네트워크 인프라스트럭쳐 서비스 환경(42)은, 커뮤니컨트들에 의해 선언되는 명시적 속성값 및 관계 데이터베이스(46)에 대한 질의 결과의 통계적 분석으로부터 유도되는 추론된 속성값에 기초하여 커뮤니컨트 상호작용을 촉진한다. 각 관계 종류 속성값은 전형적으로 소셜 네트워크 묶음의 일종을 지정한다. 예시적 관계 유형은 친족 유형(가령, 아버지, 사촌), 정서적 유형(가령, 존경함, 좋아함), 인지적 유형(가령, 아는 사이, 친구, 지인), 사회적 역할 유형(가령, 선생님, 직장동료)을 포함한다. 이러한 속성값을 추론하는 방법의 실시예는 2009년 12월 4일자로 출원된 공동 계류 중인 미국 특허 출원 12/631,026의 섹션 IV에 개시되어 있다.
예시적 유형의 연관 중에서 커뮤니컨트가 상이한 서버 애플리케이션과 가질 수 있는 것은 멤버쉽과 프레즌스이다. 전형적으로, 커뮤니컨트는 서버 애플리케이션에 등록함으로써 서버 애플리케이션의 멤버가 된다. 커뮤니컨트는 서버 애플리케이션에 대해 현재 프레즌스를 갖지 않는 서버 애플리케이션의 멤버일 수 있다. 전형적으로, 커뮤니컨트는 서버 애플리케이션에 접속함으로써 서버 애플리케이션에 대한 프레즌스를 획득한다. 커뮤니컨트는 서버 애플리케이션의 멤버가 되지 않고 그 서버에 대한 프레즌스를 가질 수 있다. 이 경우, 커뮤니컨트는 전형적으로 "게스트"로 지칭된다. 일부 실시예에서, 일부 게스트 커뮤니컨트는 2010년 1월 26일자로 출원된 미국 특허 출원 12/694,126에 개시된 하나 이상의 방법에 따라 서버 애플리케이션과 인터페이싱될 수 있다.
도 10은 5명의 커뮤니컨트들(Sally, Tom, Collin, Cary, 및 Gus)과 2개의 서버 애플리케이션(Lansing Aviation 및 Engineering)과의 제각기의 연관 사이의 예시적 관계 세트를 도시하는 소셜 그래프(190)의 일례를 도시하고 있다. 서버 애플리케이션은 커뮤니컨트가 각자의 프레즌스를 수립할 수 있는 임의의 종류의 서버 애플리케이션일 수 있으며, 동기식 회의 서버 애플리케이션을 포함할 수 있다. 도시된 예에서, Lansing Aviation 및 Engineering 서버 애플리케이션은 Sococo 영역 애플리케이션(Social Communications Company, Inc., www.sococo.com로부터 이용 가능함)이며, 네트워크 통신 환경에서 커뮤니컨트들이 체험하는 몰입 레벨을 증가시키는 공간적 콘텍스트에서 커뮤니컨트 상호작용을 위한 공간적 시각화 및 스위칭 룰을 정의한다. 소셜 그래프(190)에 도시된 바와 같이, Sally 및 Cary는 Engineering 영역 애플리케이션의 멤버이고, Gus는 Engineering 영역 애플리케이션의 게스트이다. 또한, Sally는 Collin과 Lansing Aviation 영역 애플리케이션의 공동 멤버인데, 이는 Sally의 상호 Sococo 콘택트이다. Sally는 Tom의 상호 Sococo 콘택트이고, 이는 Lansing Aviation 및 Engineering 영역 애플리케이션 중 어디의 멤버도 아니다. 또한, Sally는 Yolanda의 상호 Yahoo 콘택트이고 Gary의 상호 Google 콘택트이다.
3. 커뮤니컨트 아이덴티티
각 서버 애플리케이션에 있어서, 커뮤니컨트는 서버 애플리케이션에 대한 커뮤니컨트를 고유하게 식별하는 하나 이상의 식별자를 가질 수 있다. 예를 들어, 도 10의 소셜 그래프는, Sococo 식별자(SUID1 및 SUID2)에 의해 고유하게 식별되는 각 Sococo 식별자를 갖는 것 외에도, Sally 및 Tom은 이들이 제 3의 서버 제공자(즉, Yahoo, Gmail, Hotmail, AIM 및 Facebook 서비스 제공자)와 수립한 식별자의 세트(192, 194)를 주장한다. 특히, Sally는 다음의 아이덴티티 식별자 sally@yahoo.com, sally@gmail.com, sally@hotmail.com, sally@aim.com, 및 sally@source.com를 주장하였고, Tom은 다음의 아이덴티티 식별자tom@yahoo.com, tom@gmail.com, tom@hotmail.com, tom@aim.com, 및 tom@target.com를 주장하였다. 또한, Sally 및 Tom은 상호 Yahoo 콘택트 및 상호 Facebook 콘택트("친구"라고도 함)이다. 이 예에서, Sally 및 Tom에 의해 주장되는 식별자는 각 네트워크 서비스(Yahoo, Gmail, Hotmail, AIM 및 Facebook 서버 애플리케이션)와 연결되어 통신하기 위한 통신 핸들이다.
일부 실시예에서, 각 커뮤니컨트에 대해, 네트워크 인프라스트럭쳐 서버 환경(42)은 커뮤니컨트에 의해 주장되는 식별자 전부를 네트워크 통신 환경에서 커뮤니컨트를 식별하는 하나의 범용 사용자 식별자(가령, 도 10에 도시된 Sococo 식별자(SUID1 및 SUID2))와 연관시킨다. 이 방식으로, 각 커뮤니컨트는 상이한 서버 애플리케이션(44)에 의해 정의되는 상이한 통신 콘텍스트 전부에 걸쳐서 동일한 식별자로써 지속적으로 식별된다.
도 11은, 네트워크 인프라스트럭쳐 서버 환경(42)이 커뮤니컨트 중 하나 이상의 각각을 하나의 아이덴티티로 네트워크 통신 환경에서 상호작용하는 다른 커뮤니컨트에게 나타내는 방법의 실시예를 도시하고 있다.
도 11의 방법에 따르면, 커뮤니컨트들 중 하나 이상의 각각에 대해, 네트워크 인프라스트럭쳐 서버 환경(42)은 커뮤니컨트에 의해 주장되는 다수의 아이덴티티 세트(도 11, 블록(195))를 결정하는데, 여기서 아이덴티티 각각은 각 네트워크 서비스와 접속하여 커뮤니컨트와 통신하기 위한 통신 핸들과 연관되며, 네트워크 인프라스트럭쳐 서버 환경(42)은 다수의 아이덴티티 세트 각각과 네트워크 통신 환경에서 커뮤니컨트를 식별하는 하나의 각자의 범용 사용자 식별자를 연관시키며(도 11, 블록(196)), 네트워크 인프라스트럭쳐 서버 환경(42)은 사용자 계정 각각과 연관되는 커뮤니컨트의 하나 이상의 콘택트의 세트를 식별한다(도 11, 블록(197)).
네트워크 인프라스트럭쳐 서버 환경(42)은 커뮤니컨트 중 타겟 커뮤니컨트에 관련되는 커뮤니컨트들을 확인한다(도 11, 블록(198)). 이 프로세스에서, 커뮤니컨트 각각은 커뮤니컨트가 주장하는 아이덴티티와 연관되는 통신 핸들에 기초하여 타겟 커뮤니컨트의 콘택트 각각에 일치된다.
네트워크 인프라스트럭쳐 서버 환경(42)은 범용 아이덴티티에 의해 식별되는 관련 커뮤니컨트의 표시를 타겟 커뮤니컨트에 전송한다(도 11, 블록(199)).
일부 실시예에서, 접속 핸들은 실시간 통신 서비스(가령, 인스턴트 메시징 서비스, 오디오 회의 서비스, 비디오 회의 서비스 및 파일 공유 서비스)를 통해, 전자 메일 서비스를 통해, 또는 소셜 네트워킹 서비스를 통해 커뮤니컨트들 각각과 통신하기 위한 핸들이다. 일부 실시예에서, 각 커뮤니컨트는 서버 애플리케이션(44) 중 상이한 것들에 대한 상이한 통신 핸들을 지정하여 커뮤니컨트가 메시지가 유도되는 통신 핸들로부터의 다른 커뮤니컨트로부터 수신되는 메시지의 통신 콘텍스트(가령, Meet, Get 및 초대 메시지)를 추론할 수 있다.
일부 실시예에서, 네트워크 인프라스트럭쳐 서비스 환경(42)은 서버 애플리케이션으로의 접속에 대해 관련된 커뮤니컨트의 접속 상태를 결정하고, 관련된 커뮤니컨트의 사양 및 관련된 커뮤니컨트의 결정된 접속 상태를 타겟 커뮤니컨트로 전송한다. 관련 커뮤니컨트 중 특정 커뮤니컨트가 서버 애플리케이션 중 특정 서버 애플리케이션으로부터 접속 해제되었다고 판단하면, 네트워크 인프라스트럭쳐 서비스 환경(42)은 특정 관련 커뮤니컨트가 접속된 네트워크 서비스를 결정하고, 특정 관련 커뮤니컨트가 특정 서버 애플리케이션으로부터 접속 해제된다는 표시 및 특정 관련 커뮤니컨트가 특정 관련 커뮤니컨트가 접속된다고 결정된 네트워크 서비스 중 하나 이상을 통한 통신을 위해 이용 가능하다는 표시를 타겟 커뮤니컨트에게 전송한다.
4. 커뮤니컨트 상태
상이한 서버 애플리케이션(44)과의 연관에 대해 커뮤니컨트에 대해 확인될 수 있는 상태 중에서 서버 애플리케이션(44)에 대해 커뮤니컨트의 상태 및 활동의 상태가 있다.
[00120] 예시적 커뮤니컨트 상태는 다음을 포함한다.
온라인/오프라인 상태는 커뮤니컨트가 현재 통신을 위해 이용 가능한지를 표시한다. 도시된 실시예에서, 커뮤니컨트는 (가령, 서버 애플리케이션(44)의 하나 이상에 대해 프레즌스를 수립하여) 네트워크 통신 환경에 접속될 때 온라인 상태이고, 커뮤니컨트는 (가령, 서버 애플리케이션(44) 중 어느 것과도 프레즌스를 갖지 않음으로써) 네트워크 통신 환경에 접속되지 않은 때에 오프라인 상태이다.
Location of Presence 상태는 커뮤니컨트가 네트워크 통신 환경에서 프레즌스를 수립한 것을 표시한다. 전형적으로, Location of Presence는 서버 애플리케이션(44) 및/또는 사용자가 프레즌스를 갖는 서버 애플리케이션(44)의 존 각각에 대한 속성 값(가령, application_ID 및/또는 zone_ID 값)을 갖는다.
Appliction-Specific 아이덴티티 정보는 커뮤니컨트가 연관되는 특정 서버 애플리케이션의 콘텍스트에서 커뮤니컨트에 관한 정보를 표시하도록 다른 커뮤니컨트에 전달된다. Application-Specific 아이덴티티 정보는 다음을 포함한다.
ㆍ 서버 애플리케이션의 콘텍스트에서 다른 커뮤니컨트에 대한 커뮤니컨트를 식별하는 데에 사용되는 애플리케이션 특정 Name 속성
ㆍ 서버 애플리케이션의 콘텍스트에서 커뮤니컨트의 도식적 표현의 컬러를 설정하는 데에 사용되는 애플리케이션 특정 Avatar Color 속성
ㆍ 서버 애플리케이션의 콘텍스트에서 커뮤니컨트의 표현과 관련되는 사용자 선택 이미지를 참조하는 애플리케이션 특정 Photo 속성
ㆍ 서버 애플리케이션의 콘텍스트에서 커뮤니컨트의 표현과 관련되는 메시지를 참조하는 애플리케이션 특정 Status Message 속성
ㆍ 서버 애플리케이션의 콘텍스트에서 데이터 스트림을 커뮤니컨트로 스위칭하기 위해 사용될 수 있는 커뮤니컨트의 역할(가령, 게스트, 멤버, 중재자, 소유자)을 표시하는 애플리케이션 특정 Role 속성
Application-Specific Availibility 상태는 서버 애플리케이션의 콘텍스트에서 커뮤니컨트의 이용 가능성을 표시한다. Application-Specific Availability 상태는 커뮤니컨트가 한가하거나 수면 상태일 때를 표시하는 속성 값 및 커뮤니컨트가 바쁠 대를 표시하는 속성값을 포함한다.
Station of Focus 상태는 커뮤니컨트가 동작하고 있는 클라이언트 네트워크 노드를 특징 짓는다. 전형적으로, Station of Focus 상태는 클라이언트 네트워크 노드의 Device Type, 클라이언트 네트워크 노드상에서 실행되는 Operating System(OS) 및 운영 시스템의 OS 버전을 식별하는 속성을 포함한다. Client of Focus 상태는 커뮤니컨트가 현재 주목하고 있는 서버 애플리케이션을 표시한다. 전형적으로, Client of Focus상태는 커뮤니컨트가 서버 애플리케이션과 통신하고 있는 클라이언트 통신 애플리케이션을 식별하는 Client Name 속성과, 클라이언트 통신 애플리케이션의 버전을 식별하는 Client Version 속성을 포함한다.
Channels Supported by Client of Focus상태는 사용자의 클라이언트 애플리케이션의 콘텍스트에서 커뮤니컨트와 통신하기 위해 이용 가능한 통신 채널을 표시한다. 전형적으로, Channels Supported by Client Focus 상태는 사용자의 클라이언트 애플리케이션이 커뮤니컨트와의 채팅 통신을 지원하는지를 표시하는 Chat 속성과, 사용자의 클라이언트 애플리케이션이 오디오 싱크 및 커뮤니컨트와의 오디오 소스 통신을 각각 지원하는지를 표시하는 Audio Sink 속성 및 Audio Source 속성과, 사용자 클라이언트의 애플리케이션이 비디오 싱크 및 커뮤니컨트와의 비디오 소스 통신을 지원하는지를 각각 표시하는 Video Source 속성 및 Video Sink 속성과, 사용자의 클라이언트 애플리케이션이 커뮤니컨트와의 파일 전송 통신을 지원하는지를 표시하는 File Transfer 속성을 포함한다.
예시적 커뮤니컨트 활동은 통신을 위해 커뮤니컨트가 현재 개방한 채널을 포함하는데, 이는 커뮤니컨트가 현재 다른 커뮤니컨트와 어떻게 상호작용하고 있는지를 표시한다. 일부 실시예에서, Open Channels 활동은 다음 속성을 포함한다.
ㆍ 커뮤니컨트의 오디오 싱크 채널(가령, 스피커)이 개방되는 때를 표시하는 IsListening 속성
ㆍ 커뮤니컨트의 오디오 소스 채널(가령, 마이크로폰)이 개방되는 때를 표시하는 HasMicOpen 속성
ㆍ 커뮤니컨트의 오디오 소스 채널상에서 오디오 진폭이 전송되는 때를 표시하는 IsSpeaking 속성
ㆍ 커뮤니컨트의 비디오 싱크 채널로 스트리밍되고 있는 비디오 데이터가 스크린상에서 디스플레이되는 때를 표시하는 IsWatching 속성
ㆍ 커뮤니컨트의 채팅 채널에 대한 입력 박스로 사용자가 능동적으로 타이핑하는 때를 표시하는 IsTyping 속성
ㆍ 애플리케이션 공유 데이터가 커뮤니컨트의 애플리케이션 공유 비디오 싱크 채널상에서 커뮤니컨트로 스트리밍되고 있는 때를 표시하는 HasApplicationShareFocus 속성
ㆍ 커뮤니컨트의 웹캠 비디오 소스 채널이 개방되는 때를 표시하는 HasWebCamOn 속성
ㆍ 커뮤니컨트의 클라이언트 네트워크 노드가 커뮤니컨트가 커뮤니컨트의 채팅 채널을 주목한다고 표시하는 때를 표시하는 HasChatInputFocus 속성
ㆍ Viewer 패인(pane)에서 커뮤니컨트가 어떤 객체를 보고 있는지를 표시하는 ObjectOfFocus 속성
5. 가상 영역
일부 실시예에서, 플랫폼은 가상 영역의 인스턴스에 의해 정의되는 통신 콘텍스트에서 네트워크 노드와의 실시간 접속을 관리한다. 가상 영역 인스턴스는 추상적 좌표(가령, 관련 컴퓨터 데이터 파일 또는 소프트웨어 애플리케이션에서 또는 고객 서비스 데이터베이스가 영역인 실시예에서, 위치에 의해 정의되는 좌표, 데이터베이스의 각 기록이 존을 구성함)에 대해 정의되는 추상적 가상 공간에 대응할 수 있다. 이와 달리, 가상 영역 인스턴스는 특정 시각화와 연관되는 1차, 2차 또는 3차원 기하구조적 좌표에 대해 정의되는 시각적 가상 공간에 대응할 수 있다. 추상적 가상 영역은 각 시각화와 연관될 수도 있고 아닐 수도 있는데, 시각적 가상 영역은 각 시각화와 연관된다.
도 12는 영역 기반 서버 애플리케이션(310)(이하 "가상 영역 애플리케이션")에 따른 가상 영역(308)에서 제 1 및 제 2 클라이언트 노드(12, 14)의 세션을 관리하는 네트워크 인프라스트럭쳐 서비스 환경(306)을 포함하는 네트워크 통신 환경(10)(도 1 참조)의 실시예(300)의 도면이다. 가상 영역 애플리케이션(310)은 가상 영역(308)에 의해 호스팅되며 가상 영역(308)의 기술(description)을 포함한다. 제 1 및 제 2 클라이언트 네트워크 노드(12, 14)에서 동작하는 통신 애플리케이션(26, 32)는 네트워크 인프라스트럭쳐 서비스 환경(306)으로부터 수신되는 데이터에 따라 가상 영역(308)의 개별적인 시야을 제공하며, 커뮤니컨트로부터 명령을 수신하고 커뮤니컨트들 사이에서 실시간 통신을 향상시키는 공간 인터페이스를 제공하기 위한 각자의 인터페이스를 제공한다. 전형적으로, 커뮤니컨트는 아바타에 의해 가상 영역(308)에서 표현되는데, 이는 전형적으로 각자의 네트워크 노드에서 커뮤니컨트에 의해 입력되는 명령에 응답하여 가상 영역(308) 주위를 이동한다. 전형적으로, 가상 영역(308)의 각 커뮤니컨트의 시야는 커뮤니컨트의 아바타의 관점으로부터 제공되어, 커뮤니컨트가 체험하는 몰입 레벨을 증가시킨다. 전형적으로, 각 커뮤니컨트는 자신의 아바타 주위의 가상 영역(308)의 어떤 부분을 볼 수 있다. 일부 실시예에서, 통신 애플리케이션(26, 32)은, 가상 영역(308)의 커뮤니컨트의 아바타의 위치에 기초하여, 제 1 및 제 2 클라이언트 네트워크 노드(12, 14)와, 가상 영역(308)을 공유하는 다른 네트워크 노드 사이에 실시간 데이터 스트림 접속을 수립한다.
전형적으로, 네트워크 인프라스트럭쳐 서비스 환경(306)은, 클라이언트 노드(12, 14)와 다른 네트워크 노드 사이의 네트워크 접속을 수립하고 관리하는 과정에서, 통신 애플리케이션(26, 32)과 함께 동작하는 하나 이상의 네트워크 인프라스트럭쳐 서비스를 포함한다(도 1 및 18 참조). 네트워크 인프라스트럭쳐 서비스는 하나의 네트워크 노드상에서 실행될 수도 있고 다수의 네트워크 노드에 걸쳐 분배될 수도 있다. 전형적으로, 네트워크 인프라스트럭쳐 서비스는 하나 이상의 전용 네트워크 노드(가령, 라우팅 및 스위칭과 같은 하나 이상의 에지 서비스를 수행하는 서버 컴퓨터 또는 네트워크 디바이스)상에서 실행된다. 그러나, 일부 실시예에서, 네트워크 인프라스트럭쳐 서비스 중 하나 이상은 커뮤니컨트의 네트워크 노드 중 적어도 하나에서 실행된다. 네트워크 인프라스트럭쳐 서비스 환경(306)의 실시예에 포함되는 네트워크 인프라스트럭쳐 서비스 중에는 계정 서비스, 보안 서비스, 영역 서비스, 만남 서비스(rendezvous service) 및 상호작용 서비스가 있다.
계정 서비스
계정 서비스는 가상 환경에 대한 커뮤니컨트 계정을 관리한다. 또한, 계정 서비스는 클라이언트 네트워크 노드가 네트워크 인프라스트럭쳐 서비스 중 하나에 자신들을 인증하기 위해 사용하는 인증 토큰의 생성 및 발행을 관리한다.
보안 서비스
보안 서비스는 가상 환경의 자산 및 기타 리소스로의 커뮤니컨트의 액세스를 제어한다. 전형적으로, 보안 서비스에 의해 구현되는 액세스 제어 방법은 (올바른 기능 또는 허가를 갖는 개체로 액세스가 승인되는) 기능 및 (리스트상에 존재하는 아이덴티티를 갖는 개체로 액세스가 승인되는) 액세스 제어 리스트 중 하나 이상에 기초한다. 특정 커뮤니컨트가 리소스로의 액세스를 승인받은 후, 이 커뮤니컨트는 전형적으로 다른 네트워크 인프라스트럭쳐 서비스에 의해 제공되는 기능을 사용하여 네트워크 통신 환경(300)에서 상호작용한다.
영역 서비스
영역 서비스는 가상 영역을 관리한다. 일부 실시예에서, 영역 서비스는 제한 세트(312)를 겪게 되는 가상 영역 애플리케이션(308)에 따라서 제 1 및 제 2 클라이언트 네트워크 노드(12, 14)에서 동작하는 통신 애플리케이션(26, 32)를 원격으로 구성한다(도 12 참조). 전형적으로, 제한(312)은 가상 영역으로의 액세스에 대한 제어를 포함한다. 전형적으로, 액세스 제어는 (올바른 기능 또는 허가를 갖는 커뮤니컨트 또는 클라이언트 노드로 액세스가 승인되는) 기능 및 (리스트상에 존재하는 아이덴티티를 갖는 커뮤니컨트 또는 클라이언트 노드로 액세스가 승인되는) 액세스 제어 리스트 중 하나 이상에 기초한다.
또한, 영역 서비스는 개체를 요청하는 기능을 겪는 가상 영역과 연관되는 네트워크 접속을 관리하고, 가상 영역에 대한 전체적 상태 정보를 관리하며, 가상 영역(308)에 의해 정의되는 콘텍스트에서 공유되는 통신 세션에 참가하는 클라이언트 네트워크 노드에 대한 데이터 서버로서 기능한다. 전체적 상태 정보는 가상 영역 및 가상 영역에서 각 위치에 존재하는 모든 객체의 리스트를 포함한다. 영역 서비스는 클라이언트 네트워크 노드를 구성하는 인스트럭션을 송신한다. 또한, 영역 서비스는 통신 세션에 합류하려고 요청하는 다른 클라이언트 네트워크 노드에 초기화 정보를 등록하고 전송한다. 이 프로세스에서, 영역 서비스는 가상 영역 애플리케이션(310)에 따라 각 합류하는 클라이언트 네크워크 노드에 클라이언트 네트워크 노드상에 가상 영역(308)을 렌더링하기 위해 필요한 구성요소(가령, 플러그인) 리스트를 전송할 수 있다. 또한, 영역 서비스는 통신 장애가 발생하면 클라이언트 네트워크 노드가 전체적 상태와 동기화할 수 있음을 보장한다. 전형적으로, 영역 서비스는 가상 영역과 연관되는 통치 규칙을 통해 가상 영역과의 커뮤니컨트 상호작용을 관리한다.
만남 서비스
만남 서비스는 (가령, 접속 핸들의 분배를 관리함으로써) 프레즌스 정보의 수집, 저장 및 분배를 관리하고, 요청하는 개체의 기능을 겪게 되는 서로와의 통신을 위한 네트워크 노드에 대한 메커니즘을 제공한다. 전형적으로, 만남 서비스는 프레즌스 데이터베이스에 프레즌스 정보를 저장한다. 전형적으로, 만남 서비스는 커뮤니컨트 프라이버시 선호도를 통해 서로와의 커뮤니컨트 상호작용을 관리한다.
상호작용 서비스
상호작용 서비스는 커뮤니컨트들 사이의 상호작용의 기록(48)을 포함하는 관계 데이터베이스(46)를 관리한다. 커뮤니컨트들 사이의 모든 상호작용에 대해, 네트워크 인프라스트럭쳐 서비스 환경(306)의 하나 이상의 서비스(가령, 영역 서비스)는 상호작용 서비스에 상호작용 데이터를 전송한다. 이에 응답하여, 상호작용 서비스는 하나 이상의 각 상호작용 기록을 생성하고 이를 관계 데이터베이스에 저장한다. 각 상호작용 기록은 한 쌍의 커뮤니컨트들 사이의 상호작용 콘텍스트를 기술한다. 예를 들어, 일부 실시예에서, 상호작용 기록은 커뮤니컨트마다에 대한 식별자, 상호작용 장소에 대한 식별자(가령, 가상 영역 인스턴스), 상호작용 장소의 계층에 대한 기술(가령, 상호작용 공간이 더 큰 영역에 어떻게 관련되는지에 대한 설명), 상호작용의 시작 및 종료 시점, 상호작용 동안에 공유되거나 기록되는 모든 파일 및 기타 데이터 스트림 리스트를 포함한다. 따라서, 각 실시간 상호작용마다, 상호작용 서비스는 상호작용이 언제 발생했는지, 어디서 발생했는지, 커뮤니컨트가 연관된 관점에서 상호작용 동안에 무엇(가령, 입장 및 퇴장)이 발생했는지, 활성화/비활성화되는 객체, 및 공유된 파일을 추적한다.
또한, 상호작용 서비스는 요청하는 개체의 기능을 겪는 관계 데이터베이스(46)에 대한 질의를 지원한다. 상호작용 서비스는 가상 영역에 기초하여 분류된 순서대로 상호작용 데이터베이스 기록에 대한 질의 결과를 제공한다. 질의 결과는 커뮤니컨트가 어느 가상 영역에서 누구를 만났는지의 콘택트의 빈도 분류 외에도, 가상 영역에 상관없이 커뮤니컨트가 누구를 만났는지에 대한 분류 및 커뮤니컨트가 가장 자주 방문하는 가상 영역을 드라이브하기 위해 사용될 수 있다. 또한, 질의 결과는, 관계에 기초하여 소정 작업을 자동화하는 발견적 시스템의 일부로서 애플리케이션 개발자에 의해 사용될 수 있다. 이러한 종류의 발견적 시스템의 예로서, 특정 가상 영역을 5회 이상 방문한 커뮤니컨트가 디폴트로 노크 없이 입장할 수 있게 하는 시스템, 또는 특정 시점에 한 영역에 존재했던 커뮤니컨트가 동일한 시점에 동일한 영역에 존재했던 다른 커뮤니컨트에 의해 생성된 파일을 수정하고 삭제할 수 있게 허용하는 시스템이 있다. 관계 데이터베이스(36)에 대한 질의는 다른 검색과 조합될 수 있다. 관계 데이터베이스에 대한 질의는, 예를 들어, 네트워크 인프라스트럭쳐 서비스 환경(306)의 도메인 외부인 통신 시스템(가령, Skype, Facebook 및 Flickr)을 사용하는 콘택트와의 상호작용을 위해 생성되는 콘택트 이력 데이터에 대한 질의와 조합될 수 있다.
전형적으로, 통신 애플리케이션(26) 및 네트워크 인프라스트럭쳐 서비스 환경(306)은 가상 영역의 인스턴스에 의해 정의되는 통신 콘텍스트에서 네트워크 노드와의 실시간 접속을 관리한다. 가상 영역 인스턴스는 추상적 좌표에 대해 정의되는 추상적(비 기하학적) 가상 공간에 대응할 수 있다. 이와 달리, 가상 영역 인스턴스는 특정 시각화와 연관되는 1차, 2차 또는 3차원 기하구조적 좌표에 대해 정의되는 시각적 가상 공간에 대응할 수 있다. 추상적 가상 영역은 각 시각화와 연관될 수도 있고 아닐 수도 있는데, 시각적 가상 영역은 각 시각화와 연관된다.
전술한 바와 같이, 전형적으로 커뮤니컨트는 연관된 시각화를 갖는 가상 영역에서 각 아바타(가령, 요정)로 표현된다. 아바타는 각 네트워크 노드의 커뮤니컨트에 의해 입력되는 명령에 응답하여 가상 영역 주위에서 이동한다. 일부 실시예에서, 전형적으로 가상 영역 인스턴스의 커뮤니컨트의 시야는 커뮤니컨트의 아바타의 관점으로부터 제공되며, 각 커뮤니컨트는 전형적으로 자신의 아바타 주위의 시각적 가상 영역의 일부를 볼 수 있어서, 커뮤니컨트가 체험하는 몰입의 레벨을 증가시킨다.
전형적으로, 가상 영역은 가상 영역에서 아바타에 의해 표현되는 네트워크 노드들 사이의 실시간 데이터 스트림의 스위칭을 통치하는 각 규칙과 연관되는 하나 이상의 존을 포함한다. 스위칭 규칙은, 가상 영역의 존 내의 커뮤니컨트의 아바타의 위치에 기초하여, 네트워크 노드 각각에서 실행되는 로컬 접속 프로세스가 다른 네트워크와의 통신을 어떻게 수립하는지를 지시한다. 가상 영역은 전형적으로 가상 영역의 기하구조적 요소의 기술 및 하나 이상의 규칙을 포함하는 사양에 의해 정의되어, 스위칭 룰 및 통치 규칙을 포함한다. 스위칭 룰은 네트워크 노드들 사이의 실시간 스트림 접속을 통제한다. 통치 규칙은 가상 영역 자체, 가상 영역 내의 지역 및 가상 영역 내의 객체와 같은 리소스로의 커뮤니컨트의 액세스를 제어한다. 일부 실시예에서, 가상 영역의 기하구조적 요소는 COLLADA - Digital Asset Schema Release 1 .4.1, 2006년 4월 사양(http://www.khronos.org/collada/로부터 이용 가능)에 따라 설명되며, 스위칭 룰은 미국 특허 출원 11/923,629 및 11/923,634에 개시된 COLLADA Streams Reference 사양에 따라 XML(extensible markup language) 텍스트 포맷(이하 VSDL(virtual space description format))을 사용하여 설명된다.
시각적 가상 영역의 기하구조적 요소는 전형적으로 물리적 기하구조 및 가상 영역의 충돌 기하구조를 포함한다. 물리적 기하구조는 가상 영역의 형상을 기술한다. 물리적 기하구조는 전형적으로 삼각형, 사각형 또는 다각형의 표면으로부터 형성된다. 컬러 및 텍스쳐는 물리적 기하구조로 맵핑되어 가상 영역에 대한 보다 현실적인 모습을 생성한다.
조명 효과가 제공될 수 있는데, 예를 들어, 시각적 기하구조상으로 빛을 칠하고 빛 주위의 텍스쳐, 컬러 또는 강도를 수정하여 제공될 수 있다. 충돌 기하구조는 물체가 가상 영역에서 이동할 수 있는 방식을 결정하는 비가시적인 표면을 기술한다. 충돌 기하구조는 시각적 기하구조와 일치하거나, 시각적 기하구조의 보다 간단한 추정에 대응하건, 가상 영역 설계자의 맞춤 요구조건에 관련될 수 있다.
전형적으로, 스위칭 룰은 가상 영역의 위치의 관점에서 실시간 데이터 스트림의 소스 및 싱크를 접속하는 조건의 기술을 포함한다. 각 룰은 전형적으로 룰이 적용되는 실시간 데이터 스트림 종류 및 룰이 적용되는 가상 영역의 위치를 정의하는 속성을 포함한다. 일부 실시예에서, 선택적으로 룰의 각각은 요구되는 소스의 역할, 요구되는 싱크의 역할, 스트림의 우선순위 레벨 및 요구되는 스트림 핸들링 토폴로지를 지정하는 하나 이상의 속성을 포함할 수 있다. 일부 실시예에서, 가상 영역의 특정 부분에 대해 정의되는 명시적 스위칭 룰이 존재하지 않는 경우, 하나 이상의 암시적 또는 디폴트 스위칭 룰이 그 가상 영역의 그 일부에 적용될 수 있다. 하나의 예시적인 디폴트 스위칭 룰은 한 영역 내의 모든 소스를 모든 호환 가능한 싱크로 접속시켜서 정책 룰을 겪게 하는 것이다. 정책 룰은 클라이언트 노드들 사이의 모든 접속에 대해 전체적으로 적용되거나, 개별적인 클라이언트 노드와의 접속에만 적용될 수 있다. 정책 룰의 예는 가상 영역에서 서로의 사전 정의된 거리(또는 반경) 내에 존재하는 각 물체와 연관되는 호환 가능한 싱크와의 소스의 접속만을 허용하는 근접성 정책 룰이다.
일부 실시예에서, 통치 규칙은 누가 가상 영역으로의 액세스를 갖는지, 누가 콘텐츠로의 액세스를 갖는지, 가상 영역의 콘텐츠로의 액세스의 범위는 무엇인지(가령, 사용자가 콘텐츠로 무엇을 할 수 있는지), 이들 콘텐츠에 액세스하는 후속 결과(가령, 청각 로그와 같은 기록 유지 및 지불 요구조건)는 무엇인지를 제어하는 가상 영역에 연관된다. 일부 실시예에서, 전체 가상 영역 또는 가상 영역의 존은 "통치 그물"과 연관된다. 일부 실시예에서, 통치 그물은 미국 특허 출원 11/923,629 및 11/923,634에 개시된 존 그물의 구현과 유사한 방식으로 구현된다. 통치 그물은 소프트웨어 애플리케이션 개발자가 가상 영역 또는 가상 영역의 존과 통치 규칙을 연관시킬 수 있게 한다. 이는 가상 영역에서 모든 파일에 대한 개별적인 허가를 생성할 필요를 없애고, 동일한 도큐먼트를 콘텍스트에 따라 상이하게 처리할 필요성이 있을 때 발생할 수 있는 복잡성을 처리할 필요를 없앤다.
일부 실시예에서, 가상 영역은 디지털 권한 관리(DRM) 기능과 가상 영역의 하나 이상의 존을 연관시키는 통치 그물(governance mesh)과 연관된다. DRM 기능은 가상 영역 내의 하나 이상의 가상 존 또는 가상 영역 내의 객체 중 하나 이상으로의 액세스를 제어한다. DRM 기능은 커뮤니컨트가 가상 영역 내의 통치 그물 경계를 지날 때마다 트리거된다. DRM 기능은 트리거링 동작이 허용되는지를 판단하고, 허용되는 경우에는 허용되는 동작의 범위가 무엇인지. 요금이 필요한지 및 청각 기록이 생성될 필요가 있는지를 판단한다. 가상 영역의 예시적 구현에서, 연관된 통치 그물은, 커뮤니컨트가 가상 영역에 입장할 수 있는 경우에 가상 영역과 연관되는 도큐먼트 전부에 대한 동작을 수행할 수 있도록 구성되는데, 도큐먼트를 조작하는 동작, 도큐먼트를 보는 동작, 도큐먼트를 다운로드하는 동작, 도큐먼트를 삭제하는 동작, 도큐먼트를 수정하는 동작 및 도큐먼트를 다시 업로드하는 동작을 포함한다. 이 방식에서, 가상 영역은 가상 영역에 의해 정의된 콘텍스트에서 공유되고 논의된 정보에 대한 저장소가 될 수 있다.
가상 영역의 사양에 관한 추가적인 세부사항은, 미국 특허 출원 12/418,243(2009년 4월 3일 출원), 11/923,629(2007년 10월 24일 출원) 및 11/923,634(2007년 10월 24일 출원)에 개시되어 있다.
도 13은 컴퓨터 시스템(360)에 의해 구현되는 예시적 네트워크 노드의 실시예를 도시하고 있다. 컴퓨터 시스템(360)은 디스플레이 모니터(362), 컴퓨터 마우스(364), 키보드(366), 스피커(368, 370) 및 마이크로폰(372)을 포함한다. 디스플레이 모니터(362)는 그래픽 사용자 인터페이스(374)를 디스플레이한다. 그래픽 사용자 인터페이스(374)는 다수의 윈도우, 아이콘 및 포인터(376)를 포함할 수 있는 윈도우 기반 그래픽 사용자 인터페이스이다. 도시된 실시예에서, 그래픽 사용자 인터페이스(374)는 미술관을 나타내는 3차원 시각화와 연관되는 공유되는 가상 영역(378)의 2차원적 도시를 나타낸다. 커뮤니컨트는 각자의 아바타(380, 382, 384)에 의해 가상 영역(378)에 표현되는데, 이들 각각은 가상 영역(378)의 콘텍스트에서 각자의 역할(가령, 큐레이터, 아티스트 및 방문객)을 가질 수 있다.
전형적으로, 가상 영역(378)은 가상 영역(378)에서 아바타(380 내지 384)에 의해 표현되는 네트워크 노드들 사이의 실시간 데이터 스트림의 스위칭을 통치하는 각 규칙과 연관되는 존(386, 388, 390, 392, 394)을 포함한다. (전형적인 통신 세션 동안, 도 13에 도시된 존(386 내지 394)의 경계를 구분하는 점선 라인은 커뮤니컨트에게 가시적이지 않지만, 이러한 존 경계와 연관되는 시각적 큐가 존재할 수 있다.) 스위칭 규칙은, 가상 영역(378)의 존(386 내지 394) 내의 커뮤니컨트의 아바타(380 내지 384)의 위치에 기초하여, 네트워크 노드 각각에서 실행되는 로컬 접속 프로세스가 다른 네트워크와의 통신을 어떻게 수립하는지를 지시한다.
플랫폼의 일부 실시예는 소프트웨어 애플리케이션 설계자가 소프트웨어 애플리케이션 또는 컴퓨터 데이터 파일의 위치의 의미론을 정의할 수 있게 한다. 각각의 접속 규칙과의 연관을 통하여, 이들 위치 정의는, 예를 들어, 가상 영역으로의 접속, 가상 영역으로의 진입, 커뮤니컨트 및 실시간 데이터 스트림의 소스 또는 싱크로의 접속 및 커뮤니컨트, 네트워크 리소스 및 네트워크 서비스에 관련되는 프레즌스 데이터의 결정을 구동하는 데에 사용될 수 있다.
"접속 규칙"은 가상 영역 및 접속 타겟 중 적어도 하나를 지정하며, 네트워크 접속 초기화에서 적합하게 구성되는 소프트웨어 애플리케이션 또는 서비스의 동작을 안내하는 하나 이상의 선택적 접속 조건 세트를 포함한다. "접속 타겟"은 네트워크 노드의 커뮤니컨트, 리소스 또는 서비스와의 네트워크 접속을 수립하기 위해 사용될 수 있는 식별자 또는 접속 핸들(가령, URI(uniform resource identifier))이다. "접속 조건"은 네트워크 접속의 수립, 네트워크 접속의 관리 또는 네트워크 접속을 거쳐 전달되는 데이터의 처리에 영향을 주는 하나 이상의 파라미터를 지정한다. 예를 들어, 접속 조건은 네트워크 접속이 시도되거나 수립되기 전에 만족되어야 하는 동작 환경에 대한 예측을 기술할 수 있다.
컴퓨터 데이터 파일은 소프트웨어 애플리케이션에 의한 사용을 위한 데이터(가령, 소프트웨어 애플리케이션에 대한 입력으로 사용되는 정보 및/또는 출력으로 기록되는 정보)를 내구성 있게 저장하는 임의의 정보 블록이다. 컴퓨터 데이터 파일은 임의의 종류의 소프트웨어 애플리케이션과 사용하기 위해 설계될 수 있는데, 고객 및 비즈니스 소프트웨어 애플리케이션을 포함하며, 임의의 종류의 개방 또는 폐쇄 데이터 파일 포맷에 저장될 수 있다. 컴퓨터 데이터 파일은, 컴퓨터 데이터 파일에 저장되는 데이터의 종류 및 목적과, 이를 생성하는 데에 사용되는 소프트웨어에 콘텐츠 및 구조가 적어도 부분적으로 기초하는 하나 이상의 구성요소로 이루어진다. 예를 들어, 소프트웨어 애플리케이션을 공개하는 데스크톱과 사용하기 위한 컴퓨터 데이터 파일은 전형적으로, 문장 내에 배열되는 텍스트, 단락, 제목 및 블록, 그림, 테이블, 행/열, 페이지, 드로잉 시트(drawing sheet), 프리젠테이션 슬라이드 및 스프레드시트와 같은 사전 정의된 섹션 또는 데이터 카테고리와, 보안 특징 또는 인증 특징과 같은 기능 특징에 대응하는 구성요소를 갖는다. 소프트웨어 애플리케이션 개발자 또는 최종 사용자는 컴퓨터 데이터 파일의 하나 이상의 구성요소로 구성되는 컴퓨터 데이터 파일의 하나 이상의 섹션을 정의할 수 있다. 섹션은 전체 컴퓨터 데이터 파일 또는 컴퓨터 데이터 파일의 일부를 포함할 수 있고, 전체적으로 또는 부분적으로 다른 섹션에 중복될 수 있다.
도 14a는 데이터 파일 콘테이너(597)를 포함하는 예시적 컴퓨터 데이터 파일(596)을 도시하고 있는데, 구성요소(A, B, C, D)와, 구성요소 B의 세부구성요소(B(1)), B(2) 및 B(3))와, 구성요소 C의 세부구성요소(C(1), C(2) 및 C(3))의 계층적 배열을 유지한다. 컴퓨터 데이터 파일(596)은 3개의 섹션(S1, S2, S3)로 구분되는데, 이들 각각은 컴퓨터 데이터 파일(596)의 구성요소 및 세부구성요소 중 하나 이상과 관련된다. 예를 들어, 섹션(S1)은 세부구성요소(B(1))과 연관되고, 섹션(S2)은 구성요소(C)과 연관되고, 섹션(S3)은 세부구성요소(B(3)) 및 구성요소(C)와 연관된다.
컴퓨터 데이터 파일의 구성요소와 섹션 사이의 연관은 다양한 상이한 데이터 구조 포맷으로 저장될 수 있다. 예를 들어, 도 14b는 컴퓨터 데이터 파일(596)의 섹션을 정의하는 기록을 포함하는 예시적 컴퓨터 데이터 파일 섹션 정의 데이터베이스(598)을 도시하고 있다. 섹션 정의 기록은 기록 식별자 및 컴퓨터 데이터 파일(596)의 식별자에 의해 인덱싱된다. 일부 실시예에서, 플랫폼은, 소프트웨어 애플리케이션 개발자가 컴퓨터 데이터 파일 섹션 정의 데이터베이스(598)에 기록을 생성하기 위해 최종 사용자에 의해 사용될 수 있는 하나 이상의 다이얼로그 박스를 갖는 소프트웨어 애플리케이션을 설계하도록 하는 기능을 제공한다.
소프트웨어 애플리케이션은 인스트럭션이 저장 매체(가령, 하드드라이브, 메모리 또는 RAM)에 로딩된 후에 컴퓨터가 해석하고 실행할 수 있는 인스트럭션 세트이다. 소프트웨어 애플리케이션은, 콘텐츠 및 구조가 소프트웨어 애플리케이션의 기능 및 설계 아키텍쳐에 적어도 부분적으로 의존하는, 하나 이상의 논리 구성요소(가령, 하드와이어드, 시간적, 콘텍스츄얼, 테이블 룩업 구성요소) 또는 기능 구성요소(가령, 기능 또는 진입 지점)로 이루어진다. 예를 들어, 일부 소프트웨어 애플리케이션은 다수의 구성요소로 구성되는 구성요소로 나뉜 아키텍처를 사용하는데, 이들 각각은 별도의 라이브러리에 포함될 수 있으며, 메인 실행(executable)에 의해 호스팅될 수 있게 하는 인터페이스 세트를 노출할 수 있다. 소프트웨어 애플리케이션 개발자는 소프트웨어 애플리케이션의 하나 이상의 구성요소로 이루어지는 소프트웨어 애플리케이션의 하나 이상의 섹션을 정의할 수 있다. 섹션은 전체 소프트웨어 애플리케이션 또는 소프트웨어 애플리케이션의 일부를 포함할 수 있고, 전체적으로 또는 부분적으로 다른 섹션에 중복될 수 있다.
도 15a는 애플리케이션 콘테이너(600)를 포함하는 예시적 소프트웨어 애플리케이션(599)을 도시하고 있는데, 구성요소(E, F)와, 구성요소 E의 세부구성요소(E(1)), E(2) 및 E(3))와, 구성요소 F의 세부구성요소(F(1), F(2))와, 세부구성요소(F(1))의 세부구성요소(F(i) 및 F(ii))와, 세부구성요소(F(2))의 세부구성요소(F(iii))의 계층적 배열을 유지한다 소프트웨어 애플리케이션(600)는 6개의 섹션(S4, S5, S6, S7, S8, S9)로 분할되며, 이들 각각은 소프트웨어 애플리케이션(599)의 구성요소 및 세부구성요소 중 하나 이상과 연관된다. 예를 들어, 섹션(S4)은 세부구성요소(B(1))과 연관되고, 섹션(S5)은 구성요소(F)과 연관되고, 섹션(S6)은 세부구성요소(F(1))과 연관되고, 섹션(S7)은 세부구성요소(F(2))와 연관되며, 섹션(S8)은 세부구성요소(F(ii) 및 F(iii))과 연관되고, 섹션(S9)는 세부구성요소(E(3) 및 F(i))과 연관된다.
소프트웨어 애플리케이션의 구성요소와 섹션 사이의 연관은 다양한 상이한 데이터 구조 포맷으로 저장될 수 있다. 예를 들어, 도 15b는 소프트웨어 애플리케이션(599)의 섹션을 정의하는 기록을 포함하는 예시적 소프트웨어 애플리케이션 섹션 정의 데이터베이스(602)를 도시하고 있다. 섹션 정의 기록은 기록 식별자 및 소프트웨어 애플리케이션(599)의 식별자에 의해 인덱싱된다. 일부 실시예에서, 플랫폼은, 소프트웨어 애플리케이션 개발자가 소프트웨어 애플리케이션 섹션 정의 데이터베이스(602)에 데이터베이스 기록을 생성할 수 있게 하는 하나 이상의 다이얼로그 박스를 제공한다.
도 16a 및 16b를 참조하면, 일부 실시예에서, 컴퓨터 데이터 파일 또는 소프트웨어 애플리케이션의 하나 이상의 섹션이 가상 영역의 각 존과 연관된다.
예를 들어, 일부 실시예에서, 컴퓨터 데이터 파일 또는 소프트웨어 애플리케이션의 하나 이상의 섹션은 1차원 또는 다차원 추상 토폴로지 공간의 좌표에 대해 정의되는 추상적 가상 영역의 각 존과 연관되는데, 토폴로지 공간은 연관된 컴퓨터 데이터 파일 또는 소프트웨어 애플리케이션에서의 위치에 일 대 일 맵핑을 갖는다. 예를 들어, 도 16a는 2차원 토폴로지 공간의 각 좌표로의 소프트웨어 애플리케이션(599)의 섹션(S4 내지 S9)의 예시적 맵핑을 도시하고 있는데, 이 토폴로지 공간은 소프트웨어 애플리케이션(599)의 각 구성요소 및 세부구성요소에 직접적으로 맵핑하는 좌표를 갖는다.
다른 실시예에서, 컴퓨터 데이터 파일 또는 소프트웨어 애플리케이션의 하나 이상의 섹션은 하나 이상의 시각적 가상 영역의 각 존과 관련되며, 이들 각각은 각 시각화와 연관되는 1차원, 2차원 또는 3차원 기하학적 좌표에 대해 정의될 수 있다. 예를 들어, 도 7b는 소프트웨어 애플리케이션(599)의 섹션(S4 내지 S9)의 2개의 시각적 가상 영역(104 및 78)의 각 좌표로의 예시적 맵핑을 도시하고 있다. 이 예에서, 섹션(S4)는 회의실의 3차원 시각화와 연관되는 시각적 가상 영역(604)과 연관되며, 섹션(S5 내지 S9)는 미술관의 3차원 시각화와 연관되는 시각적 가상 영역(378)의 각 존과 연관된다.
소프트웨어 애플리케이션 또는 컴퓨터 데이터 파일에서의 위치의 의미론을 정의하는 시스템 및 방법에 관한 추가적인 세부사항은 2009년 12월 4일자로 출원된 미국 특허 출원 12/631,008에 개시되어 있다.
도 17은 그래픽 사용자 인터페이스(610)의 실시예를 도시하고 있는데, 데이터 파일(A) 및 소프트웨어 애플리케이션(B)에 의해 정의되는 상이한 통신 콘텍스트에 걸쳐 타겟 커뮤니컨트(이 예에서는 "Art")의 콘택트 일부 또는 전부의 실시간 이용 가능성 및 활동을 도시하고 있다. 소프트웨어 애플리케이션(B)는 고객 및 비즈니스 소프트웨어 애플리케이션을 포함하는 임의의 종류의 소프트웨어 애플리케이션(가령, Microsoft®Outlook®같은 개인 정보 관리자 소프트웨어 애플리케이션, Microsoft® Word®소프트웨어 애플리케이션과 같은 도큐먼트 프로세싱 소프트웨어 애플리케이션과, Microsoft®Excel®소프트웨어 애플리케이션과 같은 스프레드시트 소프트웨어 애플리케이션과, Microsoft®Internet Explorer®소프트웨어 애플리케이션과 같은 웹 브라우저 소프트웨어 애플리케이션)일 수 있다. 일 실시예에서, Art가 멤버인 각 데이터 파일 및 소프트웨어 애플리케이션(B)에 대해 그리고 Art와 Art의 콘택트 중 적어도 하나가 존재하는 것에 관해, 서버 애플리케이션의 멤버는 데이터 파일 또는 소프트웨어 애플리케이션에 대해 그 프레즌스의 상태에 의해 분할된다. 이 예에서, Art는 Data File(A) 및 Software Application(B)의 멤버이다. 따라서, Data File(A)의 멤버는 Present 그룹(612) 및 Not Present 그룹(614)로 분류되며, Software Application(B)의 멤버는 "Zone of Co-Presence" 그룹(616), Present 그룹(618) 및 Not Present 그룹(620)으로 분류되며, 존은 Data File(A) 및 Software Application(B)의 각 섹션에 대응한다. 이 방식으로, Art는 자신이 멤버인 데이터 파일 및 소프트웨어 애플리케이션 각각에 누가 존재하며 어느 멤버가 존재하지 않는지를 쉽게 시각화할 수 있다.
일부 실시예에서, 통신 애플리케이션(26, 32)의 각각은 또한 공간적 가상 통신 환경과 사용자를 인터페이싱하는 그래픽 내비게이션 및 상호작용 인터페이스(이하 "시커 인터페이스(seeker interface)"를 포함한다. 시커 인터페이스는 가상 환경에서 사용자가 내비게이팅할 수 있게 하는 내비게이션 콘트롤과, 가상 통신 환경에서 사용자가 다른 커뮤니컨트들과의 자신의 상호작용을 제어할 수 있게 하는 상호작용 콘트롤을 포함한다. 내비게이션 및 상호작용 콘트롤은 전형적으로 임의의 종류의 입력 디바이스를 사용하여 구성되는 사용자 선택에 응답하며, 입력 디바이스는 컴퓨터 마우스, 터치 패드, 터치 스크린 디스플레이, 키보드 및 비디오 게임 콘트롤러를 포함한다. 시커 인터페이스는 각 클라이언트 네트워크 노드에서 동작하는 애플리케이션이다. 시커 인터페이스는 사용자가 계속 들고 있을 수 있는 소형이며 경량의 인터페이스이고 사용자의 데스크톱에서 항상 실행된다. 시커 인터페이스는 사용자가 가상 영역 애플리케이션을 론칭하게 하며 사용자에게 실시간 콘택트 및 실시간 협력 장소( 또는 영역)으로의 즉각적인 액세스를 제공한다. 시커 인터페이스는 하위 운영 시스템의 실시간 통신 애플리케이션 및/또는 실시간 통신 구성요소와 통합되어 시커 인터페이스가 다른 네트워크 노드와의 실시간 통신을 개시하고 수신할 수 있다. 가상 영역은 시커 인터페이스를 통해 사용자의 데스크톱과 통합되어, 사용자는 가상 환경 생성자(302)에 의해 생성되는 가상 환경으로 파일을 업로드할 수 있고, 가상 영역에 여전히 존재하면서 가상 환경과 무관하게 네이티브 클라이언트 소프트웨어 애플리케이션을 사용하여 가상 영역과 연관되는 저장된 파일을 사용할 수 있고, 보다 일반적으로 여러 애플리케이션 중 단 하나보다 다른 운영 시스템 기능과 유사한 동작 환경의 양태로서 가상 영역 내의 프레즌스 및 위치를 처리할 수 있다.
공간적 가상 통신 환경은 전형적으로 장소의 공간적 계층(이하 "위치") 및 객체로서 모델링될 수 있다. 공간적 계층은 상부 레벨로부터 하부 레벨에 이르는 정렬된 레벨 시퀀스를 포함한다. 공간 계층의 레벨 중 연속하는 레벨의 장소들 각각은 이전 레벨의 장소 각각에 포함된다. 공간 계층의 객체 각각은 장소 각각에 포함된다. 공간적 계층의 레벨은 전형적으로 지리적, 구조적 또는 도시적 메타포(urban metaphor)와 일치하는 각 시각화와 연관되며, 이에 대응되게 명명된다. 각 가상 영역의 존은 각 그물에 의해 정의되는데, 그 일부는 객체(가령, 뷰 스크린 객체 및 회의 객체와 같은 아바타 및 프롭)를 포함할 수 있는 물리적 환경의 요소(가령, 건물과 관련되는 방 및 마당과 같은 공간)를 정의한다.
시커 인터페이스의 내비게이션 콘트롤은 장소 및 객체의 하위 공간 계층에 묶이는 내비게이션 모델에 따라 사용자가 가상 환경을 통한 경로를 지날 수 있게 한다. 네트워크 인프라스트럭쳐 서비스 환경(306)은 사용자가 지나가는 경로를 기록한다. 일부 실시예에서, 네트워크 인프라스트럭쳐 서비스 환경(306)은 사용자가 가상 영역을 통해 내비게이팅함에 따라 사용자에게 제공되는 가상 영역의 시간상으로 정렬된 리스트를 포함하는 이력을 기록한다. 각 시야는 전형적으로 가상 영역의 각 렌더링 가능한 존의 시야에 대응한다. 이들 실시예에서, 내비게이션 콘트롤은 사용자가 이력의 선택된 존으로 이동할 수 있게 한다. 또한, 내비게이션 콘트롤은 가상 영역의 사용자의 현재 시야에 대응하는 공간적 계층에서의 위치를 보여주는 깊이 경로의 그래픽 표현을 포함한다. 일부 실시예에서, 깊이 경로의 그래픽 표현은 현재 시야 위의 가상 영역의 공간 계층적 모델에서 이전 레벨 각각의 시야로의 사용자 선택 가능한 링크를 포함한다. 시커 인터페이스의 상호작용 콘트롤은 사용자가 다른 커뮤니컨트와의 상호작용을 관리할 수 있게 한다. 사용자에 대해 이용 가능한 상호작용 옵션은 전형적으로 사용자가 프레즌스를 갖는 존에 의존한다. 일부 실시예에서, 특정 존에서 프레즌스를 갖는 커뮤니컨트에 대해 이용 가능한 상호작용 옵션은 그 존에서 프레즌스를 갖지 않는 다른 커뮤니컨트에 대해 이용 가능한 옵션과 상이하다. 세부사항의 레벨 및 사용자의 상호활동은 전형적으로 사용자가 특정 존에서 프레즌스를 갖는지 여부에 의존한다. 일 실시예에서, 사용자가 가상 영역 외부에 존재하면, 사용자에게는 가상 영역 내에서 발생하는 상호작용의 최소 세부사항 레벨(가령, 사용자는 평면도 개요, 배경 텍스쳐 및 그 영역의 시설을 볼 수 있지만 다른 커뮤니컨트가 그 영역에 존재하는지는 볼 수 없음)이 제공되고, 사용자가 가상 영역 내에 존재하지만 그 영역의 특정 존의 외부인 경우, 사용자에게는 그 특정 존 내에서 발생하는 상호작용의 중간 세부사항 레벨(가령, 사용자는 그 영역에 존재하는 다른 커뮤니컨트를 볼 수 있으며, 현재 상태의 시각화 - 말하기, 채팅 메시지 타이핑, 헤드폰 및 마이크로폰이 온 상태인지 - 를 볼 수 있고, 뷰 스크린 중 어느 것이 액티브인지를 볼 수 있음)이 제공되며, 사용자가 그 영역의 특정 존 내에 존재하면, 사용자에게는 특정 존과 관련하여 발생하는 상호작용의 전체 세부사항 레벨(가령, 사용자는 뷰 스크린상에서 공유되는 파일의 썸네일을 볼 수 있고, 그 영역의 다른 커뮤니컨트와 말하고 들을 수 있으며, 그 존의 커뮤니컨트에 의해 생성된 채팅 메시지의 로그의 요소를 볼 수 있음)이 제공된다. 일부 실시예에서, 가상 영역의 존과 연관되는 스위칭 룰 및 통치 규칙은 특정 존에서 프레즌스를 갖는 자와 갖지 않는 자를 네트워크 인프라스트럭쳐가 어떻게 구분할지를 제어한다.
도 18은 Viewer Pane(402)에서 Acme 가상 영역의 상부 또는 평면도를 제공하고 상호작용 옵션의 디폴트 세트를 사용자에게 제공하는 시커 인터페이스(400)의 실시예를 도시하고 있다. 도시된 실시예에서, 프레즌스는 가상 영역의 마당 존(404)에서 자동으로 수립되고, 사용자의 마이크로폰 및 디폴트 스피커(가령, 헤드폰)이 온 상태로 된다. 도 14에 도시된 평면도에서, 사용자는 원형 요정(406)에 의해 표현되며, Acme 가상 영역의 다른 사용자도 각각 원형 요정에 의해 표현된다. 사용자의 스피커의 상태는 사용자의 요정(406)상의 헤드폰 그래픽의 존재 여부에 의해 도시되는데, 스피커가 온 상태이면 헤드폰 그래픽이 존재하고, 스피커가 오프 상태이면 헤드폰 그래픽이 존재하지 않는다. 사용자의 마이크로폰의 상태는 사용자의 요정(406)의 마이크로폰 그래픽 및 사용자의 요정(406) 주위의 일련의 동심원의 존재 여부에 의해 표시되는데, 마이크로폰이 온 상태이면 마이크로폰 그래픽 및 동심원이 표시되고, 마이크로폰이 오프 상태이면 마이크로폰 그래픽 및 동심원이 표시되지 않는다. 헤드폰 그래픽, 동심원 및 마이크로폰 그래픽은 사용자의 사운드 플래이백 및 마이크로폰 디바이스의 상태의 시각적 알림(reminder)로서 기능한다.
시커 인터페이스는, 백워드 버튼(410), 포워드 버튼(412), 플레이스마크 버튼(placemark button, 414), 홈 버튼(416) 및 MySite 링크(419)부터 유래되며 이를 포함하는 하나 이상의 브래드크럼 링크(breadcrumb link, 418) 시리즈를 포함하는 툴바(480)를 포함한다. 브래드크럼 링크(418)는 연속적이며 사용자 선택 가능한 링크의 계층적 시퀀스에 대응한다. 연속적인 링크 각각은 각 연속적 레벨이 이전 레벨에 의해 포함되는 가상 영역의 계층적 모델의 각 레벨의 뷰에 대응한다. 도시된 실시예에서, 브래드크럼 링크(418)은 도 14에 도시된 West Conference 가상 영역의 현재 뷰에 대응하는 West Conference 링크(417)를 포함한다. 브래드크럼 링크(418)는 가상 환경의 상이한 레벨의 각 뷰로의 단일 링크 선택 액세스를 사용자에게 제공한다. 또한, 툴바(408)는 People Pane 버튼(420), Chat Pane 버튼(421), View Pane 버튼(423) 및 설정 버튼(422)를 포함한다.
My Site 버튼(425)은 View Pane(402)에서 사용자가 멤버인 영역의 리스트를 디스플레이한다. My Site 뷰의 사이트를 클릭하면 사용자가 타겟 영역을 내비게이팅하고 그곳에 이들이 존재하게 한다.
한 영역이 선택되거나 주목되면, People Pane 버튼(420)이 두 사람의 도식적 표현으로서 나타나고 "사람"으로 명명되며, 맴버 및 중재자들이 현재 영역에 관련된 사람들의 리스트, 멤버쉽의 다른 영역 및 이들의 콘택트를 볼 수 있게 한다. People Pane 버튼(420)을 사용자가 선택하면, Acme 가상 영역의 모든 멤버의 리스트, 멤버쉽의 다른 영역 및 모든 사용자의 콘택트가 People Pane(427)에 디스플레이된다. 사용자는 리스트의 커뮤니컨트 중 하나를 선택하고 사용자 인터페이스에 제공되는 Get 버튼을 클릭한다. 이에 응답하여, 플랫폼은 지정된 존의 사용자에게 합류하는 초대를 선택된 커뮤니컨트에게 전송한다. Chat Pane 버튼은 현재 프레즌스의 존과 연관되는 채팅 로그를 포함하는 Chat Pane(429)을 표시하고 감춘다.
Viewer Pane 버튼(423)은 Viewer상의 이미지에 색을 칠할 수 있는 Map 또는 임의의 프롭의 뷰를 디스플레이하는 View Pane(402)을 표시하고 감춘다. 예는 (스크린 공유를 위한) 뷰 스크린 및 Message Board 객체를 포함한다.
설정 버튼(422)은 현재 영역과 연관되는 디폴트 설정을 지정하기 위한 콘트롤 세트로의 액세스를 사용자에게 제공한다.
사용자는 돌아가기 버튼(410)을 클릭함으로써 도 14에 도시된 Acme 가상 영역의 뷰로부터 이전 뷰로 내비게이팅할 수 있다.
사용자는 Acme 가상 영역의 존 중 하나로 내비게이팅할 수 있다. 일부 실시예에서, 존으로 이동하기 위해, 타겟 존에 대한 라벨을 클릭함으로써 또는 보다 간단한 방법으로 더블 클릭함으로써 사용자는 모니터에 디스플레이되는 존 중 하나를 실행하기 위한 명령을 전송한다. 이에 응답하여, 플랫폼은 존 객체에 대응하는 존의 사용자의 아바타를 도시한다. 존 실행 명령에 응답하여, 시커 인터페이스는 브래드크럼 버튼(418)을 업데이트하여 계층의 현재 프레즌스의 존을 도시한다. 프레즌스의 존에 특정되는 툴바 버튼 또한 브래드크럼 링크(418) 아래에 나타날 것이다.
또한, 사용자는 존에 존재하는 임의의 객체(가령, 스크린, 테이블 또는 파일)와 상호작용할 수 있다. 일부 실시예에서, 객체와 상호작용하기 위해, 사용자는 객체를 클릭하고, 이에 응답하여 플랫폼은 객체에 대한 동작(가령, 객체의 줌 인 뷰를 제공하고, 상호작용 인터페이스 윈도우를 여는 등)을 수행한다 객체 실행 명령에 응답하여, 시커 인터페이스는 (선택되는 사용자를 표시하는) 프롭을 아웃라인하거나 하이라이트하고, 브래드크럼 버튼(418) 및 툴바를 업데이트하여 계층에 현재 보이는 객체를 보여준다.
도 19를 참조하면, 일부 실시예에서, West Conference 존(430)에 사용자가 입장하면, 플랫폼은 사용자와 선택된 존을 차지하는 다른 커뮤니컨트 각각과의 네트워크 접속을 자동으로 수립한다. 또한, 사용자는 맵상의 존의 이름을 클릭함으로써 존에 입장할 수 있다( 또한 존에서 프레즌스를 수립할 수 있다). 이는 플랫폼으로 하여금 사용자의 요정이 현재 위치(가령, 마당)로부터 선택된 존(가령, West Conference)으로 이동시키게 한다. 사용자의 스피커 및 마이크로폰의 상태는 상호작용 콘트롤(432, 434)에 의해 설정될 수 있는데, 상태는 전형적으로 사용자가 한 위치로부터 다른 위치로 이동할 때 변경되지 않는다. 시커 인터페이스(400)에 관한 추가적인 세부사항은 2009년 1월 15일자로 출원된 미국 특허 출원 12/354,709로부터 얻어질 수 있다.
도 20은 서버 애플리케이션 공간(78, 80)이 가상 영역(452, 454)에 대응하는 그래픽 사용자 인터페이스(110)(도 5 참조)의 실시예(450)를 도시하고 있다. 이 실시예에서, 사용자는 커뮤니컨트의 아바타를 선택함으로써 한 영역에 존재하는 커뮤니컨트 중 하나의 상호작용의 콘텍스트를 시각화할 수 있다. 도시된 예에서, 사용자는 Dan의 아바타(456)를 선택하였으며, 이에 응답하여 플랫폼은 Dan이 두 명의 다른 커뮤니컨트(즉, Carl 및 Ed)와 상호작용하는 가상 영역(즉, Acme)의 존(즉, Main)의 2차원 미니맵(458)을 생성하였다. Main 존에 존재하는 커뮤니컨트는 각 요정(460, 462, 464)에 의해 표현된다. 커뮤니컨트 각각은 요정(460 내지 464)상의 헤드폰의 존재에 의해 표시되는 자신의 스피커 채널을 갖는다. 또한, Dan은 자신의 요정(460)상의 마이크로폰 그래픽의 존재 및 자신의 요정(460)으로부터 퍼져나가는 동심원의 존재에 의해 표시되는 마이크로폰 채널을 갖는다. 미니맵(458)에 도시된 바와 같이, Main 존은 파일 객체(468) 및 회의 객체(470)를 지원하는 테이블 객체(466) 및 4개의 뷰 스크린 객체(472, 474, 476, 478)를 포함한다. 또한, 미니맵(458)은 Dan으로부터의 상태 메시지(466)(즉, "Out of the office next Wednesday")과 연관된다. 사용자(이 예에서는 Art)는 미니맵의 존에 대한 라벨(즉, "Main")을 클릭하거나 미니맵(458)의 플로어의 이미지를 더블 클릭함으로써 Main 존에서 발생하는 상호작용에 합류할 수 있는데, 이는 Main 존에서 Art에 대한 프레즌스를 수립하도록 플랫폼에 지시한다. 객체(466 내지 470)의 기능 및 동작을 포함하는 Main 존과의 내비게이션 및 상호작용에 관한 추가적인 세부사항은 2009년 1월 15일에 출원된 미국 특허 출원 12/354,709에 개시되어 있다
도 21은 2개의 상이한 영역 기반 서버 애플리케이션(502, 504)(Area Application 1 및 Area Application 2)를 포함하는 가상 환경 생성자(302)의 실시예(500)를 도시하고 있다. 각 영역 애플리케이션(502 및 504)는 각 멤버 리스트(510, 512)와 연관된다. 영역 기반 서버 애플리케이션(502, 504)는 영역 서비스의 각 인스턴스(506, 508)에 의해 관리된다. 영역 서비스 인스턴스(506, 508)는 만남 서비스(514)와 함께 동작하여 커뮤니컨트들 사이의 실시간 통신에 대한 상이한 가상 영역을 생성한다. 만남 서비스(514)는 관계 데이터베이스(46) 및 멤버 리스트(510, 512)를 유지하고, (가령, 접속 핸들(516)의 분배를 관리함으로써) 프레즌스 정보의 수집, 저장 및 분배를 관리하고, 요청하는 개체의 기능을 겪게 되는 서로와의 통신을 위한 네트워크 노드에 대한 메커니즘을 제공한다. 전형적으로, 만남 서비스는 프레즌스 데이터베이스(518)에 프레즌스 정보를 저장한다. 전형적으로, 만남 서비스는 커뮤니컨트 프라이버시 선호도(520)를 통해 서로와의 커뮤니컨트 상호작용을 관리한다.
도시된 실시예에서, 커뮤니컨트(C1A, C1B, C1C, C1D 및 C2A)는 Area Application 1의 멤버이고, 커뮤니컨트(C2A, C2B, C2C, C2D 및 C1A)는 Area Application 2의 멤버이다. 커뮤니컨트(C1A 및 C1B)는 현재 Area Application 1에 접속되고, 커뮤니컨트(C2A, C2B 및 C2C)는 현재 Area Application 2에 접속된다. 이 예에서, 커뮤니컨트들(C1B, C1C, C1D, C2A, C2B, C2C 및 C2D) 모두가 커뮤니컨트(C1A)의 콘택트이다.
도 22는 네트워크 통신 환경으로 커뮤니컨트(C1A)를 인터페이싱하는 프로세스에서 가상 환경 생성자(500)에 의해 구현되는 방법의 실시예를 도시하고 있다. 도 22의 방법에 따르면, Area Application 1로의 커뮤니컨트(C1A)의 접속에 응답하여, Area Service 1은 만남 서비스(514)에 커뮤니컨트(C1A)가 멤버인 모든 영역에 대한 질의를 송신하고, 영역, 공존 및 프레즌스에 의해 분류된다(도 22, 블록(530)). Area Service 1으로부터 질의를 수신하면, 만남 서비스(514)는 커뮤니컨트(C1A)가 멤버인 모든 영역을 결정한다(도 22, 블록(532)). 만남 서비스(514)는 멤버 리스트에 기초하여 결정된 영역의 모든 멤버를 결정한다(도 22, 블록(534)). 전형적으로, 만남 서비스(514)는 접속 상태(즉, 온 라인 또는 오프라인)와 무관하게 결정된 영역의 모든 멤버 리스트를 획득한다. 만남 서비스(514)는 모든 결정된 멤버의 프레즌스 상태를 결정한다(도 22, 블록(536)). 만남 서비스(514)는 Area Service 1에 커뮤니컨트(C1A)가 멤버인 모든 영역에 대한 질의를 송신하고, 영역, 공존 및 프레즌스에 의해 분류된다(도 22, 블록(538)). Area Service 1은 커뮤니컨트(C1A)가 Area Application 1에 접속하는 클라이언트 노드 상에서 실행되는 통신 애플리케이션에 질의 결과를 송신한다(도 22, 블록(540)).
도 23은 커뮤니컨트(C1A)가 Area Application 1에 접속하는 클라이언트 노드상에서 실행되는 통신 애플리케이션의 실시예에 의해 생성되는 그래픽 사용자 인터페이스(128)(도 6 참조)의 실시예(550)를 도시하고 있다. 이 예에서, 그래픽 사용자 인터페이스(550)는 Area Application 1 및 Area Application 2에 의해 정의되는 상이한 통신 콘텍스트에 걸쳐 타겟 커뮤니컨트(C1A)의 콘택트의 실시간 이용 가능성 및 활동을 도시한다. 특히, Area Application 1에 의해 정의되는 Area 1과 관련하여, 그래픽 사용자 인터페이스(550)는 타겟 커뮤니컨트(C1A)가 Area1의 프레즌스의 Current Zone에 존재하고, 커뮤니컨트(C1B)가 Area1에 존재하고, 커뮤니컨트(C1C, C1D 및 C2A)가 Area1에 존재하지 않는다는 것을 보여준다. Area Application 2에 의해 정의되는 Area 2과 관련하여, 그래픽 사용자 인터페이스(550)는 커뮤니컨트(C2A 및 C2B)가 Area2의 공존의 Current Zone에 존재하고, 커뮤니컨트(C2C)가 Area2에 존재하고, 커뮤니컨트(C2D 및 C1A)가 Area2에 존재하지 않는다는 것을 보여준다
그래픽 사용자 인터페이스(550)의 Contact 섹션(552)을 파퓰레이팅하는 데에 있어서, 만남 서비스는 전형적으로 타겟 커뮤니컨트가 상호작용한 모든 커뮤니컨트 리스트를 관계 데이터베이스(46)로부터 획득한다. 관계 데이터베이스(46)는 전형적으로 타겟 커뮤니컨트는 가상 환경의 임의의 가상 영역 및 모든 가상 영역에서 가진 모든 상호작용의 기록(가령, 음성, 채팅 및 스크린 공유 상호작용)을 그 지속기간 및 장소와 함께 포함한다. 일부 실시예에서, Contact 섹션(552)은 타겟 커뮤니컨트가 어떤 레벨로 상호작용한 모든 커뮤니컨트를 포함한다. 일부 실시예에서, 콘택트는 커뮤니컨트에 할당되는 관계 가중치 스코어에 기초하여 그룹화된다. 경우에 따라, 관계 가중치 스코어는 특정 기간(가령, 지난 15일 동안 8시간 간격으로) 동안에 발생한 상호작용의 분석으로부터 결정된다. 각 콘택트에 대해, 각 관계 가중치 스코어는 콘택트가 타겟 커뮤니컨트와 상호작용한 모든 간격마다 증분되는데, 관계 가중치 스코어가 높을수록 가장 최근의 기간 동안에 타겟 커뮤니컨트와의 콘택트의 상호작용이 잦았음을 표시한다. 콘택트는 관계 가중치 스코어에 기초하여 다수의 카테고리(가령, "자주", "정기적", "잦지 않게")그룹화될 수 있다.
III. 결론
본 명세서에서 설명되는 실시예는 네트워크 통신 환경에서 커뮤니컨트 상호작용을 촉진하는 향상된 시스템 및 방법을 제공한다. 특히, 이들 실시예는 상이한 통신 콘텍스트에 걸쳐 커뮤니컨트의 콘택트의 실시간 이용 가능성 및 활동의 실시간 시각화를 제공한다. 이 실시간 시각화에 의해 제공되는 정보는 커뮤니컨트에게 더 많은 네트워크 상호작용 결정(가령, 언제 콘택트와 상호작용할지)이 통보될 수 있게 하고, 커뮤니컨트가 다른 커뮤니컨트와 상호작용을 개시하고 커뮤니컨트가 알지 못했을 수 있는 커뮤니컨트의 콘텍스트(가령, 커뮤니컨트들 사이에서 진행 중인 상호작용)에 합류하도록 권장한다.
다른 실시예는 청구범위 내에 존재한다.
Claims (69)
- 네트워크 통신 환경에서 커뮤니컨트(communicant) 상호작용을 촉진하는 방법 - 상기 네트워크 통신 환경에서 각각의 클라이언트 네트워크 노드를 운영하는 사용자 및 다른 커뮤니컨트는 하나 이상의 서버 네트워크 노드에 의해 호스팅되고 커뮤니컨트간의 실시간 통신을 지원하는 통신 서비스에 접속함 - 으로서,
상기 사용자에 의해 운영되는 클라이언트 네트워크 노드(12)에 의해,
상기 통신 서비스에 접속하는 단계와,
상기 커뮤니컨트의 세트의 분류된 리스트를 포함하는 콘택트 리스트를 상기 통신 서비스로부터 수신하는 단계 - 상기 세트 내의 커뮤니컨트의 서브세트 각각의 클라이언트 네트워크 노드 간의 진행 중인 통신 세션 각각에 대하여, 상기 콘택트 리스트는 상기 서브세트 내의 커뮤니컨트를 상기 세트 내의 다른 커뮤니컨트와 분리된 개별적인 각각의 그룹으로 그룹화함 - 와,
디스플레이 상에 상기 콘택트 리스트를 상기 세트 내의 커뮤니컨트의 그래픽 표현의 어레이로 디스플레이하는 단계 - 각각의 서브세트 내의 커뮤니컨트의 그래픽 표현은 상기 세트 내의 다른 커뮤니컨트의 그래픽 표현과 분리된 개별적인 각각의 그룹으로 표시됨 - 를 포함하는
방법.
- 제 1 항에 있어서,
상기 디스플레이하는 단계는, 진행 중인 통신 세션 각각에 대하여, 상기 진행 중인 통신 세션에 포함된 커뮤니컨트의 그룹 각각을 시각적으로 구분하는 각각의 경계를 디스플레이하는 단계를 포함하는
방법.
- 제 1 항 또는 제 2 항에 있어서,
각각의 확인된(ascertained) 커뮤니컨트의 실시간 활동 상태의 표시를 수신하는 단계를 더 포함하되,
상기 디스플레이하는 단계는, 상기 커뮤니컨트의 그래픽 표현을 상기 커뮤니컨트 각각의 실시간 활동 상태의 표시와 관련하여 상기 콘택트 리스트에 디스플레이하는 단계를 포함하는
방법.
- 제 1 항 또는 제 2 항에 있어서,
상기 콘택트 리스트는 하나 이상의 진행 중인 통신 세션 중 특정 하나에 포함된 커뮤니컨트의 그룹을 나열 - 상기 사용자는 상기 세트 내의 상기 특정 진행 중인 통신 세션에 포함되지 않은 다른 모든 커뮤니컨트 보다 앞에 있음 - 하는
방법.
- 네트워크 통신 환경에서 커뮤니컨트 상호작용을 촉진하는 방법 - 상기 네트워크 통신 환경에서 각각의 클라이언트 네트워크 노드를 운영하는 사용자 및 다른 커뮤니컨트는 하나 이상의 서버 네트워크 노드에 의해 호스팅되고 커뮤니컨트간의 실시간 통신을 지원하는 통신 서비스에 접속함 - 으로서,
상기 다른 커뮤니컨트를 확인(ascertain)하는 단계와,
상기 확인된 커뮤니컨트 각각의 클라이언트 노드 간의, 상기 통신 서비스에 의해 관리되는 하나 이상의 진행 중인 통신 세션을 식별하는 단계 - 각각의 통신 세션은 상기 통신 세션 내의 커뮤니컨트 간의 실시간 통신을 지원함 - 와,
상기 확인된 커뮤니컨트의 분류된 리스트를 포함하는 콘택트 리스트를 생성하는 단계 - 상기 생성하는 단계는 각각의 진행 중인 통신 세션 내의 상기 확인된 커뮤니컨트를, 상기 콘택트 리스트의 다른 확인된 커뮤니컨트와 분리된 개별적인 각각의 그룹으로 그룹화하는 단계를 포함함 - 와,
상기 사용자의 클라이언트 네트워크 노드로 상기 콘택트 리스트를 전송하는 단계를 포함하는
방법.
- 제 5 항에 있어서,
상기 생성하는 단계는, 상기 콘택트 리스트에서,
식별된 진행 중인 통신 세션에 포함된 확인된 커뮤니컨트의 각각의 그룹을 어떤 진행 중인 통신 세션에도 포함되지 않은 다른 확인된 커뮤니컨트의 그룹보다 앞에 나열하는 단계를 포함하는
방법.
- 제 5 항에 있어서,
상기 전송하는 단계는,
상기 콘택트 리스트의 그래픽 표현의 사양(specification)을 상기 사용자의 네트워크 노드로 전송하는 단계를 더 포함하는
방법.
- 제 7 항에 있어서,
상기 콘택트 리스트의 상기 그래픽 표현은,
상기 하나 이상의 식별된 진행 중인 통신 세션 각각에 포함된 상기 확인된 커뮤니컨트의 그룹 각각을 시각적으로 구분하는 각각의 경계를 포함하는
방법.
- 제 7 항에 있어서,
상기 전송하는 단계는 상기 사용자의 네트워크 노드로 상기 확인된 커뮤니컨트 각각의 실시간 활동 상태의 표시를 전송하여, 상기 확인된 커뮤니컨트의 그래픽 표현을 상기 확인된 커뮤니컨트의 각각의 실시간 활동 상태의 표시와 관련하여 상기 콘택트 리스트의 그래픽 표현에 디스플레이하는 단계를 더 포함하는
방법.
- 제 7 항에 있어서,
식별된 진행 중인 통신 세션에 포함된 상기 확인된 커뮤니컨트의 그룹 각각에 대하여,
상기 콘택트 리스트의 상기 그래픽 표현은 상기 그룹의 상기 확인된 커뮤니컨트 각각의 그래픽 표현의 개별적인 그룹화 각각을 도시하여 함께 존재하는(co-present) 커뮤니컨트 간의 진행 중인 통신 세션이 상기 그룹의 상기 확인된 커뮤니컨트 간에 이루어지고 있음을 보여주는
방법.
- 제 5 항에 있어서,
상기 생성하는 단계는,
상기 콘택트 리스트에서 상기 하나 이상의 진행 중인 통신 세션 중 특정 하나에 포함된 커뮤니컨트의 그룹을 나열하는 단계 - 상기 사용자는 상기 특정 진행 중인 통신 세션에 포함되지 않은 다른 모든 확인된 커뮤니컨트 보다 앞에 있음 - 를 포함하는
방법.
- 네트워크 통신 환경에서 커뮤니컨트 상호작용을 촉진하는 장치 - 상기 네트워크 통신 환경에서 각각의 클라이언트 네트워크 노드를 운영하는 사용자 및 다른 커뮤니컨트는 하나 이상의 서버 네트워크 노드에 의해 호스팅되고 커뮤니컨트간의 실시간 통신을 지원하는 통신 서비스에 접속함 - 로서,
컴퓨터 판독 가능한 명령을 저장하는 컴퓨터 판독 가능한 메모리와,
상기 메모리와 연결되고, 상기 명령을 실행할 수 있는 데이터 프로세서를 포함하되,
상기 데이터 프로세서는 상기 명령의 실행에 적어도 부분적으로 기초하여,
상기 다른 커뮤니컨트를 확인하는 것과,
상기 확인된 커뮤니컨트 각각의 클라이언트 노드 간의, 상기 통신 서비스에 의해 관리되는 하나 이상의 진행 중인 통신 세션을 식별하는 것 - 각각의 통신 세션은 상기 통신 세션 내의 커뮤니컨트 간의 실시간 통신을 지원함 - 과,
상기 확인된 커뮤니컨트의 분류된 리스트를 포함하는 콘택트 리스트를 생성하는 것 - 상기 생성하는 단계는 각각의 진행 중인 통신 세션 내의 상기 확인된 커뮤니컨트를, 상기 콘택트 리스트의 다른 확인된 커뮤니컨트와 분리된 개별적인 각각의 그룹으로 그룹화하는 단계를 포함함 - 과,
상기 사용자의 클라이언트 네트워크 노드로 상기 콘택트 리스트를 전송하는 것을 포함하는 동작을 수행할 수 있는
장치.
- 삭제
- 삭제
- 삭제
- 제 5 항에 있어서,
상기 생성하는 단계는
커뮤니컨트 간의 진행 중인 통신 세션의 변화에 대응하여, 상기 콘택트 리스트의 상기 확인된 커뮤니컨트 각각을 동적으로 재그룹화하는
방법.
- 제 5 항에 있어서,
상기 확인된 커뮤니컨트의 각각 사이에 진행 중인 통신 세션의 현재 상태를 반영하기 위하여 상기 콘택트 리스트를 동적으로 재분류하는 단계를 더 포함하는
방법.
- 제 5 항에 있어서,
상기 통신 서비스는 가상 영역 존(zone)을 제공하고,
상기 가상 영역 존의 각각은 커뮤니컨트 프레즌스(presence) 및 상기 존 내에 공존(co-present)하는 커뮤니컨트 간의 실시간 통신을 개별적으로 지원하는
방법.
- 제 5 항에 있어서,
상기 식별하는 단계는 하나 이상의 공존(co-presence)의 존(zone)을 식별하는 단계를 포함하되,
상기 하나 이상의 공존의 존(zone)의 각각은 둘 이상의 상기 확인된 커뮤니컨트가 공존하는 각각의 존에 대응하고, 상기 식별된 하나 이상의 공존의 존(zone)의 각각은 상기 식별된 하나 이상의 진행 중인 통신 세션 중 각각에 대응하는
방법.
- 제 5 항에 있어서,
상기 생성하는 단계는,
상기 식별된 하나 이상의 공존의 존 내의 커뮤니컨트를 상기 콘택트 리스트에서 상기 존의 각각 내의 적어도 하나의 다른 커뮤니컨트와 공존하지 않는 커뮤니컨트보다 앞에 나열하는 단계를 포함하는
방법.
- 제 5 항에 있어서,
상기 생성하는 단계는,
상기 콘택트 리스트에서 사용자의 현재 존재하는 존(zone)을 다른 모든 존보다 앞에 나열하는 단계를 포함하는
방법.
- 제 5 항에 있어서,
상기 확인하는 단계는,
상기 사용자의 콘택트인 다른 커뮤니컨트의 각각을 상기 확인된 커뮤니컨트로 선택하는 단계를 포함하는
방법. - 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US37391410P | 2010-08-16 | 2010-08-16 | |
US61/373,914 | 2010-08-16 | ||
PCT/US2011/047724 WO2012024205A2 (en) | 2010-08-16 | 2011-08-15 | Promoting communicant interactions in a network communications environment |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130064105A KR20130064105A (ko) | 2013-06-17 |
KR101565665B1 true KR101565665B1 (ko) | 2015-11-04 |
Family
ID=45605619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137006722A KR101565665B1 (ko) | 2010-08-16 | 2011-08-15 | 네트워크 통신 환경에서 커뮤니컨트 상호작용을 촉진하는 방법 |
Country Status (6)
Country | Link |
---|---|
US (2) | US8930472B2 (ko) |
EP (1) | EP2606466A4 (ko) |
JP (1) | JP5969476B2 (ko) |
KR (1) | KR101565665B1 (ko) |
CN (1) | CN103154982A (ko) |
WO (1) | WO2012024205A2 (ko) |
Families Citing this family (71)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8600343B2 (en) | 2007-07-25 | 2013-12-03 | Yahoo! Inc. | Method and system for collecting and presenting historical communication data for a mobile device |
US7769806B2 (en) | 2007-10-24 | 2010-08-03 | Social Communications Company | Automated real-time data stream switching in a shared virtual area communication environment |
US8578000B2 (en) | 2008-12-05 | 2013-11-05 | Social Communications Company | Realtime kernel |
US8407605B2 (en) | 2009-04-03 | 2013-03-26 | Social Communications Company | Application sharing |
US8397168B2 (en) | 2008-04-05 | 2013-03-12 | Social Communications Company | Interfacing with a spatial virtual communication environment |
US9514444B2 (en) | 2009-01-15 | 2016-12-06 | Sococo, Inc. | Encapsulating virtual area based communicant assemblies |
EP2279472A4 (en) | 2008-04-05 | 2013-11-20 | Social Communications Co | APPARATUS AND METHODS BASED ON A SHARED VIRTUAL SPACE COMMUNICATION ENVIRONMENT |
US9002820B2 (en) * | 2008-06-05 | 2015-04-07 | Gary Stephen Shuster | Forum search with time-dependent activity weighting |
CN102150470B (zh) * | 2008-06-09 | 2013-10-16 | Sk普兰尼特有限公司 | 用于在空闲屏幕上显示缩略图组的方法和移动通信终端 |
US9853922B2 (en) | 2012-02-24 | 2017-12-26 | Sococo, Inc. | Virtual area communications |
US20130283169A1 (en) | 2012-04-24 | 2013-10-24 | Social Communications Company | Voice-based virtual area navigation |
US9325661B2 (en) | 2009-03-30 | 2016-04-26 | Avaya Inc. | System and method for managing a contact center with a graphical call connection metaphor |
US20100306672A1 (en) * | 2009-06-01 | 2010-12-02 | Sony Computer Entertainment America Inc. | Method and apparatus for matching users in multi-user computer simulations |
US9721228B2 (en) | 2009-07-08 | 2017-08-01 | Yahoo! Inc. | Locally hosting a social network using social data stored on a user's computer |
US8793319B2 (en) * | 2009-07-13 | 2014-07-29 | Microsoft Corporation | Electronic message organization via social groups |
US9189143B2 (en) * | 2010-04-30 | 2015-11-17 | American Teleconferencing Services, Ltd. | Sharing social networking content in a conference user interface |
US8620935B2 (en) * | 2011-06-24 | 2013-12-31 | Yahoo! Inc. | Personalizing an online service based on data collected for a user of a computing device |
US8453212B2 (en) * | 2010-07-27 | 2013-05-28 | Raytheon Company | Accessing resources of a secure computing network |
US8917855B1 (en) | 2010-08-17 | 2014-12-23 | 8X8, Inc. | Systems, methods, devices and arrangements for unified messaging |
WO2012118917A2 (en) | 2011-03-03 | 2012-09-07 | Social Communications Company | Realtime communications and network browsing client |
US9747583B2 (en) | 2011-06-30 | 2017-08-29 | Yahoo Holdings, Inc. | Presenting entity profile information to a user of a computing device |
US20130055099A1 (en) * | 2011-08-22 | 2013-02-28 | Rose Yao | Unified Messaging System with Integration of Call Log Data |
WO2013039748A2 (en) * | 2011-09-16 | 2013-03-21 | Social Communications Company | Capabilities based management of virtual areas |
US20130145293A1 (en) * | 2011-12-01 | 2013-06-06 | Avaya Inc. | Methods, apparatuses, and computer-readable media for providing availability metaphor(s) representing communications availability in an interactive map |
WO2013119802A1 (en) | 2012-02-11 | 2013-08-15 | Social Communications Company | Routing virtual area based communications |
US20130218978A1 (en) * | 2012-02-17 | 2013-08-22 | Numira Biosciences | Systems and Methods for Project Collaboration in a Cloud Computing Environment |
US20130219280A1 (en) * | 2012-02-17 | 2013-08-22 | Numira Biosciences | Systems and Methods for Software Evaluation in a Cloud Computing Environment |
US9489657B2 (en) * | 2012-02-21 | 2016-11-08 | Microsoft Technology Licensing, Llc | Aggregation and visualization of multiple chat room information |
US20130227445A1 (en) * | 2012-02-24 | 2013-08-29 | Maria Christina Nathalie Freyhult | Method and apparatus for operation of a computing device |
US10186002B2 (en) | 2012-03-21 | 2019-01-22 | Sony Interactive Entertainment LLC | Apparatus and method for matching users to groups for online communities and computer simulations |
US10130872B2 (en) | 2012-03-21 | 2018-11-20 | Sony Interactive Entertainment LLC | Apparatus and method for matching groups to users for online communities and computer simulations |
US9503683B2 (en) * | 2012-03-27 | 2016-11-22 | Google Inc. | Providing users access to applications during video communications |
WO2013181026A1 (en) | 2012-06-02 | 2013-12-05 | Social Communications Company | Interfacing with a spatial virtual communications environment |
US9619037B2 (en) * | 2012-07-25 | 2017-04-11 | Facebook, Inc. | Custom gestures |
US9071956B2 (en) * | 2012-12-03 | 2015-06-30 | Qualcomm Incorporated | Systems and methods for dynamic enablement of wireless communication device functionalities |
US20140257892A1 (en) * | 2013-03-07 | 2014-09-11 | International Business Machines Corporation | Social project collaboration through self-organizing teams |
US9401952B1 (en) * | 2013-03-13 | 2016-07-26 | Shortel, Inc. | Managing presence state |
KR102056080B1 (ko) | 2013-03-19 | 2019-12-16 | 삼성전자주식회사 | 상태 정보 제공 방법 및 장치 |
US8984080B1 (en) | 2013-04-09 | 2015-03-17 | Kabam, Inc. | Facilitating user configured assistance requests through a chat in a virtual space |
US9332043B1 (en) | 2013-04-12 | 2016-05-03 | Kabam, Inc. | System and method for facilitating user interaction with a virtual space through a graphical chat interface |
USD737847S1 (en) * | 2013-06-10 | 2015-09-01 | Apple Inc. | Display screen or portion thereof with graphical user interface |
US9817559B2 (en) * | 2014-07-11 | 2017-11-14 | Noom, Inc. | Predictive food logging |
EP3206341B1 (en) * | 2014-11-04 | 2021-03-17 | Huawei Technologies Co., Ltd. | Method, apparatus and device for displaying message |
CN104580194B (zh) * | 2014-12-31 | 2017-11-24 | 北京四达时代软件技术股份有限公司 | 面向视频应用的虚拟化资源管理方法及装置 |
CN105991411B (zh) * | 2015-02-13 | 2021-11-02 | 北京创新方舟科技有限公司 | 一种社交的方法及一种社交网络系统 |
CN107408354B (zh) * | 2015-03-05 | 2019-12-20 | 日本电气方案创新株式会社 | 动作评估装置、动作评估方法和计算机可读存储介质 |
USD777749S1 (en) * | 2015-04-06 | 2017-01-31 | Domo, Inc. | Display screen or portion thereof with a graphical user interface for analytics |
US10003563B2 (en) | 2015-05-26 | 2018-06-19 | Facebook, Inc. | Integrated telephone applications on online social networks |
US11361092B2 (en) * | 2015-09-25 | 2022-06-14 | Intel Corporation | Contextual access of data |
CN105323308B (zh) * | 2015-09-29 | 2019-01-29 | 惠州Tcl移动通信有限公司 | 一种基于地理位置信息的社群互联方法和系统 |
FR3049732B1 (fr) * | 2016-03-29 | 2023-04-21 | Duc Long Banh | Systeme de mise en contact de personnes disposant chacune d'un terminal telephonique tactile |
US10434418B2 (en) * | 2016-06-03 | 2019-10-08 | Microsoft Technology Licensing, Llc | Navigation and interaction controls for three-dimensional environments |
US11843570B2 (en) * | 2016-07-28 | 2023-12-12 | International Business Machines Corporation | Security and prevention of information harvesting from user interfaces |
JP2018173829A (ja) * | 2017-03-31 | 2018-11-08 | 株式会社ルクレ | 仮想会議プログラム |
US11765114B2 (en) | 2017-05-16 | 2023-09-19 | Apple Inc. | Voice communication method |
US10511707B2 (en) | 2017-05-16 | 2019-12-17 | Apple Inc. | Voice communication method |
CN107147494B (zh) * | 2017-06-19 | 2019-08-06 | 中南大学 | 一种基于链式相控加密操作的量子双重签名的方法 |
US11122094B2 (en) | 2017-07-28 | 2021-09-14 | Snap Inc. | Software application manager for messaging applications |
JP6955164B2 (ja) * | 2017-12-27 | 2021-10-27 | 富士通株式会社 | カウンセリング支援装置、カウンセリング支援システム、カウンセリング支援プログラムおよびカウンセリング支援方法 |
US11103795B1 (en) | 2018-10-31 | 2021-08-31 | Snap Inc. | Game drawer |
CN110417845B (zh) * | 2018-11-30 | 2021-08-03 | 腾讯科技(深圳)有限公司 | 一种数据同步方法、装置和存储介质 |
US11128725B2 (en) * | 2019-05-05 | 2021-09-21 | Microsoft Technology Licensing, Llc. | Multistate presence and responsiveness tracking and indication |
US11102153B2 (en) | 2019-05-05 | 2021-08-24 | Microsoft Technology Licensing, Llc | Multistate presence and responsiveness tracking and indication |
US11144176B2 (en) * | 2019-06-01 | 2021-10-12 | Apple Inc. | User interfaces for electronic voice communications |
US11194447B2 (en) | 2019-10-31 | 2021-12-07 | Slack Technologies, Llc | Apparatuses, computer program products, and methods for group-based communication channel organization |
US11356392B2 (en) * | 2020-06-10 | 2022-06-07 | Snap Inc. | Messaging system including an external-resource dock and drawer |
US11507424B2 (en) * | 2020-07-15 | 2022-11-22 | At&T Intellectual Property I, L.P. | Optimization of resource usage in cross-reality sessions |
CN111884914B (zh) * | 2020-07-24 | 2021-07-06 | 腾讯科技(深圳)有限公司 | 基于虚拟角色交互界面的通信方法、装置和计算机设备 |
US11232393B1 (en) * | 2020-12-08 | 2022-01-25 | Project Noa, Inc. | Relationship based fulfillment systems and methods |
US11288669B1 (en) | 2020-12-08 | 2022-03-29 | Project Noa, Inc. | Frictionless token based blockchain |
US20230101151A1 (en) * | 2021-09-30 | 2023-03-30 | Ringcentral, Inc. | Systems and methods for providing aggregate group presence state identifier |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050215252A1 (en) | 2004-03-26 | 2005-09-29 | Samsung Electronics Co., Ltd. | System and method for providing a messenger service capable of changing messenger status information based on a schedule |
US20060041684A1 (en) * | 2002-09-17 | 2006-02-23 | Bellsouth Intellectual Property Corporation | Server-based message protocol translation |
US20080101561A1 (en) * | 2005-07-08 | 2008-05-01 | Nhn Corporation | Messenger notification system and method using synchronization server |
US20090247196A1 (en) | 2008-03-31 | 2009-10-01 | Lg Electronic Inc. | Mobile terminal for performing instant messaging service |
Family Cites Families (187)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5745711A (en) | 1991-10-23 | 1998-04-28 | Hitachi, Ltd. | Display control method and apparatus for an electronic conference |
EP0622930A3 (en) | 1993-03-19 | 1996-06-05 | At & T Global Inf Solution | Division of applications for computer arrangement with collaboration. |
US5471318A (en) | 1993-04-22 | 1995-11-28 | At&T Corp. | Multimedia communications network |
US5689641A (en) | 1993-10-01 | 1997-11-18 | Vicor, Inc. | Multimedia collaboration system arrangement for routing compressed AV signal through a participant site without decompressing the AV signal |
US5491743A (en) | 1994-05-24 | 1996-02-13 | International Business Machines Corporation | Virtual conference system and terminal apparatus therefor |
DE69523593T2 (de) | 1994-06-17 | 2002-09-26 | Intel Corp | Vorrichtung und verfahren zur aufteilung der anwendung in einer graphischen benutzerschnittstelle |
US5627978A (en) | 1994-12-16 | 1997-05-06 | Lucent Technologies Inc. | Graphical user interface for multimedia call set-up and call handling in a virtual conference on a desktop computer conferencing system |
US6304283B1 (en) | 1995-01-31 | 2001-10-16 | Canon Kabushiki Kaisha | Conference apparatus and method for realistically reproducing image data and shared board data |
US6219045B1 (en) | 1995-11-13 | 2001-04-17 | Worlds, Inc. | Scalable virtual world chat client-server system |
US5793365A (en) | 1996-01-02 | 1998-08-11 | Sun Microsystems, Inc. | System and method providing a computer user interface enabling access to distributed workgroup members |
US6275490B1 (en) | 1996-08-21 | 2001-08-14 | Netspeak Corporation | Method and apparatus for establishing communications from browser application |
US6862625B1 (en) | 1996-09-27 | 2005-03-01 | Avaya Technology Corp. | Method and apparatus for real time network communication |
US5764916A (en) | 1996-09-27 | 1998-06-09 | Ichat, Inc. | Method and apparatus for real time communication over a computer network |
US6057856A (en) | 1996-09-30 | 2000-05-02 | Sony Corporation | 3D virtual reality multi-user interaction with superimposed positional information display for each user |
US6785708B1 (en) | 1996-10-30 | 2004-08-31 | Avaya Inc. | Method and apparatus for synchronizing browse and chat functions on a computer network |
US7263526B1 (en) | 1996-10-30 | 2007-08-28 | Avaya Technology Corp. | Method and apparatus for embedding chat functions in a web page |
JP3679526B2 (ja) | 1996-10-31 | 2005-08-03 | キヤノン株式会社 | 画像共有装置、画面制御方法及びコンピュータ可読メモリ |
US5982372A (en) | 1996-11-14 | 1999-11-09 | International Business Machines Corp. | Visual metaphor for shortcut navigation in a virtual world |
US6119166A (en) | 1997-03-28 | 2000-09-12 | International Business Machines Corporation | Controlling communications with local applications using a browser application |
GB9721667D0 (en) | 1997-10-14 | 1997-12-10 | Philips Electronics Nv | Virtual environment navigation aid |
US6380952B1 (en) | 1998-04-07 | 2002-04-30 | International Business Machines Corporation | System for continuous display and navigation in a virtual-reality world |
US5999208A (en) | 1998-07-15 | 1999-12-07 | Lucent Technologies Inc. | System for implementing multiple simultaneous meetings in a virtual reality mixed media meeting room |
US6119147A (en) | 1998-07-28 | 2000-09-12 | Fuji Xerox Co., Ltd. | Method and system for computer-mediated, multi-modal, asynchronous meetings in a virtual space |
US6731314B1 (en) | 1998-08-17 | 2004-05-04 | Muse Corporation | Network-based three-dimensional multiple-user shared environment apparatus and method |
JP3846666B2 (ja) | 1998-09-24 | 2006-11-15 | 富士通株式会社 | 共有画面制御装置 |
US7168048B1 (en) | 1999-03-24 | 2007-01-23 | Microsoft Corporation | Method and structure for implementing a layered object windows |
US6909443B1 (en) | 1999-04-06 | 2005-06-21 | Microsoft Corporation | Method and apparatus for providing a three-dimensional task gallery computer interface |
US6388688B1 (en) | 1999-04-06 | 2002-05-14 | Vergics Corporation | Graph-based visual navigation through spatial environments |
GB2349055B (en) | 1999-04-16 | 2004-03-24 | Mitel Corp | Virtual meeting rooms with spatial audio |
JP4425407B2 (ja) | 1999-05-13 | 2010-03-03 | 富士通株式会社 | 会話送出方法及び会話システム |
US7222309B2 (en) | 1999-06-02 | 2007-05-22 | Earthlink, Inc. | System and method of a web browser with integrated features and controls |
US6400381B1 (en) | 1999-06-11 | 2002-06-04 | International Business Machines Corporation | Web places |
US6292188B1 (en) | 1999-07-28 | 2001-09-18 | Alltrue Networks, Inc. | System and method for navigating in a digital information environment |
KR19990078775A (ko) | 1999-08-06 | 1999-11-05 | 신유진 | 3차원 가상 현실 공간에서의 전자 상거래 시스템 및 그 방법 |
US7630986B1 (en) | 1999-10-27 | 2009-12-08 | Pinpoint, Incorporated | Secure data interchange |
US6671818B1 (en) | 1999-11-22 | 2003-12-30 | Accenture Llp | Problem isolation through translating and filtering events into a standard object format in a network based supply chain |
JP2001154966A (ja) | 1999-11-29 | 2001-06-08 | Sony Corp | コンピュータ・ネットワーク上で構築・提供される共有仮想空間上で複数ユーザが参加可能な仮想会話を支援する会話支援システム及び会話支援方法、並びに、プログラム記憶媒体 |
US20060184886A1 (en) | 1999-12-22 | 2006-08-17 | Urbanpixel Inc. | Spatial chat in a multiple browser environment |
US6708172B1 (en) | 1999-12-22 | 2004-03-16 | Urbanpixel, Inc. | Community-based shared multiple browser environment |
US7054928B2 (en) | 1999-12-23 | 2006-05-30 | M.H. Segan Limited Partnership | System for viewing content over a network and method therefor |
US7689696B2 (en) | 2000-01-31 | 2010-03-30 | Telecommunication Systems, Inc. | System and method for re-directing requests from browsers for communications over non-IP based networks |
JP2003529825A (ja) | 2000-02-14 | 2003-10-07 | ジオフェニックス, インコーポレイテッド | グラフィカルプログラミングのための方法およびシステム |
US20020085035A1 (en) | 2000-02-14 | 2002-07-04 | Julian Orbanes | Method and apparatus for creating custom formats for viewing information in virtual space |
KR100369640B1 (ko) | 2000-03-03 | 2003-01-29 | 신유진 | 3차원 가상 현실 공간에서의 박람회 개최 시스템 및 그방법 |
US7111060B2 (en) | 2000-03-14 | 2006-09-19 | Aep Networks, Inc. | Apparatus and accompanying methods for providing, through a centralized server site, a secure, cost-effective, web-enabled, integrated virtual office environment remotely accessible through a network-connected web browser |
US7392306B1 (en) | 2000-04-07 | 2008-06-24 | Aol Llc | Instant messaging client having an embedded browser |
JP3345600B2 (ja) | 2000-04-10 | 2002-11-18 | コナミ株式会社 | ゲームシステムおよびコンピュータ読取可能な記憶媒体 |
KR100382854B1 (ko) | 2000-05-04 | 2003-05-09 | 주식회사 쿼터뷰 | 아바타행위 기록/재생을 이용한 메시지전달 시스템 및 방법 |
IL136408A0 (en) | 2000-05-28 | 2001-06-14 | Kaufman Yosef | A jigsaw puzzle system |
US6714222B1 (en) | 2000-06-21 | 2004-03-30 | E2 Home Ab | Graphical user interface for communications |
KR20020017558A (ko) | 2000-08-31 | 2002-03-07 | 김종민 | 가상 공간 상에서의 북마킹 시스템 및 방법 |
US7036082B1 (en) | 2000-09-21 | 2006-04-25 | Nortel Networks Limited | Controlling communications through a virtual reality environment |
US8234218B2 (en) | 2000-10-10 | 2012-07-31 | AddnClick, Inc | Method of inserting/overlaying markers, data packets and objects relative to viewable content and enabling live social networking, N-dimensional virtual environments and/or other value derivable from the content |
US7168051B2 (en) | 2000-10-10 | 2007-01-23 | Addnclick, Inc. | System and method to configure and provide a network-enabled three-dimensional computing environment |
US20020075305A1 (en) | 2000-12-18 | 2002-06-20 | Beaton Brian F. | Graphical user interface for a virtual team environment |
US7925703B2 (en) | 2000-12-26 | 2011-04-12 | Numedeon, Inc. | Graphical interactive interface for immersive online communities |
US20040030741A1 (en) | 2001-04-02 | 2004-02-12 | Wolton Richard Ernest | Method and apparatus for search, visual navigation, analysis and retrieval of information from networks with remote notification and content delivery |
US20020165922A1 (en) | 2001-04-13 | 2002-11-07 | Songxiang Wei | Application based screen sampling |
US20060161624A1 (en) | 2001-04-13 | 2006-07-20 | Elaine Montgomery | Methods and apparatuses for dynamically sharing a portion of a display for application based screen sampling |
US7188317B1 (en) | 2001-06-13 | 2007-03-06 | Microsoft Corporation | Dynamic multiple window display having independently linked windows |
US7133900B1 (en) | 2001-07-06 | 2006-11-07 | Yahoo! Inc. | Sharing and implementing instant messaging environments |
US20030043200A1 (en) | 2001-08-09 | 2003-03-06 | Urbanpixel Inc | Interactive multi-level mapping in a multiple browser environment |
US7266583B2 (en) | 2001-08-20 | 2007-09-04 | International Business Machines Corporation | Method and system for providing contact management to chat session participants |
US7660875B2 (en) | 2001-08-31 | 2010-02-09 | Sony Corporation | Bidirectional remote communication via browser plug-in |
US20030077561A1 (en) | 2001-10-18 | 2003-04-24 | Abraham Alsop | Web server for printable whiteboards |
US7644144B1 (en) | 2001-12-21 | 2010-01-05 | Microsoft Corporation | Methods, tools, and interfaces for the dynamic assignment of people to groups to enable enhanced communication and collaboration |
KR100453225B1 (ko) | 2001-12-26 | 2004-10-15 | 한국전자통신연구원 | 3차원 가상 현실 구현을 위한 클라이언트 시스템과 이를이용한 가상 현실 구현 방법 |
AUPR989802A0 (en) | 2002-01-09 | 2002-01-31 | Lake Technology Limited | Interactive spatialized audiovisual system |
US7058896B2 (en) | 2002-01-16 | 2006-06-06 | Silicon Graphics, Inc. | System, method and computer program product for intuitive interactive navigation control in virtual environments |
US7730063B2 (en) | 2002-12-10 | 2010-06-01 | Asset Trust, Inc. | Personalized medicine service |
US7051049B2 (en) | 2002-02-21 | 2006-05-23 | International Business Machines Corporation | Real-time chat and conference contact information manager |
US7336779B2 (en) | 2002-03-15 | 2008-02-26 | Avaya Technology Corp. | Topical dynamic chat |
US20040128350A1 (en) | 2002-03-25 | 2004-07-01 | Lou Topfl | Methods and systems for real-time virtual conferencing |
US7418664B2 (en) | 2002-04-03 | 2008-08-26 | Microsoft Corporation | Application sharing single document sharing |
US7036089B2 (en) | 2002-04-23 | 2006-04-25 | Hewlett-Packard Development Company, L.P. | Distribution of application windows in a computing device display |
US7016978B2 (en) | 2002-04-29 | 2006-03-21 | Bellsouth Intellectual Property Corporation | Instant messaging architecture and system for interoperability and presence management |
US7039677B2 (en) | 2002-05-07 | 2006-05-02 | International Business Machines Corporation | Threaded text-based chat collaboration |
US7293243B1 (en) | 2002-05-22 | 2007-11-06 | Microsoft Corporation | Application sharing viewer presentation |
US7356563B1 (en) | 2002-06-06 | 2008-04-08 | Microsoft Corporation | Methods of annotating a collaborative application display |
US7769606B2 (en) | 2002-07-01 | 2010-08-03 | Boone H Keith | Interactive health insurance system |
GB2391420A (en) | 2002-07-25 | 2004-02-04 | Samsung Electronics Co Ltd | Method for serving audio and image communication in web browser using session initiation protocol |
KR20040011825A (ko) | 2002-07-30 | 2004-02-11 | 김동현 | 인터넷 망을 기반으로 한 가상백화점 관리 시스템 및 그관리 방법 |
US7234117B2 (en) | 2002-08-28 | 2007-06-19 | Microsoft Corporation | System and method for shared integrated online social interaction |
US7844662B2 (en) | 2002-10-17 | 2010-11-30 | At&T Intellectual Property Ii, L.P. | Merging instant messaging (IM) chat sessions |
JP2004135051A (ja) | 2002-10-10 | 2004-04-30 | Sony Corp | 情報処理システム、サービス提供装置および方法、情報処理装置および方法、記録媒体、並びにプログラム |
US20060100881A1 (en) * | 2002-11-13 | 2006-05-11 | Intel Corporation | Multi-modal web interaction over wireless network |
US7676542B2 (en) | 2002-12-02 | 2010-03-09 | Sap Ag | Establishing a collaboration environment |
US7474741B2 (en) | 2003-01-20 | 2009-01-06 | Avaya Inc. | Messaging advise in presence-aware networks |
US20040158610A1 (en) | 2003-02-10 | 2004-08-12 | Davis Joel A. | Client proxying for instant messaging |
US7484176B2 (en) | 2003-03-03 | 2009-01-27 | Aol Llc, A Delaware Limited Liability Company | Reactive avatars |
US8484576B2 (en) | 2003-04-17 | 2013-07-09 | Supersonic Aerospace International, Llc | System and method for customizing multiple windows of information on a display |
CN102158431B (zh) | 2003-05-16 | 2015-03-25 | 谷歌公司 | 提供和进行即时消息方法、机器可读介质及图形用户界面 |
US8347313B2 (en) | 2003-05-21 | 2013-01-01 | Resilient Networks, Inc. | Method and apparatus for automating organization of processes |
US7236472B2 (en) * | 2003-09-16 | 2007-06-26 | Research In Motion Limited | Method for creating a peer-to-peer immediate messaging solution without using an instant messaging server |
US7752268B2 (en) | 2003-09-25 | 2010-07-06 | Oracle America, Inc. | Method and system for presence state assignment based on schedule information in an instant messaging system |
US7503006B2 (en) | 2003-09-25 | 2009-03-10 | Microsoft Corporation | Visual indication of current voice speaker |
US7813488B2 (en) | 2003-09-29 | 2010-10-12 | Siemens Enterprise Communications, Inc. | System and method for providing information regarding an identity's media availability |
US20050080866A1 (en) | 2003-10-14 | 2005-04-14 | Kent Larry G. | Selectively displaying time indications for instant messaging (IM) messages |
US8528003B2 (en) | 2003-10-27 | 2013-09-03 | Yahoo! Inc. | Communication among browser windows |
US7606772B2 (en) | 2003-11-28 | 2009-10-20 | Manyworlds, Inc. | Adaptive social computing methods |
ITPI20030101A1 (it) | 2003-12-05 | 2005-06-06 | Cdc Srl | Metodo ed apparato per la gestione della globalita' |
US10152190B2 (en) | 2003-12-15 | 2018-12-11 | Open Invention Network, Llc | Systems and methods for improved application sharing in a multimedia collaboration session |
US7734691B2 (en) | 2003-12-18 | 2010-06-08 | International Business Machines Corporation | Providing collaboration services to a wireless device |
US7707503B2 (en) | 2003-12-22 | 2010-04-27 | Palo Alto Research Center Incorporated | Methods and systems for supporting presentation tools using zoomable user interface |
JP3626491B1 (ja) * | 2003-12-26 | 2005-03-09 | 株式会社ドワンゴ | メッセンジャーサービスシステムおよびその制御方法、ならびにメッセンジャーサーバおよびその制御プログラム |
US7852997B2 (en) | 2004-01-28 | 2010-12-14 | Managed Inventions, Llc | Internet telephony communications adapter for web browsers |
US20050210008A1 (en) | 2004-03-18 | 2005-09-22 | Bao Tran | Systems and methods for analyzing documents over a network |
US7680885B2 (en) | 2004-04-15 | 2010-03-16 | Citrix Systems, Inc. | Methods and apparatus for synchronization of data set representations in a bandwidth-adaptive manner |
US7856469B2 (en) | 2004-04-15 | 2010-12-21 | International Business Machines Corporation | Searchable instant messaging chat repositories using topic and identifier metadata |
US20060031779A1 (en) | 2004-04-15 | 2006-02-09 | Citrix Systems, Inc. | Selectively sharing screen data |
US7996785B2 (en) | 2004-06-30 | 2011-08-09 | Microsoft Corporation | Systems and methods for integrating application windows in a virtual machine environment |
CN1977252B (zh) * | 2004-07-02 | 2010-11-03 | 富士通株式会社 | 通信控制方法及计算机系统 |
US7412657B2 (en) | 2004-08-26 | 2008-08-12 | International Business Machines Corporation | Systems, methods, and media for updating an instant messaging system |
US7707249B2 (en) | 2004-09-03 | 2010-04-27 | Open Text Corporation | Systems and methods for collaboration |
US7342587B2 (en) | 2004-10-12 | 2008-03-11 | Imvu, Inc. | Computer-implemented system and method for home page customization and e-commerce support |
US20060167996A1 (en) | 2005-01-13 | 2006-07-27 | Orsolini Garry S | System and method for enabling electronic presentations |
US7240826B2 (en) | 2005-01-25 | 2007-07-10 | Seriosity, Inc. | Attention economy for attention to messages, tasks and resources |
US7506264B2 (en) | 2005-04-28 | 2009-03-17 | International Business Machines Corporation | Method and apparatus for presenting navigable data center information in virtual reality using leading edge rendering engines |
US20070011232A1 (en) * | 2005-07-06 | 2007-01-11 | Microsoft Corporation | User interface for starting presentations in a meeting |
US7734692B1 (en) | 2005-07-22 | 2010-06-08 | Oracle America, Inc. | Network collaboration system with private voice chat |
US7925000B2 (en) | 2005-08-29 | 2011-04-12 | Avaya Inc. | Managing held telephone calls from a remote telecommunications terminal |
US7765483B2 (en) | 2005-09-12 | 2010-07-27 | Microsoft Corporation | Filtering obscured data from a remote client display |
US20080214204A1 (en) | 2005-11-01 | 2008-09-04 | Jorey Ramer | Similarity based location mapping of mobile comm facility users |
US9454735B2 (en) * | 2005-09-26 | 2016-09-27 | Nokia Corporation | Integrating data with a contact |
US7827288B2 (en) | 2005-12-08 | 2010-11-02 | International Business Machines Corporation | Model autocompletion for composite services synchronization |
US8146002B2 (en) | 2005-12-08 | 2012-03-27 | International Business Machines Corporation | Screen sharing session with selective pop-ups |
WO2007110703A2 (en) | 2005-12-09 | 2007-10-04 | Ebuddy Holding B.V. | Picture provisioning system and method |
US7489772B2 (en) | 2005-12-30 | 2009-02-10 | Nokia Corporation | Network entity, method and computer program product for effectuating a conference session |
US8266214B2 (en) | 2006-01-24 | 2012-09-11 | Simulat, Inc. | System and method for collaborative web-based multimedia layered platform with recording and selective playback of content |
KR100632955B1 (ko) | 2006-02-07 | 2006-10-11 | (주)심비오 | 전시회의 멀티운영 및 정보의 누적관리가 가능한사이버전시회 시스템 및 그 운영방법 |
US20070198645A1 (en) | 2006-02-21 | 2007-08-23 | Yen-Fu Chen | Method for providing in-context responses to instant messaging conversations |
US20070214424A1 (en) | 2006-03-13 | 2007-09-13 | International Business Machines Corporation | Networked chat technique |
US20070220111A1 (en) | 2006-03-15 | 2007-09-20 | Andrew Lin | Personal communications browser client for remote use in enterprise communications |
US20070286366A1 (en) | 2006-03-17 | 2007-12-13 | Scott Deboy | Chat presence system |
US20070233785A1 (en) | 2006-03-30 | 2007-10-04 | International Business Machines Corporation | Communicating using collaboration spaces |
US7689926B2 (en) | 2006-03-31 | 2010-03-30 | Microsoft Corporation | Selective window exclusion for captured content |
KR20070105088A (ko) | 2006-04-25 | 2007-10-30 | 함현주 | 캐릭터를 기반으로 하는 쇼핑몰 시스템 및 운영방법 |
US20080052373A1 (en) | 2006-05-01 | 2008-02-28 | Sms.Ac | Systems and methods for a community-based user interface |
US8223186B2 (en) | 2006-05-31 | 2012-07-17 | Hewlett-Packard Development Company, L.P. | User interface for a video teleconference |
US20070291034A1 (en) | 2006-06-20 | 2007-12-20 | Dones Nelson C | System for presenting a navigable virtual subway system, and method for operating and using the same |
US7680098B2 (en) | 2006-07-20 | 2010-03-16 | Avaya Inc. | Determining group availability on different communication media |
US7616624B2 (en) | 2006-07-20 | 2009-11-10 | Avaya Inc. | Determining user availability based on the expected duration of a new event |
US7680480B2 (en) | 2006-07-20 | 2010-03-16 | Avaya Inc. | Determining user availability based on a past event |
US8295206B2 (en) | 2006-07-20 | 2012-10-23 | Avaya Inc. | Rule-based system for determining user availability |
US8726195B2 (en) | 2006-09-05 | 2014-05-13 | Aol Inc. | Enabling an IM user to navigate a virtual world |
US7958453B1 (en) | 2006-09-29 | 2011-06-07 | Len Bou Taing | System and method for real-time, multi-user, interactive and collaborative environments on the web |
US7805406B2 (en) | 2006-10-27 | 2010-09-28 | Xystar Technologies, Inc. | Cross-population of virtual communities |
US7765259B2 (en) | 2006-12-05 | 2010-07-27 | Avaya Inc. | System and method for aggregation of user conversations and visualizing personal communications map |
US8706169B2 (en) | 2006-12-28 | 2014-04-22 | Yahoo! Inc. | Interface overlay |
US8554868B2 (en) | 2007-01-05 | 2013-10-08 | Yahoo! Inc. | Simultaneous sharing communication interface |
US20080215974A1 (en) | 2007-03-01 | 2008-09-04 | Phil Harrison | Interactive user controlled avatar animations |
GB0703974D0 (en) | 2007-03-01 | 2007-04-11 | Sony Comp Entertainment Europe | Entertainment device |
US8108799B2 (en) | 2007-03-30 | 2012-01-31 | Microsoft Corporation | Remoting of windows presentation framework based applications in a non-composed desktop |
US7840668B1 (en) | 2007-05-24 | 2010-11-23 | Avaya Inc. | Method and apparatus for managing communication between participants in a virtual environment |
US20090096810A1 (en) | 2007-10-11 | 2009-04-16 | Green Brian D | Method for selectively remoting windows |
US8209384B2 (en) | 2007-10-23 | 2012-06-26 | Yahoo! Inc. | Persistent group-based instant messaging |
US20090288007A1 (en) | 2008-04-05 | 2009-11-19 | Social Communications Company | Spatial interfaces for realtime networked communications |
US7499926B1 (en) | 2007-11-16 | 2009-03-03 | International Business Machines Corporation | Maintaining and replicating chat histories |
US8584024B2 (en) | 2008-02-01 | 2013-11-12 | International Business Machines Corporation | Avatar cloning in a virtual world |
CN101499080A (zh) * | 2008-02-01 | 2009-08-05 | 网秦无限(北京)科技有限公司 | 在移动终端上快捷获取信息服务的方法和系统 |
US20090199275A1 (en) | 2008-02-06 | 2009-08-06 | David Brock | Web-browser based three-dimensional media aggregation social networking application |
US7895208B2 (en) | 2008-02-26 | 2011-02-22 | International Business Machines Corporation | Device, system, and method of creating virtual social networks based on web-extracted features |
US20090222742A1 (en) | 2008-03-03 | 2009-09-03 | Cisco Technology, Inc. | Context sensitive collaboration environment |
US9258337B2 (en) | 2008-03-18 | 2016-02-09 | Avaya Inc. | Inclusion of web content in a virtual environment |
US8531447B2 (en) | 2008-04-03 | 2013-09-10 | Cisco Technology, Inc. | Reactive virtual environment |
US8312380B2 (en) | 2008-04-04 | 2012-11-13 | Yahoo! Inc. | Local map chat |
US8042051B2 (en) * | 2008-05-30 | 2011-10-18 | International Business Machines Corporation | Apparatus for navigation and interaction in a virtual meeting place |
US20090307189A1 (en) | 2008-06-04 | 2009-12-10 | Cisco Technology, Inc. | Asynchronous workflow participation within an immersive collaboration environment |
US8384738B2 (en) | 2008-09-02 | 2013-02-26 | Hewlett-Packard Development Company, L.P. | Compositing windowing system |
US8468253B2 (en) | 2008-12-02 | 2013-06-18 | At&T Intellectual Property I, L.P. | Method and apparatus for multimedia collaboration using a social network system |
US20100162121A1 (en) | 2008-12-22 | 2010-06-24 | Nortel Networks Limited | Dynamic customization of a virtual world |
US20100169796A1 (en) | 2008-12-28 | 2010-07-01 | Nortel Networks Limited | Visual Indication of Audio Context in a Computer-Generated Virtual Environment |
US8542232B2 (en) | 2008-12-28 | 2013-09-24 | Avaya Inc. | Method and apparatus for monitoring user attention with a computer-generated virtual environment |
US9064023B2 (en) | 2008-12-29 | 2015-06-23 | Avaya Inc. | Providing web content in the context of a virtual environment |
US20100169799A1 (en) | 2008-12-30 | 2010-07-01 | Nortel Networks Limited | Method and Apparatus for Enabling Presentations to Large Numbers of Users in a Virtual Environment |
US8516396B2 (en) | 2009-01-30 | 2013-08-20 | International Business Machines Corporation | Object organization based on user interactions within a virtual environment |
US8425326B2 (en) | 2009-02-20 | 2013-04-23 | Activision Publishing, Inc. | Social network system and method for use with and integration into a video game |
US20100228560A1 (en) | 2009-03-04 | 2010-09-09 | Avaya Inc. | Predictive buddy list-reorganization based on call history information |
US8499085B2 (en) | 2009-03-16 | 2013-07-30 | Avaya, Inc. | Advanced availability detection |
US8386255B2 (en) | 2009-03-17 | 2013-02-26 | Avaya Inc. | Providing descriptions of visually presented information to video teleconference participants who are not video-enabled |
US20100246570A1 (en) | 2009-03-24 | 2010-09-30 | Avaya Inc. | Communications session preparation method and apparatus |
US9325661B2 (en) | 2009-03-30 | 2016-04-26 | Avaya Inc. | System and method for managing a contact center with a graphical call connection metaphor |
US20100262550A1 (en) | 2009-04-08 | 2010-10-14 | Avaya Inc. | Inter-corporate collaboration overlay solution for professional social networks |
US8442189B2 (en) | 2009-06-22 | 2013-05-14 | Avaya Inc. | Unified communications appliance |
US20100332998A1 (en) | 2009-06-26 | 2010-12-30 | Xerox Corporation | Collaborative document environments in three-dimensional virtual worlds |
US9378296B2 (en) | 2010-08-24 | 2016-06-28 | International Business Machines Corporation | Virtual world construction |
US20120268468A1 (en) | 2011-04-20 | 2012-10-25 | Idle Games | System and method for stochastically generating maps of places in a virtual space |
-
2011
- 2011-08-15 KR KR1020137006722A patent/KR101565665B1/ko not_active IP Right Cessation
- 2011-08-15 JP JP2013524903A patent/JP5969476B2/ja not_active Expired - Fee Related
- 2011-08-15 CN CN2011800500223A patent/CN103154982A/zh active Pending
- 2011-08-15 WO PCT/US2011/047724 patent/WO2012024205A2/en active Application Filing
- 2011-08-15 EP EP11818613.9A patent/EP2606466A4/en not_active Withdrawn
- 2011-08-15 US US13/209,812 patent/US8930472B2/en active Active
-
2014
- 2014-12-31 US US14/587,845 patent/US20150127741A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060041684A1 (en) * | 2002-09-17 | 2006-02-23 | Bellsouth Intellectual Property Corporation | Server-based message protocol translation |
US20050215252A1 (en) | 2004-03-26 | 2005-09-29 | Samsung Electronics Co., Ltd. | System and method for providing a messenger service capable of changing messenger status information based on a schedule |
US20080101561A1 (en) * | 2005-07-08 | 2008-05-01 | Nhn Corporation | Messenger notification system and method using synchronization server |
US20090247196A1 (en) | 2008-03-31 | 2009-10-01 | Lg Electronic Inc. | Mobile terminal for performing instant messaging service |
Also Published As
Publication number | Publication date |
---|---|
KR20130064105A (ko) | 2013-06-17 |
WO2012024205A2 (en) | 2012-02-23 |
US8930472B2 (en) | 2015-01-06 |
WO2012024205A3 (en) | 2012-04-26 |
US20150127741A1 (en) | 2015-05-07 |
US20110302509A1 (en) | 2011-12-08 |
EP2606466A2 (en) | 2013-06-26 |
EP2606466A4 (en) | 2014-03-05 |
JP5969476B2 (ja) | 2016-08-17 |
JP2013541075A (ja) | 2013-11-07 |
CN103154982A (zh) | 2013-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101565665B1 (ko) | 네트워크 통신 환경에서 커뮤니컨트 상호작용을 촉진하는 방법 | |
US11088971B2 (en) | Virtual area communications | |
USRE46309E1 (en) | Application sharing | |
US8756304B2 (en) | Relationship based presence indicating in virtual area contexts | |
US9411489B2 (en) | Interfacing with a spatial virtual communication environment | |
US9077549B2 (en) | Creating virtual areas for realtime communications | |
US9065874B2 (en) | Persistent network resource and virtual area associations for realtime collaboration | |
US10366514B2 (en) | Locating communicants in a multi-location virtual communications environment | |
US20090288007A1 (en) | Spatial interfaces for realtime networked communications | |
US20090222742A1 (en) | Context sensitive collaboration environment | |
KR20120118019A (ko) | 공간 통신 환경을 위한 웹 브라우저 인터페이스 | |
US20120246582A1 (en) | Interfacing with a spatial virtual communications environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |