KR20010064246A - Collaborative group editor system using JAVA specific property on internet and method thereof - Google Patents

Collaborative group editor system using JAVA specific property on internet and method thereof Download PDF

Info

Publication number
KR20010064246A
KR20010064246A KR1019990062396A KR19990062396A KR20010064246A KR 20010064246 A KR20010064246 A KR 20010064246A KR 1019990062396 A KR1019990062396 A KR 1019990062396A KR 19990062396 A KR19990062396 A KR 19990062396A KR 20010064246 A KR20010064246 A KR 20010064246A
Authority
KR
South Korea
Prior art keywords
collaboration
user
controller
editor
event
Prior art date
Application number
KR1019990062396A
Other languages
Korean (ko)
Other versions
KR100341395B1 (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 KR1019990062396A priority Critical patent/KR100341395B1/en
Publication of KR20010064246A publication Critical patent/KR20010064246A/en
Application granted granted Critical
Publication of KR100341395B1 publication Critical patent/KR100341395B1/en

Links

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/169Annotation, e.g. comment data or footnotes

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

PURPOSE: An Internet working group editor and a method for operating thereof are provided to perform a work even at a heterogeneity environment which a JAVA virtual machine installed without installing an exclusive program by making an environment prepared as a servlet form and naturally replicated through a download. CONSTITUTION: A work controller(100) certifies a user who wishes to join a work and register user information and transmits work information of a session to each user, and charges a management of registration, opening and deletion of the session, and controls the right to speak capable of generating an event. An event controller(110) successively stores event information generated by a user having the right to speak by the work controller with user information, and transmits work state information to users who is participating to the work and charges a transmission between the work controller and the user using a multi-cast package. An editor(120) which is a control utility is downloaded in user's computer if distributed users are certified by the work controller, and is provided as a portion of a work frame work.

Description

인터넷 공동 작업 그룹 편집기 및 그 운용 방법 {Collaborative group editor system using JAVA specific property on internet and method thereof}{Collaborative group editor system using JAVA specific property on internet and method}

본 발명은 자바 특성을 이용한 인터넷 공동 작업 그룹 편집 시스템 및 그 운용 방법에 관한 것이며, 특히, 서블릿 형태로 작성되어 다운로드를 통해 자연스럽게 복제된(Replicated) 환경이 만들어짐으로써, 전용 프로그램을 각각의 사용자가 설치할 필요없이 자바 가상 머신(JAVA Virtual Machine)이 설치된 이질적인 환경에서도 공동 작업을 진행할 수 있는 인터넷 공동 작업 그룹 편집 시스템 및 그 운용 방법에 관한 것이다.The present invention relates to an Internet collaboration group editing system using Java characteristics and a method of operating the same, and in particular, by creating a replicated environment that is created in the form of a servlet and downloaded through download, a dedicated program can be created by each user. The present invention relates to an internet collaboration group editing system and a method of operating the same, which can be collaborated even in a heterogeneous environment where a JAVA virtual machine is installed.

최근에 PC를 네트워크로 결합하여 보다 효율적으로 활용하며, 개인이 가진 지식이나 노하우를 그룹이 공유해 의사 전달을 신속하고 확실하게 실행함으로써, 그룹의 생산성을 향상시키는 CSCW(Collaborative Supported Cooperative Work)에 대한 관심이 높아지고 있다. 이의 배경에는 PC가 널리 보급됨으로써, 모든 직원 개개인에게 PC가 배정되어 사무 환경이 정비되고, 네트워크의 고속화가 진행된 것이나 인터넷으로 전세계에 접속할 수 있게 된 것도 CSCW가 주목을 끌게 된 이유이다. CSCW의 목적은 사용자들이 지역적으로 분산되어 있으면서, 어플리케이션을 다수의 사용자들에게 실시간으로 공유하도록 함으로써, 공동 작업을 가능하도록 하여 효율성을 높이는데 있다.Interest in Collaborative Supported Cooperative Work (CSCW) that improves group productivity by recently combining PCs into networks to make more efficient use, and sharing knowledge and know-how of individuals with groups to execute communications quickly and reliably. Is rising. The background of the widespread use of PCs is that CSCW attracts attention because all employees are assigned PCs, the office environment is maintained, the network has been accelerated, and the Internet can be accessed worldwide. The goal of CSCW is to increase efficiency by enabling collaboration by allowing users to be distributed locally and sharing applications to multiple users in real time.

이를 위하여 둘 또는 그 이상의 사용자들이 화면상에 하나 이상의 어플리케이션을 같은 GUI(Graphic User Interface, 그래픽 유저 인터페이스)로 볼 수 있어야 하고, 이 사용자들 중 한번에 한명만이 어플리케이션에 입력을 할 수 있도록 하는 제어 기능을 가져야 하므로, 어플리케이션을 복제(Replication)하고, 하나의 어플리케이션에 입력된 이벤트를 각 사용자의 복제된 어플리케이션에 멀티캐스팅함으로써, 이벤트가 공유되는 이벤트 공유(Event Sharing)와, 공유된 어플리케이션에 의해서 수행된 그래픽 결과인 GUI를 각 사용자의 시스템에 멀티캐스팅함으로써, GUI를 공유하는 GUI 공유(GUI Sharing)가 있다.To do this, two or more users must be able to view one or more applications on the screen with the same graphical user interface (GUI), and only one user at a time can enter the application. Since the application is replicated and multicasting the event input to one application to the duplicated application of each user, the event sharing is performed by the shared application. By multicasting the graphical result GUI to each user's system, there is a GUI sharing (GUI Sharing).

여기에 인터넷의 성장과 자바(JAVA)의 출현은 복제된 애플릿 환경에서 이벤트 공유를 통한 공동 작업을 가능하게 했다.In addition, the growth of the Internet and the emergence of JAVA enabled collaboration through event sharing in cloned applet environments.

이러한 공동 작업 그룹 편집 시스템은 동기 및 비동기로 나누어진다.This collaboration group editing system is divided into synchronous and asynchronous.

동기식 편집기는 다른 사용자를 인식할 수 있는 추가적인 통신 채널(비디오 폰, 채트 등)이 필요하다. 데이터 회의(Data Conferencing)에서 지리적으로 떨어진 둘 또는 그 이상의 사용자가 같은 편집 공간을 공유하여 편집하므로, 시각적인 문제는 맵이나 텔레포인팅 기술을 통하여 각 사용자의 편집을 칼라로 표시하거나, Name 레이블로 구별하는 별도의 구조적인 통신 체계를 사용한다. 이는 공동 디자인, 출판, 공학 어플리케이션에 사용할 수 있다.Synchronous editors require additional communication channels (video phones, chats, etc.) to recognize other users. In data conferencing, two or more geographically separated users share the same editing space for editing, so visual problems can be displayed in color or distinguished by Name labels, using map or telepointing techniques. Use a separate structured communication scheme. It can be used for collaborative design, publishing, and engineering applications.

한편, 종래의 동기식 편집기는 일반적인 클라이언트/서버 환경에서만 사용될 뿐, 인터넷 상의 웹 환경하에서 구현된 경우는 현재까지 발견되지 않고 있으며, 인터넷의 급속한 발전에 따라, 인터넷 상의 웹 환경하에서 구현되는 동기식 편집기에 대한 요청이 급증하고 있는 추세이다.Meanwhile, the conventional synchronous editor is used only in a general client / server environment, and if it is implemented in a web environment on the Internet, it has not been found until now, and according to the rapid development of the Internet, a synchronous editor implemented in a web environment on the Internet is known. Requests are soaring.

본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위하여 안출된 것으로서, 서블릿 형태로 작성되어 다운로드를 통해 자연스럽게 복제된(Replicated) 환경이 만들어짐으로써, 전용 프로그램을 각각의 사용자가 설치할 필요없이 자바 가상 머신(JAVA Virtual Machine)이 설치된 이질적인 환경에서도 공동 작업을 진행할 수 있는 인터넷 공동 작업 그룹 편집 시스템 및 그 운용 방법을 제공하는데 그 목적이 있다.The present invention has been made to solve the problems of the prior art as described above, and is created in the form of a servlet to create a naturally replicated (Replicated) environment by downloading, so that each user does not have to install a dedicated program virtual Java The purpose of the present invention is to provide an internet collaboration group editing system and a method of operating the same, which can collaborate in a heterogeneous environment in which a JAVA virtual machine is installed.

도 1은 본 발명의 일 실시예에 따른 인터넷 공동 작업 그룹 편집 시스템의 구성도이고,1 is a block diagram of an Internet collaboration group editing system according to an embodiment of the present invention,

도 2는 본 발명의 일 실시예에 따른 인터넷 공동 작업 그룹 편직기가 인터넷상에서 공동 작업을 하기 위하여 처리되는 방법을 나타낸 흐름도이고,2 is a flowchart illustrating a method in which an Internet collaboration group knitting machine is processed to collaborate on the Internet according to an embodiment of the present invention.

도 3은 본 발명이 적용되는 클라이언트/서버 아키텍쳐 통신 환경을 설명하기 위한 도면이다.3 is a diagram illustrating a client / server architecture communication environment to which the present invention is applied.

앞서 설명한 바와 같은 목적을 달성하기 위한 본 발명에 따르면, 공동작업에 참여하고자 하는 사용자를 인증하여 사용자 정보를 등록하고 세션의 공동작업 정보를 각 사용자에게 전달하며, 세션의 등록, 개설, 및 삭제 관리를 담당하며, 이벤트를 발생할 수 있는 발언권을 제어하는 공동작업 컨트롤러와, 상기 공동작업 컨트롤러에 의해 발언권이 주어진 사용자에 의해 발생된 이벤트 정보를 사용자 정보와 함께 순서대로 저장하고, 상기 공동작업에 참여하는 사용자에게 공동작업 상태정보를 전송하며, 멀티캐스트 패키지를 사용하여 상기 공동작업 컨트롤러와 사용자간의 전송을 담당하는 이벤트 컨트롤러, 및 분산된 사용자가 상기 공동작업 컨트롤러에 의해 인증되면 사용자의 컴퓨터에 다운로드되며, 공동작업 프레임 워크의 일부로 제공되는 컨트롤 유틸리티인 편집기를 포함한 것을 특징으로 하는 인터넷 공동 작업 그룹 편집기가 제공된다.According to the present invention for achieving the object as described above, by authenticating the user to participate in the collaboration to register the user information, transfer the collaboration information of the session to each user, and manage the registration, establishment, and deletion of the session And a collaborative controller for controlling the right to generate an event, and event information generated by a user given a right to speak by the collaborative controller, together with user information, in order to participate in the collaboration. Sends the collaboration status information to the user, the event controller responsible for the transmission between the collaboration controller and the user using a multicast package, and the distributed user is downloaded to the user's computer when authenticated by the collaboration controller, Controls provided as part of the collaboration framework Internet collaboration, group editor comprising including utilities editor is provided.

양호하게는, 상기 인터넷 공동 작업 그룹 편집기는 서블릿을 사용하여 구현한 것을 특징으로 한다.Preferably, the Internet collaboration group editor is implemented using a servlet.

보다 양호하게는, 상기 편집기는 자바의 경량 컴포넌트 프레임 워크를 사용하여 구현한 것을 특징으로 한다.More preferably, the editor is implemented using Java's lightweight component framework.

보다 더 양호하게는, 상기 공동작업 컨트롤러는, 상기 공동작업에 참여하고자 하는 사용자를 인증하여 사용자 정보를 등록하며 상기 편집기를 인증된 사용자의 컴퓨터에 다운로드하는 사용자 인증기와, 현재 공동작업 참여하는 세션의 등록, 개설 및 삭제 관리를 담당하는 세션 제어기, 사용자에 의해 발생된 공동작업 이벤트를 받아서 공동작업을 진행하는 리스너, 상기 공동작업에 참여한 사용자들 중 이벤트 발생의 발언권을 제어하는 발언권 제어기, 상기 공동작업에 필요한 편집에 대한 주석을 제공하는 주석기, 및 인터넷 망을 제어하는 네트워크 제어기를 포함한 것을 특징으로 한다.More preferably, the collaboration controller comprises a user authenticator that authenticates the user who wishes to participate in the collaboration, registers user information and downloads the editor to the computer of the authenticated user, Session controller in charge of registration, establishment and deletion management, a listener to receive the collaboration event generated by the user to proceed with the collaboration, a voice controller to control the right of the event occurrence among the users who participated in the collaboration, the collaboration It includes a commenter for providing an annotation for editing necessary for, and a network controller for controlling the Internet network.

또한, 본 발명에 따르면 공동작업에 참여하고자 하는 사용자를 인증하고, 인증된 사용자에게 편집기를 다운로드하는 사용자 인증단계와; 상기 사용자 정보를 확인하고 그룹 공동작업을 위한 세션을 연결하는 세션연결단계; 및 세션이 연결된 후 그룹 공동작업을 수행하는 공동작업 수행단계를 포함하는 것을 특징으로 하는 인터넷 공동 작업 그룹 편집기의 운영 방법이 제공된다.In addition, according to the present invention, a user authentication step of authenticating a user who wants to participate in a collaboration and downloading an editor to an authenticated user; A session connection step of verifying the user information and connecting a session for group collaboration; And a collaboration step of performing group collaboration after the session is connected.

양호하게는, 상기 공동작업 수행단계는, 웹 브라우저를 호출하여 동기를 맞추는 단계와, 이벤트 입력을 위한 발언권을 요청하는 단계, 상기 발언권을 얻은 사용자가 공동작업 내용을 입력, 수정, 또는 삭제하여 이벤트가 발생하면, 상기 이벤트가 상기 공동작업에 참여하는 다른 사용자에게 전송되는 단계, 및 상기 공동작업에 참여한 모든 사용자에게 이벤트 발생후의 화면이 표시되는 단계를 포함한 것을 특징으로 한다.Preferably, the collaborative execution step includes calling a web browser to synchronize, requesting a voice for an event input, and inputting, modifying, or deleting a collaborative content by the user who obtained the voice. When is generated, characterized in that it comprises the step of transmitting the event to the other users participating in the collaboration, and displaying the screen after the event occurs to all users participating in the collaboration.

아래에서, 본 발명에 따른 양호한 일 실시예를 첨부한 도면을 참조로 하여 상세히 설명하겠다.In the following, with reference to the accompanying drawings, a preferred embodiment according to the present invention will be described in detail.

도 1은 본 발명의 일 실시예에 따른 인터넷 공동 작업 그룹 편집 시스템의 구성도로서, 상기 인터넷 공동 작업 그룹 편집 시스템은 크게 세 부분으로 나누어지는데, 공동 작업 컨트롤러(100), 이벤트 컨트롤러(110) 및 편집기(120)를 포함하여 이루어진다.1 is a block diagram of an Internet collaboration group editing system according to an embodiment of the present invention, wherein the Internet collaboration group editing system is roughly divided into three parts: a collaboration controller 100, an event controller 110, and Editor 120 is included.

또한, 상기 공동 작업 컨트롤러(100)는 세부적으로 사용자 인증기(101), 세션 제어기(102), 리스너(Listener,103), 발언권 제어기(104), 주석기(105), 원격 제어기(106), 히스토리 큐(History Queue, 107) 및 네트워크 제어기(108)를 포함하고, 이를 기능별로 설명하면 다음과 같다.In addition, the collaboration controller 100 is a user authenticator 101, a session controller 102, a listener (Listener, 103), a voice controller 104, a commenter 105, a remote controller 106, A history queue 107 and a network controller 108 are described, which will be described by function.

상기 사용자 인증기(101)를 통하여 사용자는 인증 과정을 거쳐 사용자 정보가 등록되며, 이때, 자바 공동 작업 편집기(120)가 복제된다.User information is registered through the user authenticator 101 through an authentication process, and at this time, the Java collaboration editor 120 is replicated.

상기 세션 제어기(102)는 개설된 세션의 공동 작업 정보를 보여주며, 새로운 세션 개설이나 참가 요청을 받아들여, 상기 히스토리 큐(107)에 있는 기존의 진행 상태 정보를 전송하면, 분산된 사용자들은 윈도우 상의 컨트롤 객체를 보면서 상기 리스너(103)를 통하여 생성, 삭제 및 복사 등의 공동 작업을 진행한다. 즉, 상기 세션 제어기(102)는 세션의 등록, 개설 및 삭제 관리를 담당한다.The session controller 102 shows the collaborative information of the established session, accepts a new session establishment or join request, and transmits the existing progress information in the history queue 107 so that the distributed users can access the window. While viewing the control object on the collaboration through the listener 103, such as creating, deleting and copying. That is, the session controller 102 is responsible for managing the registration, establishment and deletion of sessions.

또한, 발언권의 관리를 위하여 상기 발언권 제어기(104)가 필요하며, 상기 주석기(105)는 주석 기능을 포함한 편집 기능을 제공하고, 상기 네트워크 제어기는 송수신 기능을 담당한다. 한편, 상기 원격 제어기(106)는 상기 공동 작업 컨트롤러(100)의 전체적인 제어를 담당한다.In addition, the talk right controller 104 is required to manage the talk right, the commenter 105 provides an editing function including an annotation function, and the network controller is responsible for the transmission and reception function. On the other hand, the remote controller 106 is responsible for the overall control of the co-work controller 100.

상기 이벤트 컨트롤러(110)는 이벤트 수신기(111), 이벤트 송신기(112) 및 이벤트 암호화/복호화기(113)를 포함하여 구성되어 있다.The event controller 110 includes an event receiver 111, an event transmitter 112, and an event encryptor / decryptor 113.

상기 이벤트 컨트롤러(110)는 상기 이벤트 송신기(112)에 의하여 입력된 이벤트를 분석하고, 제어권 관리를 통하여 발언권을 검사하며, 입력의 정확성을 기하고 정의한 자료 구조에 이벤트 정보를 순서대로 저장하여, 동기성을 보장해서 나중에 공동 작업에 참여한 사용자에게 공동 작업 상태 정보를 상기 이벤트 수신기(111)를 통하여 전송하는 일을 담당한다. 즉, 자바가 제공하는 멀티캐스트 패키지를 사용하여 사용자 정보와 이벤트 정보를 가지고 상기 공동 작업 컨트롤러(100)와 사용자간의 전송을 담당한다.The event controller 110 analyzes the event input by the event transmitter 112, checks the right to speak through the control of the control right, ensures the accuracy of the input and sequentially stores the event information in the defined data structure, and synchronized It is responsible for transmitting the collaboration status information through the event receiver 111 to the user who later participated in the collaboration by ensuring the sex. That is, the multicast package provided by Java is used to manage the transmission between the collaboration controller 100 and the user with user information and event information.

또한, 상기 이벤트 암호화/복호화기(113)에 의한 메시지 암호화 방법은 Object stream(ObjectOutputStream과 ObjectInputStream)을 사용한다. 본래, 상기 공동 작업 컨트롤러(100)는 연결된 클라이언트의 사용자 정보를 포함하는 커넥션 리스트를 유지하고, 디스플레이 컨텐츠를 포함하는 상기 히스토리 큐(107)를 포함한다. 따라서, 사용자가 처음 연결될 때, 상기 히스토리 큐(107)에 저장되어 있는 복사본이 보내지고, 편집기의 이벤트는 참여한 사용자의 모든 히스토리 큐(107)로 상기 이벤트 컨트롤러(200)를 통하여 전달된다.In addition, the message encryption method using the event encryption / decryptor 113 uses Object streams (ObjectOutputStream and ObjectInputStream). Originally, the collaboration controller 100 maintains a connection list containing user information of connected clients and includes the history queue 107 containing display content. Therefore, when the user is first connected, a copy stored in the history queue 107 is sent, and the event of the editor is transmitted through the event controller 200 to all the history queues 107 of the participating users.

그러므로, 공동 작업 컨트롤 도구인 상기 주석기(105) 및 원격 제어기(106)로 상기 편집기(130)를 조작할 때, 유효하게 수정된 것은 상기 이벤트 컨트롤러(120)로 보내지고, 연결된 사용자들에게 상기 네트워크 제어기(108)를 통하여 결과를 멀티캐스트한다.Therefore, when manipulating the editor 130 with the annotator 105 and the remote controller 106, which are collaboration control tools, the valid modifications are sent to the event controller 120 and the connected users The results are multicast through the network controller 108.

한편, 분산된 사용자는 상기 공동 작업 컨트롤러(100)로 소켓을 오픈하고, 상기 공동 작업 컨트롤러(100)에 보내지는 메시지 안의 디스플레이 컨텐츠(Contents)를 조작하기 위하여 모든 사용자 콜들을 해석한다. 따라서, 독립된 쓰레드는 상기 히스토리 큐(107)를 업데이트하는 상기 공동 작업 컨트롤(100)로부터 메시지를 받고, 등록된 업데이트 리스너(103)에 변화가 통보된다. 사용자가 디스플레이에 컨텐트를 추가하려면 상기 공동 작업 컨트롤러(100)에 적합한 메시지를 전달하고, output stream을 출력한 후, 리턴한다. 또한, 상기 공동작업 컨트롤러(100)로부터 메시지를 받고, 해석과 수행 루프에서 중앙의 리스트에 컨텐트가 추가됨을 지시하는 메시지를 받는다. 상기 공동 작업 컨트롤러(100)에 할당된 식별자(Identifier)로 컨텐트를 디스플레이의 상기 히스토리 큐(107)에 추가하고, fireUpdate() 함수를 콜하여, 상기 리스너(103)에게 통보한다.Meanwhile, the distributed user opens a socket to the collaboration controller 100 and interprets all user calls to manipulate display contents in a message sent to the collaboration controller 100. Thus, an independent thread receives a message from the collaboration control 100 updating the history queue 107, and a change is notified of the registered update listener 103. To add content to the display, the user delivers an appropriate message to the collaboration controller 100, outputs an output stream, and returns. In addition, it receives a message from the collaboration controller 100, and receives a message indicating that the content is added to the central list in the interpretation and execution loop. The content is added to the history queue 107 of the display by the identifier assigned to the collaboration controller 100, and a fireUpdate () function is called to notify the listener 103.

상기 공동 작업 컨트롤러(100)의 메인 쓰레드는 서버 소켓을 오픈하고, 사용자의 연결을 기다리다 도착한 모든 연결에 대하여, 독립적으로 연결을 처리하는 새로운 쓰레드를 만든다. 각각의 쓰레드는 리모트 사용자로부터 메시지를 받아 상기 히스토리 큐(107)에 저장하고, 멀티캐스트에 적합한 수정 메시지를 모든 연결된 사용자들에게 멀티캐스트한다.The main thread of the collaborative controller 100 opens a server socket and creates a new thread that independently handles the connection for all the connections that arrive while waiting for the user's connection. Each thread receives a message from a remote user, stores it in the history queue 107, and multicasts a modification message suitable for multicast to all connected users.

또한, 디스플레이 컨텐트를 바꾸라는 요구가 있으면, 상기 히스토리 큐(107)에 변화를 적용하고, 성공하면, 모든 사용자들에게 수행할 변화를 지시하는 메시지와 새로운 컨텐트의 식별자를 멀티캐스트한다. 동시에 객체를 바꾸려는 두 사용자는 상기 공동 작업 컨트롤러(100)에 의하여 도착되는 첫 메시지는 실행시키고, 멀티캐스트되지만, 두 번째는 무시된다.In addition, if there is a request to change the display content, a change is applied to the history queue 107, and if successful, a multicast identifier of the new content and a message indicating a change to be performed to all users. At the same time, two users attempting to change an object execute the first message arriving by the collaboration controller 100 and multicast, but the second is ignored.

쓰레드들을 재사용하거나, 코드의 크리티컬 섹션(Critical Section)들을 최소화 하는데, 이는 동시에 편집기에 많은 사용자들이 연결될 수 있는 상기 공동 작업 컨트롤러(100)를 만들기 위함이다. 문제는 애플릿이 상기 공동 작업컨트롤러(100)로 소켓 연결을 새로 만들려고 시도하기 때문에, 이것은 몇몇 방화벽이 동작하는 동안 성공하지 않을 수도 있기에 서블릿으로 상기 공동 작업 컨트롤러(100)에 접근하는 모든 사용자들을 독립된 내부 쓰레드로 처리하여 접근성과 안전성을 향상시킨다.Reuse threads or minimize critical sections of code, at the same time to make the collaboration controller 100 to which many users can be connected to the editor. The problem is that since the applet attempts to make a new socket connection to the collaboration controller 100, this may not succeed while some firewalls are running, so all users accessing the collaboration controller 100 with the servlet are independent. Processed by internal thread to improve accessibility and safety.

상기 편집기(120)는 텍스트 영역(Text Area, 121), 이미지 영역(Image Area, 122) 및 트랜스패런트 영역(123)으로 나누어진다.The editor 120 is divided into a text area 121, an image area 122, and a transparent area 123.

즉, 상기 편집기(120)는 보통 분산된 사용자들이 컨트롤 공간을 공유하는 공동 작업 프레임워크의 일부로 제공되는 컨트롤 유틸리티로서, 미리 정의된 컨트롤 툴 기능을 사용하여, 보여지는 윈도우에서 편집을 한다. 자바의 경량 컴포넌트 프레임워크는 도구가 투명하게 서로에 오버래드(Overlaid)되는 것을 허락하므로, GUI 이벤트 및 디스플레이 위임(Delegation) 사건 모델을 제공하여, 컨트롤 툴들은 디스플레이 컨텐트를 바꿈으로써, 상기 편집기(120)를 조작한다.That is, the editor 120 is a control utility which is usually provided as part of a collaborative framework in which distributed users share a control space. The editor 120 edits in the window shown by using a predefined control tool function. Java's lightweight component framework allows tools to be transparently overlaid on each other, providing a GUI event and display delegation event model so that the control tools change the display content, thereby allowing the editor 120 to ).

변화가 주어지면, 모든 리스너(103)들에게 상기 변화가 통보되고 디스플레이 리스너 같은 리스너들은 자동으로 그 변화들을 반영하여, 스스로 업데이트할 수 있으며, 네트워킹을 위하여 인터넷을 통해 전달된 변화로 분산된 ObservableList를 대체한다. 임시 큐(Temporary Queue)는 중앙과 똑같이 복제되어 원래의 임시 큐(Temporary Queue)와 똑같은 API로 상기 편집기(120)의 어느 부분도 변화시킬 필요가 없다.Given a change, all listeners 103 are notified of the change and listeners, such as display listeners, can automatically update themselves by reflecting those changes and update the ObservableList distributed with changes delivered over the Internet for networking. Replace. Temporary queues are duplicated exactly as in the center so that no part of the editor 120 needs to be changed with the same API as the original Temporary Queue.

상기 히스토리 큐(107)는 전통적인 해쉬 테이블(Hash Table) 및 벡터(Vector) 클래스의 결합으로 식별자 쌍(Identifier pairs, Hash Table)의정렬(Ordered) 리스트(Vector)이다. 객체가 상기 히스토리 큐(107)에 추가되면, 자동으로 결합된 식별자에 할당되고, 리스트(List)는 상기 식별자를 사용하여 컨텐트 어드레싱(Content Addressing)으로 조작되어질 수 있다. 이는 인덱스를 사용하는 전통적인 방법은 아니지만, 어떤 컨텐트라도 삭제나 추가를 할 수 있다.The history queue 107 is an ordered list (Vector) of identifier pairs (Hash Table) in a combination of a traditional hash table and a vector class. When an object is added to the history queue 107, it is automatically assigned an associated identifier, and a list can be manipulated by content addressing using the identifier. This is not the traditional way to use indexes, but you can delete or add any content.

상기 히스토리 큐(107)를 네트워크로 연결하면, 컨텐트 식별자들은 모든 연결된 편집기에 분산된다. 상기 편집기(120)는 상기 식별자들을 사용하여 리스트의 컨텐트들과 긴밀히 통신할 수 있다. 이는 경량 컴포넌트가 쉽게 다른 컴포넌트 위에 정보를 오버레이(Overlay)할 수 있음을 의미한다. 사용자가 특정한 컨트롤 툴을 선택하면, 경량 컴포넌트는 상기 편집기(120)에 오버래드(Overlaid)되고, 편집기 디스플레이에 GUI 이벤트를 수집한다. 한편, 상기 편집기(120)는 텍스트 영역(121), 이미지 영역(122) 및 주석을 위한 트랜스패런트 영역(123)이 있다.When the history queue 107 is networked, content identifiers are distributed to all connected editors. The editor 120 can communicate closely with the contents of the list using the identifiers. This means that lightweight components can easily overlay information on top of other components. When the user selects a particular control tool, the lightweight component is overlaid on the editor 120 and collects GUI events on the editor display. The editor 120 includes a text area 121, an image area 122, and a transparent area 123 for annotation.

도 2는 본 발명의 일 실시예에 따른 인터넷 공동 작업 그룹 편직기가 인터넷상에서 공동 작업을 하기 위하여 처리되는 방법을 나타낸 흐름도로서, 이를 상세히 설명하면 다음과 같다.2 is a flowchart illustrating a method in which an Internet collaboration group knitting machine is processed to collaborate on the Internet according to an embodiment of the present invention.

먼저, 스텝 S201에서, 그룹 공동 작업 편집을 위하여 사용자 인증이 수행된다. 여기서 말하는 사용자 인증은 공동 작업 그룹 편집기가 자바 애플릿(JAVA Applet)으로 구현되어 있기에 사용자 등록이 되어 있는 사용자만이 클라이언트 모듈을 다운로드받아 설치할 수 있기 때문이다. 이어서, 사용자 인증에 실패히면, 종료되고, 사용자 인증에 성공하면, 스텝 S204에서, 그룹 편집기가 다운로드되고,스텝 S205에서, 그룹 편집기상에 있는 현재 공동 작업에 참여하거나 참여 대상자로 되어 있는 사용자의 정보를 확인하게 된다.First, in step S201, user authentication is performed for group collaboration editing. The user authentication here is because the collaboration group editor is implemented as a Java Applet, so only registered users can download and install the client module. Subsequently, if user authentication fails, the process is terminated. If user authentication succeeds, in step S204, the group editor is downloaded, and in step S205, information of the user who participates in or becomes a participant in the current collaboration on the group editor. Will be confirmed.

그리고, 사용자 정보가 확인되면, 스텝 S206에서, 그룹 공동 작업을 위하여 상대방과 세션을 연결하게 되며, 세션이 연결되면, 스텝 S207에서, 그룹 공동 작업을 수행할 수 있다.When the user information is confirmed, in step S206, a session is connected with the counterpart for group collaboration. If the session is connected, in step S207, group collaboration can be performed.

한편, 그룹 공동 작업은 두가지 모드로 진행될 수 있는데, 웹 브라우저를 호출하여 웹 상에서 공동 작업을 할 수 있는 방법과 단지 편집기만을 대상으로 공동 작업을 수행할 수 있는 모드가 있다.On the other hand, group collaboration can be performed in two modes. There are two ways to collaborate on the web by invoking a web browser and a mode in which only the editor can collaborate.

즉, 스텝 S208에서, 웹을 이용할 것인지 여부를 판단하여, 웹을 이용하지 아니하면, 스텝 S209에서, 편집기만을 대상으로 공동 작업을 수행한 후, 종료하고, 웹을 이용할 것이며, 스텝 S210에서, 웹 브라우저를 불러들이고, 스텝 S211에서, 상기 웹 브라우저가 동기화되었는지 여부를 판단한다.That is, in step S208, it is determined whether or not to use the web, and in the case of not using the web, in step S209, the collaborative work is performed only for the editor, and then the operation is finished, and in step S210, the web is used. The browser is called up, and in step S211, it is determined whether the web browser is synchronized.

상기 스텝 S211에서의 판단 결과, 동기화되지 아니하였으면, 스텝 S212에서 동기화 작업을 수행한 후, 스텝 S213에서, 상대방에게 이벤트를 전송하여 이벤트를 공유하면서 공동 작업을 하게 되며 이벤트를 입력하기 위해서 제어권이 있는지 여부를 판단한다.If the result of the determination in step S211 is not synchronized, in step S212, after performing the synchronization operation, in step S213, the event is transmitted to the other party to share the event and collaborate and input the event is there a control right? Determine whether or not.

상기 스텝 S213에서의 판단 결과, 제어권이 있으면, 스텝 S214 내지 스텝 S216 과정을 통하여, 작업을 수행하고, 제어권이 없으면, 스텝 S217에서, 쓰기 권한 없이 단지 수행된 결과를 읽을 수 만있다.As a result of the determination in step S213, if there is a control right, the operation is performed through steps S214 to S216, and if there is no control right, in step S217, only the result performed without writing permission can be read.

즉, 제어권을 얻은 사용자는 웹 브라우저나 편집기에 데이터를 삽입할 수 있으며, 이는 상대방의 공동 작업 엔진에 전송되어 이벤트를 처리한 후, 뷰 동기를 맞출 수 있다. 이와 같은 작업을 반복하면서 인터넷상에서 그룹 편집을 동시에 할 수 있다.In other words, a user who has gained control can insert data into a web browser or editor, which can be sent to the partner's collaboration engine to process the event and then synchronize the view. You can do group editing on the Internet at the same time as you do this.

도 3은 본 발명이 적용되는 클라이언트/서버 아키텍쳐 통신 환경을 설명하기 위한 도면으로서, 이를 상세히 설명하면 다음과 같다.FIG. 3 is a diagram illustrating a client / server architecture communication environment to which the present invention is applied.

서비스 요청자인 클라이언트(A1)는 서비스 제공자인 서버(A6)에게 이벤트(A3)를 전송하여 원하는 작업을 요청하고, 상기 클라이언트(A1)는 상기 서버(A6)에서 처리된 작업 결과(A4)만을 얻는다. 따라서, 상기 클라이언트(A1)에는 상기 서버(A6)에게서 전달받은 결과 정보를 지역 임시 큐(Local Temporary Queue, A2)에 가공하여 사용자에게 출력하는 부분 및 통신 부분으로 나누어 저장한다.The client A1, which is a service requester, sends an event A3 to the server A6, which is a service provider, to request a desired work, and the client A1 obtains only the work result A4 processed by the server A6. . Therefore, the client A1 stores the result information received from the server A6 into a local temporary queue (A2), and divides the result information into a part for outputting to a user and a communication part.

상기 서버(A6)는 서버 히스토리 큐(Server History Queue, A5)에 각각의 클라이언트로부터 전송되어 온 정보들을 저장하여 후에 나중 참가자들에게 동기성을 제공하기 위한 수단으로 이용한다. 이는 다수의 클라이언트에게 동기화를 제공하며, 상기 클라이언트/서버는 텔레포인터(A5)서비스를 제공하고, 클라이언트는 서비스를 요청하는 단위로서, 네트웍을 경유하여 서비스를 적용하고 발생시키는 역할을 지닌다.The server A6 stores information transmitted from each client in a server history queue A5 and uses it as a means for providing later synchronization to participants. It provides synchronization to a plurality of clients, the client / server provides a telepointer (A5) service, the client is a unit for requesting the service, has a role of applying and generating the service via the network.

따라서, 상기 서버(A6)는 항상 서비스의 요청을 기다리고 있어야 하며, 상기 클라이언트(A1)는 상기 서버(A6)에게 서비스를 요청하기 위한 연결 요청을 해야 한다. 상기 클라이언트(A1)와 상기 서버(A6)는 네트웍을 경유하여 서로 다른 컴퓨터상에 위치할 수 있으며 한 컴퓨터상에 동시에 위치할 수도 있다. 상기 클라이언트(A1)의 수를 추가하는 등 그 규모를 줄이거나 늘려도 전체 시스템의 운영에 무관하다.Therefore, the server A6 should always be waiting for a request for service, and the client A1 should make a connection request for requesting a service from the server A6. The client A1 and the server A6 may be located on different computers via a network or may be simultaneously located on one computer. It is irrelevant to the operation of the entire system even if the size is reduced or increased, such as adding the number of clients A1.

상기와 같은 본 발명은 컴퓨터로 읽을 수 있는 기록 매체로 기록되고, 컴퓨터에 의해 처리될 수 있다.The present invention as described above is recorded on a computer-readable recording medium, and can be processed by a computer.

앞서 상세히 설명한 바와 같이 본 발명은 인터넷 공동 작업 그룹 편집 시스템 및 그 운용 방법을 제공함으로써, 이벤트를 공유할 때, 발생될 수 있는 이벤트 전송의 불안정성으로 인한 동기성 문제를 해결있으며, 뷰(View) 일관성을 제공하고, 공동 작업시 필요한 세션 정보 및 사용자 정보 처리 등의 문제점을 해결하여 가상 공간에서 문서 작업시 시스템 동기성을 보장하는 효과가 있다.As described in detail above, the present invention provides an Internet collaboration group editing system and a method of operating the same, thereby solving synchronization problems due to instability of event transmission that may occur when sharing an event, and view consistency. It is effective in ensuring system synchronization when working with documents in a virtual space by solving problems such as session information and user information processing required during collaboration.

이상에서 본 발명에 대한 기술 사상을 첨부 도면과 함께 서술하였지만 이는 본 발명의 가장 양호한 일 실시예를 예시적으로 설명한 것이지 본 발명을 한정하는 것은 아니다. 또한, 이 기술 분야의 통상의 지식을 가진 자이면 누구나 본 발명의 기술 사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.The technical spirit of the present invention has been described above with reference to the accompanying drawings, but this is by way of example only and not by way of limitation to the present invention. In addition, it is obvious that any person skilled in the art may make various modifications and imitations without departing from the scope of the technical idea of the present invention.

Claims (7)

공동작업에 참여하고자 하는 사용자를 인증하여 사용자 정보를 등록하고 세션의 공동작업 정보를 각 사용자에게 전달하며, 세션의 등록, 개설, 및 삭제 관리를 담당하며, 이벤트를 발생할 수 있는 발언권을 제어하는 공동작업 컨트롤러와,Registering user information by authenticating users who want to participate in the collaboration, passing the collaboration information of the session to each user, managing registration, opening, and deleting sessions, and controlling the voice that can generate events. With work controller, 상기 공동작업 컨트롤러에 의해 발언권이 주어진 사용자에 의해 발생된 이벤트 정보를 사용자 정보와 함께 순서대로 저장하고, 상기 공동작업에 참여하는 사용자에게 공동작업 상태정보를 전송하며, 멀티캐스트 패키지를 사용하여 상기 공동작업 컨트롤러와 사용자간의 전송을 담당하는 이벤트 컨트롤러, 및Storing event information generated by a user who is given a voice by the collaboration controller in order together with user information, transmitting collaboration status information to a user who participates in the collaboration, and using the multicast package. An event controller responsible for the transfer between the job controller and the user, and 분산된 사용자가 상기 공동작업 컨트롤러에 의해 인증되면 사용자의 컴퓨터에 다운로드되며, 공동작업 프레임 워크의 일부로 제공되는 컨트롤 유틸리티인 편집기를 포함한 것을 특징으로 하는 인터넷 공동 작업 그룹 편집기.Internet collaboration group editor comprising a editor that is a control utility that is downloaded to a user's computer when a distributed user is authenticated by the collaboration controller and is provided as part of a collaboration framework. 제 1 항에 있어서, 상기 인터넷 공동 작업 그룹 편집기는 서블릿을 사용하여 구현한 것을 특징으로 하는 인터넷 공동 작업 그룹 편집기.The internet collaboration group editor of claim 1, wherein the internet collaboration group editor is implemented using a servlet. 제 1 항 또는 제 2 항에 있어서, 상기 편집기는 자바의 경량 컴포넌트 프레임 워크를 사용하여 구현한 것을 특징으로 하는 인터넷 공동 작업 그룹 편집기.The Internet collaboration group editor according to claim 1 or 2, wherein the editor is implemented using a lightweight component framework of Java. 제 3 항에 있어서, 상기 공동작업 컨트롤러는,The method of claim 3, wherein the collaboration controller, 상기 공동작업에 참여하고자 하는 사용자를 인증하여 사용자 정보를 등록하며 상기 편집기를 인증된 사용자의 컴퓨터에 다운로드하는 사용자 인증기와,A user authenticator for authenticating a user who wants to participate in the collaboration, registering user information, and downloading the editor to a computer of an authenticated user; 현재 공동작업 참여하는 세션의 등록, 개설 및 삭제 관리를 담당하는 세션 제어기,A session controller responsible for managing the registration, creation, and deletion of currently collaborating sessions, 사용자에 의해 발생된 공동작업 이벤트를 받아서 공동작업을 진행하는 리스너,Listeners that collaborate on collaboration events received by users, 상기 공동작업에 참여한 사용자들 중 이벤트 발생의 발언권을 제어하는 발언권 제어기,A voice controller that controls the voice of the event occurrence among users participating in the collaboration, 상기 공동작업에 필요한 편집에 대한 주석을 제공하는 주석기, 및A commenter for providing comments on the editing required for the collaboration, and 인터넷 망을 제어하는 네트워크 제어기를 포함한 것을 특징으로 하는 인터넷 공동 작업 그룹 편집기.An internet collaboration group editor, comprising a network controller for controlling an internet network. 공동작업에 참여하고자 하는 사용자를 인증하고, 인증된 사용자에게 편집기를 다운로드하는 사용자 인증단계와;A user authentication step of authenticating a user who intends to participate in the collaboration and downloading an editor to the authenticated user; 상기 사용자 정보를 확인하고 그룹 공동작업을 위한 세션을 연결하는 세션연결단계; 및A session connection step of verifying the user information and connecting a session for group collaboration; And 세션이 연결된 후 그룹 공동작업을 수행하는 공동작업 수행단계를 포함하는것을 특징으로 하는 인터넷 공동 작업 그룹 편집기의 운영 방법.And a collaboration step of performing group collaboration after the session is connected. 제 5 항에 있어서, 상기 공동작업 수행단계는,The method of claim 5, wherein performing the collaboration operation, 웹 브라우저를 호출하여 동기를 맞추는 단계와,Calling the web browser to synchronize, 이벤트 입력을 위한 발언권을 요청하는 단계,Requesting floor for the event input; 상기 발언권을 얻은 사용자가 공동작업 내용을 입력, 수정, 또는 삭제하여 이벤트가 발생하면, 상기 이벤트가 상기 공동작업에 참여하는 다른 사용자에게 전송되는 단계, 및Transmitting the event to another user who participates in the collaboration when an event occurs by the user who has obtained the right to input, modify, or delete a collaboration content; and 상기 공동작업에 참여한 모든 사용자에게 이벤트 발생후의 화면이 표시되는 단계를 포함한 것을 특징으로 하는 인터넷 공동 작업 그룹 편집기의 운용 방법.And a step of displaying a screen after an event is generated to all users who participated in the collaboration. 컴퓨터에,On your computer, 공동작업에 참여하고자 하는 사용자를 인증하고, 인증된 사용자에게 편집기를 다운로드하는 사용자 인증단계와;A user authentication step of authenticating a user who intends to participate in the collaboration and downloading an editor to the authenticated user; 상기 사용자 정보를 확인하고 그룹 공동작업을 위한 세션을 연결하는 세션연결단계; 및A session connection step of verifying the user information and connecting a session for group collaboration; And 세션이 연결된 후 그룹 공동작업을 수행하는 공동작업 수행단계를 포함하는 인터넷 공동 작업 그룹 편집기의 운영 방법을 실행시키기 위한 프로그램을 기록한컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium that records a program for executing the method of operation of the Internet Collaboration Group Editor, including a collaboration step of performing a group collaboration after a session is connected.
KR1019990062396A 1999-12-27 1999-12-27 Collaborative group editor system using JAVA specific property on internet and method thereof KR100341395B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990062396A KR100341395B1 (en) 1999-12-27 1999-12-27 Collaborative group editor system using JAVA specific property on internet and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990062396A KR100341395B1 (en) 1999-12-27 1999-12-27 Collaborative group editor system using JAVA specific property on internet and method thereof

Publications (2)

Publication Number Publication Date
KR20010064246A true KR20010064246A (en) 2001-07-09
KR100341395B1 KR100341395B1 (en) 2002-06-22

Family

ID=19629942

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990062396A KR100341395B1 (en) 1999-12-27 1999-12-27 Collaborative group editor system using JAVA specific property on internet and method thereof

Country Status (1)

Country Link
KR (1) KR100341395B1 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000037347A (en) * 2000-04-19 2000-07-05 유인렬 Method and system for producing internet media by making and co-editing a information
KR20010079365A (en) * 2001-07-09 2001-08-22 유영진 Method and system for common processing real time event of program in network computer system
KR20020034551A (en) * 2000-11-02 2002-05-09 이상훈 Collaboration work supporting system
KR100366380B1 (en) * 2000-05-22 2002-12-31 (주)싸이버훼밀리 3D-Object sharing method using 3D Studio max plug-in in distributed collaborative work systems
WO2008086310A1 (en) * 2007-01-06 2008-07-17 Microsoft Corporation Persistent collaborative framework for interactive web applications
KR100868603B1 (en) * 2007-01-22 2008-11-13 김영주 On-line Collaborative Authoring System and method for synchronizing
WO2009043037A2 (en) * 2007-09-28 2009-04-02 Xcerion Aktiebolag Network operating system
WO2011031093A3 (en) * 2009-09-10 2011-06-03 주식회사 파수닷컴 Apparatus and method for managing digital rights using virtualization technique
KR101159504B1 (en) * 2011-10-14 2012-06-25 주식회사 한글과컴퓨터 Terminal device and document cooperation editing method of the terminal device
KR102665231B1 (en) * 2023-11-27 2024-05-21 주식회사 낭만 Communication method for sharing data between client terminals and servers

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000037347A (en) * 2000-04-19 2000-07-05 유인렬 Method and system for producing internet media by making and co-editing a information
KR100366380B1 (en) * 2000-05-22 2002-12-31 (주)싸이버훼밀리 3D-Object sharing method using 3D Studio max plug-in in distributed collaborative work systems
KR20020034551A (en) * 2000-11-02 2002-05-09 이상훈 Collaboration work supporting system
KR20010079365A (en) * 2001-07-09 2001-08-22 유영진 Method and system for common processing real time event of program in network computer system
WO2008086310A1 (en) * 2007-01-06 2008-07-17 Microsoft Corporation Persistent collaborative framework for interactive web applications
KR100868603B1 (en) * 2007-01-22 2008-11-13 김영주 On-line Collaborative Authoring System and method for synchronizing
US8234315B2 (en) 2007-09-28 2012-07-31 Xcerion Aktiebolag Data source abstraction system and method
US8996459B2 (en) 2007-09-28 2015-03-31 Xcerion Aktiebolag Offline and/or client-side execution of a network application
US11838358B2 (en) 2007-09-28 2023-12-05 Xcerion Aktiebolag Network operating system
US8099671B2 (en) 2007-09-28 2012-01-17 Xcerion Aktiebolag Opening an application view
US8108426B2 (en) 2007-09-28 2012-01-31 Xcerion Aktiebolag Application and file system hosting framework
US8112460B2 (en) 2007-09-28 2012-02-07 Xcerion Aktiebolag Framework for applying rules
US8156146B2 (en) 2007-09-28 2012-04-10 Xcerion Aktiebolag Network file system
US9621649B2 (en) 2007-09-28 2017-04-11 Xcerion Aktiebolag Network operating system
WO2009043037A2 (en) * 2007-09-28 2009-04-02 Xcerion Aktiebolag Network operating system
US8239511B2 (en) 2007-09-28 2012-08-07 Xcerion Aktiebolag Network operating system
US8280925B2 (en) 2007-09-28 2012-10-02 Xcerion Aktiebolag Resolution of multi-instance application execution
US8615531B2 (en) 2007-09-28 2013-12-24 Xcerion Aktiebolag Programmatic data manipulation
US8620863B2 (en) 2007-09-28 2013-12-31 Xcerion Aktiebolag Message passing in a collaborative environment
US8688627B2 (en) 2007-09-28 2014-04-01 Xcerion Aktiebolag Transaction propagation in a networking environment
US8738567B2 (en) 2007-09-28 2014-05-27 Xcerion Aktiebolag Network file system with enhanced collaboration features
US8843942B2 (en) 2007-09-28 2014-09-23 Xcerion Aktiebolag Interpreting semantic application code
US9344497B2 (en) 2007-09-28 2016-05-17 Xcerion Aktiebolag State management of applications and data
US8954526B2 (en) 2007-09-28 2015-02-10 Xcerion Aktiebolag Network operating system
US8959123B2 (en) 2007-09-28 2015-02-17 Xcerion Aktiebolag User interface framework
WO2009043037A3 (en) * 2007-09-28 2009-05-28 Xcerion Ab Network operating system
US9071623B2 (en) 2007-09-28 2015-06-30 Xcerion Aktiebolag Real-time data sharing
US8955150B2 (en) 2009-09-10 2015-02-10 Fasoo.Com Co. Ltd. Apparatus and method for managing digital rights using virtualization technique
WO2011031093A3 (en) * 2009-09-10 2011-06-03 주식회사 파수닷컴 Apparatus and method for managing digital rights using virtualization technique
KR101159504B1 (en) * 2011-10-14 2012-06-25 주식회사 한글과컴퓨터 Terminal device and document cooperation editing method of the terminal device
KR102665231B1 (en) * 2023-11-27 2024-05-21 주식회사 낭만 Communication method for sharing data between client terminals and servers

Also Published As

Publication number Publication date
KR100341395B1 (en) 2002-06-22

Similar Documents

Publication Publication Date Title
US11785056B2 (en) Web browser interface for spatial communication environments
KR100331685B1 (en) Cooperative appartus for editing documnet and method using the same
US10326807B2 (en) Method and software for enabling n-way collaborative work over a network of computers
US9813463B2 (en) Phoning into virtual communication environments
JP3694167B2 (en) Personal conference method and system
EP1629631B1 (en) System and method for authorizing a party to join a conference
CA2515652C (en) Systems and methods for collaborative communication
US7313580B2 (en) Systems and methods for sharing information between a user group and associated document
US20100131868A1 (en) Limitedly sharing application windows in application sharing sessions
US20030195932A1 (en) Server-based computing collaboration allowing multiple clients to share application in server and collaborate on the application
Bergenti et al. A collaborative platform for fixed and mobile networks
KR100341395B1 (en) Collaborative group editor system using JAVA specific property on internet and method thereof
JP2004531782A (en) A way of real-time business collaboration
WO2023165463A1 (en) Conference creation methods and apparatus, device, storage medium and program product
JP2791097B2 (en) Interactive communication method and system
JP2005191642A (en) Virtual office space providing program, apparatus, method, and system, and storage medium for storing virtual office space providing program
Gutekunst et al. A Distributed Multimedia Joint Viewing and Tele-Operation Service for Heterogeneous Workstation Environments
Kim et al. Issues in platform-independent support for multimedia desktop conferencing and application sharing
US20230339816A1 (en) Visual Communications
JP2005502929A (en) A computer program for maintaining a persistent connection that conforms to a firewall
Lamont et al. A multimedia real-time conferencing system: Architecture and implementation
CN118194817A (en) Document processing method and related equipment
KR20010036133A (en) Method and apparatus for managing session and component in creative and new technology virtual application system
Steinmetz et al. Group Communication
Smith et al. Towards a standards-based, message-oriented advanced collaboration system

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: 20110531

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee