KR100866244B1 - Multi-Party Interactive Collaboration System And Method For Organizing Multi-Party Interactive Collaboration System - Google Patents

Multi-Party Interactive Collaboration System And Method For Organizing Multi-Party Interactive Collaboration System Download PDF

Info

Publication number
KR100866244B1
KR100866244B1 KR1020070001984A KR20070001984A KR100866244B1 KR 100866244 B1 KR100866244 B1 KR 100866244B1 KR 1020070001984 A KR1020070001984 A KR 1020070001984A KR 20070001984 A KR20070001984 A KR 20070001984A KR 100866244 B1 KR100866244 B1 KR 100866244B1
Authority
KR
South Korea
Prior art keywords
service
collaboration
component
node
ace
Prior art date
Application number
KR1020070001984A
Other languages
Korean (ko)
Other versions
KR20080093465A (en
Inventor
김종원
한상우
Original Assignee
광주과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 광주과학기술원 filed Critical 광주과학기술원
Priority to KR1020070001984A priority Critical patent/KR100866244B1/en
Publication of KR20080093465A publication Critical patent/KR20080093465A/en
Application granted granted Critical
Publication of KR100866244B1 publication Critical patent/KR100866244B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management

Abstract

서로 다른 시스템 및 네트워크 환경을 가진 협업 노드들 간에 용이하게 협업 환경을 구축하고 활용할 수 있는 협업 환경을 위한 다자간 협업 시스템 및 다자간 협업 시스템의 구성방법이 개시된다. 먼저, 복수의 협업 노드 각 각에서 수행되는 협업 서비스의 기능에 기초하여 구분된 적어도 하나의 콤포넌트 서비스를 제공하고, 협업 목적에 기초하여 선택된 적어도 하나의 콤포넌트 서비스들간의 연결을 설정한다. 그리고, 복수의 협업 노드들 각각의 자원 상황에 기초하여 콤포넌트 서비스들이 연결된 협업 노드들 또는 자신의 협업 노드에 콤포넌트 서비스를 설정한다.따라서, 주어진 협업 노드의 능력에 맞게 협업 서비스를 선택함으로써 유연하게 협업 노드를 구축할 수 있고, 협업 목적에 맞게 콤포넌트 서비스를 설정하고 서비스들을 합성함으로써 복잡하고 새로운 기능을 가진 협업 서비스를 제공할 수 있다. Disclosed are a multi-party collaboration system and a method of configuring a multi-party collaboration system for a collaboration environment in which a collaboration environment having different system and network environments can be easily constructed and utilized. First, at least one component service divided based on a function of a collaboration service performed in each of a plurality of collaboration nodes is provided, and a connection between at least one component service selected based on a collaboration purpose is established. Then, the component service is configured in the collaboration nodes to which the component services are connected or in the own collaboration node based on the resource situation of each of the plurality of collaboration nodes. Accordingly, the collaboration service can be flexibly selected by selecting the collaboration service according to the capabilities of a given collaboration node. Nodes can be built, and component services can be configured for the purpose of collaboration, and the services can be synthesized to provide complex and new collaboration services.

Description

다자간 협업 시스템 및 다자간 협업 시스템의 구성 방법{Multi-Party Interactive Collaboration System And Method For Organizing Multi-Party Interactive Collaboration System}Multi-Party Interactive Collaboration System And Method For Organizing Multi-Party Interactive Collaboration System

도 1은 본 발명의 일실시예에 따른 다자간 협업 시스템을 설명하기 위한 개념도이다.1 is a conceptual diagram illustrating a multilateral collaboration system according to an embodiment of the present invention.

도 2는 본 발명의 일실시예에 따른 다자간 협업 시스템의 구성을 나타내는 블록도이다.2 is a block diagram illustrating a configuration of a multilateral collaboration system according to an embodiment of the present invention.

도 3은 본 발명의 일실시예에 따른 다자간 협업 시스템에서 ACE 중재자들과 베뉴 서버간의 메시지 교환 과정을 나타내는 흐름도이다.3 is a flowchart illustrating a message exchange process between ACE arbiters and a Venue server in a multi-party collaboration system according to an embodiment of the present invention.

도 4는 본 발명의 일실시예에 따른 다자간 협업 시스템의 소프트웨어 구조를 나타내는 블록도이다.4 is a block diagram illustrating a software structure of a multilateral collaboration system according to an embodiment of the present invention.

도 5a 내지 5e는 본 발명의 일실시예에 따른 콤포넌트 서비스 그룹의 각 서비스 범주에 포함된 콤포넌트 서비스에 대한 서비스 능력을 나타낸다.5A to 5E illustrate service capabilities for component services included in each service category of a component service group according to an embodiment of the present invention.

도 6은 본 발명의 일실시예에 따른 다자간 협업 시스템에서 서비스 초기화 설정 과정을 나타내는 흐름도이다.6 is a flowchart illustrating a service initialization setting process in a multi-party collaboration system according to an embodiment of the present invention.

도 7은 본 발명의 일실시예에 따른 다자간 협업 시스템에서 서비스 합성 과 정을 나타내는 흐름도이다.7 is a flowchart illustrating a service synthesis process in a multi-party collaboration system according to an embodiment of the present invention.

도 8은 본 발명의 일실시예에 따른 다자간 협업 시스템에서 서비스 설정 및 서비스 합성의 예를 나타내는 개념도이다.8 is a conceptual diagram illustrating an example of service setting and service synthesis in a multi-party collaboration system according to an embodiment of the present invention.

* 도면의 주요부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings

400 : 콤포넌트 서비스 그룹 410 : 미디어 서비스 범주400: Component service group 410: Media service category

420 : 네트워킹 서비스 범주 430 : 디스플레이 서비스 범주420: Networking Service Category 430: Display Service Category

440 : 멀티모달 인터랙션 서비스 범주440: Multimodal Interaction Service Category

450 : 데이터/태스크 공유 및 이동 서비스 범주450: Data / task sharing and move service category

500 : ACE 중재 모듈 600 : 의사 결정 모듈500: ACE Arbitration Module 600: Decision Making Module

본 발명은 협업 시스템에 관한 것으로, 더욱 상세하게는 상호작용을 지원하는 지능형 협업 환경을 위한 다자간 협업 시스템 및 다자간 협업 시스템의 구성 방법에 관한 것이다.The present invention relates to a collaboration system, and more particularly, to a method for configuring a multi-party collaboration system and a multi-party collaboration system for an intelligent collaboration environment supporting interaction.

고성능 네트워크, 프로토콜 및 진보된 멀티미디어 기술에 힘입어 전통적인 영상 회의 개념은 점차 진보된 협업 환경(ACE: Advanced Collaboration Environment, 이하 ‘ACE’라 약칭함)으로 확장되고 있다.Thanks to high-performance networks, protocols and advanced multimedia technologies, traditional video conferencing concepts are increasingly being extended to an advanced collaboration environment (abbreviated as ACE).

ACE는 적합한 사람들간에 적절한 데이터를 적절한 시간에 공유하면서 공통의 작업을 수행하고 문제를 풀며, 공통 관심사에 대한 것을 토론할 수 있는 원격 협업 환경을 의미한다. 현재 ACE를 지향하는 초기 시제품들이 연구소와 대기업 등을 중심으로 다자간 미팅, 다자간 세미나,다자간 강의 그리고 원격 공동작업 및 원격 훈련등에 활용되고 있다. ACE is a remote collaboration environment where you can share common data with the right people at the right time, perform common tasks, solve problems, and discuss common interests. Initial prototypes that are ACE-oriented are now being used for multi-party meetings, multi-party seminars, multi-course lectures, and remote collaboration and teletraining, especially in research institutes and large corporations.

ACE 환경에서 효과적인 협업을 위해서는 사용자들이 스트리밍 오디오/비디오, 2D/3D 그래픽스 데이터, 어플리케이션, 문서들과 같은 다양한 종류의 데이터 및 어플리케이션들을 상호작용 방식에 의해 공유할 수 있어야 한다.Effective collaboration in the ACE environment requires users to interact and share a wide variety of data and applications, such as streaming audio / video, 2D / 3D graphics data, applications, and documents.

또한, 공통적으로 사용하는 대형 디스플레이 장치뿐만 아니라 개인 디스플레이 장치상에서 상기 데이터 및 어플리케이션들이 표시될 수 있어야 한다. 그리고 네트워킹은 원격 사용자들의 실시간 미디어 스트림을 분배하기 위해 고려되어야 한다. 또한, 사용자 인터랙션 방식은 상기와 같은 협업 환경을 직관적이고 용이하게 사용할 수 있도록 구성되어야 한다.In addition, the data and applications should be able to be displayed on a personal display device as well as a large display device commonly used. And networking should be considered to distribute the real time media streams of remote users. In addition, the user interaction method should be configured to enable intuitive and easy use of such a collaborative environment.

그러나 종래의 다자간 미팅 시스템은 다자간 미팅 시스템에 참여하는 협업 노드간에 기설정된 데이터 종류 및 어플리케이션만을 공유할 수 있다는 단점이 있다. 또한, 종래의 다자간 미팅 시스템은 다자간 미팅에 참여하는 각각의 협업 노드들이 서로 동일한 시스템 및 어플리케이션을 사용하는 경우에만 다자간 미팅에 참여할 수 있다는 단점이 있다.However, the conventional multi-party meeting system has a disadvantage in that it can only share a predetermined data type and application among the collaboration nodes participating in the multi-party meeting system. In addition, the conventional multi-party meeting system has a drawback that each of the collaboration nodes participating in the multi-party meeting can participate in the multi-party meeting only if they use the same system and application.

따라서, 본 발명의 제1 목적은 서로 다른 시스템 및 네트워크 환경을 가진 협업 노드들 간에 용이하게 협업 환경을 구축하고 활용할 수 있는 다자간 협업 시스템의 구성 방법을 제공하는 것이다.Accordingly, a first object of the present invention is to provide a method for configuring a multilateral collaboration system that can easily build and utilize a collaboration environment between collaboration nodes having different systems and network environments.

또한, 본 발명의 제2 목적은 서로 다른 시스템 및 네트워크 환경을 가진 협업 노드들 간에 용이하게 협업할 수 있도록 하는 다자간 협업 시스템을 제공하는 것이다.In addition, a second object of the present invention is to provide a multi-party collaboration system that enables easy collaboration between collaboration nodes having different systems and network environments.

상술한 본 발명의 제1 목적을 달성하기 위한 본 발명의 일측면에 따른 다자간 협업 시스템의 구성 방법은 복수의 협업 노드 각 각에서 수행되는 협업 서비스의 기능에 기초하여 구분된 적어도 하나의 콤포넌트 서비스를 제공하는 단계와, 협업 목적에 기초하여 선택된 적어도 하나의 콤포넌트 서비스들간의 연결-여기서, 상기 선택된 콤포넌트 서비스들간의 연결은 상기 복수의 협업 노드들간 또는 자신의 협업 노드내에서 이루어짐-을 설정하는 단계 및 상기 복수의 협업 노드들 각각의 자원 상황에 기초하여 상기 콤포넌트 서비스들이 연결된 협업 노드들 또는 자신의 협업 노드에 상기 콤포넌트 서비스를 설정하는 단계를 포함한다. 상기 협업 서비스의 기능에 기초하여 구분된 적어도 하나의 콤포넌트 서비스를 제공하는 단계는 상기 협업 서비스를 미디어 서비스 범주, 네트워킹 서비스 범주, 디스플레이 서비스 범주, 멀티모달 인터랙션 서비스 범주 및 데이터와 태스크 공유 및 이동 서비스 범주로 구분하고, 상기 각각의 범주는 상기 범주의 기능에 상응하는 적어도 하나의 콤포넌트 서비스를 포함할 수 있다. 상기 적어도 하나의 콤포넌트 서비스들간의 연 결을 설정하는 단계는 상기 복수의 협업 노드들이 협업 세션에 참가하여 각 협업 노드들의 서비스 능력을 송수신하는 단계를 포함할 수 있다. 상기 복수의 협업 노드들이 협업 세션에 참가하여 각 협업 노드들의 서비스 능력을 송수신하는 단계는 협업에 참가하기를 원하는 협업 노드가 협업 세션에 참가 요청을 하는 단계와, 가장 먼저 참가 요청을 한 협업 노드를 중앙 조정자로 지정하는 단계와, 협업에 참가하기를 요청한 상기 협업 노드에게 협업에 참가한 각 협업 노드의 중재자에 대한 정보를 제공하는 단계와, 상기 협업에 참가하기를 요청한 협업 노드가 상기 중앙 조정자에게 서비스 능력-상기 서비스 능력은 상기 콤포넌트 서비스의 속성을 기술하기 위한 것으로 서비스의 역할, 유형 및 인터페이스 속성을 포함함-을 제공하는 단계 및 상기 중앙 조정자가 상기 서비스 능력을 제공한 협업 노드에게 협업에 참가한 다른 협업 노드의 서비스 능력을 나타내는 서비스 능력 목록을 제공하는 단계를 포함할 수 있다. 상기 콤포넌트 서비스들간의 연결을 설정하는 단계는 상기 콤포넌트 서비스들간의 연결 정보에 기초하여 상황 정보를 생성하는 단계와, 상기 생성된 상황 정보에 기초하여 서비스 설정 정책을 생성하는 단계 및 상기 서비스 설정 정책에 기초하여 상기 콤포넌트 서비스들간의 연결을 설정하는 단계를 포함할 수 있다. 상기 서비스 설정 정책을 생성하는 단계는 상기 상황 정보에 기초하여 협업 지식을 협업 데이터베이스에서 검색하는 단계와, 상기 검색된 협업 지식을 기초로 현재의 협업 환경을 추론하는 단계 및 상기 추론된 협업 환경에 대응되는 상기 서비스 설정 정책을 정책 데이터 베이스에서 검색하여 상기 서비스 설정 정책을 생성하는 단계를 포함할 수 있다. 상기 콤포넌트 서비스를 설정하는 단계는 상기 선 택된 콤포넌트 서비스들의 파라미터들을 설정함으로써 상기 협업 노드간에 협상 가능한 범위 내에서 서비스 능력을 제한할 수 있다. 상기 다자간 협업 시스템의 구성 방법은 복잡한 협업 임무를 수행하기 위해 서비스 기능을 합성하는 단계를 더 포함할 수 있다. 상기 서비스 기능을 합성하는 단계는 서비스 합성 목표 및 합성하고자 하는 서비스 목록을 서비스 합성기에게 제공하는 단계와 상기 서비스 합성기가 서비스 합성 목표 및 서비스 연결 정보를 포함하는 상황정보를 추론엔진에 제공하는 단계와, 추론 엔진이 상기 상황정보에 상응하는 서비스 합성 정책을 상기 서비스 합성기에 제공하는 단계 및 상기 서비스 합성기가 상기 서비스 합성 정책-상기 합성된 서비스의 서비스 능력 및 서비스 합성에 이용되는 서비스 상호간의 상호작용 방법에 대한 정책을 포함-에 기초하여 서비스를 합성하는 단계를 포함할 수 있다. A method of configuring a multilateral collaboration system according to an aspect of the present invention for achieving the first object of the present invention described above comprises at least one component service classified based on a function of a collaboration service performed at each of a plurality of collaboration nodes. Providing and establishing a connection between at least one component service selected based on a collaboration purpose, wherein the connection between the selected component services is made between the plurality of collaboration nodes or within its own collaboration node; and Setting the component service to collaboration nodes to which the component services are connected or to the own collaboration node based on a resource situation of each of the plurality of collaboration nodes. Providing the at least one component service classified based on the function of the collaboration service may include the collaboration service as a media service category, a networking service category, a display service category, a multimodal interaction service category, and data and task sharing and mobile service categories. Each category may include at least one component service corresponding to a function of the category. The establishing of the connection between the at least one component service may include transmitting and receiving a service capability of each of the collaboration nodes by participating in the collaboration session. The plurality of collaboration nodes participating in the collaboration session and transmitting and receiving the service capability of each collaboration node may include a step in which the collaboration node wanting to participate in the collaboration request to participate in the collaboration session, and the first collaboration node that requested the participation. Designating as a central coordinator, providing information about the moderator of each collaboration node participating in the collaboration to the collaboration node requesting to join the collaboration, and providing the collaboration node requesting to participate in the collaboration to the central coordinator. Providing the capability, wherein the service capability is for describing attributes of the component service, including role, type, and interface attributes of the service; and other collaborations that the central coordinator participates in collaboration with the collaboration node that provided the service capability. Provides a list of service capabilities that represent the service capabilities of the collaboration node. It may include a step. The establishing of the connection between the component services may include generating context information based on connection information between the component services, generating a service configuration policy based on the generated context information, and generating the service configuration policy. Establishing a connection between the component services based on this. The generating of the service setting policy may include searching for collaboration knowledge in a collaboration database based on the context information, inferring a current collaboration environment based on the searched collaboration knowledge, and corresponding to the inferred collaboration environment. Searching for the service setting policy in a policy database to generate the service setting policy. The setting of the component service may limit service capability within a range that can be negotiated between the collaboration nodes by setting parameters of the selected component services. The method of configuring the multilateral collaboration system may further include synthesizing a service function to perform a complex collaboration task. The synthesizing of the service function may include providing a service synthesis target and a list of services to be synthesized to the service synthesizer, and providing the inference engine with context information including the service synthesis target and service connection information. A reasoning engine for providing a service synthesis policy corresponding to the context information to the service synthesizer and a service interaction method in which the service synthesizer is used for service synthesis and service synthesis of the synthesized service. Synthesizing a service based on including a policy for the service.

상술한 본 발명의 제1 목적을 달성하기 위한 본 발명의 다른 측면에 따른 다자간 협업 시스템의 구성 방법은 상기 적어도 하나의 협업 노드에서 각각 실행되고 서비스 기능에 따라 분류된 적어도 하나의 콤포넌트 서비스를 가지는 콤포넌트 서비스 그룹을 제공하는 단계와, 상기 콤포넌트 서비스들간의 서비스 연결 및 서비스 설정을 수행하는 협업 중재 모듈을 제공하는 단계 및 자동으로 상기 서비스 연결, 상기 서비스 설정 및 서비스 합성을 위한 정책을 제공하는 의사 결정 모듈을 제공하는 단계를 포함하되, 협업 목적 및 협업 노드의 성능에 따라 상기 협업 중재 모듈이 상기 의사 결정 모듈로부터 제공된 상기 정책에 기초하여 상기 적어도 하나의 콤포넌트 서비스를 선택하여 -여기서, 상기 선택된 콤포넌트 서비스들간의 연결은 상기 복수의 협업 노드들간 또는 자신의 협업 노드내에서 이루어짐-연결하는 단계 를 포함한다. A method of configuring a multilateral collaboration system according to another aspect of the present invention for achieving the first object of the present invention described above is a component having at least one component service each executed in the at least one collaboration node and classified according to a service function. Providing a service group, providing a collaboration mediation module that performs service connection and service setting between the component services, and a decision module that automatically provides a policy for the service connection, service setting, and service synthesis And providing the at least one component service based on the policy provided from the decision module by the collaboration mediation module according to the collaboration purpose and the performance of the collaboration node, wherein the at least one component service is between the selected component services. Connection of the plurality of collaboration Making-connecting between nodes or within its own collaboration node.

상기 협업 중재 모듈은 협업 사용 모드 및 상기 협업 사용 모드에 필요한 콤포넌트 서비스의 목록에 기초하여 서비스의 연결을 수행하는 서비스 연결기와, 협업 노드의 자원 상황에 기초하여 상기 콤포넌트 서비스들의 파라미터를 설정함으로써 서비스의 최적화 작업을 수행하는 서비스 설정기 및 확장된 서비스 기능을 제공하기 위해 상기 콤포넌트 서비스를 합성하는 서비스 합성기를 포함할 수 있다. 상기 의사 결정 모듈은 상기 협업 중재 모듈로부터 제공된 상황 정보에 기초하여 상기 서비스 연결, 서비스 설정 및 서비스 합성에 대한 정책을 제공하는 추론엔진과, 협업 목적 및 협업 상황별 컨텍스트들을 과거로부터 축적함으로써 일반화된 협업 환경을 위한 정보가 구축된 지식 데이터베이스 및 상기 상황 정보에 대응되는 정책이 축적된 정책 데이터베이스를 포함할 수 있다.The collaborative arbitration module includes a service connector for connecting a service based on a collaboration use mode and a list of component services required for the collaboration use mode, and setting parameters of the component services based on a resource situation of a collaboration node. A service synthesizer for performing an optimization task and a service synthesizer for synthesizing the component service to provide an extended service function. The decision making module generalizes collaboration by inferring from the past an inference engine that provides a policy for the service connection, service setting, and service synthesis based on the context information provided from the collaboration mediation module, and contextual contexts for collaboration purposes and collaboration contexts. It may include a knowledge database in which information for the environment is built and a policy database in which policies corresponding to the situation information are accumulated.

상술한 본 발명의 제2 목적을 달성하기 위한 본 발명의 일측면에 따른 다자간 협업 시스템은 적어도 하나의 콤포넌트 서비스를 설정하고 상기 복수의 협업 노드들 각각의 자원 상황에 기초하여 협업 목적에 상응하는 콤포넌트 서비스를 검색하여 협업을 위한 서비스를 구성하는 협업 중재자를 가지는 복수의 협업 노드 및 상기 복수의 협업 노드들과 네트워크를 통해 연결되고, 상기 복수의 협업 노드별로 분산되어 있는 협업 정보들에 기초하여 상기 협업 노드들간의 초기화 작업을 수행하는 베뉴 서버를 포함한다. 상기 베뉴서버는 협업 세션에 참가중인 협업 중재자들의 정보를 제공하고 상기 베뉴서버에 최초로 접속한 협업 중재자를 중앙 조정자로 지정하여 상기 중앙 조정자를 통해 상기 적어도 하나의 협업 중재자들이 통신할 수 있도록 할 수 있다. 상기 복수의 협업 노드는 복수의 네트워크 디스플레이 장치 및 디스플레이 제어 장치가 LAN(Local Area Network)를 통해 연결된 스마트 디스플레이 시스템을 포함할 수 있다. 상기 복수의 협업 노드는 인터랙티브 디스플레이를 지원하기 위한 스마트 포인터, 스마트 핸드 트래커, 로케이션 트래커 중 적어도 하나를 포함할 수 있다.The multilateral collaboration system according to an aspect of the present invention for achieving the above-described second object of the present invention sets up at least one component service and is a component corresponding to a collaboration purpose based on the resource situation of each of the plurality of collaboration nodes. The collaboration is based on a plurality of collaboration nodes having a collaboration moderator that searches for a service and configures a service for collaboration, and the collaboration information that is connected through the network with the plurality of collaboration nodes and distributed by the plurality of collaboration nodes. Includes a Venue Server that performs initialization tasks between nodes. The Venue Server may provide information of the Collaboration Moderators participating in the Collaboration Session and designate a Collaboration Moderator initially connected to the Venue Server as a Central Coordinator so that the at least one Collaboration Moderators can communicate through the Central Coordinator. . The plurality of collaboration nodes may include a smart display system in which a plurality of network display devices and a display control device are connected through a local area network (LAN). The plurality of collaboration nodes may include at least one of a smart pointer, a smart hand tracker, and a location tracker for supporting an interactive display.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.As the present invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description.

그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.

그리고, 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. The term and / or includes a combination of a plurality of related items or any item of a plurality of related items.

이하, 첨부한 도면들을 참조하여 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Hereinafter, the same reference numerals are used for the same components in the drawings, and duplicate descriptions of the same components are omitted.

이하, 다자간 협업 시스템은 다자간 미팅, 다자간 세미나, 다자간 강의, 다자간 원격 공동작업, 다자간 원격 훈련등을 포함하는 시스템을 나타낸다.Hereinafter, the multi-party collaboration system represents a system including multi-party meetings, multi-party seminars, multi-party lectures, multi-party remote collaboration, multi-party remote training, and the like.

도 1은 본 발명의 일실시예에 따른 다자간 협업 시스템을 설명하기 위한 개념도이다.1 is a conceptual diagram illustrating a multilateral collaboration system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일실시예에 따른 다자간 협업 시스템은 협업 세션에 참가하는 참가자들인 ACE(Advanced Collaboration Environment) 노드(100)들간에 네트워킹을 통해 미디어, 데이터 및 어플리케이션 들을 공유한다. Referring to FIG. 1, a multi-party collaboration system according to an embodiment of the present invention shares media, data, and applications through networking between Advanced Collaboration Environment (ACE) nodes 100, which are participants participating in a collaboration session.

각, ACE 노드(100)의 사용자는 오디오, 비디오, 3D 그래픽 및 차트 등을 네트워크가 연결된 디스플레이 장치 상에서 공유하고 문서와 작업 내용을 공유함으로써 공동의 목표를 달성하기 위해 원격지에 위치한 다른 ACE 노드(100)의 사용자 들과 효과적으로 협업할 수 있다.Each user of the ACE node 100 can share audio, video, 3D graphics, and charts on a networked display device and share documents and work to achieve a common goal in order to achieve a common goal. Can effectively collaborate with other users.

그리고, 각 ACE 노드(100)의 오디오, 비디오 등과 같은 미디어 서비스들은 실시간 오디오 및/또는 비디오를 획득한 후 미디어 스트림의 형태로 네트워크를 통해 다른 ACE 노드(100)들에게 제공한다. 따라서, 멀티캐스트를 통해 모든 ACE 노드(100)들의 사용자들에게 고화질 영상을 제공함으로써 특정 ACE 노드(100)에서 근접촬영(close-up)된 사용자의 모습과 전체적인 배경을 원격지의 다른 ACE 노드(100)의 사용자들에게 보여줄 수 있다.Media services such as audio and video of each ACE node 100 obtain real-time audio and / or video and provide them to other ACE nodes 100 through a network in the form of a media stream. Accordingly, by providing high-quality video to users of all ACE nodes 100 through multicast, the user's appearance and overall background of a user close-up at a specific ACE node 100 can be displayed. ) Can be shown to users.

또한, 각 ACE 노드(100)들의 디스플레이 서비스는 H.261, DV(Digital Video), HDV (High-definition DV) 등과 같은 다양한 영상 포맷을 수신하고, 수신한 영상을 프로젝터, LCD 모니터 및/또는 격자형 디스플레이 등의 디스플레이 장치 에 표시한다. 특히 격자형 디스플레이를 위한 네트워크 디스플레이 능력은 원격 ACE 노드(100)들로부터 수신한 다수의 고해상도 영상 및 이미지를 지원함으로써 고해상도의 디스플레이를 지원한다.In addition, the display service of each ACE node 100 receives various image formats such as H.261, digital video (DV), high-definition DV (HDV), and the like, and receives the received image from a projector, an LCD monitor, and / or a grid. Display on display devices such as displays. In particular, the network display capability for grid displays supports high resolution displays by supporting multiple high resolution images and images received from remote ACE nodes 100.

또한, 각 ACE 노드(100)들의 포인팅 서비스는 사용자들로 하여금 인터랙티브(interactive) 격자형 디스플레이 상에서 특정 위치를 포인트하거나 영상/이미지를 이동할 수 있도록 한다. 그리고 위치 추적 서비스는 사용자 위치를 추적하고, 손 동작 추적 서비스(hand motion tracking service)는 3D 모델을 조작(예를 들면, 가상 객체를 잡고 이를 격자형 디스플레이에 표시하고 ACE 노드들간에 공유)하기 위한 편리한 방법을 제공함으로써 인터랙티브 디스플레이를 지원한다.In addition, the pointing service of each ACE node 100 allows users to point to a specific location or move images / images on an interactive grid display. The location tracking service tracks the user's location, and the hand motion tracking service is used to manipulate 3D models (e.g., grab virtual objects and display them on a grid display and share them among ACE nodes). It provides an interactive way to support interactive displays.

도 2는 본 발명의 일실시예에 따른 다자간 협업 시스템의 구성을 나타내는 블록도이다.2 is a block diagram illustrating a configuration of a multilateral collaboration system according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일실시예에 따른 다자간 협업 시스템은 적어도 하나의 ACE 노드(100) 및 개인 ACE 노드(Personal ACE Node)(200)들이 P2P 오버레이 네트워크(300)를 통해 서로 연결된다.2, in a multi-party collaboration system according to an embodiment of the present invention, at least one ACE node 100 and a personal ACE node 200 are connected to each other through a P2P overlay network 300. .

각 ACE 노드(100)는 고품질의 음성 및 영상을 획득하고 이를 전송하기 위해 적어도 하나의 오디오 장치(101), 비디오 수용 장치(103) 및 비디오 공급 장치(105)를 포함한다. 또한, 획득한 비디오 데이터를 표시하기 위해 스마트 디스플레이 시스템(120)을 포함한다. 스마트 디스플레이 시스템(120)은 고성능 LAN(Local Area Network)으로 연결된 적어도 하나의 네트워크 디스플레이 장치(121), 디스플레이 제어 장치(123) 및 게이트웨이 장치(125)들로 구성된다.Each ACE node 100 includes at least one audio device 101, a video receiving device 103 and a video supply device 105 to obtain and transmit high quality voice and video. It also includes a smart display system 120 to display the acquired video data. The smart display system 120 includes at least one network display device 121, a display control device 123, and a gateway device 125 connected by a high performance local area network (LAN).

또한, ACE 노드(100)는 디스플레이를 편리하고 직관적으로 조작하기 위해 스마트 포인터(smart pointer)(131), 스마트 핸드 트래커(smart hand tracker)(133), 로케이션 트래커(location tracker)(135)를 포함할 수 있다. In addition, the ACE node 100 includes a smart pointer 131, a smart hand tracker 133, and a location tracker 135 to conveniently and intuitively manipulate the display. can do.

그리고, 각 ACE 노드는 P2P 오버레이 네트워크(300)를 구성하여 협업 데이터를 다른 ACE 노드(100)와 송수신하기 위한 커넥터(connector)(141)를 포함한다. 여기서 협업 데이터란 협업에 사용되는 오디오, 비디오, 텍스트 등의 멀티미디어 데이터를 포함하는 개념이다.In addition, each ACE node includes a connector 141 for constructing a P2P overlay network 300 to transmit and receive collaborative data with another ACE node 100. Here, the collaborative data is a concept including multimedia data such as audio, video, and text used for collaboration.

또한, 각각의 ACE 노드(100)들은 ACE 중재자(ACE Mediator)(150)를 포함하고, 각각의 ACE 중재자(150)들은 P2P 오버레이 네트워크(300)를 통해 베뉴 서버(Venue Server)(350)와 연결된다.In addition, each of the ACE nodes 100 includes an ACE Mediator 150, and each of the ACE Moderators 150 connects with a Venue Server 350 via a P2P overlay network 300. do.

ACE 중재자(150)는 주어진 협업 세션에 적합하게 서비스를 구성한다. 즉, ACE 중재자(150)는 콤포넌트 서비스를 설정하고, 협업 목적에 맞는 콤포넌트 서비스를 검색하여 복합적인 기능을 가지는 확장된 서비스로 합성한다.ACE moderator 150 configures the service for a given collaboration session. That is, the ACE arbiter 150 sets up a component service, searches for a component service suitable for a collaboration purpose, and combines the component service into an extended service having a complex function.

베뉴 서버(350)는 ACE 노드별로 분산되어 있는 협업 정보들을 동기화하기 위한 중앙집중식 가상 공간이다. 베뉴 서버(350)는 각 ACE 중재자(150)들 간의 메시지 교환을 가능하게 하기 위한 초기화 작업을 수행한다. Venue server 350 is a centralized virtual space for synchronizing collaboration information distributed by ACE node. Venue server 350 performs an initialization operation to enable message exchange between each ACE arbiter 150.

즉, 베뉴 서버(350)는 현재 협업 세션에 참가중인 ACE 중재자(150)들을 알려주고 최초로 접속한 ACE 중재자(150)를 중앙 조정자로 지정하여 다른 ACE 중재자(150)들과 통신하기 위한 중앙 서버로 지정한다. 또한, 베뉴 서버(350)는 중앙 서버로 지정되어 중앙 조정자 역할을 하는 ACE 중재자(150)가 협업 세션을 이탈 하는 경우에는 현재 협업 세션에 참가중인 임의의 ACE 중재자(150)를 중앙 조정자로 지정한다.That is, the Venue Server 350 informs the ACE Moderators 150 currently participating in the collaboration session and designates the ACE Moderator 150 that is first connected as the central coordinator as a central server for communicating with other ACE Moderators 150. do. In addition, the Venue Server 350 designates any ACE Moderator 150 currently participating in the Collaboration Session as the Central Coordinator when the ACE Moderator 150 acting as the Central Coordinator is separated from the collaboration session. .

개인 ACE 노드(200)들은 개인이 사용할 수 있도록 ACE 노드(100)를 축약한 것으로, 오디오 장치(101), 비디오 수용 장치(103), 비디오 공급 장치(105), 랩탑(또는 개인용 컴퓨터)(137), 커넥터(141) 및 ACE 중재자(150)를 포함한다.Personal ACE nodes 200 are abbreviations of ACE node 100 for personal use, and include audio device 101, video receiving device 103, video supply device 105, laptop (or personal computer) 137. ), A connector 141 and an ACE arbiter 150.

개인 ACE 노드(200)에 포함된 각 구성요소는 ACE 노드(100)에 포함된 동일 부호를 가지는 구성요소와 동일한 기능을 수행하므로 중복을 피하기 위해 설명을 생략한다.Each component included in the private ACE node 200 performs the same function as a component having the same reference numeral included in the ACE node 100 and thus description thereof will be omitted to avoid duplication.

도 2에 도시한 ACE 노드들에 포함된 각각의 장치들은 협업 목적, 시스템, 네트워크 성능 등과 같은 협업 환경 및 사용자의 요구에 따라 선택적으로 사용될 수 있다. 그리고, 각 ACE 노드에 포함된 장치들은 실질적으로 1 내지 10Gbps급 고성능 LAN(Local Area Network)에 연결되어 있으며, ACE 노드들은 다시 10Gbps급의 WAN(Wide Area Network)에 연결될 수 있다.Each device included in the ACE nodes shown in FIG. 2 may be selectively used according to a user's needs and a collaboration environment such as a collaboration purpose, a system, network performance, and the like. In addition, devices included in each ACE node are substantially connected to a 1 to 10 Gbps high-performance local area network (LAN), and the ACE nodes may be connected to a 10 Gbps wide area network (WAN).

도 3은 본 발명의 일실시예에 따른 다자간 협업 시스템에서 ACE 중재자들과 베뉴 서버간의 메시지 교환 과정을 나타내는 흐름도이다. 도 3에서는 세 개의 ACE 중재자가 베뉴 서버와 메시지를 교환하는 것으로 예를 들어 설명하지만, ACE 중재자의 개수는 세 개 이상이 될 수도 있음은 물론이다.3 is a flowchart illustrating a message exchange process between ACE arbiters and a Venue server in a multi-party collaboration system according to an embodiment of the present invention. In FIG. 3, three ACE arbiters exchange messages with a Venue server. For example, the number of ACE arbiters may be three or more.

먼저, ACE 중재자1(100.1)은 초기화된 후 협업 세션에 참가하기 위한 참가 요청 신호를 베뉴 서버(350)에 전송한다(단계 S101). 베뉴 서버(350)는 ACE 중재자1(100.1)로부터 참가 요청 신호를 수신하고, 가장 먼저 참가 요청 신호를 전송한 ACE 중재자1(100.1)를 중앙 조정자로 지정한다(단계 S103). First, the ACE arbiter 1 100.1 initializes and transmits a join request signal for joining a collaboration session to the venue server 350 (step S101). Venue server 350 receives the join request signal from ACE Moderator 1 100.1, and designates the ACE Moderator 1 100.1, which sent the join request signal first, as the central coordinator (step S103).

이후, ACE 중재자2(100.2)가 초기화되어 협업 세션에 참가하기 위한 참가 요청 신호를 베뉴 서버(350)에 전송한다(단계 S105). 베뉴 서버(350)는 ACE 중재자2(100.2)로부터 참가 요청 신호를 수신하고, 협업 세션에 참가중인 모든 ACE 중재자(예를 들면 ACE 중재자1)의 정보를 ACE 중재자2(100.2)에게 전달한다(단계 S107).Thereafter, the ACE arbiter 2 (100.2) is initialized to transmit a join request signal for joining the collaboration session to the venue server 350 (step S105). Venue server 350 receives a join request signal from ACE moderator 2 (100.2) and delivers information of all ACE moderators (eg, ACE moderator 1) participating in the collaboration session to ACE moderator 2 (100.2) (step). S107).

ACE 중재자2(100.2)는 베뉴 서버(350)로부터 ACE 중재자1(100.1)의 정보에 기초하여 ACE 중재자1(100.1)에 자신이 관리하고 있는 콤포넌트 서비스들의 서비스 능력(예를 들면 역할, 유형 및 인터페이스)을 제공한다(단계 S109). ACE arbiter 2 (100.2) is based on the information of the ACE arbiter 1 (100.1) from the Venue server 350, the service capabilities (e.g. roles, types, and interfaces) of the component services it manages in the ACE arbiter 1 (100.1) (Step S109).

중앙 조정자 역할을 수행하는 ACE 중재자1(100.1)은 ACE 중재자2(100.2)에게 각 ACE 중재자1(100.1)의 서비스 능력의 목록을 제공한다(단계 S111).The ACE Moderator 1 (100.1) serving as the central coordinator provides the ACE Moderator 2 (100.2) with a list of the service capabilities of each ACE Moderator 1 (100.1) (step S111).

이후, ACE 중재자3(100.3)가 초기화되어 협업 세션에 참가하기 위한 참가 요청 신호를 베뉴 서버(350)에 전송한다(단계 S113). 베뉴 서버(350)는 ACE 중재자3(100.3)로부터 참가 요청 신호를 수신하고, 협업 세션에 참가중인 모든 ACE 중재자(예를 들면 ACE 중재자1, ACE 중재자2)의 정보를 전달한다(단계 S115).Thereafter, the ACE arbiter 3 (100.3) is initialized to transmit a join request signal for joining the collaboration session to the venue server 350 (step S113). Venue server 350 receives a join request signal from ACE moderator 3 (100.3) and transfers information of all ACE moderators (eg, ACE moderator 1, ACE moderator 2) participating in the collaboration session (step S115).

ACE 중재자3(100.3)는 베뉴 서버(350)로부터 ACE 중재자1(100.1)의 정보에 기초하여 ACE 중재자1(100.1)에 자신이 관리하고 있는 콤포넌트 서비스들의 서비스 능력을 제공한다(단계 S117). The ACE arbiter 3 (100.3) provides the service capability of the component services managed by the ACE arbiter 1 100.1 based on the information of the ACE arbiter 1 100.1 from the venue server 350 (step S117).

중앙 조정자 역할을 수행하는 ACE 중재자1(100.1)은 ACE 중재자3(100.3)에게 각 ACE 중재자들(예를 들면, ACE 중재자1 및 ACE 중재자2)로부터 수신한 서비스 능 력의 목록을 제공한다(단계 S119).Acting as the central coordinator, ACE Moderator 1 (100.1) provides ACE Moderator 3 (100.3) with a list of service capabilities received from each of the ACE Moderators (eg, ACE Moderator 1 and ACE Moderator 2). S119).

이후, 각 ACE 중재자들은 중앙 조정자 역할을 수행하는 ACE 중재자1(100.1)를 통하여 서비스 연결, 설정 및 합성 등의 작업을 수행한다.Thereafter, each ACE arbiter performs operations such as service connection, configuration, and synthesis through ACE arbiter 10.1, which serves as a central coordinator.

도 4는 본 발명의 일실시예에 따른 다자간 협업 시스템의 소프트웨어 구조를 나타내는 블록도이고, 도 5a 내지 5e는 본 발명의 일실시예에 따른 콤포넌트 서비스 그룹의 각 서비스 범주에 포함된 콤포넌트 서비스에 대한 서비스 능력을 나타낸다.4 is a block diagram illustrating a software structure of a multi-party collaboration system according to an embodiment of the present invention, and FIGS. 5A to 5E illustrate component services included in each service category of a component service group according to an embodiment of the present invention. Indicates service capability.

도 4 및 도 5a 내지 5e를 참조하여 본 발명의 일실시예에 따른 다자간 협업 시스템의 소프트웨어 구조를 설명하면, 다자간 협업 시스템의 소프트웨어 구조는 콤포넌트 서비스 그룹(400), ACE 중재 모듈(500) 및 의사 결정 모듈(600)을 포함하여 구성되고, 고유한 협업 요소 기능을 수행하는 각각의 서비스를 콤포넌트(component)화 하여 각 ACE 노드의 능력과 사용 모드에 따라 콤포넌트 서비스들의 집합을 선택함으로써 각 ACE 노드가 유연하게 구축될 수 있도록 한다.4 and 5A to 5E, the software structure of the multilateral collaboration system according to an embodiment of the present invention will be described. The software structure of the multilateral collaboration system includes a component service group 400, an ACE arbitration module 500, and a pseudo doctor. Each ACE node is configured by including a decision module 600 and componentizing each service that performs a unique collaborative element function to select a set of component services according to the capabilities and usage modes of each ACE node. Allow for flexible deployment.

콤포넌트 서비스 그룹(Component Service Group)(400)은 각 콤포넌트 서비스의 기능에 따라 분류된 미디어(Media) 서비스 범주(410), 네트워킹(Networking) 서비스 범주(420), 디스플레이(Display) 서비스 범주(430), 멀티모달 인터랙션(Multimodal Interaction) 서비스 범주(440) 및 데이터/태스크 공유 및 이동(Data/Task Sharing and Migration) 서비스 범주(450)를 포함하여 구성된다.The component service group 400 includes a media service category 410, a networking service category 420, and a display service category 430 classified according to the function of each component service. , A multimodal interaction service category 440 and a data / task sharing and migration service category 450.

콤포넌트 서비스 그룹(400)의 각 서비스 범주(410 내지 450)에 포함된 각각의 콤포넌트 서비스는 ACE 노드의 구성을 보조하기 위한 기본적이고 고유한 기능을 갖는다. 콤포넌트 서비스는 진보된 협업에 가치를 부여하기 위한 특정 기능을 수행하기 위해 도 2에 도시된바와 같은 여러 장치들과 소프트웨어 프로그램(예를 들면, 오디오 또는 비디오 툴)과 같은 자원들에 접근할 수 있다. Each component service included in each service category 410 through 450 of the component service group 400 has a basic and unique function to assist in the configuration of the ACE node. Component services can access resources such as various devices and software programs (eg, audio or video tools) as shown in FIG. 2 to perform specific functions to add value to advanced collaboration. .

각 콤포넌트 서비스들은 분산 콤포넌트 기술을 기반으로 개발된다. 그러므로, 각 ACE 노드는 기본적으로 네트워크상에서 각 콤포넌트 서비스들의 모든 인스턴스(instance)들에게 접근하여 제어하는 것이 허용된다.Each component service is developed based on distributed component technology. Therefore, each ACE node is basically allowed to access and control all instances of each component service on the network.

콤포넌트 서비스 그룹(400)의 각 콤포넌트 서비스는 서비스 능력(service capability)이라 불리는 각 콤포넌트 서비스의 속성을 기술하기 위한 정보를 포함한다. Each component service of the component service group 400 includes information for describing an attribute of each component service called a service capability.

서비스 능력은 역할(role), 유형(type) 및 인터페이스(interface) 속성으로 구성된다. 역할 속성은 주어진 콤포넌트 서비스에 대하여 서비스 기능의 제공, 수용 및 조정에 따라 공급자(producer), 수용자(consumer), 조정자(coodinator)로 분류된다. Service capabilities consist of role, type, and interface attributes. Role attributes are classified into producers, consumers, and coordinators according to the provision, acceptance and coordination of service functions for a given component service.

유형 속성은 소정의 콤포넌트 서비스에 대한 기능적 분류(예를 들면, 비디오, 디스플레이, 네트워킹, 인터랙션, 공유, 이동)를 나타낸다. 그리고, 인터페이스 속성은 콤포넌트 서비스에 접근하기 위한 호출 방법을 나타낸다.The type attribute represents a functional classification (eg, video, display, networking, interaction, sharing, mobility) for a given component service. The interface property represents a calling method for accessing a component service.

미디어 서비스 범주(410)는 미디어 공급 서비스(Media Producer Service)(411), 미디어 수용 서비스(Media Consumer Service)(413) 및 미디어 조정 서비스(Media Arbitration Service)(415)의 콤포넌트 서비스를 포함한다.Media service category 410 includes component services of Media Producer Service 411, Media Consumer Service 413, and Media Arbitration Service 415.

미디어 공급 서비스(411)는 ACE 노드의 전경 및 배경 영상을 획득한 후, 다 른 ACE 노드들에게 전달한다. 이를 위해 미디어 공급 서비스는 미디어 툴(Media tool)의 관리 및 운용을 통해서 사용자에 의해 의도된 영상 코덱, 영상 크기 및 전송률 등과 같은 영상품질의 선택 요소들을 반영하도록 다양한 영상 장치 및 어플리케이션을 설정 및/또는 실행하여 영상을 획득한다.The media supply service 411 acquires the foreground and background images of the ACE node and delivers it to other ACE nodes. To this end, the media supply service configures and / or sets various video devices and applications to reflect selection factors of image quality such as image codec, image size and transmission rate intended by the user through management and operation of a media tool. To obtain the image.

또한, 미디어 공급 서비스(411)는 실시간으로 획득한 협업 공간의 전경 및/또는 배경 영상을 기설정된 전송 프로토콜과 멀티캐스트 주소를 통해 협업 세션에 참가한 ACE 노드들의 미디어 수용자에게 스트림 형태로 전달한다. 여기서 전송 프로토콜과 멀티캐스트 주소는 미디어 조정 서비스(415) 또는 사용자의 수동 구성을 통해 설정될 수 있다.In addition, the media supply service 411 delivers the foreground and / or background image of the collaboration space obtained in real time to the media receivers of the ACE nodes participating in the collaboration session in the form of a stream through a predetermined transmission protocol and a multicast address. Here, the transport protocol and the multicast address may be set through the media coordination service 415 or the user's manual configuration.

미디어 수용 서비스(413)는 다른 ACE 노드들로부터 협업 영상을 제공받고 제공 받은 영상을 표시한다.The media receiving service 413 receives a collaborative video from other ACE nodes and displays the video.

이를 위해 미디어 수용 서비스(413)는 미디어 조정 서비스(415) 또는 사용자의 수동 설정을 통해 상호 합의된 전송 프로토콜 및 멀티캐스트 주소를 통해 미디어 공급자가 제공한 영상을 수신한다. To this end, the media receptive service 413 receives the image provided by the media provider through the mutually agreed transport protocol and multicast address through the media coordination service 415 or the user's manual setup.

그리고 미디어 수용 서비스(413)는 영상 코덱 및/또는 어플리케이션을 이용하여 수신된 영상을 복호화하여 RGB(Red, Green, Blue) 형태의 데이터로 변환한다. 복호화된 영상은 공유되지 않은 로컬 장치에서 재생되거나 네트워크 지원 디스플레이 장치에 제공된다.The media receiving service 413 decodes the received image using an image codec and / or an application and converts the received image into RGB (Red, Green, Blue) data. The decoded video is played on a local device that is not shared or provided to a network supported display device.

미디어 조정 서비스(415)는 실시간 미디어 서비스의 경험 품질(QoE: Quality of Experience)의 향상을 위한 문제해결(trouble shooting)의 역할을 수행한다. The media coordination service 415 plays a role of trouble shooting for improving the quality of experience (QoE) of the real-time media service.

이를 위해 미디어 조정 서비스(415)는 자신이 소속된 ACE 노드의 미디어 공급자에게 영상 전달을 위한 멀티캐스트 주소를 할당한 후 미디어 공급자의 속성(예를 들면 영상 코덱 및 어플리케이션)을 다른 ACE 노드들의 미디어 조정 서비스에게 제공한다. 또한, 미디어 수용자측의 사용자가 원하는 미디어 공급자를 선택하여 미디어 수용자와 연결시킴으로써 미디어 수용자가 선택적인 영상을 제공받을 수 있도록 유도한다.To this end, media coordination service 415 allocates a multicast address for video delivery to the media provider of its own ACE node and then adjusts media provider's properties (e.g., video codec and application) to media of other ACE nodes. Provide service. In addition, the user of the media receiver selects a desired media provider and connects with the media receiver to induce the media receiver to receive a selective image.

또한, 미디어 조정 서비스(415)는 미디어 공급자와 미디어 수용자 사이에 서비스 능력차이로 인해 비정상적인 영상 전달이 이루어지는 경우에 미디어 공급자와 미디어 수용자 사이의 서비스 능력 차이를 파악한 후 이를 극복하기 위한 적절한 대책을 제공함으로써 연속적인 미디어 전달이 이루어질 수 있도록 한다. In addition, the media coordination service 415 identifies the service capability difference between the media provider and the media receiver in case of abnormal video delivery due to the service capability difference between the media provider and the media receiver, and then provides appropriate measures to overcome the problem. Allow for continuous media delivery.

예를 들어 미디어 조정 서비스(415)는 미디어 공급자와 미디어 수용자간에 서비스 능력 차이가 있는 경우에는 트랜스코더와 같은 부가 서비스를 제공함으로써 서비스 능력 차이를 극복한다.For example, the media coordination service 415 overcomes the service capability difference by providing an additional service such as a transcoder when there is a service capability difference between the media provider and the media audience.

그리고, 미디어 조정 서비스(415)는 가변적인 네트워크 및 시스템 성능에 대처하기 위해 네트워크 및 시스템 성능에 의존적인 종단간 미디어 품질을 분석하고 분석된 결과에 기초하여 어플리케이션 수준의 영상 품질 제어용 파라미터와 같은 적절한 적응형 전송 정책을 미디어 공급자와 미디어 수용자에게 제시함으로써 네트워크 및 시스템 성능에 적합한 적응형 미디어가 전달될 수 있도록 한다.Media coordination service 415 then analyzes end-to-end media quality dependent on network and system performance to cope with variable network and system performance, and adapts appropriately such as application level image quality control parameters based on the analyzed results. Providing media delivery policies to media providers and media audiences enables them to deliver adaptive media suitable for network and system performance.

네트워킹 서비스 범주(420)는 멀티캐스트 연결 서비스(Network Connector Service)(421), NAT/방화벽 횡단 서비스(NAT/Firewall Traversal Service)(423) 및 네트워크 모니터 서비스(Network Monitoring Service)(425)의 콤포넌트 서비스를 포함한다.The networking service category 420 is a component service of the Multicast Network Service (421), the NAT / Firewall Traversal Service (423), and the Network Monitoring Service (425). It includes.

멀티캐스트 연결 서비스(421)는 멀티캐스트 연결성을 갖지 않는 ACE 노드들 상호간의 멀티캐스트 연결성을 제공한다.The multicast connection service 421 provides multicast connectivity between ACE nodes that do not have multicast connectivity.

즉, 멀티캐스트 연결 서비스(421)는 멀티캐스트를 부분적으로 지원(hybrid multicast)하는 네트워크상에 존재하는 멀티캐스트 네트워킹 기반을 둔 ACE 노드들 간의 통신과정에서 응용 계층에서의 멀티캐스트 터널링 프로토콜, 멀티캐스트 루프 해결 기법 및/또는 부분적인 멀티캐스트를 지원하는 서버의 정보 설정 등을 통하여 별도의 미디어 전송 프로그램의 수정이나 복잡한 네트워크의 설정 없이 투명하고 효율적인 멀티캐스트 연결성을 제공한다.That is, the multicast connection service 421 is a multicast tunneling protocol and a multicast in the application layer in the process of communication between ACE nodes based on multicast networking existing on a partially multicast network. It provides transparent and efficient multicast connectivity without modification of media transmission program or complicated network setting through loop resolution technique and / or server information supporting partial multicast.

NAT(Network Address Translation)/방화벽 횡단 서비스(423)는 NAT 및/또는 방화벽 기반의 사설 네트워크에 연결된 ACE 노드들 간에 멀티캐스트 연결성을 제공한다. Network Address Translation (NAT) / Firewall Crossing Service 423 provides multicast connectivity between ACE nodes connected to a NAT and / or firewall-based private network.

즉, NAT/방화벽 횡단 서비스(423)는 NAT 및/또는 방화벽 장치에 변화를 주거나 관리자에 의한 NAT 및/또는 방화벽 장치의 설정을 바꾸지 않고 사설 네트워크에 연결된 ACE 노드에게 투명한 멀티캐스트 연결성을 제공한다.That is, NAT / firewall traversal service 423 provides transparent multicast connectivity to ACE nodes connected to a private network without changing NAT and / or firewall devices or changing the settings of NAT and / or firewall devices by an administrator.

이를 위해, NAT/방화벽 횡단 서비스(423) NAT과 방화벽 장치를 통과시 내부 네트워크에서 외부 네트워크로의 연결 요청이 선행되어야 한다는 점을 이용하여 네트워크 연결 설정시에 내부 네트워크에서 외부 네트워크에 연결 요청을 선행하고, 이때 설정된 정보를 이용하여 외부 네트워크에서 다시 내부 네트워크로 연결 요청 을 하여 인터랙티브 멀티캐스트 연결성을 제공한다.To this end, the NAT / Firewall Crossing Service 423 precedes the connection request from the internal network to the external network when establishing a network connection by taking advantage of the fact that the connection request from the internal network to the external network must be preceded when passing through the NAT and the firewall device. At this time, the connection information is requested from the external network to the internal network using the set information to provide interactive multicast connectivity.

네트워크 모니터 서비스(425)는 멀티캐스트를 기반으로 통신하는 ACE 노드들 사이에 멀티캐스트 연결성 및 네트워킹 성능 감시한다. The network monitor service 425 monitors multicast connectivity and networking performance between ACE nodes communicating on a multicast basis.

즉, 네트워크 모니터 서비스(425)는 네트워크 모니터링의 실행 여부 설정 및 네트워크 모니터링 서버 정보 설정을 통해 각 ACE 노드들이 공유하고 있는 멀티캐스트 주소로 자신의 존재를 알리는 탐침 패킷(Probe Packet)을 주기적으로 전송하여 탐침 패킷이 제공하는 ACE 노드의 정보, 패킷의 일련번호 및/또는 시간정보를 기반으로 각 ACE 노드간의 멀티캐스트 성능을 파악한다.That is, the network monitor service 425 periodically transmits a probe packet indicating its presence to a multicast address shared by each ACE node through whether network monitoring is executed and network monitoring server information setting. Based on the information of the ACE node, packet serial number and / or time information provided by the probe packet, the multicast performance between each ACE node is identified.

각 ACE 노드간 멀티캐스트 성능은 중앙 서버에 수집되고 중앙 서버가 협업 세션에 참가중인 각 ACE 노드들에 대한 멀티캐스트 연결성 및 네트워킹 성능 정보를 종합적으로 제공하며 제공된 정보는 멀티캐스트 성능 분석을 위한 주요 지표로 활용된다.Multicast performance between each ACE node is collected on a central server and provides a comprehensive view of multicast connectivity and networking performance information for each ACE node in which the central server is participating in a collaboration session.The information provided is a key indicator for multicast performance analysis. Is utilized.

네트워크 모니터 서비스(425)는 중앙 서버로부터 제공된 각 ACE 노드들에 대한 멀티캐스트 연결성 및 네트워킹 성능 정보를 이용하여 멀티캐스트 성능을 분석한다.The network monitor service 425 analyzes the multicast performance by using the multicast connectivity and networking capability information for each ACE node provided from the central server.

디스플레이 서비스 범주(430)는 인터랙티브 디스플레이 제어 서비스(Interactive Display Control Service)(431), 가시화 서비스(Visualization Service)(433) 및 네트워크 디스플레이 서비스(Networked Display Service)(435)의 콤포넌트 서비스를 포함한다.The display service category 430 includes component services of an interactive display control service 431, a visualization service 433, and a networked display service 435.

인터랙티브 디스플레이 제어 서비스(431)는 사용자 또는 인터랙티브 서비스 들로(interaction services)로부터 디스플레이 제어 명령을 제공받고 네트워크 디스플레이(networked display)들을 통합적으로 운용하기 위한 제어 서비스를 제공한다. 여기서 네트워크 디스플레이는 네트워크 인터페이스 장치가 설치된 디스플레이 장치 또는 네트워크 인터페이스 장치를 통해 디스플레이 및 디스플레이 제어 데이터를 수신하여 이를 표시할 수 있는 디스플레이 장치를 말한다.The interactive display control service 431 receives a display control command from a user or interactive services and provides a control service for integrally operating networked displays. Here, the network display refers to a display device capable of receiving and displaying display and display control data through a display device or a network interface device on which a network interface device is installed.

이를 위해, 인터랙티브 디스플레이 제어 서비스(431)는 사용자가 그래픽 유저 인터페이스(GUI: Graphic User Interface) 또는 인터랙티브 서비스를 통해 네트워크 디스플레이 제어 명령을 발생하기 위한 메시징 방법을 제공한다. 여기서 네트워크 디스플레이 제어 명령은 예를 들어 영상의 시작, 종료, 이동 및 크기 조절을 위한 제어 명령을 포함한다.To this end, the interactive display control service 431 provides a messaging method for a user to generate a network display control command through a Graphic User Interface (GUI) or an interactive service. Here, the network display control command includes a control command for starting, ending, moving, and resizing an image, for example.

또한, 인터랙티브 디스플레이 제어 서비스(431)는 사용자에 의해 선택된 가시화 데이터 즉, 영상, 이미지 및 그래픽스 등을 네트워크 디스플레이에서 표시하기 위해 미디어 수용 서비스 및/또는 가시화 서비스를 통해 가시화 데이터를 디코딩 및/또는 렌더링한 뒤 네트워크 디스플레이 서비스와 연결시켜주는 중계역할을 수행한다.In addition, the interactive display control service 431 decodes and / or renders the visualization data through a media accommodation service and / or a visualization service to display visualization data selected by a user, that is, an image, an image, graphics, and the like, on a network display. It plays a role of relay that connects with network display service.

가시화 서비스(433)는 다양한 포맷의 이미지/그래픽스 파일을 RGB 형태로 변환하는 기능을 수행한다.The visualization service 433 performs a function of converting image / graphics files of various formats into an RGB form.

이를 위해 가시화 서비스(433)는 다양한 포맷으로 압축된 이미지를 이미지 라이브러리(library)를 이용하여 RGB 형태의 데이터로 변환하는 렌더링 기능을 수행한다. 또한, 가시화 서비스(433)는 각 네트워크 디스플레이 장치의 전송프로토콜 및 IP(Internet Protocol) 주소를 설정하고 각 네트워크 디스플레이 장치의 해상도와 위치를 고려하여 해당 영역에 맞게 이미지/그래픽스의 데이터를 분할한 후, TCP(Transmission Control Protocol) 또는 UDP(User Datagram Protocol)를 이용하여 분할된 데이터와 이에 해당하는 데이터 크기, 출력 위치 및 비율 정보를 통합하여 네트워크 디스플레이 장치에 전송한다.To this end, the visualization service 433 performs a rendering function of converting an image compressed in various formats into RGB data using an image library. In addition, the visualization service 433 sets the transmission protocol and the IP (Internet Protocol) address of each network display device, and divides the image / graphics data according to the corresponding area in consideration of the resolution and location of each network display device. By using the Transmission Control Protocol (TCP) or the User Datagram Protocol (UDP), the divided data and the corresponding data size, output location, and ratio information are integrated and transmitted to the network display device.

네트워크 디스플레이 서비스(435)는 RGB 형태의 이미지/그래픽스 데이터를 입력 받고 각 네트워크 디스플레이 장치에서 지정된 위치와 크기로 표현한다.The network display service 435 receives the image / graphics data in the form of RGB and expresses the image and graphics data in the positions and sizes designated by the respective network display devices.

이를 위해, 네트워크 디스플레이 서비스(435)는 해상도, 형태 및 위치가 서로 다른 네트워크 디스플레이 장치가 하나의 디스플레이 장치처럼 유기적으로 동작하기 위한 동기화 기법을 제공하고, 각 네트워크 디스플레이 장치의 상태 정보를 관리하며 사용자의 의도에 따라 RGB 데이터를 표현하기 위해 각 네트워크 디스플레이 장치를 통합하여 제어한다. To this end, the network display service 435 provides a synchronization scheme for network display devices having different resolutions, shapes, and positions to be organically operated like one display device, manages status information of each network display device, Each network display device is integrated and controlled to express RGB data according to the intention.

또한, 네트워크 디스플레이 서비스(435)는 네트워크를 통해 전달받은 RGB 데이터와 각종 디스플레이 정보(예를 들면 디스플레이 크기 및 위치)를 이용하여, OpenGL 기반의 디스플레이 상에서 표현함으로써 RGB 데이터를 네트워크 디스플레이 장치에 표현한다.In addition, the network display service 435 expresses the RGB data to the network display device by using the RGB data received through the network and various display information (for example, display size and position) on the OpenGL-based display.

멀티모달 인터랙션 서비스 범주(440)는 포인팅 서비스(Pointing Service)(441), 핸드 모션 트래킹 서비스(Hand Motion Tracking Service)(443) 및 위치 추적 서비스(Location Tracking Service)(445)의 콤포넌트 서비스를 포함한다.The multimodal interaction service category 440 includes component services of a pointing service 441, a hand motion tracking service 443, and a location tracking service 445. .

포인팅 서비스(441)는 레이저 포인팅 장치를 이용하여 ACE 노드 내에서 특정 위치를 가리키거나 제스처를 행할 수 있도록 하는 기능을 수행한다. 이를 위해 포인팅 서비스(441)는 포인팅을 위한 레이저 장치와 레이저 포인트를 구별하기 위한 카메라 필터, 포인팅 위치를 추적하기 위한 카메라를 이용하여 포인팅 이미지를 획득하고, 획득한 포인팅 이미지를 컴퓨터 비전 기술(예를 들면, 카메라 간의 캘리브레이션(calibration)과 카메라 렌즈 언디스토션(undistortion))을 이용하여 정확한 포인팅 좌표를 계산함으로써 포인팅 위치를 추적한다.The pointing service 441 performs a function of using a laser pointing device to point or gesture at a specific location within an ACE node. To this end, the pointing service 441 acquires a pointing image using a laser device for pointing and a camera filter for distinguishing a laser point, and a camera for tracking a pointing position, and converts the obtained pointing image into a computer vision technology (eg, For example, the pointing position is tracked by calculating the correct pointing coordinates using the calibration between the cameras and the camera lens undistortion.

또한, 포인팅 서비스(441)는 실시간으로 추적된 포인팅 위치정보를 분석하여 사용자에 의해 의도된 제스처를 인식한다.In addition, the pointing service 441 analyzes the pointing location information tracked in real time and recognizes a gesture intended by the user.

핸드 모션 트래킹 서비스(443)는 손동작의 트래킹을 이용하여 3D CAD(Computer Aided Design) 모델의 제어 및 공유를 지원한다.The hand motion tracking service 443 supports the control and sharing of 3D computer aided design (CAD) models using tracking of hand gestures.

즉, 핸드 모션 트래킹 서비스(443)는 손동작을 트래킹할 수 있는 장치를 이용하여 손의 관절 데이터를 실시간으로 수집하여 손의 기구학적인 모습을 구성한다. 그리고, 디스플레이 상에서 3D CAD 모델을 실시간으로 관찰하고 손동작을 해석하여 현재의 위치 및 손의 상태를 추적하여 3D CAD 모델과 상호작용하도록 함으로써 3D CAD 모델의 위치를 제어한다.That is, the hand motion tracking service 443 collects the joint data of the hand in real time using a device capable of tracking the hand motion to configure the kinematic appearance of the hand. In addition, the position of the 3D CAD model is controlled by observing the 3D CAD model on a display in real time and interpreting hand gestures to track the current position and the state of the hand to interact with the 3D CAD model.

위치 추적 서비스(445)는 ACE 노드 내부에서의 특정 목표물에 대한 위치를 추적할 수 있는 기능을 제공한다. 즉, 위치 추적 서비스(445)는 동적 사용자 상황정보 인식 및 분석을 위해 위치 센서 기반 사용자 위치 계산 기술을 활용하여 위치추적이 요구되는 목표물에 대해 ACE 노드 내부에서의 3D 위치좌표를 추정한다. 그 리고, 위치 추정 정확도의 향상을 위하여 기존 RF(Radio Frequency)기반의 위치 인식 방법에 초음파(ultrasonic) 등의 추가 감지 기법 활용하여 위치 0.5m 이내의 추정오차를 가지는 정확도를 제공한다.Location tracking service 445 provides the ability to track the location of a particular target within an ACE node. That is, the location tracking service 445 estimates the 3D location coordinates inside the ACE node for the target that needs location tracking by using the location sensor based user location calculation technology for dynamic user context information recognition and analysis. In addition, in order to improve the accuracy of the position estimation, the conventional RF (Radio Frequency) based position recognition method uses an additional sensing technique such as ultrasonic (ultrasonic) to provide the accuracy of the estimation error within the position 0.5m.

데이터/태스크 공유 및 이동 서비스 범주(450)는 데이터 공유 서비스(Data Sharing Service)(451), 데이터 적응 서비스(Data Adaption Service)(453) 및 원격 사용자 인터페이스 서비스(Remote User Interface Service)(455)의 콤포넌트 서비스를 포함한다.The data / task sharing and movement service category 450 includes data sharing services 451, data adaptation services 453, and remote user interface services 455. Contains component services.

데이터 공유 서비스(451)는 개별 ACE 노드에서 보유한 데이터를 협업 세션에 참가한 모든 ACE 노드들에서 전체적으로 공유하기 위한 분산 공유데이터 저장소를 지원한다.The data sharing service 451 supports distributed shared data storage for sharing data held by individual ACE nodes globally among all ACE nodes participating in a collaboration session.

즉, 데이터 공유 서비스(451)는 협업 세션에 참가한 다른 사용자들의 접근이 허용된 임의의 데이터 파일을 저장할 수 있는 분산형 공유데이터 저장소를 제공하고, 공유 데이터의 업로드(upload), 다운로드(download) 및 검색(retrival) 정보를 설정한다. 공유데이터 저장소에서는 공유데이터 파일과 함께 파일의 소유권에 관한 지식, 파일 접근 권한 및 통제 기능을 제공한다.That is, the data sharing service 451 provides a distributed shared data store that can store any data file that other users who have participated in the collaboration session can access, and upload, download, and share the shared data. Set retrieve information. Shared data repositories, along with shared data files, provide knowledge about file ownership, file access rights, and controls.

데이터 적응 서비스(453)는 각 ACE 노드들의 성능을 고려한 적응형 공유 데이터 및/또는 어플리케이션 뷰(view)의 전달을 위한 가공 기술 제공한다. 즉, 데이터 적응 서비스(453)는 각 ACE 노드별로 네트워크, 시스템 성능 및/또는 사용자의 선호도 등의 각 ACE 노드의 고유한 특징을 파악한 후 공유 데이터의 뷰를 해당 노드에서 수용 가능하도록 가공(예를들면 트랜스코딩)한 후 사용자에게 제공한다.The data adaptation service 453 provides a processing technique for delivering adaptive shared data and / or application views in consideration of the performance of each ACE node. That is, the data adaptation service 453 identifies the unique characteristics of each ACE node such as network, system performance, and / or user preference for each ACE node, and then processes the view of the shared data to be accepted by the node (e.g., For example, transcoding is provided to the user.

원격 사용자 인터페이스 서비스(455)는 원격 ACE 노드의 데이터 및/또는 어플리케이션을 공유하고 제어하기 위한 사용자 인터페이스 지원한다. 즉, 원격 사용자 인터페이스 서비스(455)는 어플리케이션이 동작하는 화면을 실시간으로 획득하여 이를 원격 사용자에게 전달하고 키보드 및 마우스 등 입력장치의 제어권을 함께 전달함으로써 해당 어플리케이션을 실시간으로 공유하면서 조작할 수 있는 원격 인터페이스 기능을 제공한다.The remote user interface service 455 supports a user interface for sharing and controlling data and / or applications of remote ACE nodes. That is, the remote user interface service 455 obtains a screen in which an application operates in real time, delivers it to a remote user, and transmits a control right of an input device such as a keyboard and a mouse together to share the application in real time and operate the remote. Provides interface functionality.

ACE 중재 모듈(500)은 서비스 연결기(510), 서비스 설정기(520), 서비스 합성기(530) 및 컨텍스트 데이터베이스(540)를 포함한다.The ACE arbitration module 500 includes a service connector 510, a service setter 520, a service synthesizer 530, and a context database 540.

ACE 중재 모듈(500)은 협업 세션에 참가하기 위해 우선적으로 베뉴 서버에 접속하고 협업 세션에 참가를 요청한다. 그리고 베뉴 서버로부터 현재 참가 중인 ACE 중재자들의 정보 및 베뉴서버에 의해 중재자로 지정된 중앙 서버의 정보를 회신한다. The ACE arbitration module 500 first connects to the Venue Server and requests to join the collaboration session in order to join the collaboration session. In addition, information of the currently participating ACE arbiters from the Venue server and the information of the central server designated as the moderator by the Venue server are returned.

또한, ACE 중재 모듈(500)은 자신이 속한 ACE 노드에서 관리하고 있는 콤포넌트 서비스들의 서비스 능력(예를 들면, 역할, 유형, 인터페이스)을 중앙 서버로 지정된 중앙 조정자에게 제공한다.In addition, the ACE arbitration module 500 provides the central coordinator designated as the central server with the service capability (eg, role, type, interface) of the component services managed by the ACE node to which it belongs.

ACE 중재 모듈(500)간에 서비스 능력 교환이 이루어지고 난후 각 ACE 노드의 ACE 중재 모듈(500)들은 중앙 조정자를 통해서 서비스 연결, 서비스 설정 및 서비스 합성 등의 작업을 수행한다.After the service capability exchange is performed between the ACE arbitration modules 500, the ACE arbitration modules 500 of each ACE node perform tasks such as service connection, service configuration, and service synthesis through a central coordinator.

서비스 연결기(Service Matchmaker)(510)는 사용자가 제시한 사용 모드(usage mode)와 이를 위해 요구되는 콤포넌트 서비스의 목록을 이용하여 콤포 넌트 서비스간의 연결 작업을 수행한다. 여기서 사용 모드란 다자간 협업 시스템에서 수행되는 협업의 내용이 될 수 있다. 예를 들면, 사용 모드는 원격 화상 회의, 원격 프리젠테이션, 원격 강의 등이 될 수 있다.The service matchmaker 510 performs a connection work between component services using a usage mode suggested by a user and a list of component services required for this purpose. In this case, the usage mode may be content of collaboration performed in a multilateral collaboration system. For example, the mode of use may be teleconference, telepresentation, remote lecture, or the like.

그리고, 콤포넌트 서비스 연결 작업은 소정의 콤포넌트 서비스와 기능적으로 서로 의존적인 관계에 있는 복수의 협업 노드들간 또는 자신의 협업 노드내에서 다른 종류의 콤포넌트 서비스들을 연결함으로써 사용 모드에 적합하도록 콤포넌트 서비스 간에 기능적인 처리 순서를 정하고, 이들 간에 메시지 전달을 위한 논리적인 전달경로를 설정하는 것을 말한다.In addition, the component service connection operation may be performed between a plurality of collaboration nodes that are functionally dependent on a given component service or between component services to be suitable for a usage mode by connecting different kinds of component services within their own collaboration nodes. It is to set the order of processing and to set logical transmission path for message transmission between them.

서비스 연결기(510)는 서로 의존관계가 성립하는 일련의 콤포넌트 서비스를 생성하기 위하여 각 콤포넌트 서비스들이 가지고 있는 서비스 능력(예를 들면, 역할, 유형 및 인터페이스)을 이용한다.The service connector 510 utilizes the service capabilities (eg, roles, types, and interfaces) of each component service to create a series of component services in which dependencies are established.

현재의 콤포넌트 서비스가 연결을 필요로 하는 다른 콤포넌트 서비스의 기능은 유형을 통해서 판별할 수 있으며, 서비스의 제공 또는 수용 여부에 대해서는 역할을 통해서 판별할 수 있다.The function of other component services that the current component service needs to connect to can be determined by type, and the role of providing or accepting service can be determined by role.

예를 들어, 역할이 공급자인 콤포넌트 서비스는 역할이 수용자인 콤포넌트 서비스에게 기능적 결과물을 제공할 수 있으며, 역할이 조정자인 콤포넌트 서비스는 기능적 결과물을 제공하는 것이 아니라 주어진 목적을 위해서 여러 콤포넌트 서비스들 간에 중재역할을 한다.For example, a component service whose role is a provider can provide functional deliverables to a component service whose role is an acceptor. A component service whose role is a coordinator does not provide a functional output, but rather mediates between multiple component services for a given purpose. Play a role.

서비스 연결기(510)에 의해 일련의 콤포넌트 서비스가 생성되면, 연결된 콤포넌트 서비스를 통해 메시지 교환을 할 수 있다.When a series of component services are generated by the service connector 510, messages can be exchanged through the connected component services.

서비스 설정기(Service Configurator)(520)는 각 ACE 노드의 자원 상황을 고려하여 콤포넌트 서비스의 최적화 작업을 수행한다. 여기서 자원 상황이란 각 ACE 노드에 구성된 장치의 종류, 장치의 성능, 각 장치를 지원하는 소프트웨어의 성능, 각 장치를 연결하는 네트워크 및 각 ACE 노드를 연결하는 네트워크 등과 같이 협업을 위해 필요한 모든 자원을 포함한다.The service configurator 520 optimizes the component service in consideration of the resource situation of each ACE node. Resource context here includes all the resources needed for collaboration, such as the type of device configured on each ACE node, the performance of the device, the performance of the software supporting each device, the network connecting each device, and the network connecting each ACE node. do.

효율적인 협업 환경을 제공하기 위해서는 각 ACE 노드의 성능과 사용 모드에 따라 각 ACE 노드를 구성하기 위한 콤포넌트 서비스를 선택하고 선택된 콤포넌트 서비스들의 파라미터들을 상황에 맞게 설정하는 작업이 필요하다. In order to provide an efficient collaboration environment, it is necessary to select a component service for configuring each ACE node according to the performance and usage mode of each ACE node and set parameters of the selected component services according to the situation.

이를 위해 서비스 설정기(520)는 협상 가능한 범위 내에서 서비스 능력을 제한하는 것에 의해 서비스 기능을 유연하게 수행하도록 보조하는 기능을 수행한다. 서비스 파라미터의 예를 들면, 미디어 공급 서비스들은 영상 프레임율(video frame rate)의 상한(upper bound)이 될 수 있고, 미디어 수용 서비스는 디코딩을 위한 가용 컴퓨터들의 개수가 될 수 있고, 포인팅 서비스는 포인팅 정확도가 될 수 있다.To this end, the service setter 520 performs a function to assist in flexibly performing a service function by limiting service capability within a negotiable range. As an example of a service parameter, the media supply services can be upper bound of the video frame rate, the media receptive service can be the number of available computers for decoding, and the pointing service is pointing. Can be accuracy.

서비스 설정기는 사용자에 의해 수동으로 설정된 정보 또는 의사 결정 모듈(610)에 의해 제공된 서비스 정책 설정 정보에 기초하여 콤포넌트 서비스들이 연결된 협업 노드들 또는 자신의 협업 노드에 콤포넌트 서비스를 설정한다.The service setter sets the component service to the collaboration nodes to which the component services are connected or to the own collaboration node based on the information manually set by the user or the service policy setting information provided by the decision module 610.

서비스 합성기(Service Compositor)(530)는 복잡한 임무를 수행하기 위한 서비스 기능의 확장 방법을 제공한다. 즉, 서비스 합성기는 새롭고 확장된 기능을 제공하기 위해 서비스를 합성함으로써 사용자의 다양한 요구사항을 만족시킨다. The service compositor 530 provides a method of extending a service function for performing a complex task. In other words, the service synthesizer satisfies the various requirements of the user by synthesizing the service to provide new and expanded functions.

예를 들어, 서비스 합성기(530)는 서비스 합성의 목표 및 서비스 연결 정보 로 구성된 상황 정보를 의사 결정 모듈(600)부에 전달하고, 의사 결정 모듈(600)로부터 제공된 정보에 기초하여 서비스 합성을 수행한다.For example, the service synthesizer 530 transmits the situation information composed of the target of the service synthesis and the service connection information to the decision module 600, and performs the service synthesis based on the information provided from the decision module 600. do.

컨텍스트 데이터베이스(Context Database)(540)는 협업 세션에서 각 콤포넌트 서비스들로부터 수집된 상황 정보로써, 현재 사용자의 의도를 파악하기 위한 자료로 활용된다.The context database 540 is context information collected from each component service in a collaboration session, and is used as data for identifying the intention of the current user.

의사 결정 모듈(600)은 추론 엔진(Inference Engine)(610), 지식 데이터베이스(Knowledge Database)(620) 및 정책 데이터베이스(Policy Database)(630)를 포함한다.The decision module 600 includes an inference engine 610, a knowledge database 620, and a policy database 630.

추론 엔진(610)은 지식 데이터베이스(620)로부터 상황 정보를 추론하고 이에 대응되는 정책을 정책 데이터베이스(630)로부터 획득하여 ACE 중재 모듈(500)에게 ACE 노드를 구성하기 위한 지침을 제시한다.The inference engine 610 infers context information from the knowledge database 620 and obtains a corresponding policy from the policy database 630 and provides the ACE arbitration module 500 with instructions for configuring an ACE node.

예를 들어 추론 엔진(610)은 ACE 중재 모듈(500)로부터 상황 정보를 제공받고, 제공받은 상황 정보에 부합하는 과거로부터 축적된 협업 지식을 지식 데이터베이스(620)에서 검색한다. 그리고 검색된 지식을 바탕으로 현재의 상황을 추론한 후 추론된 상황에 상응하는 정책을 정책 데이터베이스(630)에서 검색하여 적절한 서비스 설정 정책을 획득한다. 그리고 추론 엔진(610)은 획득한 서비스 설정 정책을 ACE 중재 모듈(500)에 제공한다.For example, the inference engine 610 receives the situation information from the ACE arbitration module 500 and searches the knowledge database 620 for collaboration knowledge accumulated from the past corresponding to the received situation information. After inferring the current situation based on the retrieved knowledge, a policy corresponding to the inferred situation is searched in the policy database 630 to obtain an appropriate service setting policy. The inference engine 610 provides the obtained service setting policy to the ACE arbitration module 500.

지식 데이터베이스(620)는 협업 목적 및 상황별 컨텍스트들을 과거로부터 축적함으로써 일반화된 협업 환경을 위한 정보를 구축한다. 지식 데이터베이스(620)는 협업 모드별 주요 상황 정보를 예측하는데 활용된다.The knowledge database 620 builds information for a generalized collaboration environment by accumulating collaboration objectives and contextual contexts from the past. The knowledge database 620 is used to predict key contextual information for each collaboration mode.

정책 데이터베이스(630)는 지식 데이터베이스(620)에 구축된 상황 정보에 상응하는 정책이 축적된다. 정책 데이터베이스(630)는 협업 환경에 적합한 ACE 노드를 구성하기 위해 필요한 정책을 ACE 중재 모듈에게 제공하는데 활용된다.The policy database 630 accumulates a policy corresponding to the context information built in the knowledge database 620. The policy database 630 is utilized to provide the ACE arbitration module with the policies necessary to configure the ACE node suitable for a collaborative environment.

도 6은 본 발명의 일실시예에 따른 다자간 협업 시스템에서 서비스 초기화 설정 과정을 나타내는 흐름도이다.6 is a flowchart illustrating a service initialization setting process in a multi-party collaboration system according to an embodiment of the present invention.

도 6을 참조하면, 먼저 소정의 ACE 노드에 소속된 콤포넌트 서비스들(410 내지 450)은 자신을 관장하는 ACE 중재자의 서비스 설정기(520)에게 자신의 서비스 능력을 등록한다(단계 S201).Referring to FIG. 6, first, component services 410 to 450 belonging to a predetermined ACE node register their service capability with the service setter 520 of the ACE arbiter in charge of itself (step S201).

그리고, 사용자는 자신이 소속된 ACE 노드의 서비스 설정기(520)에게 사용 모드와 이를 위해 요구되는 서비스 목록을 전달한다(단계 S203).Then, the user transmits the usage mode and a list of services required for this to the service setter 520 of the ACE node to which the user belongs (step S203).

이후, 서비스 설정기(520)는 서비스 연결기(510)에 다른 ACE 노드와 연결 작업을 요청하고(단계 S205), 서비스 연결기(510)는 다른 ACE 노드에 소속된 서비스 연결기(510)와 연결 작업을 수행한 후 서비스들간의 연결 정보를 생성하여 서비스 설정기(520)에 제공한다(단계 S207).Thereafter, the service setter 520 requests the service connector 510 to connect with another ACE node (step S205), and the service connector 510 connects to the service connector 510 belonging to another ACE node. After performing the operation, connection information between services is generated and provided to the service setter 520 (step S207).

서비스 설정기(520)는 서비스 연결기(510)로부터 제공된 서비스 연결 정보, 각 ACE 노드별 자원 상태 및 사용 모드로 구성된 상황 정보를 추론 엔진(610)에 제공한다(단계 S209).The service setter 520 provides the inference engine 610 with the situation information including the service connection information provided from the service connector 510, the resource state for each ACE node, and the usage mode (step S209).

추론 엔진(610)은 서비스 설정기(520)로부터 제공받은 상황 정보에 근거하여 이러한 상황에 부합하는 과거로부터 축적된 일반화된 협업 지식 (knowledge)을 지식 데이터베이스(620)에서 검색한다(단계 S211). The inference engine 610 searches the knowledge database 620 for generalized collaboration knowledge accumulated from the past corresponding to the situation based on the situation information provided from the service setter 520 (step S211).

그리고 추론 엔진(610)은 검색된 지식을 기반으로 현재의 협업 환경을 추론한 후(단계 S213), 추론된 협업 환경에 상응하는 정책을 정책 데이터베이스(630)에서 검색하여 서비스 설정 정책을 획득한다(단계 S215). The inference engine 610 infers the current collaboration environment based on the searched knowledge (step S213), and then obtains the service setting policy by searching the policy database 630 for a policy corresponding to the inferred collaboration environment (step S213). S215).

추론 엔진(610)은 획득한 서비스 설정 정책을 서비스 설정기(520)에 제공하고(단계 S217), 서비스 설정기(520)는 제공받은 서비스 설정 정책에 기초하여 자신이 관장하는 콤포넌트 서비스(410 내지 450)들을 설정한다(단계 S219).The inference engine 610 provides the obtained service setting policy to the service setter 520 (step S217), and the service setter 520 manages the component service 410 to which it manages based on the received service setting policy. 450 are set (step S219).

콤포넌트 서비스의 설정이 완료되면, ACE 중재자들은 활성화된 콤포넌트 서비스들에게 서비스 시작 요청을 전달한다. 서비스 시작 요청을 전달받은 각각의 콤포넌트 서비스들은 콤포넌트 서비스들 간의 연결 순서 및 인터페이스 정보를 고려하여 주어진 임무를 수행한다.When the configuration of the component service is completed, the ACE arbiters forward the service start request to the activated component services. Each component service received the service start request performs a given task in consideration of the connection order and interface information between the component services.

도 7은 본 발명의 일실시예에 따른 다자간 협업 시스템에서 서비스 합성 과정을 나타내는 흐름도이다.7 is a flowchart illustrating a service synthesis process in a multi-party collaboration system according to an embodiment of the present invention.

도 7을 참조하면, 먼저 사용자는 서비스 합성기(530)에게 서비스 합성의 목표와 합성하고자 하는 서비스 목록을 제공한다(단계 S301). 서비스 합성기(530)는 서비스 연결기(510)에게 서비스 연결 작업을 요청하고(단계 S303), 서비스 연결기(510)는 서비스 연결 정보를 서비스 합성기(530)에게 제공한다(단계 S305).Referring to FIG. 7, the user first provides the service synthesizer 530 with a target of service synthesis and a list of services to be synthesized (step S301). The service synthesizer 530 requests a service connection task from the service connector 510 (step S303), and the service connector 510 provides service connection information to the service synthesizer 530 (step S305).

이후, 서비스 합성기(530)는 서비스 합성의 목표 및 서비스 연결 정보로 구성된 상황 정보를 추론 엔진(610)에게 제공하고(단계 S307), 추론 엔진(610)은 서비스 합성기(530)로부터 제공된 상황 정보에 기초하여 지식 데이터베이스(620)를 검색하고(단계 S309), 검색된 지식을 통해 협업 환경의 상황을 추론한 후(단계 S311), 추론된 협업 환경의 상황에 대응되는 서비스 합성 정책을 정책 데이터베이스(630)에서 검색한다(단계 S313).Thereafter, the service synthesizer 530 provides the inference engine 610 with the context information composed of the service synthesis target and the service connection information (step S307), and the inference engine 610 is provided with the context information provided from the service synthesizer 530. After searching the knowledge database 620 based on (S309), and inferring the situation of the collaborative environment through the retrieved knowledge (S311), the policy database 630 applies a service synthesis policy corresponding to the inferred situation of the collaborative environment. Search in step S313.

그리고, 추론 엔진(610)은 검색된 서비스 합성 정책을 서비스 합성기(530)에게 제공한다(단계 S315). 여기서 추론 엔진(610)에 의해 제공되는 서비스 합성 정책은 합성된 서비스의 능력(예를 들면, 역할, 유형, 인터페이스) 및 서비스 합성에 사용되는 서비스 간의 상호작용 방법에 대한 정책을 포함한다.The inference engine 610 then provides the searched service synthesis policy to the service synthesizer 530 (step S315). The service synthesis policy provided by the inference engine 610 here includes a policy on the capabilities of the synthesized service (eg, role, type, interface) and how to interact between the services used for service synthesis.

서비스 합성기(530)는 추론 엔진(610)으로부터 제공된 서비스 합성 정책에 기초하여 서비스 합성을 실시하고(단계 S317), 합성된 서비스는 서비스 설정기(520)에 등록된다(단계 S319).The service synthesizer 530 performs service synthesis based on the service synthesis policy provided from the inference engine 610 (step S317), and the synthesized service is registered in the service setter 520 (step S319).

도 8은 본 발명의 일실시예에 따른 다자간 협업 시스템에서 서비스 설정 및 서비스 합성의 예를 나타내는 개념도이다.8 is a conceptual diagram illustrating an example of service setting and service synthesis in a multi-party collaboration system according to an embodiment of the present invention.

도 8을 참조하면, ACE 노드2의 핸드 모션 트래킹 서비스(443)는 손 동작에 의해 조작된 3D의 그래픽스 정보를 ACE 노드1, ACE 노드2 및 ACE 노드3에 각각 소속된 네트워크 디스플레이 서비스(435)에 제공한다. 이를 위해 각 ACE 노드의 네트워크 디스플레이 서비스(435)들은 각 ACE 노드에 소속된 서비스 설정기(520)를 통하여 서비스 설정에 필요한 정보 및 서비스 수용에 필요한 각종 파라미터 값들을 제공 받는다. 따라서, 서로 다른 환경을 가지는 ACE 노드들간에도 일정한 서비스 품질을 유지하면서 협업을 수행할 수 있다.Referring to FIG. 8, the hand motion tracking service 443 of the ACE node 2 transmits the 3D graphics information manipulated by the hand gesture to the network display service 435 belonging to the ACE node 1, the ACE node 2, and the ACE node 3, respectively. To provide. To this end, the network display services 435 of each ACE node are provided with information necessary for service setting and various parameter values necessary for service acceptance through the service setter 520 belonging to each ACE node. Therefore, collaboration can be performed between ACE nodes having different environments while maintaining a constant quality of service.

또한, ACE 노드1의 사용자는 위치 추적 서비스(441)와 포인팅 서비스(445)를 합성하여 스마트 포인팅 서비스(447)를 생성하고, 생성된 스마트 포인팅 서비 스(447)는 ACE 노드1 및 ACE 노드2의 네트워크 디스플레이 서비스(435)에 제공된다. 그리고, ACE 노드1의 사용자가 스마트 포인팅 서비스(447)를 이용하여 위치 추적 서비스(445)가 추가된 포인팅 장치를 조작하면 조작된 결과가 ACE 노드1 및 ACE 노드2의 격자형 디스플레이 장치에 표시될 수 있다.In addition, the user of the ACE node 1 generates a smart pointing service 447 by combining the location tracking service 441 and the pointing service 445, and the generated smart pointing service 447 is the ACE node 1 and ACE node 2 Network display service 435 is provided. When the user of the ACE node 1 manipulates the pointing device to which the location service 445 is added using the smart pointing service 447, the manipulated result is displayed on the grid display devices of the ACE node 1 and the ACE node 2. Can be.

상기와 같은, 협업 환경을 위한 다자간 협업 시스템 및 다자간 협업 시스템의 구성 방법에 따르면, ACE 노드의 성능을 고려하여 유연하게 ACE 노드를 구성하기 위해 협업 서비스들을 콤포넌트화하여 주어진 ACE 노드의 능력에 맞게 협업 서비스를 선택한다.According to the method of configuring a multi-party collaboration system and a multi-party collaboration system for a collaboration environment as described above, in order to flexibly configure the ACE node in consideration of the performance of the ACE node, the collaboration services are componentized to collaborate according to the capabilities of a given ACE node. Select a service.

즉, 협업 서비스들을 기능에 따라 미디어, 네트워킹, 디스플레이, 멀티모달 인터랙션 및 데이터/태스크 공유 및 이동의 5가지 서비스 범주로 구분하고 각 서비스 범주는 이에 상응하는 콤포넌트 서비스를 포함하여 컴퓨터/네트워킹 등과 같은 협업 환경 및 협업의 용도에 따라 적절한 콤포넌트 서비스를 선택하여 ACE 노드를 구축함으로써 유연하게 ACE 노드를 구축할 수 있다.In other words, the collaboration services are classified into five service categories: media, networking, display, multimodal interaction, and data / task sharing and movement according to their functions, and each service category includes corresponding component services such as computer / networking. ACE nodes can be flexibly constructed by selecting the appropriate component services and building ACE nodes according to the environment and the purpose of collaboration.

또한, ACE 중재자를 이용하여 협업 목적에 맞게 콤포넌트 서비스를 설정하고, 서비스들을 합성함으로써 복잡하고 새로운 기능을 가진 협업 서비스를 제공한다.In addition, the ACE moderator is used to set component services for collaboration purposes and to synthesize the services to provide complex and new collaboration services.

따라서, 서로 다른 시스템 및 네트워크 환경을 가진 협업 노드들 간에 용이하게 협업 환경을 구축 및 활용할 수 있다.Therefore, it is possible to easily build and utilize a collaboration environment between collaboration nodes having different system and network environments.

이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described with reference to the above embodiments, those skilled in the art will understand that various modifications and changes can be made without departing from the spirit and scope of the invention as set forth in the claims below. Could be.

Claims (17)

복수의 협업 노드들로 이루어진 다자간 협업 시스템의 구성방법에 있어서, In the method of configuring a multi-party collaboration system consisting of a plurality of collaboration nodes, 상기 복수의 협업 노드 각각에서 수행되는 협업 서비스의 기능에 기초하여 구분된 적어도 하나의 콤포넌트 서비스를 제공하는 단계;Providing at least one component service classified based on a function of a collaboration service performed at each of the plurality of collaboration nodes; 제공된 사용모드 및 서비스 목록 중 적어도 하나에 기초하여 콤포넌트 서비스들간의 연결을 설정하는 단계;Establishing a connection between component services based on at least one of the provided usage mode and the service list; 상기 콤포넌트 서비스들간의 연결 설정에 기초하여 상황 정보를 생성하는 단계;Generating context information based on a connection establishment between the component services; 상기 생성된 상황 정보에 기초하여 서비스 설정 정책을 생성하는 단계; 및Generating a service setting policy based on the generated situation information; And 상기 생성된 서비스 설정 정책에 기초하여 상기 콤포넌트 서비스들을 설정하는 단계를 포함하는 다자간 협업 시스템의 구성 방법.Setting the component services based on the created service setting policy. 제1항에 있어서, 상기 협업 서비스의 기능에 기초하여 구분된 적어도 하나의 콤포넌트 서비스를 제공하는 단계는The method of claim 1, wherein providing at least one component service divided based on a function of the collaboration service comprises: 상기 협업 서비스를 미디어 서비스 범주, 네트워킹 서비스 범주, 디스플레이 서비스 범주, 멀티모달 인터랙션 서비스 범주 및 데이터와 태스크 공유 및 이동 서비스 범주로 구분하고, 상기 각각의 범주는 상기 범주의 기능에 상응하는 적어도 하나의 콤포넌트 서비스를 포함하는 것을 특징으로 하는 다자간 협업 시스템의 구성 방법.The collaboration service is divided into a media service category, a networking service category, a display service category, a multimodal interaction service category, and a data and task sharing and mobile service category, each of at least one component corresponding to a function of the category. How to configure a multi-party collaboration system comprising a service. 삭제delete 제1항에 있어서, 상기 제공된 사용모드 및 서비스 목록 중 적어도 하나에 기초하여 콤포넌트 서비스들간의 연결을 설정하는 단계는,The method of claim 1, wherein establishing a connection between component services based on at least one of the provided usage mode and service list comprises: 협업에 참가하기를 원하는 협업 노드가 협업 세션에 참가 요청을 하는 단계;Making a collaboration node requesting to participate in a collaboration request to join a collaboration session; 가장 먼저 참가 요청을 한 협업 노드를 중앙 조정자로 지정하는 단계;Designating, as a central coordinator, a collaboration node that has made a request to join first; 협업에 참가하기를 요청한 상기 협업 노드에게 협업에 참가한 각 협업 노드의 중재자에 대한 정보를 제공하는 단계;Providing information about a moderator of each collaboration node participating in the collaboration to the collaboration node requesting to participate in the collaboration; 상기 협업에 참가하기를 요청한 협업 노드가 상기 중앙 조정자에게 서비스 능력-상기 서비스 능력은 상기 콤포넌트 서비스의 속성을 기술하기 위한 것으로 서비스의 역할, 유형 및 인터페이스 속성을 포함함-을 제공하는 단계; 및Providing, by the collaboration node requesting to join the collaboration, to the central coordinator a service capability, the service capability being for describing an attribute of the component service, including a role, type, and interface attribute of a service; And 상기 중앙 조정자가 상기 서비스 능력을 제공한 협업 노드에게 협업에 참가한 다른 협업 노드의 서비스 능력을 나타내는 서비스 능력 목록을 제공하는 단계를 포함하는 것을 특징으로 하는 다자간 협업 시스템의 구성 방법.And providing, by the central coordinator, to a collaboration node providing the service capability, a service capability list indicating service capability of another collaboration node participating in the collaboration. 삭제delete 제1항에 있어서, 상기 서비스 설정 정책을 생성하는 단계는The method of claim 1, wherein the generating of the service setting policy is 상기 상황 정보에 기초하여 협업 지식을 협업 데이터베이스에서 검색하는 단계;Retrieving collaboration knowledge from a collaboration database based on the contextual information; 상기 검색된 협업 지식을 기초로 현재의 협업 환경을 추론하는 단계; 및Inferring a current collaboration environment based on the retrieved collaboration knowledge; And 상기 추론된 협업 환경에 대응되는 상기 서비스 설정 정책을 정책 데이터 베이스에서 검색하여 상기 서비스 설정 정책을 생성하는 단계를 포함하는 것을 특징으로 하는 다자간 협업 시스템의 구성 방법.And searching the service setting policy corresponding to the inferred collaboration environment in a policy database to generate the service setting policy. 제1항에 있어서, 상기 생성된 서비스 설정 정책에 기초하여 상기 콤포넌트 서비스들을 설정하는 단계는The method of claim 1, wherein the setting of the component services based on the generated service setting policy is performed. 상기 선택된 콤포넌트 서비스들의 파라미터들을 설정함으로써 상기 협업 노드간에 협상 가능한 범위 내에서 서비스 능력을 제한하는 것을 특징으로 하는 다자간 협업 시스템의 구성 방법.And setting service parameters of the selected component services to limit service capability within a negotiable range between the collaboration nodes. 제1항에 있어서, 상기 다자간 협업 시스템의 구성 방법은The method of claim 1, wherein the multi-party collaboration system is configured. 서비스 합성 목표 및 합성하고자 하는 서비스 목록을 서비스 합성기에게 제공하는 단계;Providing a service synthesizer with a service synthesis target and a list of services to be synthesized; 상기 서비스 합성기가 서비스 합성 목표 및 서비스 연결 정보를 포함하는 상황정보를 추론엔진에 제공하는 단계;Providing, by the service synthesizer, situation information including a service synthesis target and service connection information to an inference engine; 추론 엔진이 상기 상황정보에 상응하는 서비스 합성 정책을 상기 서비스 합성기에 제공하는 단계; 및Providing, by the inference engine, a service synthesis policy corresponding to the context information to the service synthesizer; And 상기 서비스 합성기가 상기 서비스 합성 정책-상기 합성된 서비스의 서비스 능력 및 서비스 합성에 이용되는 서비스 상호간의 상호작용 방법에 대한 정책을 포함-에 기초하여 서비스를 합성하는 단계를 포함하는 것을 특징으로 하는 다자간 협업 시스템의 구성 방법.And the service synthesizer synthesizing a service based on the service synthesis policy, the service capability of the synthesized service and a policy on how to interact with services used for service synthesis. How to configure a collaboration system. 삭제delete 적어도 하나의 협업 노드를 포함하는 다자간의 협업 시스템의 구성 방법에 있어서,In the method of configuring a multilateral collaboration system including at least one collaboration node, 상기 적어도 하나의 협업 노드에서 각각 실행되고 서비스 기능에 따라 분류된 적어도 하나의 콤포넌트 서비스를 가지는 콤포넌트 서비스 그룹을 제공하는 단계;Providing a component service group having at least one component service each executed in the at least one collaboration node and classified according to a service function; 협업 사용 모드 및 상기 협업 사용 모드에 필요한 콤포넌트 서비스의 목록에 기초하여 서비스의 연결을 수행하고, 협업 노드의 자원 상황에 기초하여 상기 콤포넌트 서비스들의 파라미터를 설정함으로써 서비스의 최적화 작업을 수행하는 협업 중재 모듈을 제공하는 단계; 및The collaboration mediation module performs connection of services based on the collaboration usage mode and the list of component services required for the collaboration usage mode, and performs the optimization of services by setting parameters of the component services based on the resource situation of the collaboration node. Providing a; And 자동으로 상기 서비스 연결, 서비스 설정 및 서비스 합성을 위한 정책을 제공하는 의사 결정 모듈을 제공하는 단계를 포함하되, Providing a decision module that automatically provides a policy for the service connection, service settings and service synthesis, 협업 목적 및 협업 노드의 성능에 따라 상기 협업 중재 모듈이 상기 의사 결정 모듈로부터 제공된 상기 정책에 기초하여 상기 적어도 하나의 콤포넌트 서비스를 선택하여 -여기서, 상기 선택된 콤포넌트 서비스들간의 연결은 상기 복수의 협업 노드들간 또는 자신의 협업 노드내에서 이루어짐-연결하는 단계를 포함하는 다자간 협업 시스템의 구성 방법.The collaboration arbitration module selects the at least one component service based on the policy provided from the decision module, in accordance with the collaboration purpose and the capabilities of the collaboration node, wherein the connection between the selected component services is determined by the plurality of collaboration nodes. A method of constructing a multi-party collaboration system comprising the steps of—connecting between them or within their own collaboration node. 제10항에 있어서, 상기 콤포넌트 서비스 그룹은The method of claim 10, wherein the component service group 상기 협업 서비스를 미디어 서비스 범주, 네트워킹 서비스 범주, 디스플레이 서비스 범주, 멀티모달 인터랙션 서비스 범주 및 데이터와 태스크 공유 및 이동 서비스 범주로 구분하고, 상기 각각의 범주는 상기 범주의 기능에 상응하는 적어도 하나의 콤포넌트 서비스를 포함하는 것을 특징으로 하는 다자간 협업 시스템의 구성 방법The collaboration service is divided into a media service category, a networking service category, a display service category, a multimodal interaction service category, and a data and task sharing and mobile service category, each of at least one component corresponding to a function of the category. How to configure a multi-party collaboration system comprising a service 제10항에 있어서, 상기 협업 중재 모듈은 The method of claim 10, wherein the collaborative intervention module 협업 사용 모드 및 상기 협업 사용 모드에 필요한 콤포넌트 서비스의 목록에 기초하여 서비스의 연결을 수행하는 서비스 연결기;A service connector for connecting a service based on a collaboration usage mode and a list of component services required for the collaboration usage mode; 협업 노드의 자원 상황에 기초하여 상기 콤포넌트 서비스들의 파라미터를 설정함으로써 서비스의 최적화 작업을 수행하는 서비스 설정기; 및A service setter configured to optimize a service by setting parameters of the component services based on a resource situation of a collaboration node; And 확장된 서비스 기능을 제공하기 위해 상기 콤포넌트 서비스를 합성하는 서비스 합성기를 포함하는 것을 특징으로 하는 다자간 협업 시스템의 구성 방법.And a service synthesizer for synthesizing the component services to provide an extended service function. 제10항에 있어서, 상기 의사 결정 모듈은The method of claim 10, wherein the decision module 상기 협업 중재 모듈로부터 제공된 상황 정보에 기초하여 상기 서비스 연결, 서비스 설정 및 서비스 합성에 대한 정책을 제공하는 추론엔진;An inference engine that provides a policy for service connection, service setting, and service synthesis based on context information provided from the collaboration arbitration module; 협업 목적 및 협업 상황별 컨텍스트들을 과거로부터 축적함으로써 일반화된 협업 환경을 위한 정보가 구축된 지식 데이터베이스; 및A knowledge database in which information for a generalized collaboration environment is constructed by accumulating collaboration objectives and contextual contexts from the past; And 상기 상황 정보에 대응되는 정책이 축적된 정책 데이터베이스를 포함하는 것을 특징으로 하는 다자간 협업 시스템의 구성 방법.And a policy database in which a policy corresponding to the contextual information is accumulated. 복수의 협업 노드들로 이루어진 다자간 협업 시스템에 있어서,In a multi-party collaboration system composed of a plurality of collaboration nodes, 적어도 하나의 콤포넌트 서비스를 설정하고 상기 복수의 협업 노드들 각각의 자원 상황에 기초하여 협업 목적에 상응하는 콤포넌트 서비스를 검색하여 협업을 위한 서비스를 구성하는 협업 중재자를 가지는 복수의 협업 노드; 및 A plurality of collaboration nodes having at least one component service and a collaboration arbiter configured to configure a service for collaboration by searching for a component service corresponding to a collaboration purpose based on a resource situation of each of the plurality of collaboration nodes; And 상기 복수의 협업 노드들과 네트워크를 통해 연결되고, 협업 세션에 참가중인 협업 중재자들의 정보를 제공하며 기설정된 방법에 의해 선출된 협업 중재자를 중앙 조정자로 지정하여 상기 중앙 조정자를 통해 상기 적어도 하나의 협업 중재자들이 통신할 수 있도록 상기 협업 노드들간의 초기화 작업을 수행하는 베뉴 서버를 포함하는 다자간 협업 시스템.The at least one collaboration is performed through the central coordinator by connecting the plurality of collaboration nodes through a network, providing information of the collaborator moderators participating in the collaboration session, and designating a coordinator moderator elected by a predetermined method as a central coordinator. And a Venue server for performing initialization operations between the collaboration nodes so that moderators can communicate. 삭제delete 제14항에 있어서, 상기 복수의 협업 노드는 15. The method of claim 14, wherein the plurality of collaboration nodes 복수의 네트워크 디스플레이 장치 및 디스플레이 제어 장치가 LAN(Local Area Network)를 통해 연결된 스마트 디스플레이 시스템을 포함하는 것을 특징으로 하는 다자간 협업 시스템.And a plurality of network display devices and a display control device comprising a smart display system connected via a local area network (LAN). 삭제delete
KR1020070001984A 2007-01-08 2007-01-08 Multi-Party Interactive Collaboration System And Method For Organizing Multi-Party Interactive Collaboration System KR100866244B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070001984A KR100866244B1 (en) 2007-01-08 2007-01-08 Multi-Party Interactive Collaboration System And Method For Organizing Multi-Party Interactive Collaboration System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070001984A KR100866244B1 (en) 2007-01-08 2007-01-08 Multi-Party Interactive Collaboration System And Method For Organizing Multi-Party Interactive Collaboration System

Publications (2)

Publication Number Publication Date
KR20080093465A KR20080093465A (en) 2008-10-22
KR100866244B1 true KR100866244B1 (en) 2008-10-30

Family

ID=40153958

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070001984A KR100866244B1 (en) 2007-01-08 2007-01-08 Multi-Party Interactive Collaboration System And Method For Organizing Multi-Party Interactive Collaboration System

Country Status (1)

Country Link
KR (1) KR100866244B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110154222A1 (en) * 2009-12-18 2011-06-23 Microsoft Corporation Extensible mechanism for conveying feature capabilities in conversation systems

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002056158A (en) * 2000-08-08 2002-02-20 Hewlett Packard Japan Ltd Operation promotion system using internet
KR20050063993A (en) * 2003-12-23 2005-06-29 한국전자통신연구원 Inter-enterprise collaborative process management system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002056158A (en) * 2000-08-08 2002-02-20 Hewlett Packard Japan Ltd Operation promotion system using internet
KR20050063993A (en) * 2003-12-23 2005-06-29 한국전자통신연구원 Inter-enterprise collaborative process management system

Also Published As

Publication number Publication date
KR20080093465A (en) 2008-10-22

Similar Documents

Publication Publication Date Title
US20210349604A1 (en) Shared Virtual Area Communication Environment Based Apparatus and Methods
Greenhalgh Large scale collaborative virtual environments
Churchill et al. Collaborative virtual environments: digital places and spaces for interaction
KR101565665B1 (en) Promoting communicant interactions in a network communications environment
RU2611041C2 (en) Methods and systems for collaborative application sharing and conferencing
US9026609B2 (en) Method and apparatus for coordinating media presentation on devices via an information space
CN105493501A (en) Virtual video camera
Stevens et al. Prototyping the workspaces of the future
Korzun et al. Virtual shared workspace for smart spaces and M3-based case study
Nguyen et al. Collaborative framework design for immersive analytics
Korzun et al. Development of smart room services on top of Smart-M3
US20200201522A1 (en) Interactive viewing and editing system
Han et al. Design of multi-party meeting system for interactive collaboration
KR101077660B1 (en) Multi-Party Interactive Collaboration System And Method for organizing thereof, and the recording media storing the program performing the said method
KR100866244B1 (en) Multi-Party Interactive Collaboration System And Method For Organizing Multi-Party Interactive Collaboration System
Klapperstueck et al. ContextuWall: Multi-site collaboration using display walls
US11720244B2 (en) Online conference tools for meeting-assisted content editing and posting content on a meeting board
Singh et al. Towards environment-to-environment (e2e) multimedia communication systems
EP3675483A1 (en) Content server, information sharing system, communication control method, and carrier means
Naber et al. Transferring an interactive display service to the virtual reality
TWI626835B (en) Networking conference method, workspace interaction method and machine using the same
JP2020198078A (en) Information processing apparatus, information processing system, and information processing method
JP2021039616A (en) Information processing system, information processing apparatus, image display method, and program
Shatilov et al. Players are not Ready 101: A Tutorial on Organising Mixed-mode Events in the Metaverse
Pozzer et al. CSVTool-A tool for video-based collaboration

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
FPAY Annual fee payment

Payment date: 20121005

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130930

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20141001

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20151002

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20161004

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee