KR101717945B1 - Method for real-time sharing online contents based on websocket server and a computer-readable storage medium having program to perform the same - Google Patents

Method for real-time sharing online contents based on websocket server and a computer-readable storage medium having program to perform the same Download PDF

Info

Publication number
KR101717945B1
KR101717945B1 KR1020140172864A KR20140172864A KR101717945B1 KR 101717945 B1 KR101717945 B1 KR 101717945B1 KR 1020140172864 A KR1020140172864 A KR 1020140172864A KR 20140172864 A KR20140172864 A KR 20140172864A KR 101717945 B1 KR101717945 B1 KR 101717945B1
Authority
KR
South Korea
Prior art keywords
client device
lecture
event
web
server
Prior art date
Application number
KR1020140172864A
Other languages
Korean (ko)
Other versions
KR20160067449A (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 KR1020140172864A priority Critical patent/KR101717945B1/en
Publication of KR20160067449A publication Critical patent/KR20160067449A/en
Application granted granted Critical
Publication of KR101717945B1 publication Critical patent/KR101717945B1/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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • 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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • G06Q50/205Education administration or guidance

Abstract

이벤트 처리 기반의 온라인 강의 콘텐츠 관리방법 및 이 방법을 수행하기 위한 프로그램이 저장된 컴퓨터 판독가능한 저장매체가 제공된다. 본 발명의 일 실시예에 따른 이벤트 처리 기반의 온라인 강의 콘텐츠 관리방법은, 강의 콘텐츠를 기록하는 단계, 상기 강의 콘텐츠의 기록과정에서 발생한 이벤트 정보를 저장하는 단계 및 상기 이벤트 정보를 기초로 상기 강의 콘텐츠를 재생하는 단계를 포함한다.There is provided an online lecture content management method based on event processing and a computer readable storage medium storing a program for performing the method. An on-line lecture content management method based on event processing according to an embodiment of the present invention includes the steps of recording lecture contents, storing event information generated in the lecture contents recording process, and storing the lecture contents .

Description

웹소켓 기반의 실시간 콘텐츠 공유 방법 및 이 방법을 수행하기 위한 프로그램이 저장된 컴퓨터 판독가능한 저장매체 {METHOD FOR REAL-TIME SHARING ONLINE CONTENTS BASED ON WEBSOCKET SERVER AND A COMPUTER-READABLE STORAGE MEDIUM HAVING PROGRAM TO PERFORM THE SAME}[0001] METHOD FOR REAL-TIME SHARING ON CONTENTS [0002] BASED ON WEBSOCKET SERVER AND COMPUTER READABLE STORAGE MEDIUM HAVING PROGRAM TO PERFORM THE SAME [0003]

본 발명은 웹소켓 기반의 실시간 콘텐츠 공유 방법 및 이 방법을 수행하기 위한 프로그램이 저장된 컴퓨터 판독가능한 저장매체에 관한 것으로, 보다 자세하게는 강의 과정에서 발생되는 다양한 이벤트를 강의자와 수강자가 실시간으로 공유할 수 있는 방법에 관한 것이다.The present invention relates to a web socket-based real-time content sharing method and a computer-readable storage medium storing a program for performing the method. More particularly, the present invention relates to a method and apparatus for sharing various events generated during a lecture session in real- How to do it.

최근 통신기술의 발달과 인터넷 대중화로 인해 교육 분야 또한 인터넷으로 이전되고 있다. 즉, 오프라인 상에서 이루어지던 강의가 온라인 상에서 제작되어 배포되고 있고, 수강생들은 학원 등의 오프라인 장소에 모이지 않더라도 컴퓨터나 스마트폰 등을 이용하여 인터넷을 통해 원격지에서 강의를 수강할 수 있게 되었다.Due to the recent development of communication technologies and popularization of the Internet, the education field is also being transferred to the Internet. In other words, lectures that were done offline were produced and distributed on-line, and students could take lectures from a remote location via the Internet using a computer or smart phone, even if they did not gather in offline places such as academies.

이러한 온라인 강의는 종래에 단순히 음성파일로 제작되던 것에서, 최근에는 수강생의 몰입도 및 흥미를 유발하기 위해 대부분 시각적인 효과가 더 포함된 동영상의 형식으로 강의자료가 제작되고 있다. 이에, 강의자는 자신의 강의 내용을 영상으로 기록하여 웹서버에 게시하고, 온라인 수강생은 강의를 듣기 위해 강의 자료, 즉 강의 동영상을 다운받거나 스트리밍할 필요가 있다.Since the online lecture was conventionally produced only as a voice file, recently lecture materials are being produced in the form of a video including mostly visual effects in order to induce students' immersion and interest. Accordingly, the lecturer needs to record the content of his lecture as a video and post it on a web server, and an online learner needs to download or stream the lecture material, that is, the lecture video, in order to listen to the lecture.

HTML5는 HTML의 차기 주요 제안 버전으로 월드 와이드 웹의 핵심 마크업 언어이다. 이전 버전에서 사용하지 못하였던 오디오, 비디오, 캔버스 등의 멀티미디어 제어 요소를 액티브엑스(ActiveX)나 별도의 플러그인의 설치과정 없이도 디바이스로부터 웹에서 바로 사용할 수 있게 되어 쉽게 해당 자원에 접근할 수 있게 도와준다. 또한 HTML5로 인해 기존의 AJAX로 처리하던 실시간 양방향 통신을 웹소켓(Websocket)을 사용할 수 있게 되어 통신상의 오버헤드를 줄이고 속도의 이득을 얻을 수 있으며, 최근 HTML5를 지원하는 웹 브라우저로 다양한 멀티 미디어 콘텐츠를 생산하는 추세이다.HTML5 is the next major proposal version of HTML and is the core markup language of the World Wide Web. Multimedia control elements such as audio, video, and canvas that were not available in previous versions can be used directly from the device from the device without the need for ActiveX or other plug-in installation. . In addition, since HTML5 enables real-time bidirectional communication using AJAX, Websocket can be used, which can reduce communication overhead and gain speed. Recently, a web browser supporting HTML5 supports various multimedia contents .

한국공개특허 10-2009-0002546Korean Patent Publication No. 10-2009-0002546 한국공개특허 10-2011-0010163Korean Patent Publication No. 10-2011-0010163

종래의 온라인 강의 서비스에서, 제작된 동영상 콘텐츠가 판서나 프리젠테이션을 활용하였을 경우 이를 촬영하는 과정에서 카메라의 움직임, 변화하는 조명 등에 의해 쉽게 왜곡되며 실제로 촬영된 영상이 큰 변화를 보이지 않음에도 불구하고 많은 용량을 차지하게 된다. 따라서, 수강생이 강의 콘텐츠를 다운로드 및 스트리밍하게 될 경우 많은 시간이 소요될 뿐 아니라, 네트워크 환경이 좋지 못한 곳에서는 원활한 강의 수강을 실시할 수 없었다.In the conventional online lecture service, when the produced video contents utilize a pamphlet or a presentation, it is easily distorted due to the movement of the camera, the changing illumination, and the like, It takes up a lot of capacity. Therefore, it takes a lot of time for the learner to download and stream the lecture contents, and it is not possible to take smooth lectures in a place where the network environment is poor.

또한, 종래의 온라인 강의 제공 방법은 강의자가 사전에 촬영한 동영상 파일을 서버에 업로드하고, 수강자는 이를 다운로드하는 방법으로 강의를 수강하는 경우가 대부분이어서, 수강자와 강의자 상호간에 양방향의 의사소통이 제대로 이루어지지 않는 불편함이 있었으며, 온라인 강의 콘텐츠 제작시 요구되는 캠코더, 카메라 등 별도의 촬영장비 및 촬영장소와, 촬영된 영상을 편집하기 위한 편집과정이 더 소요되는 등 강의 콘텐츠 제작시 요구되는 비용 및 시간이 증가하는 문제점이 있었다.In addition, in the conventional online lecture providing method, the lecturer uploads the video file taken in advance to the server, and the lecturer downloads the lecture by taking the lecture in many cases, so that the lecturer can communicate with the lecturer in both directions It is inconvenient to use it. Also, it takes more time to edit the photographed images and additional shooting equipment and photographing equipment required for the online lecture contents production, such as camcorder, camera, etc., There is a problem that the time increases.

위와 같은 문제점으로부터 안출된 본 발명이 해결하고자 하는 기술적 과제는, 강의자와 수강생이 동일한 웹페이지에 접속하여 강의자의 강의 진행 과정을 촬영된 동영상 파일이나 음성파일이 아닌 실시간으로 수강할 수 있는 웹소켓 기반의 실시간 콘텐츠 공유 방법을 제공하고자 하는 것이다.SUMMARY OF THE INVENTION The present invention has been made in view of the above problems, and it is an object of the present invention to provide a web socket-based learning system in which a lecturer and a learner access the same web page, Time content sharing method of the present invention.

본 발명이 해결하고자 하는 다른 기술적 과제는, HTML5와 웹소켓 등과 같은 오픈소스를 이용하여 강의 콘텐츠를 제작하여, 저렴한 비용으로 강의 콘텐츠를 배포하거나 수강할 수 있으며, 실시간 양방향 소통이 가능한 웹소켓 기반의 실시간 콘텐츠 공유 방법을 제공하고자 하는 것이다.Another technical problem to be solved by the present invention is to create lecture contents by using open source such as HTML5 and web socket, distribute lecture contents at low cost, take a lecture and take a web socket-based And to provide a real-time content sharing method.

본 발명이 해결하고자 하는 또 다른 기술적 과제는, 별도로 제작된 음성파일이나 동영상, 문서파일 등을 구입하여 강의를 수강하던 종래의 방법에서 벗어나, 웹 브라우저에 접속하면 전술한 별도의 과정 없이도 실시간으로 강의를 수강할 수 있으며, 수강생들간 또는 수강생과 강의자간 실시간 상호작용이 가능한 웹소켓 기반의 실시간 콘텐츠 공유 방법을 제공하고자 하는 것이다.It is another object of the present invention to provide a method and apparatus for providing a lecture in real time without a separate process by accessing a web browser after departing from a conventional method of purchasing a voice file, And to provide a real-time content sharing method based on a web socket capable of real-time interaction between students and lecturers.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다. The technical objects of the present invention are not limited to the above-mentioned technical problems, and other technical subjects not mentioned can be clearly understood by those skilled in the art from the following description.

상기 언급된 기술적 과제들을 해결하기 위한, 본 발명의 일 실시예에 따른 웹소켓 기반의 실시간 콘텐츠 공유 방법은, 서버가 제1 클라이언트 장치로부터 강의 콘텐츠를 수신하는 단계, 상기 강의 콘텐츠가 표시되는 웹 브라우저 및 상기 웹 브라우저와 연동되는 웹 주소를 생성하는 단계, 상기 제1 클라이언트 장치와 상기 제2 클라이언트 장치가 상기 웹 주소를 이용하여 동일한 상기 웹 브라우저에 접속하는 단계 및 강의 과정에서 발생되는 이벤트 제어신호를 기초로 상기 강의 콘텐츠를 제어하여, 상기 제1 클라이언트 장치에 표시되는 강의 콘텐츠와 상기 제2 클라이언트 장치에 표시되는 강의 콘텐츠를 실시간으로 동기화하는 단계를 포함한다.According to an aspect of the present invention, there is provided a web socket-based real-time content sharing method comprising: receiving a lecture content from a first client device; And generating a web address associated with the web browser, the first client device and the second client device accessing the same web browser using the web address, and an event control signal generated in the lecture process And controlling the contents of the lecture based on the lecture contents and synchronizing the lecture contents displayed on the first client device and the lecture contents displayed on the second client device in real time.

상기 웹 주소는 암호화된 URL정보를 포함하고, 상기 웹 브라우저에 접속하는 단계에서, 상기 제1 클라이언트 장치 또는 상기 제2 클라이언트 장치는 외부 웹 브라우저에 상기 암호화된 URL정보를 입력하여 상기 웹 브라우저로 접속할 수 있다.The web address includes encrypted URL information, and in the step of connecting to the web browser, the first client device or the second client device inputs the encrypted URL information to an external web browser and accesses the web browser .

상기 이벤트 제어신호는 상기 서버와 연동되는 웹소켓 서버로 전송되며, 상기 강의 콘텐츠를 제어하는 단계에서, 상기 웹소켓 서버는, 상기 제1 클라이언트 장치의 제1 화면상에 표시되는 상기 웹브라우저 상에서 감지되는 상기 이벤트 제어신호를 수신하여 상기 서버로 전송하고, 상기 서버는, 수신된 상기 이벤트 제어신호를 기초로 상기 강의 콘텐츠에 이벤트 정보를 생성할 수 있다.Wherein the event control signal is transmitted to a web socket server operatively associated with the server, and wherein, in the step of controlling the content of the lecture, the web socket server detects the event on the web browser displayed on the first screen of the first client device And transmits the event control signal to the server. The server can generate event information on the content of the lecture based on the received event control signal.

상기 강의 콘텐츠를 실시간으로 동기화하는 단계는, 상기 이벤트 정보가 포함된 강의 콘텐츠가 상기 제1 화면 및 상기 제1 클라이언트 장치와 동일한 웹 브라우저에 접속한 상기 제2 클라이언트 장치의 제2 화면상에 표시되는 단계를 포함할 수 있다.The step of synchronizing the contents of the lecture in real time may include displaying the lecture contents including the event information on the first screen and the second screen of the second client apparatus connected to the same web browser as the first client apparatus Step < / RTI >

상기 웹소켓 서버는, 동일한 상기 웹 브라우저로 접속한 상기 제1 클라이언트 장치와 상기 제2 클라이언트 장치에 동일한 식별자를 부여하고, 수신된 상기 이벤트 제어 신호를 상기 동일한 식별자가 부여된 복수의 클라이언트 장치와 공유할 수 있다.Wherein the web socket server assigns the same identifier to the first client device and the second client device connected to the same web browser and transmits the received event control signal to a plurality of client devices can do.

상기 웹소켓 서버는, 강의자인 제1 클라이언트 장치와 수강자인 제2 클라이언트 장치에 서로 다른 제어권한을 부여하고, 상기 제어권한을 기초로 상기 이벤트 제어 신호를 선택적으로 공유할 수 있다.The web socket server may grant different control rights to the first client device, which is a lecturer, and the second client device, which is a lecturer, and may selectively share the event control signal based on the control authority.

상기 이벤트 제어신호는 질문이벤트 및 응답이벤트를 포함하고, 상기 강의 콘텐츠를 실시간으로 동기화하는 단계는, 상기 제1 클라이언트 장치로부터 수신된 제1 이벤트 제어신호를 기초로 상기 질문이벤트를 생성하여 상기 강의 콘텐츠에 반영하는 단계 및 상기 제2 클라이언트 장치로부터 수신되는 제2 이벤트 제어신호를 기초로 상기 응답이벤트를 생성하여 상기 강의 콘텐츠에 반영하는 단계를 포함할 수 있다.Wherein the event control signal includes a question event and a response event, wherein synchronizing the lecture contents in real time comprises: generating the question event based on a first event control signal received from the first client device, And generating the response event based on the second event control signal received from the second client device and reflecting the response event on the lecture contents.

상기 제2 클라이언트 장치는 복수의 클라이언트 장치를 포함하고, 상기 서버는, 상기 복수의 클라이언트 장치로부터 수신되는 복수의 상기 제2 이벤트 제어신호의 수신시점을 기초로 응답권한을 부여할 수 있다.The second client device may include a plurality of client devices, and the server may grant a response authority based on a reception time point of a plurality of the second event control signals received from the plurality of client devices.

상기 질문이벤트를 생성하여 상기 강의 콘텐츠에 반영하는 단계는, 응답 아이콘을 생성하여 상기 복수의 클라이언트 장치의 화면에 표시되는 강의 콘텐츠에 상기 응답 아이콘을 더 생성하여 표시하는 단계를 포함하고, 상기 수신시점은 상기 응답 아이콘의 선택시점을 기준으로 결정될 수 있다.The step of generating the question event and reflecting the question event to the content of the lecture includes generating a response icon and further generating and displaying the response icon in the lecture content displayed on the screen of the plurality of client devices, May be determined based on a selection time point of the response icon.

본 발명의 일 실시예에 따른 컴퓨터 판독가능한 저장매체는, 서버가 제1 클라이언트 장치로부터 강의 콘텐츠를 수신하는 단계, 상기 강의 콘텐츠가 표시되는 웹 브라우저 및 상기 웹 브라우저와 연동되는 웹 주소를 생성하는 단계, 상기 제1 클라이언트 장치와 상기 제2 클라이언트 장치가 상기 웹 주소를 이용하여 동일한 상기 웹 브라우저에 접속하는 단계 및 강의 과정에서 발생되는 이벤트 제어신호를 기초로 상기 강의 콘텐츠를 제어하여, 상기 제1 클라이언트 장치에 표시되는 강의 콘텐츠와 상기 제2 클라이언트 장치에 표시되는 강의 콘텐츠를 실시간으로 동기화하는 단계를 포함하는 웹소켓 기반의 실시간 콘텐츠 공유 방법을 수행하기 위한 프로그램이 저장된다.A computer-readable storage medium according to an embodiment of the present invention includes a server receiving a lecture content from a first client device, a web browser displaying contents of the lecture, and a web address cooperating with the web browser , The first client device and the second client device accessing the same web browser using the web address, and controlling the content of the lecture based on an event control signal generated in the lecture process, And a step of synchronizing the lecture contents displayed on the device and the lecture contents displayed on the second client device in real time.

상기와 같은 본 발명에 따르면, 강의자인 제1 클라이언트 장치에 의해 서버에 등록된 강의 콘텐츠에 대하여 암호화된 웹 주소가 생성되고, 수강생인 제2 클라이언트 장치는 별도의 강의자료를 다운받거나 별도의 플러그인 프로그램의 설치과정 없이 해당 웹 주소를 입력하면 강의 콘텐츠를 열람하거나 진행되는 강의를 실시간으로 수강할 수 있다.According to the present invention, an encrypted web address is generated for the content of the lecture registered in the server by the first client device, which is a lecturer, and the second client device, which is the learner, receives a separate lecture material, You can browse the contents of the lecture or enter the live lecture in real time by entering the corresponding web address without installing it.

또한, 웹소켓을 이용한 이벤트 처리로 인해 동일한 웹 주소로 접속하는 사용자들은 강의 과정 중에 발생되는 페이지 전환, 필기, 퀴즈 등에 대한 이벤트를 실시간으로 제공받을 수 있으며, 강의자 또한 수강생들로부터 작성되는 퀴즈에 대한 응답, 피드백 등에 대한 정보를 실시간으로 획득하여 실시간 양방향 상호작용이 가능하다.In addition, due to the event processing using the web socket, users accessing the same web address can receive events related to page switching, handwriting, and quizzes generated during the lecture process in real time, and the lecturer can also receive a quiz Response and feedback can be acquired in real time, enabling real-time two-way interaction.

또한, HTML5와 웹소켓과 같은 오픈소스를 이용하므로 사용자들은 별도의 프로그램 설치과정 없이도 편리하게 강의 콘텐츠를 이용할 수 있으며, 이로 인해 강의 제작 과정 및 수강 과정에서 발생할 수 있는 비용 및 강의 콘텐츠의 용량을 절감할 수 있다. In addition, since it uses open source such as HTML5 and Web socket, users can conveniently use the contents of the lecture without installing a separate program, thereby reducing cost and lecture content capacity can do.

도 1은 본 발명의 일 실시예에 따른 웹소켓 기반의 실시간 콘텐츠 공유 방법의 개략적인 흐름을 나타내는 순서도이다.
도 2 는 도 1의 구성요소간 강의 콘텐츠를 이용하는 일 예를 나타내는 도면이다.
도 3은 도 1의 강의 콘텐츠 및 이를 표시하는 웹 브라우저의 일 예를 나타내는 도면이다.
도 4는 도 1의 이벤트 제어신호를 이용하여 강의 콘텐츠를 제어하는 일 예를 나타내는 도면이다.
도 5 내지 도 6는 도 1의 방법을 이용한 강의 과정에서 발생하는 다양한 이벤트의 실시예들을 나타내는 도면이다.
1 is a flowchart showing a schematic flow of a web socket-based real-time content sharing method according to an embodiment of the present invention.
FIG. 2 is a diagram showing an example of using lecture contents between the constituent elements of FIG. 1; FIG.
FIG. 3 is a view showing contents of a lecture in FIG. 1 and an example of a web browser displaying the contents.
4 is a diagram showing an example of controlling lecture contents using the event control signal of Fig.
FIGS. 5 to 6 are diagrams illustrating various examples of events occurring during a lecture using the method of FIG.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and the manner of achieving them, will be apparent from and elucidated with reference to the embodiments described hereinafter in conjunction with the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless defined otherwise, all terms (including technical and scientific terms) used herein may be used in a sense commonly understood by one of ordinary skill in the art to which this invention belongs. Also, commonly used predefined terms are not ideally or excessively interpreted unless explicitly defined otherwise.

본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.The terminology used herein is for the purpose of illustrating embodiments and is not intended to be limiting of the present invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification. The terms " comprises "and / or" comprising "used in the specification do not exclude the presence or addition of one or more other elements in addition to the stated element.

이하, 도면을 참조하여 본 발명의 실시예들에 따른 웹소켓 기반의 실시간 콘텐츠 공유 방법에 대해 설명하기로 한다.Hereinafter, a web socket-based real-time content sharing method according to embodiments of the present invention will be described with reference to the drawings.

도 1을 참조하면, 본 발명의 일 실시예에 따른 개략적인 웹소켓 기반의 실시간 콘텐츠 방법이 도시된다.Referring to FIG. 1, a schematic Web-socket-based real-time content method according to an embodiment of the present invention is shown.

먼저, 제1 클라이언트 장치로부터 강의 콘텐츠를 수신하는 단계(S11)를 수행할 수 있다. 본 실시예에서, 강의 콘텐츠는 프리젠 테이션 파일과 같은 문서형 콘텐츠일 수 있으나, 이에 한정되는 것은 아니며 영상 콘텐츠나 이미지 콘텐츠 등 강의 과정에서 사용할 수 있는 다양한 종류의 멀티미디어 콘텐츠를 더 포함할 수도 있다.First, a step S11 of receiving lecture contents from the first client device may be performed. In this embodiment, the lecture content may be a document type content such as a presentation file, but the present invention is not limited thereto. The lecture content may further include various types of multimedia content that can be used in lectures such as image contents and image contents.

또한, 본 명세서에서, 클라이언트 장치는 다양한 의미로 사용될 수 있으며, 예를 들어 클라이언트 장치는 스마트폰, PDA, 태블릿 PC 등과 같은 모바일 단말기 및 스마트 와치(Smart Watch), 스마트 글라스(Smart Glass), 스마트 밴드(Smart Basd) 등과 같은 웨어러블 디바이스일 수 있으나, 이에 한정되는 것은 아니며 데스크탑 PC, 또는 스마트 가전기기를 더 포괄할 수도 있다.In this specification, the client device can be used in various ways. For example, the client device can be a mobile terminal such as a smart phone, a PDA, a tablet PC and the like, and a mobile terminal such as a smart watch, a smart glass, (Smart Basd), and the like. However, the present invention is not limited thereto, and may further include a desktop PC, or a smart home appliance.

클라이언트 장치는 본 실시예에 따른 웹소켓 기반의 실시간 콘텐츠 공유 방법이 구현된 서버 및 그 서버와 연동되는 웹 브라우저에 접속하여 일련의 데이터를 주고받을 수 있으며, 몇몇 다른 실시예에서 이를 위해 사전에 서버로부터 소정의 실행파일 또는 응용프그로램을 사전에 다운로드하여 설치하는 과정을 거친 후 서버에 접속할 수 있다. 또는 클라이언트 장치는 별도의 설치과정 없이 서버와 연동되는 웹 브라우저에 접속하여 회원가입과정을 거친 후 서버의 승인을 거쳐 웹 브라우저를 통하여 강의 콘텐츠를 제공하거나 제공받을 수 있다.The client device can send and receive a series of data by connecting to a server implemented with the web socket-based real-time content sharing method according to the present embodiment and a web browser linked with the server, and in some other embodiments, A predetermined executable file or an application program may be downloaded and installed in advance and then connected to the server. Alternatively, the client device may access the web browser connected to the server without performing a separate installation process, and after receiving the approval of the server after the membership process, the lecture contents may be provided or provided through the web browser.

본 실시예에 따른 웹소켓 기반의 실시간 콘텐츠 공유 방법은 HTML5 표준기술을 지원하는 웹 브라우저 상에서 강의 콘텐츠를 제작할 수 있으나, 이에 한정되는 것은 아니며 외부 응용 프로그램을 통하여 사전에 제작된 강의 콘텐츠를 서버에 전송하여 저장할 수도 있다. 또한, 제작된 강의 콘텐츠를 온라인으로 전송하기 위해 기본적인 사용자 인증을 처리하고, 웹 브라우저에 강의 콘텐츠를 전송하기 위한 일반적인 웹 서버를 필요로 할 수 있다.The web socket-based real-time content sharing method according to this embodiment can produce lecture contents on a web browser supporting HTML5 standard technology, but the present invention is not limited to this, and it is possible to transmit lecture contents prepared in advance through an external application program to a server And stored. In addition, a general web server for processing basic user authentication and transmitting lecture contents to a web browser may be required to transmit contents of the produced lecture on-line.

서버에 제1 클라이언트 장치로부터 수신된 강의 콘텐츠가 저장되면, 서버는 수신된 강의 콘텐츠가 표시되는 웹 브라우저 및 웹 브라우저와 연동되는 웹 주소를 생성할 수 있다(S12). 또는, 제1 클라이언트 장치가 서버에 접속하여 서버와 연동되는 웹 브라우저에 강의 콘텐츠를 업로드하여 서버에 저장하면, 즉 강의 콘텐츠 가 표시되는 새로운 웹 페이지가 생성되고, 생성된 웹 페이지에 대응되는 웹 주소를 더 생성할 수 있다. 즉, 본 명세서에 사용되는 웹 브라우저는 HTML5 기능을 지원하는 웹 브라우저, 예컨대 인터넷 익스플로러, 파이어폭스, 크롬, 오페라, 사파리 등일 수 있으나, 이에 한정되는 것은 아니며 본 명세서의 웹 브라우저는 특정 웹 브라우저를 이용하여 강의 콘텐츠를 생성하거나 업로드하면, 해당 강의 콘텐츠가 표시되는 새로운 웹 페이지와 동일한 의미로 사용될 수도 있다.When the lecture contents received from the first client device are stored in the server, the server can generate a web address linked with the web browser and the web browser in which the contents of the lecture are displayed (S12). Alternatively, when the first client device accesses the server and uploads the lecture contents to a web browser linked to the server and stores the lecture contents in the server, that is, a new web page in which lecture contents are displayed is generated, Lt; / RTI > That is, the web browser used in the present specification may be a web browser supporting the HTML5 function, such as Internet Explorer, Firefox, Chrome, Opera, Safari, etc., but the present invention is not limited thereto. The content of the lecture can be used in the same meaning as the new web page in which the content of the lecture is displayed.

본 실시예에서 웹 주소는 암호화된 URL의 형태일 수 있으나, 이에 한정되는 것은 아니며 일반적인 URL, 예를 들어 강의자인 제1 클라이언트 장치의 식별자, 강의 콘텐츠의 저장 경로 등을 식별할 수 있는 단어 등이 포함된 형태를 포괄할 수 있다.In the present embodiment, the web address may be in the form of an encrypted URL, but the present invention is not limited thereto. The web address may include a general URL, for example, an identifier of the first client device as a lecturer, It can cover the included form.

즉, 생성되는 웹 주소는 미리 생성되지 않고 강의 콘텐츠가 저장되거나 웹 브라우저가 생성될 때 고유의 식별자 또는 암호화된 스크립트를 가지고 생성되므로 해킹 등의 외부로부터의 악의적인 공격을 방지할 수 있다. 생성된 웹 주소는 제1 클라이언트 장치로 전송되며, 서버의 강의 목록에 포함되어 강의자인 제1 클라이언트 장치가 아닌 다른 클라이언트 장치가 검색할 수 있다.That is, the web address to be generated is not generated in advance and is generated with a unique identifier or an encrypted script when the lecture contents are stored or the web browser is generated, so that malicious attacks from outside such as hacking can be prevented. The generated web address is transmitted to the first client device, and can be retrieved by a client device other than the first client device included in the lecture list of the server.

계속하여, 제1 클라이언트 장치와 제2 클라이언트 장치가 웹 주소를 이용하여 동일한 웹 브라우저에 접속할 수 있다(S13).Subsequently, the first client device and the second client device can access the same web browser using the web address (S13).

제2 클라이언트 장치는 강의 콘텐츠를 서버에 전송하지 않은 사용자, 예를 들어 수강생일 수 있으며, 서버에 게시된 복수의 강의 목록 중 특정 강의자(제1 클라이언트 장치)가 개설한 강의를 선택하면 서버는 제1 클라이언트 장치와 연관된 웹 주소(제1 클라이언트 장치에 의해 제공된 강의 콘텐츠에 접속할 수 있는 웹 주소)를 제2 클라이언트 장치로 전송하고, 제2 클라이언트 장치는 이를 이용하여 해당 강의 콘텐츠가 표시되는 웹 브라우저에 접속할 수 있다.The second client device may be a user who has not transmitted the content of the lecture to the server, for example, a student, and if the lecture selected by a specific lecturer (first client device) among a plurality of lecture listings posted on the server is selected, 1 web address associated with the client device (web address accessible to the content of the lecture provided by the first client device) to the second client device, and the second client device uses the web address to access the web browser Can be connected.

즉, 제2 클라이언트 장치는 수신된 웹 주소를 일반적인 웹 브라우저, 예컨대 인터넷 익스플로러, 크롬, 사파리, 오페라 등의 외부 브라우저를 실행한 후, 외부 웹 브라우저의 주소 입력창에 서버로부터 수신된 웹 주소를 입력하여 강의 콘텐츠가 표시되는 웹 브라우저(웹 페이지)로 접근할 수 있다.That is, after the second client device executes an external browser such as a general web browser such as Internet Explorer, Chrome, Safari, or Opera, a received web address is input to the address input window of the external web browser And access to the web browser (web page) in which the content of the lecture is displayed.

일반적으로, 하나의 웹 주소는 하나의 웹 브라우저(웹 페이지)에 대응되므로, 동일한 웹 주소를 이용하여 접속하는 제1 클라이언트 장치 및 복수의 제2 클라이언트 장치는 동일한 웹 브라우저로 접속하게 되며, 해당 웹 브라우저가 강의 콘텐츠와 관련된 웹 페이지이면, 모든 사용자는 클라이언트 장치에 웹 주소를 입력하는 것만으로 동일한 강의 콘텐츠가 표시될 수 있다(S14). Generally, since one web address corresponds to one web browser (a web page), a first client device and a plurality of second client devices accessing the same using the same web address are connected to the same web browser, If the browser is a web page related to the lecture contents, all the users can display the same lecture contents only by inputting the web address to the client device (S14).

제1 클라이언트 장치 및 복수의 제2 클라이언트 장치가 웹 브라우저에 접속하면, 서버는 제1 또는 제2 클라이언트 장치로부터 수신된 이벤트 제어신호를 기초로 웹 브라우저, 즉 강의 콘텐츠를 제어할 수 있으며(S15), 제어된 강의 콘텐츠는 S14 단계에서 전술한 바와 같이 모든 사용자에게 동일하게 표시되므로, 제1 및 제2 클라이언트 장치에 표시되는 강의 콘텐츠가 실시간으로 동기화될 수 있다.When the first client device and the plurality of second client devices access the web browser, the server can control the web browser, that is, the content of the lecture based on the event control signal received from the first or second client device (S15) , The content of the controlled lecture is displayed to all users equally as described above in step S14, so that the lecture contents displayed on the first and second client devices can be synchronized in real time.

도 2를 참조하면, 본 발명의 웹소켓 기반의 실시간 콘텐츠 공유 방법에 따른 구성 요소들간 강의 콘텐츠를 이용하는 일 실시예가 도시된다.Referring to FIG. 2, an embodiment of using the lecture contents among the components according to the web socket-based real-time content sharing method of the present invention is shown.

제1 클라이언트 장치(10)는 강의자일 수 있으며, 강의 진행을 위한 강의 콘텐츠를 서버(30)로 전송할 수 있다. 강의 콘텐츠는 제1 클라이언트 장치(10)의 다른 프로그램을 이용하여 사전에 제작되거나, 제1 클라이언트 장치(10)가 서버(30)에 접속한 후, 서버(30)에서 제공되는 다양한 부가기능을 이용하여 서버(30) 접속 후 생성할 수도 있다.The first client device 10 may be a lecturer and may transmit the content of the lecture for progressing the lecture to the server 30. The content of the lecture can be produced in advance using another program of the first client device 10 or after the first client device 10 is connected to the server 30 by using various additional functions provided by the server 30 And may be created after the server 30 is connected.

이를 위해, 서버는 HTML5 기술을 이용한 멀티미디어 편집 방법을 제공하고, 제1 클라이언트 장치(10) 및 제2 클라이언트 장치(20)는 HTML5를 지원하는 웹 브라우저를 미리 설치할 수 있다. HTML5는 오픈소스의 형태이며, 일반적으로 사용되는 대표 웹 브라우저의 최신버전을 설치하는 것으로 제1 클라이언트 장치(10) 및 제2 클라이언트 장치(20)는 액티브X 등의 별도의 프로그램 실행 없이도 본 실시예에 따른 웹소켓 기반의 실시간 콘텐츠 공유 방법을 수행하는 서버에서 제공하는 다양한 서비스를 이용할 수 있다.To this end, the server provides a multimedia editing method using HTML5 technology, and the first client device 10 and the second client device 20 can install a web browser supporting HTML5 in advance. HTML5 is an open-source form, and the latest version of a commonly used representative web browser is installed, so that the first client device 10 and the second client device 20 can access the web browser in the present embodiment A variety of services provided by a server performing a web socket-based real-time content sharing method according to the present invention can be used.

전술한 바와 같이, 제1 클라이언트 장치(10)는 강의 콘텐츠를 서버(30)에 전송할 수 있으며, 서버(30)는 수신된 강의 콘텐츠를 서버에 포함된 데이터베이스 또는 클라우드 스토리지에 저장하고, 저장된 강의 콘텐츠에 대응되는 웹 주소를 생성할 수 있다. 생성된 웹 주소는 서버(30)에 게시될 수 있으나, 이에 한정되는 것은 아니며 서버(30)는 복수의 강의자로부터 수신된 복수의 강의 콘텐츠 목록을 게시하고, 제2 클라이언트 장치로부터 특정 강의 콘텐츠가 선택되면, 이에 대응되는 웹 주소를 제2 클라이언트 장치(20)로 개별적으로 전송할 수도 있다.As described above, the first client device 10 may transmit the content of the lecture to the server 30, and the server 30 may store the received lecture content in a database or cloud storage included in the server, Lt; RTI ID = 0.0 > a < / RTI > The generated web address may be posted on the server 30, but the present invention is not limited thereto. The server 30 may publish a list of contents of a plurality of lectures received from a plurality of lecturers, The second client device 20 may transmit the corresponding web address to the second client device 20 separately.

도 3을 함께 참조하면, 웹 브라우저(31)에 표시되는 강의 콘텐츠(54)가 도시된다.3, the lecture contents 54 displayed on the web browser 31 are shown.

제1 클라이언트 장치(10)는 서버(30) 접속하여 강의 콘텐츠(54)를 표시할 웹 브라우저(31)를 생성하고, 생성된 웹 브라우저(31)에 미리 제작된 강의 콘텐츠, 예컨대 이미지, 문서, 영상 등을 업로드 하거나 웹 브라우저(31)에서 제공하는 다양한 기능을 이용하여 강의 콘텐츠(54)를 제작하여 저장할 수 있다.The first client device 10 accesses the server 30 to create a web browser 31 for displaying the lecture contents 54 and transmits the lecture contents prepared in advance to the generated web browser 31, The lecture contents 54 can be created and stored by uploading images or using various functions provided by the web browser 31. [

이를 위해, 본 실시예에 따른 웹소켓 기반의 실시간 콘텐츠 공유 방법이 구현된 서버(30)는 서버(30)에서 제공하는 웹 브라우저(31)의 소정 영역에 강의 콘텐츠 편집을 위한 편집 영역(53)을 별도로 구비할 수 있다.To this end, the server 30 implementing the Web socket-based real-time content sharing method according to the present embodiment includes an editing area 53 for lecture content editing in a predetermined area of the web browser 31 provided by the server 30, May be separately provided.

편집 영역(53)은 필기, 녹화, 강의 콘텐츠의 슬라이드 이동 등의 기능을 수행할 수 있는 복수의 아이콘이 배치될 수 있으며, 편집 영역(53)은 복수의 영역에 분산되어 배치될 수도 있다.The editing area 53 may include a plurality of icons capable of performing functions such as handwriting, recording, and slide movement of the content of the lecture, and the editing area 53 may be distributed in a plurality of areas.

예를 들어, 편집 영역(53)의 필기 기능 활성화(미도시) 버튼을 클릭하거나 선택하면, 필기정보 생성을 위한 포인터(52)가 생성될 수 있으며, 특히 HTML5 의 캔버스(canvas) 태그를 이용하면 웹페이지 내에서 래스터 그래픽스(raster graphics)를 기반으로 사용자가 각종 도형 및 강의 중 수반되는 필기정보를 자유로이 화면에 그리는 기능을 구현할 수 있다. 예를 들어, HTML5의 캔버스 태그로 구성된 메인 슬라이드를 이용하여 메인 슬라이드에 강의자료를 표시하고, 그 위에 필기정보를 입력할 수 있다.For example, when the user activates the handwriting function activation button (not shown) in the editing area 53, a pointer 52 for generating handwritten information can be generated. In particular, using the HTML5 canvas tag The user can freely draw the handwriting information accompanying various graphics and lectures on the screen based on the raster graphics in the web page. For example, you can display the lecture material on the main slide using the main slide composed of HTML5 canvas tags, and input the handwriting information thereon.

이와 같이 생성된 강의 콘텐츠(45)는 웹 브라우저(31)와 함께 서버(30)에 저장될 수 있으며, 서버(30)는 클라이언트 장치별, 카테고리고리별, 조회순별 등으로 정렬하여 게시할 수 있다. 또한, 생성된 각 웹 브라우저(31)에는 암호화된 고유의 웹 주소(51)를 생성하여 매칭할 수 있으며, 제2 클라이언트 장치(20)는 HTML5를 지원하는 외부 웹 브라우저의 주소창에 웹 주소(51)를 입력하면 해당 웹 브라우저(31)로 접속할 수 있다.The generated content 45 of the lecture can be stored in the server 30 together with the web browser 31. The server 30 can sort the content 45 by category, . The second client device 20 can generate a web address 51 in the address field of the external web browser supporting the HTML5, ), The user can access the corresponding web browser 31.

동일한 웹 주소(51)로 접속한 모든 클라이언트 장치는 동일한 웹 브라우저(31) 및 이에 대응되는 강의 콘텐츠(54)가 표시될 수 있으나, 이에 한정되는 것은 아니며 서버(30)는 클라이언트 장치의 제어권한 등에 따라 동일한 웹 브라우저(31) 내에서 표시되는 콘텐츠의 일부를 제한할 수도 있다. 구체적인 내용은 후술하기로 한다.All the client devices connected to the same web address 51 may display the same web browser 31 and corresponding lecture contents 54 but the present invention is not limited thereto and the server 30 may control the client device Accordingly, a part of the content displayed in the same web browser 31 may be limited. Specific details will be described later.

도 4를 참조하면, 도 1의 이벤트 제어신호를 이용하여 웹 브라우저를 제어하는 일 예가 도시된다.Referring to FIG. 4, an example of controlling a web browser using the event control signal of FIG. 1 is shown.

이벤트 제어신호는 강의 콘텐츠가 표시된 웹 브라우저(31)를 이용하는 강의 진행 과정에서 발생되는 다양한 이벤트에 대응되는 신호이며, 예를 들어 이벤트는 강의 콘텐츠의 필기 이벤트, 화면전환 이벤트, 오퍼레이팅 이벤트, 포인터위치 이벤트, 질문 및 응답 이벤트, 통계 이벤트, 녹화 이벤트 등을 포함할 수 있으나, 이에 한정되는 것은 아니며 강의 과정에서 발생되는 다양한 이벤트를 더 포함할 수 있다.The event control signal is a signal corresponding to various events that occur during the progress of the lecture using the web browser 31 on which the content of the lecture is displayed. For example, the event may be a handwriting event of a lecture content, a screen switching event, , A question and answer event, a statistical event, a recording event, and the like. However, the present invention is not limited thereto, and may include various events generated during the lecture process.

필기 이벤트는 강의 콘텐츠상에 생성되는 강의자인 제1 클라이언트 장치(10) 또는 수강생인 복수의 제2 클라이언트 장치(20)에 의해 생성되는 입력정보일 수 있으며, 예를 들어 강의 자료 또는 강의 중 강의자료에 강의자가 부연 설명을 위해 임의로 작성하는 텍스트, 강조표시, 밑줄 등의 입력정보일 수 있다. The handwritten event may be input information generated by the first client device 10, which is a lecturer created on the lecture contents, or by a plurality of second client devices 20, which are learners. For example, lecture data or lecture data Input information such as text, emphasis, underline, etc., which the lecturer may arbitrarily write in order to explain the lecture.

구체적으로, 이러한 필기 이벤트는 전술한 HTML5를 지원하는 웹 브라우저의 캔버스 태그를 이용하여 생성할 수 있으며, 캔버스 태그를 이용하여 생성되는 필기 이벤트는 소정 시간 간격으로 측정되는 좌표정보의 집합일 수 있다. 각 좌표정보는 생성시간, 색상, 점의 굵기 등과 같은 정보를 더 포함할 수 있으며, 예를 들어 강의자가 강의 녹화 과정에서 강의 콘텐츠에 임의의 필기 이벤트를 생성하는 경우 해당 필기 정보를 녹화하기 위해 웹 브라우저의 화면을 모두 캡쳐해서 저장하는 대신 소정 시간 간격으로 측정되는 필기 이벤트의 좌표정보를 저장할 수 있다. 이후, 녹화된 강의 콘텐츠 재생 시에 저장된 좌표정보를 시간차를 두고 생성하면 강의 콘텐츠 상에 필기 이벤트가 재현될 수 있다.Specifically, such a handwriting event can be generated using a canvas tag of a web browser supporting HTML5, and a handwriting event generated using a canvas tag can be a set of coordinate information measured at predetermined time intervals. Each coordinate information may further include information such as creation time, color, thickness of a point, etc. For example, if a lecturer generates an arbitrary handwriting event in a lecture content during a lecture recording process, The coordinate information of the handwriting event measured at predetermined time intervals can be stored instead of capturing and storing all the screens of the browser. Thereafter, when the coordinate information stored at the time of reproducing the content of the recorded steel is generated with a time difference, the handwritten event can be reproduced on the content of the lecture.

종래의 강의 콘텐츠 제작 과정은 강의자의 강의 자료 및 강의 자료에 생성되는 필기정보가 소정 시간 간격으로 캡쳐된 동영상 파일을 생성하고, 해당 동영상 파일의 인코딩 과정을 거쳐 서버로 전송된다. 이러한 동영상 강의 콘텐츠는 수강생이 동영상을 다운받거나 스트리밍할 경우 매우 큰 용량의 동영상 파일을 다운로드 받아야 했으나, 본 실시예에 따른 필기 이벤트는 필기 정보를 복수의 좌표정보로 샘플링하여 저장할 수 있으므로 저장된 녹화 파일의 용량을 절감시킬 수 있다.In the conventional lecture contents production process, the lecture data of the lecturer and the handwriting information generated in the lecture data are generated at a predetermined time interval, and the moving picture file is transmitted to the server through the encoding process of the corresponding moving picture file. In the case of the video lecture contents, the lecturer has to download a very large capacity video file when downloading or streaming the video. However, since the handwritten event according to the present embodiment can store the handwritten information as a plurality of coordinate information, The capacity can be reduced.

화면전환 이벤트는 강의 자료의 페이지, 슬라이드 전환 시 발생하는 이벤트일 수 있으며, 포인터위치 이벤트는 마우스의 포인터정보, 터치패드, 터치스크린으로부터 감지되는 입력정보 등일 수 있으며, 클라이언트 장치로부터 생성된 소정 위치에 대한 좌표정보를 더 포함할 수 있다. 또한, 오퍼레이팅 이벤트는 강의 콘텐츠 제작자, 즉 강의자로부터 입력되는 입력명령에 대응하여 발생되는 이벤트로, 예를 들어 인용자료 호출시 발생하는 이미지 또는 이미지의 URL 정보이거나 강의 콘텐츠의 녹화 시작 및 종료, 편집에 대응되는 이벤트를 더 포괄할 수 있다.The screen change event may be an event occurring when the slide of the lecture material is changed. The pointer position event may be pointer information of a mouse, input information detected from a touch pad, a touch screen, or the like. And may further include coordinate information on the coordinate system. The operating event is an event generated in response to an input command input from a lecture content creator, that is, a lecturer. For example, the operating event is URL information of an image or an image generated at the time of calling a quoted material, The corresponding event can be further included.

예를 들어, 제1 클라이언트 장치(10)가 필기와 편집, 슬라이드 제어 등과 같은 행동을 수행하면, 이는 각각의 이벤트 종류, 발생시간과 이벤트에 대한 행동을 처리하기 위한 이벤트 제어신호로 변환되어 웹소켓 서버(40)로 전송될 수 있다.For example, when the first client device 10 performs an action such as handwriting, editing, slide control, etc., it is converted into an event control signal for processing each event type, occurrence time, And transmitted to the server 40.

일반적인 웹 서버는 단방향 통신이다. 즉, 브라우저에서 요청을 해야만 그 결과를 서버에서 웹 브라우저로 응답을 하게 되는 방식이며, 사용자가 웹 브라우저를 조작하지 않으면 서버는 어떤 일도 하지 않고, 서버에서 발생된 이벤트를 웹 브라우저로 전달을 할 수가 없다.A typical web server is a one-way communication. In other words, when a request is made by a browser, the result is returned from the server to the web browser. If the user does not operate the web browser, the server does not perform any work and can transmit the event generated by the server to the web browser none.

이를 개선하기 위해 웹 브라우저와 서버가 전용 소켓을 만들어서 상호간 이벤트를 주고 받을 수 있게, 서버에서 먼저 이벤트를 브라우저에 전달할 수 있게 만들어진 프로그램을 통칭하여 웹 소켓이라고 하며, 프로그램은 프로그램 상호간 데이터(패킷)을 주고 받기 위해서는 전용 통로인 소켓을 생성할 수 있다. 물리적인 서버 내부에서 설치된 프로그램끼리 소켓을 생성하여 데이터 통신과정을 수행 할 수도 있고, 네트워크로 연결된 외부의 프로그램과 소켓을 통해 데이터를 주고 받을 수도 있다.In order to improve this, a web socket is called a web socket, in which a web browser and a server create a dedicated socket and exchange events with each other so that the server can transmit events to the browser first. The program is called a web socket In order to send and receive, a socket, which is a dedicated path, can be created. It is possible to perform a data communication process by creating a socket between programs installed in a physical server, or to send and receive data through an external program and a socket connected to the network.

웹 소켓을 구현하기 위해서는 웹 서버 프로그램과 마찬가지로 웹 소켓을 구현하는 프로그램이 있으며, java, node.js 등의 프로그래밍 언어를 통해 웹 소켓을 구현할 수 있다. 이렇게 웹 소켓을 생성하여 구현하는 서버를 웹소켓 서버(40)라 한다.In order to implement a Web socket, there is a program that implements a web socket like a web server program, and a web socket can be implemented through a programming language such as java or node.js. The server that creates and implements the web socket is called the web socket server 40.

웹소켓 서버(40)는 서버(30)와 연동되어 이벤트 제어신호를 처리하기 위한 서버일 수 있으며, 구체적으로 HTML5의 웹소켓 기능을 수행하기 위한 독립된 서버일 수 있으나, 이에 한정되는 것은 아니며 서버(30)가 웹소켓 서버(40)를 포함하거나 웹소켓 서버(40)의 기능을 대신 수행할 수도 있다. 즉, 서버(30)와 웹소켓 서버(40)는 하나의 장치에 프로그램화되어 구현되거나, 물리적으로 이격된 독립된 장치에 별도의 서버(30)와 웹소켓 서버(40)를 구현하여 통신할 수도 있다.The web socket server 40 may be a server for interfacing with the server 30 to process an event control signal and may be an independent server for performing a web socket function of HTML5, 30 may include the web socket server 40 or may perform the functions of the web socket server 40 instead. That is, the server 30 and the web socket server 40 may be implemented by being programmed in one device, or may implement a separate server 30 and a web socket server 40 in a physically separated independent device have.

즉, 제1 클라이언트 장치(10)로부터 발생되는 이벤트 제어신호를 서버(30)와 연동되는 웹소켓 서버(40)에서 수신한 후 이벤트 제어신호를 분석하고, 분석된 이벤트 제어신호를 서버(30)로 전송하면 서버(30)는 수신된 이벤트 제어신호를 기초로 이벤트 정보를 생성하여 강의 콘텐츠(31)를 제어할 수 있다. 제어된 강의 콘텐츠(31)는 동일한 웹 주소로 접속한 모든 클라이언트 장치에 동일하게 표시되어 제1 클라이언트 장치(10)의 화면과 제2 클라이언트 장치(20)의 화면이 실시간으로 동기화될 수 있다.That is, after receiving the event control signal generated from the first client device 10 at the web socket server 40 interlocked with the server 30, the event server 30 analyzes the event control signal and transmits the analyzed event control signal to the server 30, The server 30 can generate event information based on the received event control signal and control the lecture contents 31. [ The controlled lecture contents 31 are equally displayed on all the client devices connected to the same web address so that the screen of the first client device 10 and the screen of the second client device 20 can be synchronized in real time.

이를 위해, 웹소켓 서버(40) 또는 서버(30)는 동일한 웹 브라우저로 접속한 제1 클라이언트 장치(10)와 제2 클라이언트 장치(20)에 동일한 식별자를 부여하고, 수신된 이벤트 제어 신호를 동일한 식별자가 부여된 클라이언트 장치와 공유할 수 있다.To this end, the web socket server 40 or the server 30 assigns the same identifier to the first client device 10 and the second client device 20 connected by the same web browser, and transmits the received event control signal to the same It can be shared with the client device to which the identifier is assigned.

다시 말해, 다른 웹 주소로 접속된 다른 클라이언트 장치와 서로 다른 식별자를 부여하여, 웹소켓 서버(40)로 전송되는 복수의 이벤트 제어신호를 식별자를 기초로 분류하고, 각 식별자에 대응되는 웹 브라우저 별로 서로 다른 이벤트 제어신호를 전송할 수 있다.In other words, it is possible to assign different identifiers to different client devices connected to different web addresses, classify a plurality of event control signals transmitted to the web socket server 40 on the basis of identifiers, It is possible to transmit different event control signals.

몇몇 다른 실시예에서, 본 발명에 따른 웹소켓 기반의 실시간 콘텐츠 공유 방법은 접속된 클라이언트 장치에 서로 다른 제어권한을 부여하고, 부여된 제어권한에 따라 동일한 웹 브라우저에 접속하더라도 서로 다른 화면이 클라이언트 장치에 표시될 수 있다.In some other embodiments, the web socket-based real-time content sharing method according to the present invention grants the client apparatuses with different control rights and accesses the same web browser according to the granted control authority, Lt; / RTI >

구체적으로, 제1 클라이언트 장치(10)가 강의자이고, 제2 클라이언트 장치(20)가 수강생인 경우, 서버(30)는 제1 클라이언트 장치(10)와 제2 클라이언트 장치(20)에 차등한 제어권한을 부여할 수 있으며, 제어권한에 따라 이벤트 제어신호를 선택적으로 공유할 수 있다. 예를 들어, 웹소켓 서버(40)는 강의자인 제1 클라이언트 장치(10)로부터 수신되는 슬라이드 제어 이벤트인 제1 이벤트 제어신호와 수강생인 제2 클라이언트 장치(20)로부터 수신되는 슬라이드 제어 이벤트인 제2 이벤트 제어신호를 수신할 수 있다. 서버(30) 또는 웹소켓 서버(40)에서 제1 및 제2 이벤트 제어신호를 수신하면, 제어권한에 따라 제1 이벤트 제어신호를 기초로 생성되는 강의자 필기정보는 동일한 웹 브라우저에 접속한 모든 클라이언트 장치에 표시할 수 있으며, 제2 이벤트 제어신호를 기초로 생성되는 수강생 개인의 필기정보는 제2 이벤트 제어신호를 생성한 클라이언트 장치에만 표시되거나 제2 클라이언트 장치, 즉 수강생의 클라이언트 장치에만 선택적으로 공유될 수 있다.Specifically, when the first client device 10 is a lecture and the second client device 20 is a learner, the server 30 controls the first client device 10 and the second client device 20 in a differential manner And the event control signal can be selectively shared according to the control authority. For example, the web socket server 40 transmits a first event control signal, which is a slide control event received from the first client device 10 as a lecturer, and a slide control event, which is a slide control event received from the second client device 20, 2 event control signal. When the server 30 or the web socket server 40 receives the first and second event control signals, the lecture note information generated based on the first event control signal according to the control authority is transmitted to all the clients And the lecturer's personal handwriting information generated based on the second event control signal may be displayed only on the client device that generated the second event control signal or selectively displayed on the second client device, .

도 5 내지 도 6을 함께 참조한 또 다른 실시예에서, 도 5의 (a)에 도시된 바와 같이 강의자인 제1 클라이언트 장치(10)로부터 퀴즈 이벤트인 제1 이벤트 제어신호가 생성될 수 있으며, 웹소켓 서버(40) 및 서버(30)가 제1 이벤트 제어신호를 처리하여 퀴즈 이벤트를 웹 브라우저에 반영하게 된다.5 to 6, a first event control signal, which is a quiz event, may be generated from the first client device 10, which is a lecturer, as shown in FIG. 5 (a) The socket server 40 and the server 30 process the first event control signal to reflect the quiz event to the web browser.

이때, 서버(30)에 접속한 제1 클라이언트 장치(10)의 제어권한과 제2 클라이언트 장치의 제어권한(20)이 서로 상이하면, 서버(30)는 제어권한에 대응하여 서로 다른 이벤트정보를 생성할 수 있다. 생성된 이벤트정보는 모두 웹 브라우저에 반영하되, 제어권한에 따라 표시되는 이벤트정보를 제한하여 제1 클라이언트 장치(10)의 제1 화면과 제2 클라이언트 장치(20)의 제2 화면에 표시되는 웹 브라우저 상의 강의 콘텐츠(31)는 서로 상이할 수 있다.At this time, when the control authority of the first client device 10 connected to the server 30 and the control authority 20 of the second client device are different from each other, the server 30 acquires different event information Can be generated. The generated event information is all reflected in the web browser, but the event information displayed according to the control right is limited to restrict the event information displayed on the first screen of the first client device 10 and the web screen displayed on the second screen of the second client device 20. [ The lecture contents 31 on the browser may be different from each other.

즉, 도 5의 (a)에 도시된 바와 같이, 제1 클라이언트 장치(10)에는 질문 이벤트만(55) 표시될 수 있으나, 도 5의 (b)에 도시된 바와 같이, 제2 클라이언트 장치(20)의 화면에는 질문 이벤트(55) 및 응답 아이콘(56)이 웹 브라우저(31) 상에 더 표시될 수 있다. 구체적으로, 서버(30)는 수신된 제1 이벤트 제어 신호에 따라 질문 이벤트(55) 및 응답 아이콘(56)을 생성하여 웹 브라우저(31)에 반영하되, 동일한 웹 브라우저(31)에 접속한 복수의 클라이언트 장치에 부여된 서로 다른 제어권한을 조회하여, 제어 권한에 따라 이벤트 정보를 선택적으로 표시하게 할 수 있다.5 (a), only the question event 55 may be displayed in the first client device 10, but as shown in (b) of FIG. 5, the second client device 10 The question event 55 and the response icon 56 may be further displayed on the web browser 31. [ Specifically, the server 30 generates a question event 55 and a response icon 56 according to the received first event control signal and reflects the question event 55 and the response icon 56 to the web browser 31, It is possible to inquire the different control authorities given to the client device of the client device and selectively display the event information according to the control authority.

한편, 복수의 제2 클라이언트 장치(20)는 생성된 질문이벤트에 대한 응답이벤트인 제2 이벤트 제어신호를 생성하여 웹소켓 서버(40)로 전송하고, 서버(30)가 다시 제2 이벤트 제어신호를 수신하여 응답 이벤트를 웹 브라우저(31)에 표시할 수 있다. 본 실시예에서는 도 5의(b)에 생성된 응답 아이콘(56)을 클릭하거나 터치하는 방식으로 제2 이벤트 제어신호를 생성하였으나, 이에 한정되는 것은 아니며, 응답 아이콘(56) 대신 복수의 선택문항 또는 텍스트 입력을 위한 응답영역이 응답 아이콘(56)을 대신하거나 응답 아이콘(56)과 함께 더 표시될 수 있으며, 선택문항 중 특정 문항을 선택하거나 질문내용에 부합하는 텍스트를 입력함으로써 제2 이벤트 제어신호가 생성될 수도 있다.The second client device 20 generates a second event control signal, which is a response event for the generated question event, and transmits the second event control signal to the web socket server 40. When the server 30 receives the second event control signal, And display the response event on the web browser 31. [ In this embodiment, the second event control signal is generated by clicking or touching the response icon 56 generated in (b) of FIG. 5, but the present invention is not limited thereto. Instead of the response icon 56, Or a response area for text entry may be displayed in place of the response icon 56 or with a response icon 56 and by selecting a particular item from the selection items or entering text that conforms to the content of the question, A signal may be generated.

도 6을 함께 참조하면, 복수의 제2 클라이언트 장치(20)로부터 수신된 복수의 제2 이벤트 제어신호를 기초로 응답 이벤트(57)를 생성할 수 있으며, 제1 클라이언트 장치는 특정한 제2 클라이언트 장치에 응답권한을 부여하여 응답권한이 부여된 제2 클라이언트 장치로부터 응답을 수신할 수 있다.6, a response event 57 may be generated based on a plurality of second event control signals received from a plurality of second client devices 20, and the first client device may generate a response event 57, And can receive a response from the second client device to which the response authority is granted.

이때, 응답 이벤트(57)는 웹소켓 서버(40)가 복수의 제2 클라이언트 장치로부터 수신된 복수의 제2 이벤트 제어신호의 수신시점을 기초로 정렬될 수 있으며, 응답권한은 응답 이벤트(57)에 포함된 정렬 순서대로 자동으로 부여될 수 있다. 예를 들어, 질문 A에 대하여 복수의 수강생이 응답 아이콘(56)의 일종인 부저 아이콘을 클릭하면, 클라이언트 장치의 화면에는 부저 아이콘의 클릭을 가장 먼저한 수강생을 기준으로 차례대로 정렬될 수 있으며, 가장 우선순위에 위치한 수강생부터 차례대로 응답권한이 부여될 수 있다.At this time, the response event 57 can be sorted on the basis of the reception timing of the plurality of second event control signals received from the plurality of second client devices by the web socket server 40, In a sort order included in < / RTI > For example, when a plurality of learners click on a buzzer icon, which is a sort of the response icon 56, for the question A, the client device can be sorted in order on the basis of the student who first clicks the buzzer icon on the screen of the client device, Responsibility can be given in turn from the student in the highest priority order.

몇몇 다른 실시예에서, 응답권한이 자동으로 부여되는 대신 제1 클라이언트 장치로부터 임으로 선택된 제2 클라이언트 장치에 응답권한이 부여될 수도 있다. 즉, 제1 클라이언트 장치는 웹 브라우저에 표시된 복수의 응답 희망자의 목록을 기초로 발표자를 선정할 수 있으며, 제1 클라이언트 장치에 의해 선택된 제2 클라이언트 장치의 식별자를 웹소켓 서버에서 수신하고, 수신된 식별자를 기초로 선택된 제2 클라이언트 장치에 응답권한을 부여할 수 있다.In some other embodiments, the response authority may be granted to the second client device selected as being from the first client device instead of being automatically granted the response authority. That is, the first client device can select a presenter based on a list of a plurality of respondents indicated in the web browser, receives an identifier of the second client device selected by the first client device at the web socket server, And may grant the response authority to the second client device selected based on the identifier.

이때, 응답권한이 부여된 특정한 제2 클라이언트 장치에는 응답을 위한 별도의 이벤트가 더 표시될 수 있으며, 응답권한이 부여되지 않은 나머지 제2 클라이언트 장치의 화면에는 별도의 이벤트가 표시되지 않을 수 있다.At this time, a separate event for responding may be displayed in the specific second client device to which the response authority is granted, and a separate event may not be displayed in the screen of the second client device to which the response authority is not granted.

즉, 동일한 웹 브라우저에 접속한 모든 클라이언트 장치는 항상 동일한 강의 콘텐츠가 표시되지는 않으며, 제어권한 또는 응답권한에 따라 공유되는 이벤트 정보의 종류가 가변될 수도 있다.That is, the contents of the same lecture are not always displayed in all the client devices connected to the same web browser, and the kinds of event information shared according to the control right or the response authority may vary.

한편, 본 발명의 일 실시예에 따르면, 컴퓨터 판독가능 저장매체에 컴퓨터가 판독 가능한 코드를 저장하여 구현하는 것이 가능하다. 컴퓨터 판독가능 저장매체는 컴퓨터 시스템에 의하여 판독될 수 있는 데이터가 저장되는 모든 종류의 저장장치를 포함한다.On the other hand, according to an embodiment of the present invention, it is possible to store and implement computer-readable codes in a computer-readable storage medium. Computer-readable storage media includes any type of storage device in which data that can be read by a computer system is stored.

컴퓨터가 판독 가능한 코드는, 컴퓨터 판독가능 저장매체로부터 프로세서에 의하여 독출되어 실행될 때, 본 발명의 일 실시예에 따른 웹소켓 기반의 실시간 콘텐츠 공유 방법을 구현하는 단계들을 수행하도록 구성된다. 컴퓨터가 판독 가능한 코드는 다양한 프로그래밍 언어들로 구현될 수 있다. 그리고 본 발명의 실시예들을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 통상의 기술자들에 의하여 용이하게 프로그래밍될 수 있다.The computer readable code is configured to perform the steps of implementing a web socket based real time content sharing method according to an embodiment of the present invention when read and executed by a processor from a computer readable storage medium. Computer readable code can be implemented in a variety of programming languages. And functional programs, codes, and code segments for implementing embodiments of the present invention may be readily programmed by those skilled in the art to which the present invention pertains.

컴퓨터 판독가능 저장매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한, 컴퓨터 판독가능저장매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행되는 것도 가능하다.Examples of computer-readable storage media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like. In addition, the computer-readable storage medium may be distributed over a networked computer system so that computer readable code is stored and executed in a distributed fashion.

이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, You will understand. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive.

10: 제1 클라이언트 장치
20: 제2 클라이언트 장치
30: 서버
31: 웹 브라우저
40: 웹소켓 서버
10: first client device
20: second client device
30: Server
31: Web browser
40: Web Socket Server

Claims (10)

서버에서 제어하는 웹소켓 기반의 실시간 콘텐츠 공유 방법으로서,
제1 클라이언트 장치로부터 강의 콘텐츠를 수신하는 단계;
상기 강의 콘텐츠를 수신하는 것에 응답하여, 상기 강의 콘텐츠가 표시되는 웹 브라우저 및 상기 웹 브라우저와 연동되는 암호화된 형태의 웹 주소를 생성하는 단계;
상기 제1 클라이언트 장치 및 상기 강의 콘텐츠를 요청하는 제2 클라이언트 장치로 상기 암호화된 형태의 웹 주소를 전송하는 단계;
상기 암호화된 형태의 웹 주소를 상기 제1 클라이언트 장치 및 상기 제2 클라이언트 장치로부터 수신하는 경우, 상기 웹 브라우저에 대한 상기 제1 클라이언트 장치 및 상기 제2 클라이언트 장치의 접속을 허용하는 단계; 및
강의 과정에서 상기 제1 클라이언트 장치 및 상기 제2 클라이언트 장치 에서 발생되는 각각의 이벤트 제어신호를 기초로 상기 강의 콘텐츠를 제어하는 단계를 포함하고,
상기 강의 콘텐츠를 제어하는 단계는,
상기 제1 클라이언트 장치 및 상기 제2 클라이언트 장치 각각에 대하여 부여된 제어 권한을 조회하는 단계;
상기 제1 클라이언트 장치의 제어 권한과 상기 제2 클라이언트 장치의 제어 권한이 상이한 경우, 상기 각각의 이벤트 제어신호를 기초로 상기 각 제어 권한에 대응되는 서로 다른 이벤트 정보를 생성하는 단계; 및
상기 서로 다른 이벤트 정보를 기반으로 제1 클라이언트 장치의 화면과 상기 제2 클라이언트 장치의 화면에서 출력되는 강의 콘텐츠가 서로 상이하도록 상기 강의 컨텐츠를 제어하는 단계를 포함하는,
웹소켓 기반의 실시간 콘텐츠 공유 방법.
A web-socket-based real-time content sharing method controlled by a server,
Receiving lecture content from a first client device;
Generating, in response to receiving the content of the lecture, a web address in which the content of the lecture is displayed and a web address in an encrypted form associated with the web browser;
Transmitting the web address of the encrypted form to the first client device and a second client device requesting the content of the lecture;
Allowing connection of the first client device and the second client device to the web browser when receiving the web address of the encrypted form from the first client device and the second client device; And
And controlling the content of the lecture based on each event control signal generated in the first client device and the second client device during lecturing,
Wherein controlling the content of the lecture comprises:
Querying a control right granted to each of the first client device and the second client device;
Generating different event information corresponding to each control right based on the respective event control signals when the control right of the first client device and the control right of the second client device are different; And
And controlling the lecture contents such that the lecture contents output from the screen of the first client device and the lecture contents output from the screen of the second client device are different from each other based on the different event information,
A web socket based real - time content sharing method.
제1항에 있어서,
상기 웹 주소는 암호화된 URL정보를 포함하고,
상기 웹 브라우저에 대한 상기 제1 클라이언트 장치 및 상기 제2 클라이언트 장치의 접속을 허용하는 단계에서,
상기 제1 클라이언트 장치 및 상기 제2 클라이언트 장치는 외부 웹 브라우저에 상기 암호화된 URL정보를 입력하여 상기 웹 브라우저로 접속하는, 웹소켓 기반의 실시간 콘텐츠 공유 방법.
The method according to claim 1,
Wherein the web address includes encrypted URL information,
In the step of allowing connection of the first client device and the second client device to the web browser,
Wherein the first client device and the second client device are connected to the web browser by inputting the encrypted URL information to an external web browser.
제1항에 있어서,
상기 각각의 이벤트 제어신호는 상기 서버와 연동되는 웹소켓 서버로 전송되며,
상기 강의 콘텐츠를 제어하는 단계에서,
상기 웹소켓 서버는,
상기 제1 클라이언트 장치의 화면상에 표시되는 상기 웹브라우저 상에서 감지되는 상기 이벤트 제어신호를 수신하여 상기 서버로 전송하고,
상기 서버는,
수신된 상기 이벤트 제어신호를 기초로 상기 강의 콘텐츠에 이벤트 정보를 생성하는, 웹소켓 기반의 실시간 콘텐츠 공유 방법.
The method according to claim 1,
Wherein each of the event control signals is transmitted to a web socket server operatively associated with the server,
In the step of controlling the content of the lecture,
The web socket server comprises:
Receiving the event control signal detected on the web browser displayed on the screen of the first client device and transmitting the event control signal to the server,
The server comprises:
And generates event information on the lecture contents based on the received event control signal.
제3항에 있어서,
상기 이벤트 정보가 포함된 강의 콘텐츠를 상기 제1 클라이언트 장치의 화면 및 상기 제1 클라이언트 장치와 동일한 웹 브라우저에 접속한 상기 제2 클라이언트 장치의 화면상에 표시함으로써 상기 강의 콘텐츠를 실시간으로 동기화하는 단계를 더 포함하는, 웹소켓 기반의 실시간 콘텐츠 공유 방법.
The method of claim 3,
And displaying the lecture contents including the event information on a screen of the first client device and a screen of the second client device connected to the same web browser as the first client device to synchronize the lecture contents in real time A method of sharing a web socket-based real-time content, further comprising:
제3항에 있어서,
상기 웹소켓 서버는,
동일한 상기 웹 브라우저로 접속한 상기 제1 클라이언트 장치와 상기 제2 클라이언트 장치에 동일한 식별자를 부여하고,
수신된 상기 이벤트 제어 신호를 상기 동일한 식별자가 부여된 복수의 클라이언트 장치와 공유하는, 웹소켓 기반의 실시간 콘텐츠 공유 방법.
The method of claim 3,
The web socket server comprises:
The same identifier is assigned to the first client device and the second client device connected to the same web browser,
And sharing the received event control signal with a plurality of client devices to which the same identifier is assigned.
제3항에 있어서,
상기 웹소켓 서버는,
강의자인 제1 클라이언트 장치와 수강자인 제2 클라이언트 장치에 서로 다른 제어권한을 부여하고,
상기 제어권한을 기초로 상기 이벤트 제어 신호를 선택적으로 공유하는, 웹소켓 기반의 실시간 콘텐츠 공유 방법.
The method of claim 3,
The web socket server comprises:
Assigning different control rights to the first client device as the lecturer and the second client device as the lecturer,
And selectively sharing the event control signal based on the control authority.
제4항에 있어서,
상기 이벤트 제어신호는 질문이벤트 및 응답이벤트를 포함하고,
상기 강의 콘텐츠를 실시간으로 동기화하는 단계는,
상기 제1 클라이언트 장치로부터 수신된 제1 이벤트 제어신호를 기초로 상기 질문이벤트를 생성하여 상기 강의 콘텐츠에 반영하는 단계; 및
상기 제2 클라이언트 장치로부터 수신되는 제2 이벤트 제어신호를 기초로 상기 응답이벤트를 생성하여 상기 강의 콘텐츠에 반영하는 단계를 포함하는, 웹소켓 기반의 실시간 콘텐츠 공유 방법.
5. The method of claim 4,
Wherein the event control signal includes a question event and a response event,
The step of synchronizing the contents of the lecture in real-
Generating the question event based on the first event control signal received from the first client device and reflecting the generated question event to the lecture contents; And
And generating the response event based on a second event control signal received from the second client device and reflecting the response event on the lecture contents.
제7항에 있어서,
상기 제2 클라이언트 장치는 복수의 클라이언트 장치를 포함하고,
상기 서버는, 상기 복수의 클라이언트 장치로부터 수신되는 복수의 상기 제2 이벤트 제어신호의 수신시점을 기초로 응답권한을 부여하는, 웹소켓 기반의 실시간 콘텐츠 공유 방법.
8. The method of claim 7,
Wherein the second client device comprises a plurality of client devices,
Wherein the server grants a response authority based on a reception timing of a plurality of the second event control signals received from the plurality of client devices.
제8항에 있어서,
상기 질문이벤트를 생성하여 상기 강의 콘텐츠에 반영하는 단계는,
응답 아이콘을 생성하여 상기 복수의 클라이언트 장치의 화면에 표시되는 강의 콘텐츠에 상기 응답 아이콘을 더 생성하여 표시하는 단계를 포함하고,
상기 수신시점은 상기 응답 아이콘의 선택시점을 기준으로 결정되는, 웹소켓 기반의 실시간 콘텐츠 공유 방법.
9. The method of claim 8,
Wherein the step of generating the question event and reflecting the generated question event to the lecture content comprises:
And generating and displaying a response icon in the content of the lecture displayed on the screen of the plurality of client devices,
Wherein the reception time is determined based on a selection time point of the response icon.
제1항 내지 제9항 중 어느 한 항의 웹소켓 기반의 실시간 콘텐츠 공유 방법을 수행하기 위한 프로그램이 저장된 컴퓨터 판독가능한 저장매체. 12. A computer-readable storage medium having stored thereon a program for performing a web-socket-based real-time content sharing method according to any one of claims 1 to 9.
KR1020140172864A 2014-12-04 2014-12-04 Method for real-time sharing online contents based on websocket server and a computer-readable storage medium having program to perform the same KR101717945B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140172864A KR101717945B1 (en) 2014-12-04 2014-12-04 Method for real-time sharing online contents based on websocket server and a computer-readable storage medium having program to perform the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140172864A KR101717945B1 (en) 2014-12-04 2014-12-04 Method for real-time sharing online contents based on websocket server and a computer-readable storage medium having program to perform the same

Publications (2)

Publication Number Publication Date
KR20160067449A KR20160067449A (en) 2016-06-14
KR101717945B1 true KR101717945B1 (en) 2017-03-20

Family

ID=56191694

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140172864A KR101717945B1 (en) 2014-12-04 2014-12-04 Method for real-time sharing online contents based on websocket server and a computer-readable storage medium having program to perform the same

Country Status (1)

Country Link
KR (1) KR101717945B1 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180095155A (en) 2017-02-16 2018-08-27 고려대학교 산학협력단 Origin management system for websocket server and method thereof
KR102081451B1 (en) * 2019-02-15 2020-02-25 김성용 Content sharing method using access point related to local area network, access point apparatus using said method, content upload method by client interworking with said access point, and content reception method by said client, and client apparatus said method
CN109977311A (en) * 2019-03-26 2019-07-05 北京博瑞彤芸文化传播股份有限公司 A kind of intelligent analysis method of sharing information
KR102568346B1 (en) * 2020-02-19 2023-08-18 (주)티아이스퀘어 System for providing messaging services
KR102427718B1 (en) * 2021-01-11 2022-08-01 주식회사 트랜스코스모스코리아 A customer consultation system and method through two-way screen sharing
CN113676556A (en) * 2021-09-29 2021-11-19 山东云缦智能科技有限公司 Screen control system and method based on WebSocket protocol
KR102484344B1 (en) * 2022-03-23 2023-01-04 주식회사 아이스크림미디어 Interactive communication type online class tool service provision system
KR102502209B1 (en) * 2022-03-23 2023-02-23 주식회사 아이스크림미디어 Online class tool service providing system with educational web guidance function and online quiz communication function
KR102484345B1 (en) * 2022-03-23 2023-01-04 주식회사 아이스크림미디어 Online class tool service providing system equipped with educational content transmission function

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080078750A (en) * 2006-12-30 2008-08-28 (주)인사이드알에프 System and method for online two-way lecture
KR20090002546A (en) 2007-07-02 2009-01-09 변세정 Method for making the lecture data on the internet and online-offline integrating system thereof
KR20110010163A (en) 2009-07-24 2011-02-01 김상우 Lecturing method of on-line learning system
KR20120113551A (en) * 2011-04-05 2012-10-15 주식회사 삼성경제연구소 Method and system for real-time lecturing system
KR20140037326A (en) * 2012-09-17 2014-03-27 가천대학교 산학협력단 Realtime ecg monitoring system and method for personal health records
KR20140122415A (en) * 2013-04-10 2014-10-20 주식회사 에듀엠월드 Method for generating learning contents and learning management system and method using the same

Also Published As

Publication number Publication date
KR20160067449A (en) 2016-06-14

Similar Documents

Publication Publication Date Title
KR101717945B1 (en) Method for real-time sharing online contents based on websocket server and a computer-readable storage medium having program to perform the same
US10805365B2 (en) System and method for tracking events and providing feedback in a virtual conference
US8819726B2 (en) Methods, apparatus, and systems for presenting television programming and related information
US11880630B2 (en) Collaborative remote interactive platform
US11172006B1 (en) Customizable remote interactive platform
US20200301647A1 (en) Information processing apparatus, information processing method, and information processing system
EP3053165A1 (en) Systems and methods for interactively presenting a presentation to viewers
KR20200057562A (en) System and method for multi-way interactive lecture
US11349889B1 (en) Collaborative remote interactive platform
US20160378728A1 (en) Systems and methods for automatically generating content menus for webcasting events
CN109788223A (en) Data processing method and relevant device based on intelligent interaction device
US11431874B2 (en) Information processing system to securely upload image data
KR101928524B1 (en) Apparatus and method for providing lecture
Debaty et al. Integrating the physical world with the web to enable context-enhanced mobile services
US20130198791A1 (en) E-book-based on-line broadcasting study system and method
Husmann Investigating Tool Support for Cross-Device Development
US20120301863A1 (en) Interactive Learning Network
Park et al. Development of a Second Screen Service for Personalized
GB2495986A (en) Interactive display systems
CA2775101A1 (en) Multimedia content publishing system and method
Bergesio et al. PERSEO: A system to Personalize smart Environments through Smartphones, sEnsors and media Objects

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right