KR100307194B1 - 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치와 그 방법 - Google Patents

상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치와 그 방법 Download PDF

Info

Publication number
KR100307194B1
KR100307194B1 KR1019990042992A KR19990042992A KR100307194B1 KR 100307194 B1 KR100307194 B1 KR 100307194B1 KR 1019990042992 A KR1019990042992 A KR 1019990042992A KR 19990042992 A KR19990042992 A KR 19990042992A KR 100307194 B1 KR100307194 B1 KR 100307194B1
Authority
KR
South Korea
Prior art keywords
component
session
manager
management
information
Prior art date
Application number
KR1019990042992A
Other languages
English (en)
Other versions
KR20010036133A (ko
Inventor
황대준
김경하
Original Assignee
허성재
아르파(주)
황대준
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 허성재, 아르파(주), 황대준 filed Critical 허성재
Priority to KR1019990042992A priority Critical patent/KR100307194B1/ko
Publication of KR20010036133A publication Critical patent/KR20010036133A/ko
Application granted granted Critical
Publication of KR100307194B1 publication Critical patent/KR100307194B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야
본 발명은 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리 장치 및 그 방법과, 그를 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명은, 상호 참여형 멀티미디어 응용 개발 환경인 캔버스(CANVAS)에서 부세션으로의 확장이 가능한 세션 관리 및 속성 및 동적 관리가 가능하도록 컴포넌트를 관리하기 위한 세션 관리 및 컴포넌트 관리 장치 및 그 방법과, 그를 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하고자 함.
3. 발명의 해결방법의 요지
본 발명은, 상호 참여형 멀티미디어 응용 개발 환경시스템에서 세션 서비스와 컴포넌트 서비스를 관리하는 방법에 있어서, 세션 서비스 관리 기능과 컴포넌트 서비스 관리 기능을 구분하는 제 1 단계; 상기 세션 서비스 관리 기능 수행시에, 세션 생성 및 종료, 세션 참여, 지각자 처리, 초청 기능을 수행하는 제 2 단계; 및 상기 컴포넌트 서비스 관리 기능 수행시에, 초기 컴포넌트 생성, 세션 종료시 컴포넌트 삭제, 발언권 제어 기능을 수행하고, 컴포넌트의 속성 변경 및 동적 관리 기능을 부가하여 이를 관리하는 제 3 단계를 포함함.
4. 발명의 중요한 용도
본 발명은 상호 참여형 멀티미디어 응용 개발 환경 등에 이용됨.

Description

상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치와 그 방법{METHOD AND APPARATUS FOR MANAGING SESSION AND COMPONENT IN CREATIVE AND NEW TECHNOLOGY VIRTUAL APPLICATION SYSTEM}
본 발명은 상호 참여형 멀티미디어 응용 개발 환경인 캔버스(CANVAS : Creative And New technology Virtual Application System)에서 부세션으로의 확장이 가능한 세션 관리 및 속성 및 동적 관리가 가능하도록 컴포넌트를 관리할 수 있도록 한 세션 관리 및 컴포넌트 관리 장치 및 그 방법과, 그를 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
종래의 두레(DooRae)는 세션 관리기(Session Manager)라는 하나의 관리기에서 세션에 관한 서비스인 세션 생성, 종료 및 지각자 처리와 컴포넌트(객체)에 관한 서비스 초기 컴포넌트 생성, 세션종료시 컴포넌트 삭제, 발언권제어를 모두 수행하였다.
참고적으로, 두레(DooRae)는 세션 생성시 설정된 객체들만을 세션 진행중에 사용할 수 있으며, 모두 공유속성만을 지닌 객체로서 이루어 지게 된다. 여기에 진보적인 개념인 동적인 컴포넌트의 관리 및 컴포넌트의 다양한 속성 변경 기능을 추가하기에는 그 구조 및 프로토콜의 변경이 불가피하게 되었다.
이처럼 종래의 두레는 하나의 관리기가 모든 서비스를 제공했기 때문에, 다양한 멀티미디어 응용 환경을 위해서는 기능에 따른 세부적인 구조로의 변경이 불가피하였고, 전술한 바와 같은 컴포넌트 관리, 변경에 관한 서비스만을 별도로 담당할 수 있는 관리 기능이 필요하였다.
따라서, 종래의 세션 관리기가 수행하던 기능을 세션 관리 기능과 컴포넌트 관리 기능으로 구분하고, 세션 관리 기능에 특정 세션에서 여러 개의 부세션으로의 확장 기능을 추가하고, 컴포넌트 관리 기능에는 진보적인 개념인 동적인 컴포넌트의 관리 및 컴포넌트의 다양한 속성 변경 기능을 추가하여 다양한 네트워크 환경에서 상호 참여형 멀티미디어 응용을 개발할 수 있는 방안이 필수적으로 요구된다.
상기한 바와 같은 문제점을 해결하기 위하여 안출된 본 발명은, 상호 참여형 멀티미디어 응용 개발 환경인 캔버스(CANVAS)에서 부세션으로의 확장이 가능한 세션 관리 및 속성 및 동적 관리가 가능하도록 컴포넌트를 관리하기 위한 세션 관리 및 컴포넌트 관리 장치 및 그 방법과, 그를 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.
도 1 은 본 발명이 적용되는 하드웨어 시스템의 구성 예시도.
도 2 는 본 발명에 따른 세션 관리 및 컴포넌트 관리장치가 적용되는 상호 참여형 멀티미디어 응용 개발 시스템(캔버스)의 구성 예시도.
도 3 은 본 발명에 따른 세션 관리 및 컴포넌트 관리장치중 회의 관리기의 일실시예 상세 구성도.
도 4 는 본 발명에 따른 세션 관리 및 컴포넌트 관리장치중 컴포넌트 풀의 일실시예 상세 구성도.
도 5 는 본 발명에 따른 세션 관리 및 컴포넌트 관리장치중 컴포넌트 관리기의 일실시예 상세 구성도.
도 6 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 세션 생성 과정에 대한 일실시예 상세 흐름도.
도 7 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 세션 종료 과정에 대한 일실시예 상세 흐름도.
도 8 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 세션 참여 과정에 대한 일실시예 상세 흐름도.
도 9 는 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 부세션 생성 과정에 대한 일실시예 상세 흐름도.
도 10 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 지역모드 생성 과정에 대한 일실시예 상세 흐름도.
도 11 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 공유모드 생성 과정에 대한 일실시예 상세 흐름도.
도 12 는 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 지역모드에서 공유모드로 속성 변경하는 과정에 대한 일실시예 상세 흐름도.
도 13 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 공유모드에서 배타모드로 속성 변경하는 과정에 대한 일실시예 상세 흐름도.
도 14 는 본 발명에 따른 세션 관리 및 컴포넌트 관리 방법중 미디어 컴포넌트 배타모드에서 공유모드로 속성 변경하는 과정에 대한 일실시예 상세 흐름도.
*도면의 주요 부분에 대한 부호의 설명
11 : 캔버스 응용부 12 : 세션 관리 서비스 컴포넌트
13 : 전송 관리기 14 : 트래픽 모니터 서버
15 : 미디어 서비스 관리기 16 : 미디어 컴포넌트
17 : 전체 세션 관리기 18 : 운용체제
19 : 미디어 디바이스 21 : 회의 관리기
22 : 컴포넌트 풀 23 : 컴포넌트 관리기
상기 목적을 달성하기 위한 본 발명의 장치는, 상호 참여형 멀티미디어 응용 개발 환경에서 세션 생성, 종료 및 지각자 처리 등을 포함하는 세션 서비스와, 초기 컴포넌트 생성, 세션 종료시 컴포넌트 삭제, 발언권 제어 등을 포함하는 컴포넌트 서비스를 관리하는 장치에 있어서, 세션 서비스 관리 기능와 컴포넌트 서비스 관리 기능을 구분하되, 현재 세션에서 다수의 부세션으로 확장할 수 있도록, 상기 세션 서비스 관리 기능에 부세션 기능을 부가하여 이를 관리하기 위한 세션 관리 수단; 상기 컴포넌트 서비스 관리 기능에 컴포넌트의 속성 변경 및 동적 관리 기능을 부가하여 이를 관리하기 위한 컴포넌트 관리 수단; 및 상기 세션 관리 수단과 상기 컴포넌트 관리 수단으로부터 전달받은 세션 및 컴포넌트 정보를 사용자에게 제공하고, 사용자로부터 세션과 컴포넌트에 관한 명령을 받아 해당 관리 수단으로 전달하는 사용자 인터페이싱 수단을 포함하여 이루어진 것을 특징으로 한다.
또한, 상기 목적을 달성하기 위한 본 발명의 방법은, 상호 참여형 멀티미디어 응용 개발 환경시스템에서 세션 서비스와 컴포넌트 서비스를 관리하는 방법에 있어서, 세션 서비스 관리 기능과 컴포넌트 서비스 관리 기능을 구분하는 제 1 단계; 상기 세션 서비스 관리 기능 수행시에, 세션 생성 및 종료, 세션 참여, 지각자 처리, 초청 기능을 수행하는 제 2 단계; 및 상기 컴포넌트 서비스 관리 기능 수행시에, 초기 컴포넌트 생성, 세션 종료시 컴포넌트 삭제, 발언권 제어 기능을 수행하고, 컴포넌트의 속성 변경 및 동적 관리 기능을 부가하여 이를 관리하는 제 3 단계를 포함하여 이루어진 것을 특징으로 한다.
또한, 본 발명은 현재 세션에서 다수의 부세션으로 확장할 수 있도록, 상기 세션 서비스 관리 기능에 부세션 기능을 부가하는 제 4 단계를 더 포함하여 이루어진 것을 특징으로 한다.
또한, 상기 목적을 달성하기 위한 본 발명의 기록매체는, 프로세서를 구비한상호 참여형 멀티미디어 응용 개발 환경시스템에, 세션 서비스 관리 기능과 컴포넌트 서비스 관리 기능을 구분하는 기능; 상기 세션 서비스 관리 기능 수행시에, 세션 생성 및 종료, 세션 참여, 지각자 처리, 초청 기능을 수행하는 기능; 및 상기 컴포넌트 서비스 관리 기능 수행시에, 초기 컴포넌트 생성, 세션 종료시 컴포넌트 삭제, 발언권 제어 기능을 수행하고, 컴포넌트의 속성 변경 및 동적 관리 기능을 부가하여 이를 관리하는 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
또한, 본 발명은 현재 세션에서 다수의 부세션으로 확장할 수 있도록, 상기 세션 서비스 관리 기능에 부세션 기능을 부가하는 기능을 더 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
본 발명은 네트워크 환경에서 상호 참여형 멀티미디어 응용을 개발하는데 필요한 세션 관리와 컴포넌트 관리를 지원한다.
본 발명의 세션 관리는 상호 참여형 응용 개발 환경인 캔버스(CANVAS)에 적용되며, 신뢰성있는 다중 사용자 참여를 제공한다. 이는 기본적으로 다중 세션을 지원하며, 특정 세션에서 여러 개의 부세션으로의 확장이 가능하다.
그리고, 본 발명의 컴포넌트 관리는 세션에서 사용하는 기본 미디어 컴포넌트 및 그것들의 조합인 복합 컴포넌트의 다양한 속성을 정의하고 제공함으로써 보다 동적이고 다양한 응용을 구성할 수 있다.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도 1 은 본 발명이 적용되는 하드웨어 시스템의 구성 예시도로서, 본 발명이 네트워크를 통해 분산된 컴퓨터에 적용되었을 경우를 나타내는 개념도이다.
도 1에 도시된 바와 같이, 플랫폼 2, 4, 5가 하나의 세션(A)을 구성하고, 플랫폼 2, 3, 6이 다른 하나의 세션(B)을 구성한다.
여기서, 플랫폼 1은 전체 세션 관리 및 트래픽 모니터링를 위해 하기 도 2의 전체 세션 관리기(17)와 트래픽 모니터 서버(14)를 실행중인 플랫폼이다.
그리고, 나머지 각 플랫폼 2 내지 6은 세션 관리 컴포넌트들과 세션 미디어 컴포넌트들을 구비하는데, 이중 본 실시예에서는 특히 세션 관리 컴포넌트(즉, 하기 도 2의 세션 관리 및 컴포넌트 관리장치(12))에 대해 보다 상세하게 설명한다.
특정 세션에 속한 모든 참여자들은 세션 관리 컴포넌트를 통해 사용자 관리, 및 컴포넌트 관리를 수행하며, 세션 미디어 컴포넌트(하기 도 2의 미디어 서비스 관리기(15) 및 미디어 컴포넌트(16))는 오디오, 비디오, 화이트보드, 채팅, 메일 등 세션 진행에 필요한 다양한 미디어를 제공한다.
이제, 본 발명에 따른 세션 관리 및 컴포넌트 관리장치(즉, 세션 관리 컴포넌트)에 대해 보다 상세히 설명하면 다음과 같다.
본 실시예는 기존의 두레(DooRae)에서 트래픽 모니터 서버(14), 미디어 컴포넌트(16) 및 전체 세션 관리기(17)는 이전에 개발된 것과 동일하므로 설명을 생략하고, 다만 기존의 세션 관리기가 수행하던 기능을 세션 관리 서비스와 컴포넌트 관리 서비스로 구분하여, 세션 서비스에 부세션 기능을, 컴포넌트 서비스에는 속성및 동적 관리 기능을 부여한다.
도 2 는 본 발명에 따른 세션 관리 및 컴포넌트 관리장치가 적용되는 상호 참여형 멀티미디어 응용 개발 시스템(캔버스)의 전체 구성 예시도이다.
기존의 두레(DooRae)에서 세션 관리기가 세션에 관한 서비스인 세션 생성, 종료 및 지각자 처리와 컴포넌트(객체)에 관한 서비스 초기 컴포넌트 생성, 세션종료시 컴포넌트 삭제, 발언권제어를 모두 수행하던 것을, 여기에 진보적인 개념인 동적인 컴포넌트의 관리 및 컴포넌트의 다양한 속성 변경 기능을 추가하기 위하여 새로 개발된 캔버스(CANVAS)에서는 컴포넌트 관리, 변경에 관한 서비스만을 담당하는 관리기를 추가한다. 즉, 기존의 세션 관리기가 수행하던 기능을 일단 세션 관리 서비스와 컴포넌트 관리 서비스로 구분하고, 그중에서 컴포넌트 관리 서비스에 컴포넌트의 동적 생성, 컴포넌트 속성 변경 등의 기능을 추가하여 이를 관리하도록 하는 캔버스의 컴포넌트 관리기(23)를 생성한다.
또한, 이전의 남아있는 세션 관리기의 기능중에서 서브세션(부세션)에 관한 기능은 없으므로, 이러한 부세션 기능을 세션 관리 서비스에 추가하여 이를 관리하도록 하는 캔버스의 회의 관리기(21)를 생성한다.
추가적으로, 세션 및 컴포넌트에 대하여 사용자에게 가시화시켜 주는 방법에 있어서 보다 효율성을 극대화시키기 위하여 회의 관리기(21)와 컴포넌트 관리기(23)간의 프로토콜상 메시지 전달 및 사용자의 사건들(Events, 즉 사용자가 세션 진행중에 컴포넌트를 추가하거나 삭제하거나 아니면 속성을 변경하거나 하는 것들)을 처리하기 위하여 캔버스의 컴포넌트 풀(Component Pool)(22)을 추가한다.
이처럼 본 발명이 적용되는 상호 참여형 멀티미디어 응용 개발 환경인 캔버스에서는 기존의 두레에서 세션 관리기가 하는 역할을 세션 관리 및 컴포넌트 관리장치(12)가 수행하되, 이처럼 회의 관리기(21), 컴포넌트 풀(22), 컴포넌트 관리기(23)로 분할하여 세션 서비스에 부세션 기능을 추가하고 컴포넌트 서비스에는 속성 및 동적 관리 기능을 부여한다.
도 2에 도시된 바와 같이, 상호 참여형 멀티미디어 응용 개발 환경인 캔버스에서 본 발명에 따른 세션 관리 및 컴포넌트 관리장치(12)는, 기존의 두레에서 세션 관리기가 수행하는 세션 생성, 종료 및 지각자 처리 등을 포함하는 세션 서비스와 초기 컴포넌트 생성, 세션 종료시 컴포넌트 삭제, 발언권 제어 등을 포함하는 컴포넌트 서비스외에, 우선 세션 서비스 관리 기능와 컴포넌트 서비스 관리 기능을 구분하고, 현재 세션에서 다수의 부세션으로 확장할 수 있도록, 세션 서비스 관리 기능에 부세션 기능을 부가하여 이를 관리하기 위한 회의 관리기(21)와, 컴포넌트 서비스 관리 기능에 컴포넌트의 속성 변경 및 동적 관리 기능을 부가하여 이를 관리하기 위한 컴포넌트 관리기(23)와, 회의 관리기(21)와 컴포넌트 관리기(23)으로부터 전달받은 세션 및 컴포넌트 정보를 사용자에게 제공하고, 사용자로부터 세션과 컴포넌트에 관한 명령을 받아 해당 회의 관리기(21) 및 컴포넌트 관리기(23)로 전달하는 컴포넌트 풀(22)을 구비한다.
이러한 세션 관리 및 컴포넌트 관리장치(12)에서 회의 관리기(21)는 기존의 세션 관리기에서 세션 생성, 지각자 처리, 초청기능을 포함하고, 여기에 부세션 기능을 추가한다.
그리고, 컴포넌트 풀(22)은 사용자에게 가시화를 극대화시키기 위해 사용자 인터페이스를 새로 추가한다. 또한, 컴포넌트 관리기(23)는 기존의 세션 관리기에서 컴포넌트(객체) 추가, 삭제 기능과 발언권 관리 기능를 포함하고, 동적인 컴포넌트 관리를 위해 컴포넌트의 동적 생성, 추가, 속성변경 기능을 추가한다.
미디어 컴포넌트(16)는 오디오, 비디오, 화이트 보드, 디지털 캐로절, 메신저 등 다양하다.
전송 관리기(13)는 각 세션 관리 및 컴포넌트 관리장치(12)와 미디어 컴포넌트(16)가 원격지와 통신할 때 다양한 전송 프로토콜을 제공한다.
전체 세션 관리기(17)는 자신과 접속되어 있는 세션을 관리하고, 새로운 세션을 개설할 경우 다른 세션과 독립적으로 작동할 수 있도록 자원을 할당해 준다. 이는 이전에 개발된 것과 매우 유사하다.
캔버스를 구성하는 다수의 세션 관리 및 컴포넌트 관리장치(12)와 미디어 컴포넌트(16)는 모두 전송 관리기(13)를 가지고 있으며, 모든 네트워크를 통한 원격지와의 통신은 이러한 전송 관리기(13)를 이용한다.
캔버스 응용부(11)는 세션 관리 및 컴포넌트 관리장치(12)에 이벤트를 발생시키며, 해당 세션 관리 및 컴포넌트 관리장치(12)는 발생된 이벤트가 자신에게 해당되는 것일 경우에 적당한 반응을 한다.
예를 들면, 발언권을 요청할 경우에 캔버스 응용부(11)에서 회의 관리기(21)를 통해 컴포넌트 관리기(23)에게 발언권 요구 이벤트를 발생시키며, 발생된 이벤트를 수신한 컴포넌트 관리기(23)는 전송 관리기(13)를 통해 세션 생성자에게 발언권 요구 패킷을 보낸다.
이후, 세션 생성자의 컴포넌트 관리기(23)는 패킷을 받아 발언자의 정보를 변경한 후에 세션 참가자 전원에게 발언자 정보 변경 패킷을 보낸다.
다음으로, 발언자 정보 변경 패킷을 받은 세션 참가자들은 전송 관리기(13)를 통해 들어온 패킷을 컴포넌트 관리기(23)를 통해 분석하여 미디어 컴포넌트(16)들에게 발언권 유무를 알려 주게 된다. 뿐만아니라, 세션 관리 및 컴포넌트 관리장치(12)들 사이에서도 다른 이벤트를 송수신하기도 한다.
이처럼 캔버스 응용부(11), 세션 관리 및 컴포넌트 관리장치(12), 미디어 컴포넌트(16)와 같은 각 컴포넌트들은 서로 이벤트를 주고 받아 동작하며, 원격지와는 전송 관리기(13)를 통하여 다른 사용자와 통신함으로써 세션이 진행되게 된다.
미디어 컴포넌트(16)는 자신이 사용하는 미디어 자원을 운영체제(18)로부터 할당받으며, 운영체제(18)를 통해 미디어 디바이스(19)로부터 필요한 데이터를 얻어오게 된다. 예를 들면, 오디오 컴포넌트는 오디오 디바이스를 이용하며, 비디오 컴포넌트는 비디오 디바이스를 이용한다. 또한, 전송 관리기(13)는 운영 체제(18)를 통해 네트워크 디바이스에 접근하게 된다.
도 3 은 본 발명에 따른 세션 관리 및 컴포넌트 관리장치중 회의 관리기의 일실시예 상세 구성도로서, 도면에서 '31'은 응용 인터페이스부, '32'는 세션 정보 관리기, '33'은 참여자 관리기, '34'는 부세션 관리기, '35'는 지각자 처리기, '36'은 세션 생성기, '37'은 세션 종료기, '38'은 패킷 생성기, 그리고 '39'는 패킷 분석기를 각각 나타낸다.
도 3에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트 관리장치(12)중 회의 관리기(21)는, 캔버스 응용부(11)로부터 발생된 이벤트를 이벤트 종류별로 해당 구성 요소들(32 내지 37)로 인터페이싱하기 위한 응용 인터페이스부(31)와, 응용 인터페이스부(31)에 연결되어, 해당 세션의 세션 이름, 세션 식별자, 가용 자원 정보, 세션 생성자 정보를 관리하며, 세션에 참가한 새로운 참여자에게 최신 세션 정보를 전달하는 세션 정보 관리기(32)와, 응용 인터페이스부(31)에 연결되어, 현재 세션에 참여한 참여자의 이름 및 위치를 저장하고, 참여자의 정보 변경시에 변경된 정보를 갱신하는 참여자 관리기(33)와, 응용 인터페이스부(31)에 연결되어, 현재 세션을 여러 개의 부세션으로 확장하여 이를 관리하기 위한 부세션 관리기(34)와, 응용 인터페이스부(31)에 연결되어, 새로운 참여자의 참가시에 세션 정보 관리기(32)가 최신 세션 정보를 새로운 참여자에게 전달하도록 하고, 참여자 관리기(33)로 새로운 참여자의 정보를 전달하여 참여자 정보를 갱신하도록 하며, 컴포넌트 관리기(23)가 현재 세션에서 사용하고 있는 컴포넌트들의 속성 및 상태, 발언권 정보를 전달하도록 지시하는 지각자 처리기(35)와, 응용 인터페이스부(31)에 연결되어, 세션을 생성하기 위한 세션 생성기(36)와, 응용 인터페이스부(31)에 연결되어, 세션의 종료를 관리하는 세션 종료기(37)와, 해당 구성 요소들(32 내지 37)로부터 수신된 이벤트를 패킷으로 변환하는 패킷 생성기(38)와, 전송 관리기(13)를 통해 전달된 패킷을 분석하여 이벤트 종류별로 해당 구성 요소들(32 내지 37)로 전달하는 패킷 분석기(39)를 구비한다.
세션 정보 관리기(32)는 해당 세션의 세션 이름, 세션 식별자, 가용 자원 정보, 세션 생성자 정보 등을 관리하고, 세션에 참가한 참여자는 세션 생성자로부터 참가시에 최신 정보를 얻어 온다.
참여자 관리기(33)는 현재 세션에 참여한 참여자의 이름 및 위치를 저장하고, 특히 세션 생성자측의 참여자 관리기(13)는 항상 최신 정보를 유지하고 있으며, 참여자 정보가 변경될 때 항상 다른 참여자들에게 이 사실을 알려 주어 갱신하도록 한다.
부세션 관리기(34)는 현재 세션에서 여러 개의 부세션으로 확장할 수 있게 한다. 여기서, 부세션은 일반적인 세션과 동일하게 구성되고 처리되며, 다만 기준 세션(즉, 부세션이 발생되기 전의 세션)과 부세션과의 연관성을 나타내기 위해 부세션의 세션 식별자(즉, 부세션 식별자)는 기준 세션의 식별자를 이용하여 할당된다.
만약, 세션 생성자가 캔버스 응용부(11)에서 확장할 부세션 정보와 부세션 발생 이벤트를 회의 관리기(31)에게 발생시키면, 부세션 관리기(34)는 전체 세션 관리기(17)에게 부세션 발생을 요청하고, 부세션이 개설되면 캔버스 응용부(11)로부터 전달받은 정보중 부세션 참가자들에게 해당 부세션에 참가하라는 패킷을 만들어 원격지에 보낸다. 이때, 패킷을 전달받은 참여자는 참가해야 할 부세션 식별자를 이용하여 부세션에 참가하게 된다.
지각자 처리기(35)는 세션 생성자의 것일 경우에 새로운 참여자가 참가할 때 세션 정보 관리기(32)가 새 참여자에게 최신 세션 정보를 전달하도록 하고 참여자 관리기(33)에게 새 참여자의 정보를 넘겨 주어 참여자 정보를 갱신하도록 한다. 또한, 컴포넌트 관리기(23)가 현재 세션에서 사용하고 있는 컴포넌트들의 속성 및 상태, 발언권 정보등을 전달하도록 지시한다.
세션 생성기(36)는 세션 관리 서비스 및 컴포넌트 관리 서비스를 생성하고, 초기화한다. 또한, 세션이 생성될 때 전체 세션 관리기(17)와 접속하고 세션에 참가하고 있을 경우에 세션 생성자와의 접속도 연결한다.
세션 종료기(37)는 세션 생성자의 경우에 현재 참가자들에게 세션 종료 패킷을 전달하고, 전체 세션 관리기(17)에게 세션 종료를 요청한다. 이후에, 세션의 나머지 컴포넌트들을 삭제한다. 한편, 참여자의 경우에 세션에서 탈퇴할 경우인데 세션 생성자에게 탈퇴를 알리며, 세션을 위해 실행되어 있는 나머지 컴포넌트들을 삭제한다.
패킷 생성기(38)는 네트워크를 통해서 원격지에 전달할 패킷을 만들고, 패킷 분석기(39)는 전달받은 패킷이 어떤 정보인지를 분석하여 해당 구성 요소들(32 내지 37)로 전해준다.
도 4 는 본 발명에 따른 세션 관리 및 컴포넌트 관리장치중 컴포넌트 풀의 일실시예 상세 구성도로서, 도면에서 '41'은 회의 관리기 메시지 분석기, '42'는 세션 정보 표시기, '43'은 컴포넌트 추가 삭제기, '44'은 공유 컴포넌트 표시기, '45'는 공유 복합 컴포넌트 표시기, '46'은 지역 컴포넌트 표시기, 그리고 '47'은 컴포넌트 속성 변환기를 각각 나타낸다.
도 4에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트 관리장치(12)중 컴포넌트 풀(22)은, 회의 관리기(21)로부터 전달된 메시지를 분석하여 해당 구성 요소들(42 내지 47)로 전달하는 회의 관리기 메시지 분석기(41)와, 회의 관리기 메시지 분석기(41)에 연결되어, 세션 정보와 참여자 정보를 표시하기 위한 세션 정보 표시기(42)와, 회의 관리기 메시지 분석기(41)에 연결되어, 컴포넌트 관리기(23)로 컴포넌트의 추가/삭제를 요구하기 위한 컴포넌트 추가 삭제기(43)와, 회의 관리기 메시지 분석기(41)에 연결되어, 현재 활성화된 세션에서 여러 참여자가 동시에 사용할 수 있는 공유모드의 컴포넌트 및 공유모드에서 일시적으로 컴포넌트 소유권을 가진 참여자만이 사용할 수 있는 배타모드의 컴포넌트를 표시하기 위한 공유 컴포넌트 표시기(44)와, 회의 관리기 메시지 분석기(41)에 연결되어, 기본 컴포넌트의 일부나 전체를 복합 컴포넌트로 조합하여 표시하기 위한 공유 복합 컴포넌트 표시기(45)와, 회의 관리기 메시지 분석기(41)에 연결되어, 공유모드로 전이하기 이전의 상태인 지역모드의 컴포넌트를 표시하기 위한 지역 컴포넌트 표시기(46)와, 지역모드에서 공유모드로, 공유모드에서 배타모드로, 배타모드에서 공유모드로의 컴포넌트 속성을 변경하기 위한 컴포넌트 속성 변환기(47)와, 구성 요소들(42 내지 47)로부터 수신된 이벤트를 패킷으로 변환하는 패킷 생성기(48)와, 전송 관리기(13)를 통해 전달된 패킷을 분석하여 이벤트 종류별로 해당 구성 요소들(42 내지 47)로 전달하는 패킷 분석기(49)를 구비한다.
컴포넌트 풀(22)은 세션 및 컴포넌트 정보를 사용자에게 제공하고, 사용자로부터 컴포넌트와 세션에 관한 명령을 받아 해당 세션 관리 및 컴포넌트 관리장치(12)와, 미디어 컴포넌트(16)에게 전달해 주는 역할을 한다.
세션 정보 표시기(42)는 회의 관리기(21)로부터 전달받은 세션 정보와 참여자 정보를 트리 구조로 보여주는데, 즉 참여하고 있는 세션중에서 활성화된 세션의 정보를 공유 컴포넌트 표시기(44) 및 지역 컴포넌트 표시기(46)에게 알려줌으로써 활성화된 세션에 해당하는 컴포넌트를 사용자에게 보여 준다.
컴포넌트 추가 삭제기(43)는 컴포넌트 관리기(23)에게 컴포넌트의 추가 또는 삭제를 요구한다.
만약, 사용자가 컴포넌트 풀(22)에 컴포넌트 추가 이벤트를 발생시키면, 컴포넌트 추가 삭제기(43)는 전송 관리기(13)를 통해 다른 세션 참가자들에게 알려주고, 컴포넌트 추가 패킷을 받은 각각의 컴포넌트 풀(22)은 컴포넌트 관리기(23)에 컴포넌트 추가 요청을 한다.
이후, 컴포넌트 추가 요청을 받은 컴포넌트 관리기(23)는 컴포넌트를 실행하고 컴포넌트 정보를 추가한다. 이때, 컴포넌트가 생성되었으면, 다시 컴포넌트 풀(22)의 컴포넌트 추가 삭제기(43)에게 생성이 완료되었음을 알려 주어 컴포넌트 표시기(즉, 공유 컴포넌트 표시기(44), 공유 복합 컴포넌트 표시기(45)))가 최신 정보를 갱신할 수 있도록 한다.
공유 컴포넌트 표시기(44)는 현재 활성화된 세션에서 공유된 컴포넌트를 사용자에게 리스트 형태로 보여준다.
이러한 공유 컴포넌트 표시기(44)는 컴포넌트의 속성 변경 및 컴포넌트를 삭제할 수 있으며, 컴포넌트 속성에는 지역모드, 공유모드, 및 배타모드가 있다.
여기서, 지역모드는 공유모드로 전이하기 이전의 상태이며, 세션 개설자가 일반적인 응용프로그램을 사용하는 것과 같다. 즉, 다른 참여자들은 지역모드로 실행된 컴포넌트를 전혀 알 수 없다. 이러한 지역모드의 컴포넌트는 지역 컴포넌트 표시기(46)에 나타난다.
한편, 공유모드는 세션에 참가한 모든 참여자가 하나의 프로그램을 여러 명이 동시에 사용하는 것이다. 즉, 공유된 프로그램의 같은 모습이 화면에 보여지며, 한 사람이 기능을 사용할 때 그 결과가 모든 참여자의 프로그램에 반영되도록 하는 것이다.
다른 한편, 배타모드는 공유모드에서 일시적으로 컴포넌트 소유권을 가진 참여자만이 사용할 수 있도록 한 것이다. 즉, 세션 참가자중 특정 사용자(일반적으로는 세션 개설자임)에게 모든 권한이 주어지고, 그 이외의 사용자는 사용할 수 없게 된다.
상기 공유모드와 배타모드의 컴포넌트는 공유 컴포넌트 표시기(44)에 보여지며, 배타모드는 다른 색으로 표시되어 공유 컴포넌트와 구별할 수 있도록 보여진다.
또 다른 한편, 복합 컴포넌트라는 것은 캔버스에서 제공되는 기본 컴포넌트의 일부 또는 전체를 조합하여 만들어진 컴포넌트이다. 예를 들면, 화상회의라는 복합 컴포넌트는 오디오 컴포넌트, 비디오 컴포넌트, 화이트보드 컴포넌트를 이용하여 만들어진 것이다.
복합 컴포넌트 표시기는 이런 복합 컴포넌트를 공유 컴포넌트 표시기(44)의 일부에 보이도록 하고, 이를 관리하는 기능을 가진다.
만약, 컴포넌트 추가 삭제기(43)에서 복합 컴포넌트를 추가하게 되면, 공유복합 컴포넌트 표시기(45)가 추가될 복합 컴포넌트를 이루는 기본 컴포넌트들의 정보를 얻어 컴포넌트 관리기(23)에게 컴포넌트 추가 이벤트를 보내게 된다. 또한, 복합 컴포넌트를 이루는 모든 기본 컴포넌트가 생성되었을 때 공유 복합 컴포넌트 표시기(45)는 추가된 기본 컴포넌트를 복합 컴포넌트로 묶어 보여지게 한다.
지역 컴포넌트 표시기(46)는 전술한 바와 같이 지역 컴포넌트로 추가된 컴포넌트를 화면에 보여주는 기능을 한다.
컴포넌트 속성 변환기(47)는 지역모드에서 공유모드로, 공유모드에서 배타모드로, 배타모드에서 공유모드로의 컴포넌트 속성이 변경되도록 컴포넌트 관리기(23)에 이벤트를 보낸다. 이때, 컴포넌트 속성 변환 이벤트를 수신한 컴포넌트 관리기(23)는 세션에 참여한 모든 참가자에게 컴포넌트 속성 패킷을 보내 원격지의 컴포넌트 관리기(23)에 의해 컴포넌트의 속성이 변하게 된다. 이후에, 속성 변환을 마친 컴포넌트 관리기(23)는 다시 컴포넌트 속성 변환기(47)에 변환 완료를 알려 주고, 공유 컴포넌트 표시기(44) 및 지역 컴포넌트 표시기(46)에 갱신된 컴포넌트 속성을 보여 주게 된다.
도 5 는 본 발명에 따른 세션 관리 및 컴포넌트 관리장치중 컴포넌트 관리기의 일실시예 상세 구성도로서, 도면에서 '51'은 컴포넌트 풀 메시지 분석기, '52'는 컴포넌트 식별자 생성기, '53'은 컴포넌트 실행 종료 관리기, '54'는 공유 컴포넌트 자원 관리기, '55'는 공유 컴포넌트 속성 관리기, '56'은 발언권 제어기, '57'은 패킷 생성기, 그리고 '58'은 발언권 제어기를 각각 나타낸다.
도 5에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트관리장치(12)중 컴포넌트 관리기(23)는, 컴포넌트 풀(22)로부터 전달된 메시지를 분석하여 해당 구성 요소들(52 내지 56)로 전달하는 컴포넌트 풀 메시지 분석기(51)와, 컴포넌트 풀 메시지 분석기(51)에 연결되어, 컴포넌트 추가 요청시에 각 컴포넌트별로 고유한 값을 할당하여 현재 사용하는 컴포넌트의 모든 정보를 얻을 수 있도록, 컴포넌트 식별자를 생성하기 위한 컴포넌트 식별자 생성기(52)와, 컴포넌트 풀 메시지 분석기(51)에 연결되어, 컴포넌트의 실행 및 종료를 관리하기 위한 컴포넌트 실행 종료 관리기(53)와, 컴포넌트 풀 메시지 분석기(51)에 연결되어, 컴포넌트의 생성 및 삭제시에 할당된 자원중 유휴 자원을 관리하기 위한 공유 컴포넌트 자원 관리기(54)와, 컴포넌트 풀 메시지 분석기(51)에 연결되어, 컴포넌트의 속성을 관리하기 위한 공유 컴포넌트 속성 관리기(55)와, 컴포넌트 풀 메시지 분석기(51)에 연결되어, 사용하고 있는 특정 컴포넌트에 대하여 사용 권한을 부여하는 발언권 제어기(56)와, 구성 요소들(52 내지 56)로부터 수신된 이벤트를 패킷으로 변환하는 패킷 생성기(57)와, 전송 관리기(13)를 통해 전달된 패킷을 분석하여 이벤트 종류별로 해당 구성 요소들(52 내지 56)로 전달하는 패킷 분석기(58)를 구비한다.
컴포넌트 관리기(23)는 컴포넌트 풀(22)로부터 전달받은 이벤트를 분석하여 컴포넌트 추가, 삭제, 공유 및 배타모드의 컴포넌트를 관리하고, 속성을 변경하는 역할을 한다.
컴포넌트 식별자 생성기(52)는 컴포넌트 풀(22)로부터 컴포넌트 추가 요청을 받을 경우에 각 컴포넌트별로 고유한 식별자를 할당하는데, 이 식별자는 같은 종류의 컴포넌트가 여러 인스턴스를 사용하고 있을 때, 예를 들면 화이트보드가 2개 이상 실행될 경우 이를 구별하기 위해서 사용한다. 이때, 모든 컴포넌트에 대한 접근은 이러한 컴포넌트 식별자를 이용한다. 여기서, 컴포넌트 식별자는 사용되는 모든 컴포넌트에 각각 고유한 값으로 할당되며, 이 식별자를 이용하여 현재 사용하는 컴포넌트의 모든 정보를 얻을 수 있다.
컴포넌트 실행 종료 관리기(53)는 컴포넌트가 추가될 때 컴포넌트의 실행 모듈을 실행하고, 이의 결과로 얻은 컴포넌트의 핸들을 컴포넌트 정보에 갱신한다. 반면에, 컴포넌트가 삭제될 때는 컴포넌트 식별자를 이용하여 컴포넌트의 정보중 핸들값을 얻어내어 그 컴포넌트에게 종료 메시지를 보내게 된다. 이때, 컴포넌트가 종료되면, 컴포넌트 정보를 삭제하고 컴포넌트 풀(22)에 삭제 완료를 알려 준다.
공유 컴포넌트 자원 관리기(54)는 회의 관리기(21)가 전체 세션 관리기(17)로부터 할당받은 사용 가능한 자원(여기서, 자원은 일반적으로 사용할 수 있는 포트의 범위를 말함)중에서 아직 사용하고 있지 않은 것을 찾아 내어 컴포넌트가 생성될 때 그 컴포넌트가 사용할 수 있도록 분배해 준다. 물론, 컴포넌트가 삭제될 때 반납한 자원도 재사용 가능하도록 해준다.
발언권 제어기(56)는 사용하고 있는 특정 컴포넌트에 대하여 사용 권한을 부여해주는 역할을 한다. 즉, 발언권을 가지고 있는 참여자는 오디오, 비디오 컴포넌트 등에 대해 발언 소유권을 가지게 되고, 이 발언 소유자의 소리 및 화면 등을 공유하게 된다. 하지만, 발언 소유권은 컴포넌트 자체에서 처리하는 컴포넌트 소유권 운용 방식에 비해 우선 순위가 낮기 때문에 이 발언 소유권을 컴포넌트 소유권으로이용하는 여부는 컴포넌트의 운용 방식에 따라 달라질 수 있다.
발언권 제어기(56)의 발언 소유권 운용방식은 아무나 말하기, 한 사람씩 말하기, 즉시 말하기 등 다양한 방식을 지원한다.
이제, 본 발명에 따른 세션 관리 및 컴포넌트 관리방법에 대해 보다 상세히 설명한다.
본 발명에 따른 세션 관리 및 컴포넌트 관리방법은, 세션 서비스 관리 기능과 컴포넌트 서비스 관리 기능을 구분하되, 상기 세션 서비스 관리 기능 수행시에 세션 생성 및 종료, 지각자 처리, 초청 기능을 수행하고, 컴포넌트 서비스 관리 기능 수행시에 초기 컴포넌트 생성, 세션 종료시 컴포넌트 삭제, 발언권 제어 기능을 수행하고, 컴포넌트의 속성 변경 및 동적 관리 기능을 부가하여 이를 관리한다. 또한, 현재 세션에서 다수의 부세션으로 확장할 수 있도록 세션 서비스 관리 기능에 부세션 기능을 부가한다.
도 6 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 세션 생성 과정에 대한 일실시예 상세 흐름도이다.
도 6에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 세션 생성 과정은, 세션 생성자가 세션을 처음으로 만들기 위해서는 먼저 세션 관리 서비스인 회의 관리기(21)를 실행하게 된다(601).
이후, 회의 관리기(21)가 실행되어 다양하게 개발된 캔버스 응용부(11)들중 하나를 선택하여 실행한다(602). 이후에, 캔버스 응용부(11)를 이용하여 전체 세션 관리기(17)와 연결하게 되는데 이때 접속할 전체 세션 관리기(17)의 주소는 초기화파일에 기록되어 있다(603).
전체 세션 관리기(17)와 접속이 끝나면, 세션 생성 단계에 들어가는데 우선 회의 관리기(21)가 제공하는 세션 정보 입력창에 세션 이름을 입력한다(604). 이때, 회의 관리기(21)의 세션 정보 관리기(32)는 입력된 세션 정보를 전체 세션 관리기(17)에게 전달하여 세션을 생성하게 된다.
다음으로, 전체 세션 관리기(17)는 회의 관리기(21)로부터 전달받은 세션 정보를 이용하여 세션별로 유일한 번호인 세션 식별자를 부여하고, 앞으로 그 세션에서 사용해야 할 자원(포트)를 할당하여 회의 관리기(21)로 전달한다(605).
이어서, 회의 관리기(21)는 전체 세션 관리기(17)로부터 세션 식별자, 자원을 전달받아 컴포넌트 풀(22), 컴포넌트 관리기(23)와 같은 세션 관리 컴포넌트를 차례로 생성한다(606).
이처럼 컴포넌트 관리기(23)가 생성이 되면, 세션에서 사용할 미디어 서비스 컴포넌트의 종류를 선택할 수 있는데, 이때 사용자가 입력한 컴포넌트 정보를 컴포넌트 관리기(23)에게 전달해 준다(607).
이후에, 컴포넌트 관리기(23)는 선택된 미디어 서비스 컴포넌트들을 실행하고(608) 공유모드 컴포넌트로 전환시킨다(609).
마지막으로, 미디어 서비스 컴포넌트의 생성이 끝나면, 컴포넌트 관리기(23)는 컴포넌트 풀(22)에게 공유 컴포넌트 생성 완료를 알려 주어 세션 정보를 갱신하도록 한다(610).
도 7 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 세션 종료 과정에 대한 일실시예 상세 흐름도이다.
세션 종료의 흐름은 세션 생성자인지 아닌지에 따라 크게 두 가지로 나눌 수 있는데, 이는 세션 생성자가 세션을 종료할 경우에 세션 전체가 종료됨을 의미하므로 모든 참여자들이 세션을 마쳐야 하는데 반해, 세션 생성자가 아닌 참여자가 종료할 경우에는 자기 자신만 세션에서 탈퇴해야 하기 때문이다.
도 7에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 세션 종료 과정은, 먼저 세션 종료가 세션 생성자에 대한 것인지를 분석한다(701).
분석결과, 세션 생성자인 경우에, 회의 관리기(21)의 참여자 관리기(33)는 모든 참여자들에게 세션 종료 패킷을 만들어 전송한다(702). 이후에, 전체 세션 관리기(17)와 연결을 통해서 회의 관리기(21)의 세션 정보 관리기(32)는 전체 세션 관리기(17)에게 세션 종료 메시지를 전달한다(703). 이때, 이를 전달받은 전체 세션 관리기(17)는 세션 식별자를 이용하여 해당 세션을 찾은 후 그 세션을 전체 세션 정보에서 삭제한다.
삭제가 완료되면, 전체 세션 관리기(17)와의 연결이 종료된다(705).
이후에, 세션 생성자가 다른 세션에 참여하고 있어 세션 생성자를 포함한 모든 참여자는 컴포넌트 관리기(23)에서 현재 실행되어 있는 미디어 컴포넌트를 모두 삭제한다(708). 여기서, 미디어 컴포넌트 삭제는 컴포넌트 관리기(23)의 컴포넌트 실행 종료 관리기(53)가 자신이 관리하고 있는 컴포넌트의 컴포넌트 식별자를 이용하여 컴포넌트의 정보를 얻은 다음 해당 컴포넌트에 종료 메시지를 보낸 후 컴포넌트 정보를 지우는 과정으로 이루어진다.
미디어 컴포넌트가 삭제되면, 회의 관리기(21)에서 자신의 세션 정보를 모두 지워버리고(709), 세션 관리 및 컴포넌트 관리장치(12)인 컴포넌트 관리기(23), 컴포넌트 풀(22), 회의 관리기(21)를 종료하고 다시 세션 정보를 갱신한다(711).
다만, 세션 생성자가 다른 세션에 참여하고 있지 않은 경우에는 상기의 미디어 컴포넌트 삭제 단계(708), 세션 삭제 단계(709), 세션 관리 컴포넌트 삭제 단계(710), 그리고 세션 정보 갱신 단계(711)를 스킵(Skip)한다.
분석결과, 세션 생성자가 아닌 참여자인 경우에, 세션 생성자가 보낸 세션 종료 패킷을 수신하고 이를 분석한다(706,707). 이후에, 세션 생성자와 마찬가지로 모든 참여자는 컴포넌트 관리기(23)에서 현재 실행되어 있는 미디어 컴포넌트를 모두 삭제한다(708).
다음으로, 미디어 컴포넌트가 삭제되면, 회의 관리기(21)에서 자신의 세션 정보를 모두 지워버리고(709), 세션 관리 및 컴포넌트 관리장치(12)인 컴포넌트 관리기(23), 컴포넌트 풀(22), 회의 관리기(21)를 종료하고 다시 세션 정보를 갱신한다(711).
도 8 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 세션 참여 과정에 대한 일실시예 상세 흐름도로서, 세션이 개설된 이후에 세션이 참여하는 경우에 해당한다.
도 8에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 세션 참여 과정은, 세션에 참여하고자 하는 참가자는 먼저 세션 관리 서비스인회의 관리기(21)를 실행한다(801).
이후, 회의 관리기(21)를 이용하여 전체 세션 관리기(17)와 연결한 후에(802), 현재 진행하고 있는 전체 세션에 관한 정보를 수신하고(803), 이를 참여자에게 리스트 형태로 보여준다. 이때, 참여자가 진행중인 세션을 선택하면, 회의 관리기(21)는 전체 세션 관리기(17)로부터 선택된 세션의 정보를 얻게 된다(804). 이후에, 이때 얻은 정보를 이용하여 컴포넌트 풀(22), 컴포넌트 관리기(23)를 실행하고 초기화 한다(805).
다음으로, 모든 세션 관리 컴포넌트가 생성이 된 다음에, 회의 관리기(21)의 세션 정보 관리기(32)는 세션 생성자와 연결한 후에(806) 세션의 최신 정보를 얻어온다(807). 이때, 얻어온 정보에는 현재 사용중인 미디어 컴포넌트들의 정보, 세션 참여자 정보 등이 포함되어 있다.
이어서, 새 참여자는 세션 생성자로부터 얻어온 이 정보를 이용하여 세션 생성자 또는 기존 참여자와 동일한 진행 상태를 유지하기 위해 사용중인 미디어 컴포넌트를 공유모드 또는 배타모드로 추가하고(808 내지 810), 각 미디어 컴포넌트는 세션 생성자로부터 미디어 컴포넌트가 가지고 있던 최신 정보를 요구한다.
마지막으로, 미디어 컴포넌트가 추가된 다음 세션 정보를 갱신한다(811).
도 9 는 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 부세션 생성 과정에 대한 일실시예 상세 흐름도이다.
부세션이라 함은, 예를 들면 수업진행중 분단별로 그룹토의를 할 경우에 해당한다. 즉, 현재 세션에서 여러 개의 작은 세션으로 분기하는 것을 말한다. 이러한 부세션을 생성하는 권한은 세션 생성자만이 가지고 있다.
도 9에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 부세션 생성 과정은, 먼저 세션 생성자가 부세션에 참가할 참여자를 현재 참여자중에서 선택하면(901), 회의 관리기(21)의 참여자 관리기(33)는 부세션에 해당하는 참여자 정보를 생성한다.
이후, 회의 관리기(21)의 세션 정보 관리기(32)는 연결되어 있는 전체 세션 관리기(17)에게 부세션 식별자를 할당받아(902) 참여자 관리기(33)에게 넘겨준다. 이때, 참여자 관리기(33)는 부세션의 생성자가 될 참여자들에게 부세션이 개설되었으므로 참여하라는 메시지를 보낸다. 이때, 참여자 관리기(33)는 전체 세션 관리기(17)로부터 세션 식별자, 자원을 전달받아 컴포넌트 풀(22), 컴포넌트 관리기(23)와 같은 세션 관리 컴포넌트를 차례로 생성하고(903), 컴포넌트 관리기(23)가 생성되면 부세션에서 사용할 미디어 컴포넌트(16)를 생성하여(904) 생성된 미디어 컴포넌트(16)를 주세션 상태와 동기화시킨다(905).
다음으로, 메시지를 전달받은 참여자는 부세션 식별자를 이용하여 지정된 부세션에 참가한다(906).
마지막으로, 미디어 서비스 컴포넌트의 생성이 끝나면, 컴포넌트 관리기(23)는 컴포넌트 풀(22)에게 공유 컴포넌트 생성 완료를 알려 주어 세션 정보를 갱신하도록 한다(907).
이처럼, 부세션에 참가하는 것은 일반적인 세션에 참가하는 것과 동일하다.
도 10 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 지역모드 생성 과정에 대한 일실시예 상세 흐름도로서, 주로 컴포넌트 풀(22)과 컴포넌트 관리기(23)가 관여한다.
도 10에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 지역모드 생성 과정은, 먼저 지역모드로 생성하기 위해서 컴포넌트 풀(22)에서 사용자가 지역모드 생성 이벤트를 발생시키면 컴포넌트 풀(22)은 해당 미디어 서비스 응용을 실행하고(101) 하나의 미디어 컴포넌트를 생성한다(102). 이후에, 미디어 컴포넌트의 생성이 완료되면, 컴포넌트 풀(22)에게 컴포넌트의 핸들을 넘겨준다.
이후, 새로 실행된 컴포넌트의 핸들을 넘겨받은 컴포넌트 풀(22)의 지역 컴포넌트 표시기(46)는 지역 컴포넌트 정보에 그 핸들값을 저장한 후에(103) 지역 컴포넌트 정보를 갱신한다(104).
도 11 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 공유모드 생성 과정에 대한 일실시예 상세 흐름도이다.
도 11에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 공유모드 생성 과정은, 먼저 세션 생성자만이 미디어 컴포넌트(16)를 추가할 수 있는 권한을 가지고 있으므로 미디어 컴포넌트(16)의 공유모드 추가가 세션 생성자에 대한 것인지를 분석한다(201).
분석결과, 세션 생성자가 컴포넌트 풀(22)의 공유 컴포넌트 표시기(23)에 새로운 컴포넌트를 드래그 앤드 드롭(Drag & Drop)하는 경우에, 컴포넌트 풀(22)의 컴포넌트 추가 삭제기(43)에 컴포넌트 추가 이벤트를 전송한다(202).
분석결과, 세션 생성자가 아닌 참여자인 경우에, 컴포넌트 추가 이벤트를 전달받은 컴포넌트 추가 삭제기(43)는 컴포넌트 추가 패킷을 만들어 세션 참여자들에게 보내게 된다. 이때, 이 패킷을 수신받은 참여자는 패킷을 분석하여(203,204) 세션 생성자와 함께 다음 단계를 거쳐 미디어 컴포넌트(16)를 공유모드로 추가하게 된다.
미디어 컴포넌트(16)를 공유모드로 추가하는 과정을 살펴보면 다음과 같다.
우선, 컴포넌트 풀(22)의 컴포넌트 추가 삭제기(43)가 컴포넌트 관리기(23)의 컴포넌트 실행 종료 관리기(53)에게 컴포넌트 추가를 요청하면, 컴포넌트 실행 종료 관리기(53)는 추가할 미디어 컴포넌트(16)의 서비스를 실행하고(205), 미디어 컴포넌트(16)를 생성한다(206).
이후, 생성된 미디어 컴포넌트(16)에는 컴포넌트 식별자가 부여되는데(207), 컴포넌트 식별자는 컴포넌트 관리기(23)의 컴포넌트 식별자 생성기(52)가 할당한다.
다음으로, 컴포넌트 관리기(23)의 공유 컴포넌트 자원 관리기(54)는 현재 사용하고 있지 않은 자원(포트)을 새로 생성된 미디어 컴포넌트(16)에게 알려 주는데(208), 이 자원은 세션 참여자들의 미디어 컴포넌트(16)들 사이에서 통신하는 채널로 사용하게 된다.
이어서, 미디어 컴포넌트(16)는 자신이 사용해야 할 미디어 자원을 초기화하는데(209), 예를 들면 오디오는 운영체제(18)로부터 오디오 자원을 얻고, 비디오는 비디오 자원을 얻어 초기화해야 한다.
이후에, 컴포넌트 관리기(23)의 공유 컴포넌트 자원 관리기(54)로부터 할당받은 자원(포트)을 세션 참여자간의 채널로 사용하기 위해 새로 생성된 미디어 컴포넌트(16)는 이 자원을 전송 관리기(13)에게 넘겨주어 초기화하게 된다(210).
다음으로, 미디어 컴포넌트(16)의 추가 과정의 마지막으로 공유 컴포넌트 정보를 갱신하는데(212), 이는 컴포넌트 관리기(23)가 컴포넌트 추가 완료 메시지를 컴포넌트 풀(22)에 보내면 컴포넌트 풀(22)의 공유 컴포넌트 표시기(44)에서 갱신된다.
도 12 는 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 지역모드에서 공유모드로 속성 변경하는 과정에 대한 일실시예 상세 흐름도이다.
지역모드의 컴포넌트 추가는 컴포넌트 풀(22)의 지역 컴포넌트 표시기(46)에 사용자가 컴포넌트를 추가하면 공유모드로 컴포넌트를 추가하는 것과는 달리, 컴포넌트 풀(22)의 컴포넌트 추가 삭제기(43)가 컴포넌트 관리기(23)에 요구하지 않고 직접 미디어 컴포넌트(16)를 추가하고, 그 결과로 추가된 미디어 컴포넌트(16)의 핸들값을 유지하고 있다. 이렇게 추가된 지역모드의 미디어 컴포넌트(16)는 공유모드로 속성을 변경할 수 있다.
세션 생성자가 지역모드의 미디어 컴포넌트(16)를 공유모드로 속성 변경할 경우에, 세션 참여자들에게는 새로운 공유모드의 컴포넌트가 추가되는 것이고, 세션 생성자는 컴포넌트 풀(22)의 지역 컴포넌트 표시기(46)를 통해 저장되어 있는 컴포넌트의 핸들값을 이용하여 그 컴포넌트를 공유모드로 속성만 바꾼다.
도 12에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 지역모드에서 공유모드로 속성 변경하는 과정은, 먼저 지역모드의 미디어 컴포넌트(16)를 공유모드로의 속성 변경이 세션 생성자에 관한 것인지를 분석한다(301).
분석결과, 세션 생성자가 지역모드의 미디어 컴포넌트(16)를 공유모드로 속성 변경할 경우에, 세션 생성자는 세션 참여자들에게 공유 컴포넌트 추가 패킷을 만들어 전송한다.
분석결과, 세션 생성자가 아닌 참여자인 경우에, 공유 컴포넌트 추가 패킷을 수신한 참여자들은 상기 도 11의 과정을 통해 공유 컴포넌트를 추가한다(309).
이후에, 이전의 지역 컴포넌트가 세션 생성자에 의해 실행된 이후 수정된 지역 컴포넌트의 상태는 공유 컴포넌트의 특성상 공유 컴포넌트로 사용하기 위해 모든 세션 참여자와 동일한 상태를 유지해야 하므로, 세션 생성자의 미디어 컴포넌트(16)의 상태와 새로 생성된 참여자의 공유 컴포넌트의 상태를 동기화시킨다(310).
반면에, 세션 생성자는 지역모드의 미디어 컴포넌트(16)의 핸들값을 추출하여(303) 컴포넌트 관리기(23)의 컴포넌트 식별자 생성기(52)에게 보낸다(304). 이때, 이를 전달받은 컴포넌트 식별자 생성기(52)는 그 컴포넌트에 컴포넌트 식별자를 할당하고(305), 상기 도 11에서와 같이 전송 관리기(13)를 초기화한다(306).
이처럼, 공유 컴포넌트로의 속성 변환이 완료되면, 지역 컴포넌트 정보와 공유 컴포넌트 정보를 갱신한다(307,308).
마지막으로, 이전의 지역 컴포넌트가 세션 생성자에 의해 실행된 이후 수정된 지역 컴포넌트의 상태는 공유 컴포넌트의 특성상 공유 컴포넌트로 사용하기 위해 모든 세션 참여자와 동일한 상태를 유지해야 하므로, 세션 생성자의 미디어 컴포넌트(16)의 상태와 새로 생성된 참여자의 공유 컴포넌트의 상태를 동기화시킨다(310).
도 13 은 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 공유모드에서 배타모드로 속성 변경하는 과정에 대한 일실시예 상세 흐름도이다.
도 13에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트 관리방법중 미디어 컴포넌트 공유모드에서 배타모드로 속성 변경하는 과정은, 먼저 공유모드의 미디어 컴포넌트(16)를 배타모드로의 속성 변경이 세션 생성자에 관한 것인지를 분석한다(401).
분석결과, 세션 생성자가 특정 공유모드의 미디어 컴포넌트(16)를 배타모드로 변경하는 경우에, 컴포넌트 풀(22)의 공유 컴포넌트 표시기(44)는 공유모드 컴포넌트의 정보를 추출한다(402). 여기서, 추출하는 정보는 특정 컴포넌트를 인식하기 위해 컴포넌트 식별자와 핸들값을 얻어 낸다.
이후에, 추출된 공유모드 컴포넌트의 정보를 원격지의 세션 참여자에게 컴포넌트 배타모드 전환 패킷으로 만들어 전송한다(403).
분석결과, 세션 생성자가 아닌 참여자인 경우에, 컴포넌트 배타모드 전환 패킷을 수신한 참여자들은 이를 분석해 속성 변경해야 할 공유모드 컴포넌트를 찾아낸다(404 내지 406).
다음으로, 세션 생성자 및 참여자들은 컴포넌트 관리기(23)의 공유 컴포넌트 속성 관리기(55)에 의해 컴포넌트 속성 정보를 공유모드에서 배타모드로 변경하고(407), 컴포넌트 풀(22)의 공유 컴포넌트 표시기(44)에게 알려 주어 공유 컴포넌트 정보를 갱신하도록 한다(408).
마지막으로, 공유모드 컴포넌트가 배타모드로 사용하기 위해서는 원격지와는 별도로 세션 생성자만이 사용해야 하므로 전송 관리기(13)에서 송수신을 거부하도록 하여(409) 컴포넌트의 공유 특성이 사라지게 된다.
도 14 는 본 발명에 따른 세션 관리 및 컴포넌트 관리 방법중 미디어 컴포넌트 배타모드에서 공유모드로 속성 변경하는 과정에 대한 일실시예 상세 흐름도이다.
미디어 컴포넌트(16)가 공유모드에서 배타모드로 변경된 후 세션 생성자는 배타모드로 작업을 진행하여 미디어 컴포넌트(16)의 상태를 변화시킨다. 따라서, 만일 그 컴포넌트가 다시 배타모드에서 공유모드로 변경될 경우에 모든 참여자가 같은 상태를 유지해야 하므로 이때도 상기 도 12에서와 같이 상태의 동기화가 필요하다.
도 14에 도시된 바와 같이, 본 발명에 따른 세션 관리 및 컴포넌트 관리 방법중 미디어 컴포넌트 배타모드에서 공유모드로 속성 변경하는 과정은, 먼저 배타모드의 미디어 컴포넌트(16)를 공유모드로의 속성 변경이 세션 생성자에 관한 것인지를 분석한다(501).
분석결과, 세션 생성자가 특정 배타모드의 컴포넌트를 공유모드로 변경하는 경우에, 컴포넌트 풀(22)의 공유 컴포넌트 표시기(44)는 선택된 배타모드 컴포넌트의 정보를 추출한다(502). 여기서, 추출하는 정보는 특정 컴포넌트를 인식하기 위해 컴포넌트 식별자와 핸들값을 얻어 낸다.
이후에, 추출된 배타모드 컴포넌트의 정보를 원격지의 세션 참여자에게 컴포넌트 공유모드 전환 패킷으로 만들어 전송한다(503).
분석결과, 세션 생성자가 아닌 참여자인 경우에, 컴포넌트 공유모드 전환 패킷을 수신한 참여자들은 이를 분석해 속성 변경해야 할 배타모드 컴포넌트를 찾아 낸다(504 내지 506).
다음으로, 세션 생성자 및 참여자들은 컴포넌트 관리기(23)의 공유 컴포넌트 속성 관리기(55)에 의해 컴포넌트 속성 정보를 배타모드에서 공유모드로 변경하고(507), 컴포넌트 풀(22)의 공유 컴포넌트 표시기(44)에게 알려 주어 배타모드 컴포넌트 정보를 갱신하도록 한다(508). 이후에, 세션 생성자의 컴포넌트와 참여자 컴포넌트간의 상태 정보를 동기화시킨다(510).
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 있어 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 한정되는 것이 아니다.
상기한 바와 같은 본 발명은, 상호 참여형 응용 개발 환경인 캔버스에 적용되어, 세션 관리시에 다중 세션을 지원하고 특정 세션에서 여러 개의 부세션으로의 확장이 가능하여 보다 신뢰성있는 다중 사용자 참여를 제공하며, 컴포넌트 관리시에 세션에서 사용하는 기본 미디어 컴포넌트 및 그것들의 조합인 복합 컴포넌트의 다양한 속성을 정의하고 제공함으로써 보다 동적이고 다양한 응용을 구성할 수 있는 효과가 있다.

Claims (19)

  1. 상호 참여형 멀티미디어 응용 개발 환경에서 세션 생성, 종료 및 지각자 처리 등을 포함하는 세션 서비스와, 초기 컴포넌트 생성, 세션 종료시 컴포넌트 삭제, 발언권 제어 등을 포함하는 컴포넌트 서비스를 관리하는 장치에 있어서,
    세션 서비스 관리 기능와 컴포넌트 서비스 관리 기능을 구분하되,
    현재 세션에서 다수의 부세션으로 확장할 수 있도록, 상기 세션 서비스 관리 기능에 부세션 기능을 부가하여 이를 관리하기 위한 세션 관리 수단;
    상기 컴포넌트 서비스 관리 기능에 컴포넌트의 속성 변경 및 동적 관리 기능을 부가하여 이를 관리하기 위한 컴포넌트 관리 수단; 및
    상기 세션 관리 수단과 상기 컴포넌트 관리 수단으로부터 전달받은 세션 및 컴포넌트 정보를 사용자에게 제공하고, 사용자로부터 세션과 컴포넌트에 관한 명령을 받아 해당 관리 수단으로 전달하는 사용자 인터페이싱 수단
    을 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치.
  2. 제 1 항에 있어서,
    상기 세션 관리 수단은,
    외부로부터 발생된 이벤트를 이벤트 종류별로 해당 구성 요소들로 인터페이싱하기 위한 인터페이싱 수단;
    상기 인터페이싱 수단에 연결되어, 해당 세션의 세션 이름, 세션 식별자, 가용 자원 정보, 세션 생성자 정보를 관리하며, 세션에 참가한 새로운 참여자에게 최신 세션 정보를 전달하는 세션 정보 관리 수단;
    상기 인터페이싱 수단에 연결되어, 현재 세션에 참여한 참여자의 이름 및 위치를 저장하고, 참여자의 정보 변경시에 변경된 정보를 갱신하는 참여자 관리 수단;
    상기 인터페이싱 수단에 연결되어, 현재 세션을 여러 개의 부세션으로 확장하여 이를 관리하기 위한 부세션 관리 수단;
    상기 인터페이싱 수단에 연결되어, 새로운 참여자의 참가시에 상기 세션 정보 관리 수단이 상기 최신 세션 정보를 새로운 참여자에게 전달하도록 하고, 상기 참여자 관리 수단으로 새로운 참여자의 정보를 전달하여 참여자 정보를 갱신하도록 하며, 상기 컴포넌트 관리 수단이 현재 세션에서 사용하고 있는 컴포넌트들의 속성 및 상태, 발언권 정보를 전달하도록 지시하는 지각자 처리 수단;
    상기 인터페이싱 수단에 연결되어, 세션을 생성하기 위한 세션 생성 수단;
    상기 인터페이싱 수단에 연결되어, 세션의 종료를 관리하는 세션 종료 수단;
    상기 구성 요소들로부터 수신된 이벤트를 패킷으로 변환하는 패킷 생성 수단; 및
    전송 관리기를 통해 전달된 패킷을 분석하여 이벤트 종류별로 상기 해당 구성 요소들로 전달하는 패킷 분석 수단
    을 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치.
  3. 제 2 항에 있어서,
    상기 부세션 관리 수단은,
    상기 세션 생성자가 확장할 부세션 정보와 부세션 발생 이벤트를 발생시키면, 전체 세션 관리기로 부세션 발생을 요청하여 부세션 개설시에 부세션 참여자들에게 해당 부세션에 참가하라는 패킷을 보내, 참여자가 부세션 식별자를 이용하여 부세션에 참가하도록 하는 것을 특징으로 하는 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치.
  4. 제 1 항에 있어서,
    상기 사용자 인터페이싱 수단은,
    상기 세션 관리 수단으로부터 전달된 메시지를 분석하여 해당 구성 요소들로 전달하는 메시지 분석 수단;
    상기 메시지 분석 수단에 연결되어, 세션 정보와 참여자 정보를 표시하기 위한 표시 수단;
    상기 메시지 분석 수단에 연결되어, 상기 컴포넌트 관리 수단으로 컴포넌트의 추가/삭제를 요구하기 위한 컴포넌트 추가/삭제 수단;
    상기 메시지 분석 수단에 연결되어, 현재 활성화된 세션에서 여러 참여자가 동시에 사용할 수 있는 공유모드의 컴포넌트 및 상기 공유모드에서 일시적으로 컴포넌트 소유권을 가진 참여자만이 사용할 수 있는 배타모드의 컴포넌트를 표시하기 위한 공유 및 배타 컴포넌트 표시 수단;
    상기 메시지 분석 수단에 연결되어, 기본 컴포넌트의 일부나 전체를 복합 컴포넌트로 조합하여 표시하기 위한 공유 복합 컴포넌트 표시 수단;
    상기 메시지 분석 수단에 연결되어, 상기 공유모드로 전이하기 이전의 상태인 지역모드의 컴포넌트를 표시하기 위한 지역 컴포넌트 표시 수단;
    상기 지역모드에서 상기 공유모드로, 상기 공유모드에서 상기 배타모드로, 상기 배타모드에서 상기 공유모드로의 컴포넌트 속성을 변경하기 위한 컴포넌트 속성 변환 수단;
    상기 구성 요소들로부터 수신된 이벤트를 패킷으로 변환하는 패킷 생성 수단; 및
    전송 관리기를 통해 전달된 패킷을 분석하여 이벤트 종류별로 상기 해당 구성 요소들로 전달하는 패킷 분석 수단
    을 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치.
  5. 제 1 항에 있어서,
    상기 컴포넌트 관리 수단은,
    상기 사용자 인터페이싱 수단으로부터 전달받은 이벤트를 분석하여 컴포넌트의 추가, 삭제, 공유 및 배타모드의 컴포넌트를 관리하고, 속성을 변경하는 것을 특징으로 하는 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치.
  6. 제 1 항 또는 제 5 항에 있어서,
    상기 컴포넌트 관리 수단은,
    상기 사용자 인터페이싱 수단으로부터 전달된 메시지를 분석하여 해당 구성 요소들로 전달하는 메시지 분석 수단;
    상기 메시지 분석 수단에 연결되어, 컴포넌트 추가 요청시에 각 컴포넌트별로 고유한 값을 할당하여 현재 사용하는 컴포넌트의 모든 정보를 얻을 수 있도록, 컴포넌트 식별자를 생성하기 위한 컴포넌트 식별자 생성 수단;
    상기 메시지 분석 수단에 연결되어, 컴포넌트의 실행 및 종료를 관리하기 위한 컴포넌트 실행 종료 관리 수단;
    상기 메시지 분석 수단에 연결되어, 컴포넌트의 생성 및 삭제시에 할당된 자원중 유휴 자원을 관리하기 위한 컴포넌트 자원 관리 수단;
    상기 메시지 분석 수단에 연결되어, 컴포넌트의 속성을 관리하기 위한 컴포넌트 속성 관리 수단;
    상기 메시지 분석 수단에 연결되어, 사용하고 있는 특정 컴포넌트에 대하여 사용 권한을 부여하는 발언권 제어 수단;
    상기 구성 요소들로부터 수신된 이벤트를 패킷으로 변환하는 패킷 생성 수단; 및
    전송 관리기를 통해 전달된 패킷을 분석하여 이벤트 종류별로 상기 해당 구성 요소들로 전달하는 패킷 분석 수단
    을 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치.
  7. 상호 참여형 멀티미디어 응용 개발 환경시스템에서 세션 서비스와 컴포넌트 서비스를 관리하는 방법에 있어서,
    세션 서비스 관리 기능과 컴포넌트 서비스 관리 기능을 구분하는 제 1 단계;
    상기 세션 서비스 관리 기능 수행시에, 세션 생성 및 종료, 세션 참여, 지각자 처리, 초청 기능을 수행하는 제 2 단계; 및
    상기 컴포넌트 서비스 관리 기능 수행시에, 초기 컴포넌트 생성, 세션 종료시 컴포넌트 삭제, 발언권 제어 기능을 수행하고, 컴포넌트의 속성 변경 및 동적 관리 기능을 부가하여 이를 관리하는 제 3 단계
    를 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리방법.
  8. 제 7 항에 있어서,
    현재 세션에서 다수의 부세션으로 확장할 수 있도록, 상기 세션 서비스 관리 기능에 부세션 기능을 부가하는 제 4 단계
    를 더 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리방법.
  9. 제 8 항에 있어서,
    상기 제 4 단계는,
    상기 세션 서비스 관리 기능에 상기 부세션 기능을 부가하기 위하여, 세션 생성자가 부세션에 참가할 참여자를 현재 참여자중에서 선택하는 제 5 단계;
    회의 관리기의 참여자 관리기가 부세션에 해당하는 참여자 정보를 생성하는 제 6 단계;
    상기 회의 관리기의 세션 정보 관리기가 전체 세션 관리기에게 부세션 식별자를 할당받아 상기 참여자 관리기로 전달하는 제 7 단계;
    상기 참여자 관리기가 부세션의 생성자가 될 참여자들에게 부세션이 개설되었으므로 참여하라는 메시지를 보내는 제 8 단계; 및
    상기 메시지를 전달받은 참여자가 상기 부세션 식별자를 이용하여 지정된 부세션에 참가하는 제 9 단계
    를 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리방법.
  10. 제 7 항 내지 제 9 항중 어느 한 항에 있어서,
    상기 제 2 단계의 세션 생성 과정은,
    세션 생성자가 세션 관리 서비스인 상기 회의 관리기를 실행하는 제 10 단계;
    상기 회의 관리기가 다양하게 개발된 캔버스 응용부들중 하나를 선택하여 실행하는 제 11 단계;
    상기 캔버스 응용부를 이용하여 상기 전체 세션 관리기와 연결하는 제 12 단계;
    상기 회의 관리기가 제공하는 세션 정보 입력창에 세션 정보를 입력하는 제 13 단계;
    상기 회의 관리기의 상기 세션 정보 관리기가 입력된 세션 정보를 상기 전체 세션 관리기로 전달하여 세션을 생성하는 제 14 단계;
    상기 전체 세션 관리기가 상기 회의 관리기로부터 전달받은 세션 정보를 이용하여 세션별로 유일한 번호인 세션 식별자를 부여하고, 앞으로 그 세션에서 사용해야 할 자원(포트)를 할당하여 상기 회의 관리기로 전달하는 제 15 단계;
    상기 회의 관리기가 상기 전체 세션 관리기로부터 세션 식별자, 자원을 전달받아 컴포넌트 풀, 컴포넌트 관리기를 생성하는 제 16 단계;
    세션에서 사용할 미디어 서비스 컴포넌트의 종류를 사용자로부터 입력받아 입력된 미디어 서비스 컴포넌트 정보를 상기 컴포넌트 관리기로 전달하는 제 17 단계;
    상기 컴포넌트 관리기가 선택된 미디어 서비스 컴포넌트들을 실행하고 공유모드 컴포넌트로 전환시키는 제 18 단계; 및
    상기 컴포넌트 관리기가 상기 컴포넌트 풀로 공유 컴포넌트 생성 완료를 알려 주어 세션 정보를 갱신하도록 하는 제 19 단계
    를 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리방법.
  11. 제 7 항 내지 제 9 항중 어느 한 항에 있어서,
    상기 제 2 단계의 세션 종료 과정은,
    세션 생성자의 종료시에, 상기 참여자 관리기가 모든 참여자들에게 세션 종료 패킷을 만들어 전송하는 제 10 단계;
    상기 세션 정보 관리기가 상기 전체 세션 관리기로 세션 종료 메시지를 전달하는 제 11 단계;
    상기 전체 세션 관리기가 세션 식별자를 이용하여 해당 세션을 찾은 후에 그 세션을 전체 세션 정보에서 삭제한 후에, 상기 전체 세션 관리기와의 연결을 종료하는 제 12 단계;
    세션 생성자가 아닌 참여자인 경우에, 세션 생성자가 보낸 세션 종료 패킷을 수신하고 이를 분석하는 제 13 단계;
    상기 제 12 단계 및 상기 제 13 단계 수행후에, 세션 생성자를 포함한 모든 참여자가 컴포넌트 관리기에서 현재 실행되어 있는 미디어 컴포넌트를 모두 삭제하는 제 14 단계; 및
    상기 회의 관리기가 자신의 세션 정보를 모두 지워버리고, 세션 관리 컴포넌트를 종료하고 세션 정보를 갱신하는 제 15 단계
    를 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리방법.
  12. 제 7 항 내지 제 9 항중 어느 한 항에 있어서,
    상기 제 2 단계의 세션 참여 과정은,
    세션에 참여하고자 하는 참여자가 상기 회의 관리기를 실행하는 제 10 단계;
    상기 회의 관리기가 상기 전체 세션 관리기를 연결하여 현재 진행하고 있는 전체 세션에 관한 정보를 수신하고, 이를 참여자에게 리스트 형태로 보여주는 제 11 단계;
    참여자가 진행중인 세션을 선택하면, 상기 회의 관리기가 상기 전체 세션 관리기로부터 선택된 세션의 정보를 얻어 세션 관리 컴포넌트를 생성하는 제 12 단계;
    상기 세션 정보 관리기가 상기 세션 생성자를 연결하여 세션의 최신 정보를 얻어 오는 제 13 단계; 및
    새 참여자는 상기 세션 생성자로부터 얻어온 정보를 이용하여 상기 세션 생성자나 기존 참여자와 동일한 진행 상태를 유지하기 위해 사용중인 미디어 컴포넌트를 공유모드나 배타모드로 추가한 후에, 세션 정보를 갱신하는 제 14 단계
    를 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리방법.
  13. 제 7 항 내지 제 9 항중 어느 한 항에 있어서,
    상기 제 3 단계의 초기 컴포넌트의 생성시에, 지역모드의 미디어 컴포넌트를 생성하는 과정은,
    컴포넌트 풀에서 사용자가 지역모드 생성 이벤트를 발생시키면, 상기 컴포넌트 풀이 해당 미디어 서비스 응용을 실행하고 하나의 미디어 컴포넌트를 생성하는 제 10 단계;
    상기 컴포넌트 풀로 상기 미디어 컴포넌트의 핸들을 넘겨 주는 제 11 단계; 및
    새로 실행된 미디어 컴포넌트의 핸들을 넘겨받은 상기 컴포넌트 풀의 지역 컴포넌트 표시기가 지역 컴포넌트 정보에 그 핸들값을 저장한 후에 상기 지역 컴포넌트 정보를 갱신하는 제 12 단계
    를 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리방법.
  14. 제 7 항 내지 제 9 항중 어느 한 항에 있어서,
    상기 제 3 단계의 초기 컴포넌트의 생성시에, 공유모드의 미디어 컴포넌트를 생성하는 과정은,
    상기 세션 생성자가 컴포넌트 풀의 공유 컴포넌트 표시기에 새로운 컴포넌트를 드래그 앤드 드롭(Draf & Drop)하는 경우에, 상기 컴포넌트 풀의 컴포넌트 추가 삭제기에 컴포넌트 추가 이벤트를 전송하는 제 10 단계;
    상기 컴포넌트 추가 이벤트를 전달받은 상기 컴포넌트 추가 삭제기가 컴포넌트 추가 패킷을 만들어 세션 참여자들에게 전송하는 제 11 단계;
    상기 컴포넌트 추가 패킷을 수신받은 참여자가 패킷을 분석하여 세션 생성자와 함께 상기 미디어 컴포넌트를 공유모드로 추가하는 제 12 단계;
    상기 제 11 단계 및 상기 제 12 단계 수행후에, 세션 생성자를 포함한 모든 참여자가 상기 컴포넌트 추가 삭제기가 컴포넌트 관리기의 컴포넌트 실행 종료 관리기에게 컴포넌트 추가를 요청하는 제 13 단계;
    상기 컴포넌트 실행 종료 관리기가 추가할 미디어 컴포넌트 서비스를 실행하고, 상기 미디어 컴포넌트를 생성하는 제 14 단계;
    상기 컴포넌트 관리기의 컴포넌트 식별자 생성기가 상기 미디어 컴포넌트에 컴포넌트 식별자를 부여하는 제 15 단계;
    상기 컴포넌트 관리기의 공유 컴포넌트 자원 관리기가 현재 사용하고 있지 않은 자원(포트)을 새로 생성된 상기 미디어 컴포넌트로 전달하는 제 16 단계;
    상기 미디어 컴포넌트가 자신이 사용해야 할 미디어 자원을 초기화하고, 할당받은 자원(포트)을 세션 참여자간의 채널로 사용하기 위해 이 자원을 전송 관리기로 넘겨 주어 초기화시키는 제 17 단계; 및
    상기 컴포넌트 관리기가 컴포넌트 추가 완료 메시지를 상기 컴포넌트 풀에 보내면, 상기 컴포넌트 풀의 상기 공유 컴포넌트 표시기에서 공유 컴포넌트 정보를 갱신하는 제 18 단계
    를 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리방법.
  15. 제 7 항 내지 제 9 항중 어느 한 항에 있어서,
    상기 제 3 단계의 컴포넌트의 속성 변경시에, 지역모드의 미디어 컴포넌트를 공유모드로 속성 변경하는 과정은,
    상기 세션 생성자가 지역모드의 미디어 컴포넌트를 공유모드로 속성 변경할경우에, 상기 세션 생성자가 세션 참여자들에게 공유 컴포넌트 추가 패킷을 만들어 전송하는 제 10 단계;
    상기 공유 컴포넌트 추가 패킷을 수신한 참여자들이 공유 컴포넌트를 추가하고, 상기 세션 생성자의 미디어 컴포넌트의 상태와 새로 생성된 참여자의 공유 컴포넌트의 상태를 동기화시키는 제 11 단계;
    상기 제 10 단계 수행후에, 상기 세션 생성자가 지역모드의 미디어 컴포넌트의 핸들값을 추출하여 컴포넌트 관리기의 컴포넌트 식별자 생성기로 전송하는 제 12 단계;
    상기 컴포넌트 식별자 생성기가 그 컴포넌트에 컴포넌트 식별자를 할당하고, 전송 관리기를 초기화하는 제 13 단계; 및
    공유 컴포넌트로의 속성 변환이 완료되면, 지역 컴포넌트 정보와 공유 컴포넌트 정보를 갱신한 후에, 상기 세션 생성자의 미디어 컴포넌트의 상태와 새로 생성된 참여자의 공유 컴포넌트의 상태를 동기화시키는 제 14 단계
    를 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리방법.
  16. 제 7 항 내지 제 9 항중 어느 한 항에 있어서,
    상기 제 3 단계의 컴포넌트의 속성 변경시에, 공유모드의 미디어 컴포넌트를 배타모드로 속성 변경하는 과정은,
    상기 세션 생성자가 특정 공유모드의 미디어 컴포넌트를 배타모드로 변경하는 경우에, 상기 컴포넌트 풀의 공유 컴포넌트 표시기가 공유모드 컴포넌트의 정보를 추출하는 제 10 단계;
    추출된 공유모드 컴포넌트의 정보를 원격지의 세션 참여자에게 컴포넌트 배타모드 전환 패킷으로 만들어 전송하는 제 11 단계;
    상기 컴포넌트 배타모드 전환 패킷을 수신한 참여자들이 이를 분석해 속성 변경해야 할 공유모드 컴포넌트를 탐색하는 제 12 단계;
    상기 제 11 단계 및 상기 제 12 단계 수행후에, 상기 세션 생성자 및 참여자들의 컴포넌트 관리기의 공유 컴포넌트 속성 관리기가 컴포넌트 속성 정보를 공유모드에서 배타모드로 변경하고, 상기 공유 컴포넌트 표시기에게 알려 주어 공유모드 컴포넌트 정보를 갱신하도록 하는 제 13 단계; 및
    원격지와는 별도로 상기 세션 생성자만이 공유모드의 미디어 컴포넌트를 배타모드의 미디어 컴포넌트로 사용하기 위해서, 전송 관리기에서 송수신을 거부하도록 하여 컴포넌트의 공유 특성을 제거하는 제 14 단계
    를 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리방법.
  17. 제 7 항 내지 제 9 항중 어느 한 항에 있어서,
    상기 제 3 단계의 컴포넌트의 속성 변경시에, 배타모드의 미디어 컴포넌트를공유모드로 속성 변경하는 과정은,
    상기 세션 생성자가 특정 배타모드의 미디어 컴포넌트를 공유모드의 미디어 컴포넌트로 변경하는 경우에, 컴포넌트 풀의 공유 컴포넌트 표시기기 선택된 배타모드의 미디어 컴포넌트의 정보를 추출하는 제 10 단계;
    추출된 배타모드의 미디어 컴포넌트의 정보를 원격지의 세션 참여자에게 컴포넌트 공유모드 전환 패킷으로 만들어 전송하는 제 11 단계;
    컴포넌트 공유모드 전환 패킷을 수신한 참여자들이 이를 분석해 속성 변경해야 할 배타모드 컴포넌트를 탐색하는 제 12 단계;
    상기 제 11 단계 및 상기 제 12 단계의 상기 세션 생성자 및 참여자들의 컴포넌트 관리기의 공유 컴포넌트 속성 관리기가 컴포넌트 속성 정보를 배타모드에서 공유모드로 변경하고, 상기 공유 컴포넌트 표시기로 알려 주어 배타모드 컴포넌트 정보를 갱신하도록 하는 제 13 단계; 및
    상기 세션 생성자의 컴포넌트와 참여자 컴포넌트간의 상태 정보를 동기화시키는 제 14 단계
    를 포함하여 이루어진 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리방법.
  18. 프로세서를 구비한 상호 참여형 멀티미디어 응용 개발 환경시스템에,
    세션 서비스 관리 기능과 컴포넌트 서비스 관리 기능을 구분하는 기능;
    상기 세션 서비스 관리 기능 수행시에, 세션 생성 및 종료, 세션 참여, 지각자 처리, 초청 기능을 수행하는 기능; 및
    상기 컴포넌트 서비스 관리 기능 수행시에, 초기 컴포넌트 생성, 세션 종료시 컴포넌트 삭제, 발언권 제어 기능을 수행하고, 컴포넌트의 속성 변경 및 동적 관리 기능을 부가하여 이를 관리하는 기능
    을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  19. 제 18 항에 있어서,
    현재 세션에서 다수의 부세션으로 확장할 수 있도록, 상기 세션 서비스 관리 기능에 부세션 기능을 부가하는 기능
    을 더 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1019990042992A 1999-10-06 1999-10-06 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치와 그 방법 KR100307194B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990042992A KR100307194B1 (ko) 1999-10-06 1999-10-06 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치와 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990042992A KR100307194B1 (ko) 1999-10-06 1999-10-06 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치와 그 방법

Publications (2)

Publication Number Publication Date
KR20010036133A KR20010036133A (ko) 2001-05-07
KR100307194B1 true KR100307194B1 (ko) 2001-11-02

Family

ID=19614159

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990042992A KR100307194B1 (ko) 1999-10-06 1999-10-06 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치와 그 방법

Country Status (1)

Country Link
KR (1) KR100307194B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100327904B1 (ko) * 2000-01-28 2002-03-09 오길록 컴포넌트 재정의 방법 및 도구 시스템
KR101277860B1 (ko) * 2005-11-15 2013-06-21 삼성전자주식회사 PoC 시스템에서의 멀티 미디어 통화 서비스를 수행하기위한 발언권 관리 시스템과 그 방법 및 단말장치

Also Published As

Publication number Publication date
KR20010036133A (ko) 2001-05-07

Similar Documents

Publication Publication Date Title
US5652866A (en) Collaborative working method and system for a telephone to interface with a collaborative working application
US7451181B2 (en) Apparatus for controlling a shared screen
EP0453128A2 (en) Multiple call control method in a multimedia conferencing system
US5539886A (en) Call management in a collaborative working network
CN101163118B (zh) 一种多个im用户实时共享对象的方法和装置
JP3032014B2 (ja) マルチメディア通信ネットワーク
JP2544581B2 (ja) 会議システム制御方法、会議装置及び会議システム
EP3926917B1 (en) Data transmission method, device and computer storage medium
CN101030843B (zh) 多媒体会议控制模式的转换方法
US20030037109A1 (en) Virtual room videoconferencing system
CN101483749B (zh) 基于媒体服务器的视频会议实现方法和系统
US7139791B1 (en) Apparatus and method for providing access to a data stream by a plurality of users at a same time
CN102185856A (zh) 组队游戏中组队视频方法、装置及系统
CN109032768A (zh) 应用会话的迁移方法、装置、终端、服务器及存储介质
US5491798A (en) Method for network call management
RU2573268C2 (ru) Способ и устройство для управления мультимедийной конференцией
Heijenk et al. Communication systems supporting multimedia multi-user applications
JP2006285494A (ja) マルチメディア対応フロア権管理システム、方法、プログラム及び記録媒体、メディアサーバ及び端末
KR100307194B1 (ko) 상호 참여형 멀티미디어 응용 개발 시스템에서의 세션 관리 및 컴포넌트 관리장치와 그 방법
CN115002392A (zh) 一种视频会议分组管理方法和装置
JP2007215016A (ja) 多地点会議システム及びその制御方法、並びにプログラム
EP1317123B1 (en) A multi-site teleconferencing system
KR100235845B1 (ko) 실시간 멀티미디어 그룹 통신을 위한 다채널/다세션 관리 방법
KR100186959B1 (ko) 상호 참여형 멀티미디어 응용 개발 환경에서의 세션 관리 시스템 및 그 방법
KR100248264B1 (ko) 상호 참여형 멀티미디어 응용 개발 환경에서의 세션 관리 시스템 및 그 방법

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
N231 Notification of change of applicant
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee