WO2022250642A1 - Способ и система для совместного просмотра веб-страницы - Google Patents

Способ и система для совместного просмотра веб-страницы Download PDF

Info

Publication number
WO2022250642A1
WO2022250642A1 PCT/UA2021/000055 UA2021000055W WO2022250642A1 WO 2022250642 A1 WO2022250642 A1 WO 2022250642A1 UA 2021000055 W UA2021000055 W UA 2021000055W WO 2022250642 A1 WO2022250642 A1 WO 2022250642A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
room
sharing
browsing
module
Prior art date
Application number
PCT/UA2021/000055
Other languages
English (en)
French (fr)
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 Игорь Олегович КОРЯКА
Publication of WO2022250642A1 publication Critical patent/WO2022250642A1/ru

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2358/00Arrangements for display data security
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/022Centralised management of display operation, e.g. in a server instead of locally
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/027Arrangements and methods specific for the display of internet documents
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/10Use of a protocol of communication by packets in interfaces along the display data pipeline

Definitions

  • the present disclosure relates generally to the field of data processing systems that allow multiple end users to simultaneously view the same site from different locations and devices in a virtual room.
  • Document CN104504004B (China Patent Ns 104504004 “Method and device for website sharing”, IPC: G06F 17/30, filed on 12/152014) describes the sharing method and device for website sharing.
  • the website sharing method includes: when the site sharing function is triggered, on the remote server information about access to the shared content is recorded. Users synchronously go to the social media sharing platform to share shared content, where the shared content is the shared content of the site.
  • U.S. Patent N° 10067729 “Systems and methods for enabling internet co-browsing” (IPC: G06F 9/54, G06F 3/14, G06F 17/30, G06F 17/22, filed on 11/11/2015) disclosed systems and methods that allow joint viewing.
  • a device such as a web server, may execute a browser program that initiates co-browsing capabilities between the host computing device and one or more guest computing devices.
  • the activation code is entered and/or otherwise embedded in one or more web pages. Subsequently, using the activated code, the web browser information on the host computing device is obtained and processed for display on one or more guest computing devices.
  • the web browser information on the host computing device is obtained and processed for display on one or more guest computing devices.
  • fidelity includes a pixelated rendering of a portion of the web page, and consists of at least one image, text, and media from the portion of the web page rendered in the first browser , and at least one of mouse position, mouse movement, and scroll position from the host computing device.
  • a virtual "room” is a private communication channel that allows a computing device host to communicate its viewport and all other communications such as mouse position, mouse movement, page scroll, page refresh, chat messages, guest privacy mode, and end-of-session (ie. .e. room close) to and from the application server and guest computing devices.
  • a user who is viewing a web page in a remote location can select objects so that those objects are highlighted in the user's browser.
  • a person who is viewing a web page can manipulate objects by selecting objects and entering information into objects.
  • Web page updates are collected and aggregated so that only the latest updates are sent to the next session. These updates include, for example, hover state, which are also passed to the session.
  • the technical result is the creation of a system that will provide an individual connection to a website that is viewed together, and automatic real-time display of events occurring on a user's device on a plurality of end user devices.
  • the purpose of the present invention is to provide a system and method for online collaborative web browsing, and at least in part to solve one or more problems due to the limitations and shortcomings of the prior art.
  • a system for sharing a web page comprising: a sharing confirmation module configured to receive sharing content selected by a user and a sharing platform selected by a user; a platform login verification module, configured to go to the unified verification interface to verify the registered user and the user to log in to the shared platform through the unified verification interface; and a virtual room creation module configured to activate a code on the electronic device to create one or more private shared viewing rooms, the room being generated at the request of one of the users and representing all software components and/or infrastructure that are necessary for screen sharing and /or shared viewing and / or to support voice and video communications; a sharing determination module configured to determine the room member that initiates the session sharing, and automatic presentation of session content on the electronic devices of the participating end users; a data communication module, configured to provide content to the sharing platform for sharing; an event transmission module configured to generate a record of user actions, the record including input device events (mouse, scroll, keyboard, touchpad, drag and drop) and visual events, wherein said events are stored in the “JavaScript Object Not
  • Another aspect of the invention relates to a method for sharing a web page, which comprises the steps of: receiving content to be shared selected by a user and a sharing platform selected by a user; moving to the unified verification interface for the user to enter the sharing platform through the unified verification interface; creating a shared viewing virtual room and assigning a unique room ID to it, and storing the room ID for all participants; receiving a command from the user to perform an action on the web page; fix the action through the browser event handler; convert the action and its properties into a JSON message; sending the specified message to the system server via the Web Sockets protocol; receiving the message with the room end member's device, and refreshing the web page to display the new state of the web site.
  • Fig. 1 shows an exemplary environment in which devices having communication capabilities communicate over a network.
  • FIG. 2 shows a schematic block diagram of an electronic device in accordance with embodiments of the present invention.
  • FIG. 3 shows an example of a general way to communicate using web sockets.
  • FIG. 4 shows the structure of a shared web browsing system.
  • Figure 5 shows the structure of the module 305.
  • Figure 6 shows the structure of the module 306.
  • FIG. 1 shows an exemplary communications environment 100 in which various users 105 use respective electronic devices 110 that communicate over a communications network 115.
  • Devices 110 may include, for example, user equipment, tablet computers, and smartphones that users frequently use to make and receive voice and/or multimedia calls (e.g., video calls), participate in messaging (e.g., text messages), use applications and accessing services that use data, browsing the World Wide Web, etc.
  • voice and/or multimedia calls e.g., video calls
  • messaging e.g., text messages
  • the communications network may include any of a variety of network types and network infrastructure in various combinations or subcombinations, including cellular networks, satellite networks, IP (Internet Protocol) networks such as Wi-Fi and Ethernet networks, and/or short-range networks such as Bluetooth networks.
  • the network infrastructure may be supported by, for example, mobile operators, enterprises, Internet service providers (ISPs), information service providers, and the like.
  • the communications network 115 typically includes interfaces that support a connection to the Internet 120.
  • the system server 125 containing at least one data processing device and data storage means, is in a network connection with the specified communication environment 100 for implementing this method.
  • the system server 125 communicates via web sockets, and devices 110 connect to the server 125 using the web socket protocol in order to transmit data to the server 125 and receive data from the server 125.
  • the system server 125 communicates via web sockets, and devices 110 connect to the server 125 using the web socket protocol in order to transmit data to the server 125 and receive data from the server 125.
  • Fig. 3 for convenience of description, one a server that communicates via web sockets, but there may be two or more servers.
  • electronic device 110 is considered in the form of a general purpose computing device.
  • the components of the electronic device 110 may include, but are not limited to, at least one processor unit 111, at least one memory unit 112, a bus connecting various components system (including the memory unit 112 and the processing unit 111), one or more input devices 113 allowing the user to enter data and commands into the system (such input devices may be a keypad, keyboard, touch pad, or composite touch panel), a display unit 114, and etc.
  • FIG. 4 which shows the system of joint browsing of web pages
  • the main modules of the system are described below.
  • Sharing confirmation module 300 is configured to receive selected content and sharing platform.
  • the sharing platform may be selected from various websites or other suitable sharing platforms.
  • the platform login verification unit 301 is configured to switch to the unified verification interface, so that the user can only log in to the corresponding shared platform through the verification interface.
  • decentralized review processes may be combined into a unified review process.
  • the verification processes of various platforms can be unified.
  • the user can log in through the unified verification interface by entering login information corresponding to the sharing platform. More specifically, the user may enter the sharing platform after the operations of logging in to the system and confirming the user's account by the system, or after entering the unified key.
  • a virtual room generation module 302 configured to activate a code on an input device to create one or more private shared viewing rooms, the room being generated at the request of one of the users and representing all the software components and/or infrastructure that is needed for screen sharing and/or or shared browsing and/or to support voice and video communications.
  • the room is a private communication channel that allows the device 115 to transmit its web browsing screen and all other events such as mouse position, mouse movement, page scroll, page refresh, chat messages and more in real time to the server 125 and to end devices. user and from them.
  • Sharing definition module 303 When a user's request to initiate shared browsing is received, the server 125 receives it and looks up the contacts of other participants/users connected to the virtual room unit and allows them to use the process of receiving events in a particular session.
  • a cache is used to store requests specific to one or more users.
  • the co-browsing process is terminated when the user who initiates the co-browsing session exits.
  • the shared session is maintained and shared browsing can be updated from end user devices.
  • a communication module 304 configured to provide website content to the sharing platform for sharing. This module provides connection, through the device of the first user and transmission the updated state of websites using the Web Sockets Protocol (WebSockets) to other participating users.
  • WebSockets Web Sockets Protocol
  • An event passing module 305 configured to generate a record of user actions (user actions, wherein the record includes input device (mouse, scroll, keyboard, touchpad, drag, and drop) events and visual events, said events being stored in the “JavaScript Object Notation” format (JSON) and sending the JSON file to the server via a WebSockets connection 126 (module 304)
  • JSON JavaScript Object Notation
  • Event Manager executing and displaying events
  • the structure of the module is shown in Fig.6.
  • the event dispatcher and action executor methods exist in the executable JavaScript.
  • the dispatcher is started when a message is received from the server.
  • the event dispatcher performs the following functions:
  • JSON message attributes into variables and/or objects (i.e. events, images, text, HTML, Java script executable, etc.);
  • Action performer invokes a specific action worker based on the event type received from the message, and passes the event object to that action worker.
  • communication between device 110, communication network 115, and server 125 may be implemented using, for example, Hypertext Transfer Secure Protocol (HTTPS) using encryption algorithms such as AES and real-time network communications (WebRTC) .
  • HTTPS Hypertext Transfer Secure Protocol
  • AES encryption algorithms
  • WebRTC real-time network communications
  • a browser event handler is a function that will be called when this event occurs on the specified element.
  • Browser is a third party application used to view websites.
  • System Server The central server of the shared browsing system that hosts shared browsing sessions.
  • External server - a third-party system that hosts a website with a built-in shared browsing plugin.
  • CVM Chromium Virtual Machine
  • the proposed invention is illustrated by an example of the implementation of the method of joint browsing of a web page.
  • Embodiments of the present invention provide for the step of creating a virtual room and initial display of the site without built-in plugins, and this step includes the following steps:
  • Step 1 The user, using an electronic device, opens (goes to) a shared browsing website;
  • Step 2 The system server returns the co-browsing target web page
  • Step 3 The user specifies a website to share.
  • Step 4 The user clicks the “Co-browse” button.
  • Step 5 The user's browser is redirected to a script page that generates and sends a message to the system server with a web URL.
  • Step 6 The system server receives the message from the user's electronic device and analyzes it.
  • Step 7 The system server creates a virtual room and assigns it a unique room ID based on the contents of the message.
  • the session ID may include: a generated alphanumeric character set. Stores the specified ID for all existing and future collaborators.
  • Step 8 The system server instantiates a “virtual user” for this user.
  • Step 9 The system server activates the local (on the server) CVM instance and assigns it the ID of this room.
  • Step 10 The system server passes the URL to the MMS with a call to load the website at that URL.
  • Step 11 SUM loads the site into virtual memory. Replies to the system server that the download is complete.
  • Step 12 The system server receives an indication of the action “complete download” from the MMS. Responds to SUM with an invitation to: a) take a screenshot of the website and send it as a message. b) take a static HTML snapshot of the website, excluding all DHTML components, and send it as a message.
  • Step 13 SMS receives a message from the system server, takes a screenshot and a snapshot, and sends them as two separate messages to the system server.
  • Step 14 The system server receives messages from the MMS and generates an HTML page with three frames:
  • Frame2 - controls for shared viewing
  • Frame 3 is an HTML snapshot of the website.
  • Step 15 The system server assigns the specified virtual room HTML code and sends it to all users with the same room ID.
  • the user's browser displays the specified HTML code to the user.
  • Embodiments of the present invention provide for the step of inviting a member. Prerequisites: The user is running a browser with a co-browsing room open, loaded with a specific co-browsing website (Step 15).
  • the stage of invitation of the participant includes the following Steps:
  • Step 16 The user copies the room URL to the clipboard and passes the URL to the participants in any way possible (outside the scope of the application).
  • Step 17 The participant joins the room in any way possible, opens a browser and downloads the provided link.
  • Step 18 The browser opens the co-browsing site by calling the system server through the provided URL.
  • Step 19 System Server:
  • step 14 Updates the HTML page (step 14) by adding the member information to all influential controls and frames.
  • Step 20 User Browser and Participant Browser displays the specified HTML code to the user and participant.
  • Embodiments of the present invention provide for a page sharing step.
  • the user and participant have a browser that is running a shared browsing room that has a specific website loaded for shared browsing (Step 20).
  • the page sharing stage includes the following Steps: Step 21: Any member of the room (user or member) performs an action (such as moving the mouse, clicking, typing, etc.).
  • Step 22 This member's browser captures the action via the browser's event handler.
  • Step 23 The browser converts the action and its properties into a JSON message, adding the room ID and the member/user ID of that member/user.
  • Step 24 The browser sends this message to the system server using the WebSocket protocol.
  • Step 25 The system server captures and parses the message, converting it into an event and owner.
  • Step 26 System Server:
  • Step 27 Browsers display a "download” notification.
  • Browsers capture the message and process it locally, displaying a "loading" notification to users/contributors.
  • Step 28 CVM executes an event on the website and stores in the owner's memory.
  • Step 29 After the event is executed, the new state of the website is captured by the CMS by taking a screenshot and an HTML snapshot (See Steps 12-13). SUM attaches the owner back to posts with website screenshots and website HTML snapshots.
  • Step 30 The CMS sends the website screenshot snapshot and the website HTML snapshot as two separate messages to the system server.
  • Step 31 System Server: - receives messages from the CMS, regenerates an HTML page with three frames based on new data from the CVM:
  • Frame 1 - website content as a PNG screenshot.
  • Frame 3 is an HTML snapshot of the website.
  • Step 32 The browsers of all users/participants abort the "load” action and display the specified HTML.
  • Embodiments of the present invention provide for the step of creating a room and initially displaying a site with built-in plugins. Prerequisites: The user is running a browser with a blank tab open.
  • the stage of creating a room and initial display of a site with built-in plugins includes the following steps:
  • Step 33 The user, using an electronic device, opens (goes to) a co-browsing website with an embedded plugin.
  • Step 34 The user clicks the share button.
  • Step 35 The browser on the user's device sends a request to the external system to create a shared browsing session.
  • Step 36 External Site System:
  • Step 37 System Server: - captures a request from an external system
  • Step 38 External System:
  • Step 39 Browser on the user's device:
  • Embodiments of the present invention provide for the step of inviting a member.
  • the user is running a browser with a shared browsing room open with a downloaded shared browsing website (Step 39).
  • the invitation stage includes the following steps:
  • Step 40 User:
  • Step 41 The participant joins the room by any known method and opens the browser and downloads the provided link.
  • Step 42 The browser on the participant's device calls the external system to load the site.
  • Step 43 External System:
  • Step 44 System Server:
  • Step 45 External system (given member instance):
  • Step 46 External System (all other room visitor instances):
  • Step 47 Browser on participant's device:
  • Step 48 Browser for all other visitors to the room:
  • Embodiments of the present invention provide for the step of sharing a page with built-in plugins and handling events.
  • the user and participant(s) have a browser running an open shared browsing room that has a website (with built-in plugin) loaded for shared browsing (Step 47, Step 48).
  • the stage of sharing a page with built-in plugins and handling events includes the following Steps:
  • Step 49 Any member of the room (user or member) performs an action (such as moving the mouse, clicking, typing, etc.).
  • Step 50 This member's browser:
  • Step 51 System Server:
  • Step 52 External System (all other member instances):
  • Step 53 Browser (all other member instances):
  • modules/blocks may be implemented by one or more processors to cause one or more processors to become one or more special purpose processors to execute instructions stored on a computer readable storage medium to perform specialized functions of the modules/blocks.
  • Co-browsing allows two or more persons who are in different locations to interact through the same webpage/browser session without requiring a login or download or plugins; - co-browsing allows each user to view the website together; shared browsing allows each user to provide the cursor of another person who shares this browsing, regardless of the web browser or operating system they use;

Abstract

Предложена система для совместного просмотра веб-страницы, содержащая: модуль подтверждения совместного использования; модуль верификации входа в платформу; модуль создания виртуальной комнаты; модуль определения совместного использования; модуль передачи данных, выполненный с возможностью предоставления содержимого в платформу совместного использования; модуль передачи событий; модуль исполнения и отображения событий на устройстве конечного пользователя. Предложенный способ содержит этапы, на которых: принимают содержание для совместного использования, выбранное пользователем, и платформу совместного использования, выбранную пользователем; переходят в унифицированный интерфейс проверки для осуществления пользователем входа в платформу через унифицированный интерфейс проверки; создают виртуальную комнату для совместного просмотра и присваивают ей уникальный Ш-идентификатор комнаты и сохраняют Ш-идентификатор комнаты для всех участников; принимают от пользователя команду выполнить действие на веб-странице; фиксируют действие через обработчик событий браузера; преобразовывают действие и его свойства в сообщение JSON; отправляют указанное сообщение на системный сервер по протоколу WebSockets; принимают сообщение с помощью устройства конечного участника комнаты и обновляют веб-страницу для отображения нового состояния веб-сайта.

Description

Способ и система для совместного просмотра веб-страницы
Область техники, к которой относится изобретение
Настоящее раскрытие предмета изобретения в целом относится к области систем обработки данных, которые позволяют многим конечным пользователям одновременно просматривать один и тот же сайт с различных мест и устройств в виртуальной комнате.
Предшествующий уровень техники
С уровня техники известен способ обмена веб-страницами между сервером и клиентом (Патент Китая Ns 102891897 “Webpage sharing method, server and clients”, МПК: H04L 29/08, G06F 17/30, дата подачи: 30.10.2012 г.). Совместный просмотр/доступ позволяет двум или более лицам, которые находятся в разных местах, взаимодействовать через одну и ту же сессию веб- страницы/браузера, не требуя входа в систему. По технической схеме, без регистрации на сайте третьей стороны или в другой прикладной программе пользователь добивается того, чтобы веб-страница в режиме реального времени была общей.
В документе CN104504004B (Патент Китая Ns 104504004 “Method and device for website sharing”, МПК: G06F 17/30, дата подачи: 09.12.2014 г.) описан метод совместного использования и устройство для совместного использования веб-сайтов. Метод совместного доступа к веб-сайтам включает: когда срабатывает функция общего пользования сайтом, на удаленном сервере записывается информация о доступе к общему контенту. Пользователи синхронно переходят на платформу совместного использования социальных сетей, чтобы поделиться общим контентом, где общее содержание - это совместное содержание сайта.
В патенте США N° 10067729 “Systems and methods for enabling internet co- browsing” (МПК: G06F 9/54, G06F 3/14, G06F 17/30, G06F 17/22, дата подачи: 11.11.2015 г.) раскрыты системы и методы, позволяющие осуществлять совместный просмотр. Устройство, такое как веб-сервер, может выполнить программу браузера, инициирует возможности совместного просмотра между хост-вычислительным устройством и одним или несколькими гостевыми вычислительными устройствами.
Активационный код вводится и/или иным образом встраивается в одну или несколько веб-страниц. Впоследствии с помощью активированного кода информация веб-браузера на хост-вычислительном устройстве получается и обрабатывается для отображения на одном или нескольких гостевых вычислительных устройствах. Во время сеанса совместного просмотра, который включает воспроизведение части веб-страницы во втором браузере, где точное воспроизведение включает пиксельное отображение части веб- страницы, и состоит из по меньшей мере одного изображения, текста и мультимедиа из части веб-страницы, отраженной в первом браузере, и как минимум одного из положения мыши, движения мыши и положения прокрутки с хост-вычислительного устройства. Виртуальная “комната” представляет собой частный канал связи, который позволяет узлу вычислительного устройства передавать его окно просмотра и все остальные коммуникации, такие как положение мыши, движение мыши, прокрутка страницы, обновление страницы, сообщения в чате, режим конфиденциальности гостя и конца сеанса (т.е. закрытие комнаты) до и с сервера приложений и гостевых вычислительных устройств.
В патенте США Ns 09736213 “Integrating co-browsing with other forms of information sharing” (МПК: H04L 29/06, H04L 29/08, G06F 17/30, G06F 17/22, G06Q 30/00, H04L 12/58, G06F 3/0484, дата подачи: 16.01.2015 г.) описана служба совместного просмотра, которая использует JavaScript, чтобы позволить дистанционный просмотр веб-страницы, показанной в браузере пользователя. Обновление веб-страницы превращаются в HTML и передаются во время сеанса видеосвязи. Аспекты веб-страницы, которая не должна быть видимой, указанные в списке замаскированных элементов, мешает JavaScript передавать содержание этих элементов во время сеанса совместного просмотра. Пользователь, который просматривает веб-страницу в отдаленном месте, может выбрать объекты, чтобы те объекты были выделены в браузере пользователя. Так же лицо, которое просматривает веб-страницу, может манипулировать объектами, выбирая объекты и вводя информацию в объекты. Обновление веб- страницы собираются и агрегируются таким образом, что на очередной сеанс направляются только последние обновления. К таким обновлениям относятся, например, состояние наведения курсора, которые также передаются на сеанс.
Известные решения имеют следующие недостатки:
- передача событий и/или данных происходит с некоторой задержкой, то есть не всегда конечный пользователь видит то, что создал инициатор события;
- не предоставляют возможность одновременного управления событиями двумя или более пользователями;
- не реализовано индивидуальное соединение с сайтом, который просматривается совместно.
Технический результат - создание системы, которая обеспечит индивидуальное соединение с веб-сайтом, который просматривается совместно, и автоматическое отображение в реальном времени событий, совершаемых на устройстве пользователя, на множестве устройств конечных пользователей.
Раскрытие изобретения
Цель настоящего изобретения - предложить систему и способ онлайн совместного просмотра веб-страниц, и по меньшей мере отчасти решить одну или более проблем, обусловленных ограничениями и недостатками существующего уровня техники.
Предложена система для совместного просмотра веб-страницы, содержащая: модуль подтверждения совместного использования, выполненный с возможностью приема содержимого для совместного использования, выбранного пользователем, и платформы совместного использования, выбранной пользователем; модуль верификации входа в платформу, выполненный с возможностью перехода в унифицированный интерфейс проверки для верификации зарегистрированного пользователя и осуществления пользователем входа в платформу совместного использования через унифицированный интерфейс проверки; и модуль создания виртуальной комнаты, выполненный с возможностью активации кода на электронном устройстве для создания одной или нескольких частных комнат совместного просмотра, причем комната сгенерирована по запросу одного из пользователей и представляет собой все программные компоненты и/или инфраструктуру, которые необходимы для совместного использования экрана и/или совместного просмотра и/или для поддержки голосовой и видео связи; модуль определения совместного использования, выполненный с возможностью определять участника комнаты, который инициализирует сеанс совместного просмотра, и автоматического представления содержания сеанса на электронных устройствах конечных пользовате лей-участников; модуль передачи данных, выполненный с возможностью предоставления содержимого в платформу совместного использования для совместного использования; модуль передачи событий, выполненный с возможностью формирования записи пользовательских действий, причем запись включает события устройства ввода (мыши, скролла, клавиатуры, тачпада, Драг и Дроп) и визуальные события, причем указанные события сохраняются в формате “JavaScript Object Notation” (JSON), и передачи событий на системный сервер в виде сообщения через веб-соединение; модуль исполнения и отображения событий на устройстве конечного пользователя, который выполнен с возможностью передачи событий с системного сервера на устройства конечных пользователей.
Другой аспект изобретения относится к способу для совместного просмотра веб-страницы, который содержит этапы, на которых: принимают содержание для совместного использования, выбранное пользователем, и платформу совместного использования, выбранную пользователем; переходят в унифицированный интерфейс проверки для осуществления пользователем входа в платформу совместного использования через унифицированный интерфейс проверки; создают виртуальную комнату для совместного просмотра и присваивают ей уникальный ID-идентификатор комнаты и сохраняют ID-идентификатор комнаты для всех участников; принимают от пользователя команду выполнить действие на веб- странице; фиксируют действие через обработчик событий браузера; преобразовывают действие и его свойства в сообщение JSON; отправляют указанное сообщение на системный сервер по протоколу Web Sockets; принимают сообщение с помощью устройства конечного участника комнаты и обновляют веб-страницу для отображения нового состояния веб- сайта.
Краткое описание чертежей
Фиг. 1 показывает иллюстративную среду, в которой устройства, имеющие коммуникационные возможности, взаимодействуют по сети.
На Фиг.2 показана эскизная блок-схема электронного устройства в соответствии с вариантами осуществления настоящего изобретения.
На Фиг. 3 показан пример общего способа связи с помощью веб-сокетов.
На Фиг. 4 показана структура системы совместного просмотра веб- страниц.
На Фиг.5 показана структура модуля 305.
На Фиг.6 показана структура модуля 306.
Осуществление изобретения
Обращаясь теперь к чертежам, Фиг. 1 показывает иллюстративную среду 100 средств связи, в которой различные пользователи 105 используют соответствующие электронные устройства 110, которые обмениваются данными через сеть 115 связи. Устройства 110 могут включать в себя, например, оборудование пользователя, планшетные компьютеры, и смартфоны, которые пользователи часто используют для передачи и приема речевых и/или мультимедийных вызовов (например, видео вызовов), участия в обмене сообщениями (например, текстовыми сообщениями), использования приложений и осуществления доступа к услугам, которые используют данные, просмотра Всемирной паутины, и т. п.
Как показано, устройства 110 могут осуществлять доступ к сети 115 связи для реализации различных вариантов пользовательского восприятия. Сеть связи может включать в себя любой из множества типов сетей и сетевую инфраструктуру в различных комбинациях или субкомбинациях, в том числе, сотовые сети, спутниковые сети, сети IP (интернет-протокола), такие как сети Wi-Fi и Ethernet, и/или сети ближнего действия, такие как сети Bluetooth. Сетевая инфраструктура может поддерживаться, например, операторами мобильной связи, предприятиями, поставщиками интернет-услуг (Internet service provider - ISP), поставщиками информационных услуг, и т.п. Сеть 115 связи обычно включает в себя интерфейсы, которые поддерживают соединение с интернетом 120.
Системный сервер 125, содержащий по меньшей мере одно устройство обработки данных и средства хранения данных, для осуществления данного способа находится в сетевом соединении с указанной средой 100 средств связи. Со ссылкой на Фиг. 3, предположим, что системный сервер 125 поддерживает связь посредством веб-сокетов, и устройства 110 подключаются к серверу 125 с использованием протокола веб-сокетов, чтобы передавать данные серверу 125 и принимать данные от сервера 125. На Фиг.З для удобства описания показан один сервер, поддерживающий связь посредством веб-сокетов, однако может существовать два сервера или более.
Ниже, на примере Фиг. 2, рассмотрено электронное устройство 110, выполненное в форме вычислительного устройства общего назначения. Компоненты электронного устройства 110 могут включать, без ограничения перечисленным, по меньшей мере один процессорный блок 111, по меньшей мере один блок 112 памяти, шину, соединяющую различные компоненты системы (включая блок 112 памяти и процессорный блок 111), одно или несколько устройств 113 ввода, позволяющих пользователю вводить данные и команды в систему (такими устройствами ввода могут быть кнопочная панель, клавиатура, сенсорная панель или составная сенсорная панель), дисплейный блок 114 и т. п.
Обращаясь к Фиг. 4, где показана система совместного просмотра веб- страниц, ниже описано основные модули системы.
Модуль 300 подтверждения совместного использования выполнен с возможностью приема выбранных содержимого и платформы совместного использования. В вариантах осуществления платформа совместного использования может быть выбрана из различных веб-сайтов или других подходящих платформ совместного использования.
Модуль 301 верификации входа в платформу выполнен с возможностью перехода в унифицированный интерфейс проверки, таким образом пользователь может осуществлять вход в соответствующую платформу совместного использования только через интерфейс проверки. Как раскрыто в различных вариантах осуществления, децентрализованные процессы проверки могут быть объединены в унифицированный процесс проверки. Таким образом процессы проверки всевозможных платформ могут быть унифицированы. Независимо от того, на какой платформе пользователь совместно использует содержимое, пользователь может осуществлять вход через унифицированный интерфейс проверки посредством ввода информации осуществления входа, соответствующей платформе совместного использования. Более конкретно, пользователь может войти на платформу совместного использования после операций авторизации в системе и подтверждения системой учетной записи пользователя, или же после введения унифицированного ключа. Модуль 302 создания виртуальной комнаты, выполненный с возможностью активации кода на устройстве ввода для создания одной или нескольких частных комнат совместного просмотра, причем комната сгенерирована по запросу одного из пользователей и представляет все программные компоненты и/или инфраструктуру, которые необходимы для совместного использования экрана и/или совместного просмотра и/или для поддержки голосовой и видео связи. Комната представляет собой частный канал связи, позволяющий устройству 115 передавать свой экран просмотра веб- страницы и все другие события, такие как положение мыши, движение мыши, прокрутка страницы, обновление страницы, сообщения чата и другое в реальном времени к серверу 125 и к конечным устройствам пользователя и от них.
Модуль 303 определения совместного использования. Когда запрос пользователя на инициализацию совместного просмотра принят, сервер 125 его принимает и ищет контакты других участников/пользователей, подключенных к модулю виртуальной комнаты, и предоставляет им возможность пользоваться процессом получения событий в определенном сеансе. В некоторых вариантах осуществления используется кэш для хранения запросов, специфичных для одного или нескольких пользователей. В некоторых вариантах осуществления процесс совместного просмотра разрывается при выходе пользователя, инициализирующего сеанс совместного просмотра. В других вариантах осуществления общий сеанс сохраняется и обеспечивается возможность обновления совместного просмотра с устройств конечных пользователей.
Модуль 304 передачи данных, выполненный с возможностью предоставления содержимого веб-сайтов в платформу совместного использования для совместного использования. Данный модуль обеспечивает подключение, посредством устройства первого пользователя и передачу обновленного состояния веб-сайтов с использованием протокола веб-сокетов (WebSockets) другим пользователям-участникам.
Модуль 305 передачи событий, выполненный с возможностью формирования записи пользовательских действий (действий пользователя, причем запись включает события устройства ввода (мыши, скролла, клавиатуры, тачпада, Драг и Дроп) и визуальные события, причем указанные события сохраняются в формате “JavaScript Object Notation” (JSON), и отправки файла JSON на сервер через соединение WebSockets 126 (модуль 304). Структура модуля показана на Фиг.5.
Модуль 306 исполнения и отображения событий (Диспетчер событий) на конечном устройстве пользователя/участника, выполненный с возможностью передачи событий с системного сервера на устройства конечных пользователей/участников. Структура модуля показана на Фиг.6.
Методы диспетчера событий и исполнителя действий существуют в исполняемом JavaScript. Диспетчер запускается при получении сообщения с сервера.
Диспетчер событий выполняет такие функции:
- захватывает сообщение JSON с сервера;
- различает тип события по типу сообщения;
- преобразует атрибуты сообщения JSON в переменные и/или объекты (т.е. события, изображения, текст, HTML, исполняемый файл сценария Java и т. д·);
- генерирует объект события браузера и заполняет его атрибуты переменными и/или производными объектами из сообщения;
- вызывает конкретного исполнителя действий на основе типа события, полученного из сообщения, и передает объект события к этому исполнителю действия. Исполнитель действий:
- захватывает объект события из диспетчера событий;
- вызывает браузер и заставляет его выполнить это действие с помощью событий браузера.
В различных аспектах изобретения передача данных между устройством 110, сетью связи 115 и сервером 125 может быть реализована с использованием, например, протокола защищенной передачи гипертекста (HTTPS) при помощи алгоритмов шифрования, таких, как AES, и сетевых коммуникаций в реальном времени (WebRTC). Для передачи потоковых видео и аудио данных используется технология WebRTC, обеспечивающая передачу потоковых аудиоданных, видеоданных и другого контента от браузера 130 и к браузеру в режиме реального времени без установки плагинов или иных расширений.
Осуществление изобретения:
Далее будет приведен список терминологии, используемой в описании настоящего изобретения:
Событие — любое действие пользователя: движение, щелчок, двойной щелчок, перетаскивание и т. д.
Обработчик события браузера - это функция, которая будет вызываться при наступлении этого события на указанном элементе.
Пользователь - лицо, использующее систему, являющееся создателем виртуальной комнаты.
Участник - пользователь, использующий систему, приглашенный в комнату для совместного просмотра.
Браузер - стороннее приложение, используемое для просмотра веб- сайтов.
Системный сервер - центральный сервер системы совместного просмотра, на котором размещаются сеансы совместного просмотра. Внешний сервер - сторонняя система, на которой размещен веб-сайт со встроенным плагином совместного просмотра.
CVM (Chromium Virtual Machine) - стороннее приложение, используемое как компонент для удаленного манипулирования контентом веб-сайтов, эмулируя обычный браузер.
Предложенное изобретение поясняется примером реализации способа совместного просмотра веб-страницы.
Варианты осуществления настоящего изобретения предусматривают этап создания виртуальной комнаты и начального отображения сайта без встроенных плагинов, и данный этап включает в себя следующие шаги:
Шаг 1: Пользователь, используя электронное устройство, открывает (переходит на) веб-сайт совместного просмотра;
Шаг 2: Системный сервер возвращает совместный просмотр целевой веб- страницы;
Шаг 3: Пользователь указывает веб-сайт для совместного просмотра.
Шаг 4: Пользователь нажимает кнопку “Co-browse”.
Шаг 5: Браузер пользователя перенаправляется на страницу сценария, которая генерирует и отправляет сообщение на системный сервер с веб-URL.
Шаг 6: Системный сервер получает сообщение от электронного устройства пользователя и анализирует его.
Шаг 7: Системный сервер создает виртуальную комнату и присваивает ей уникальный ID-идентификатор комнаты на основе содержимого сообщения. Идентификатор сеанса может включает в себя: сгенерированый буквенно- цифровой набор символов. Сохраняет указанный ID-идентификатор для всех существующих и будущих участников совместного просмотра.
Шаг 8: Системный сервер создает для этого пользователя экземпляр “виртуального пользователя”. Шаг 9: Системный сервер активирует локальный (на сервере) экземпляр CVM и присваивает ему идентификатор этой комнаты.
Шаг 10: Системный сервер передает URL в СУМ с вызовом для загрузки веб-сайта по этому URL.
Шаг 11: СУМ загружает сайт в виртуальную память. Отвечает системному серверу что загрузка завершена.
Шаг 12: Системный сервер получает указание на действие “завершить загрузку” от СУМ. Отвечает на СУМ приглашением: а) сделать скриншот веб-сайта и передать его в виде сообщения. б) сделать статический моментальный снимок HTML веб-сайта с исключением всех компонентов DHTML и передать его как сообщение.
Шаг 13: СУМ получает сообщение от системного сервера, делает скриншот и моментальный снимок и передает их как два отдельных сообщения на системный сервер.
Шаг 14: Системный сервер получает сообщения от СУМ и генерирует HTML-страницу с тремя фреймами:
Фрейм 1 - контент сайта в виде скриншота PNG,
Фрейм2 - элементы управления совместным просмотром,
Фрейм 3 - моментальный снимок HTML веб-сайта.
Шаг 15: Системный сервер назначает указанный HTML-код виртуальной комнаты и отправляет его всем пользователям, имеющим такой же ID- идентификатор комнаты.
На браузере пользователя отображается указанный HTML-код пользователю.
Варианты осуществления настоящего изобретения предусматривают этап приглашения участника. Предварительные условия: у пользователя работает браузер с открытой комнатой для совместного просмотра, в которой загружен определенный веб- сайт для совместного просмотра (Шаг 15).
Этап приглашения участника включает в себя следующие Шаги:
Шаг 16: Пользователь копирует URL комнаты в буфер обмена и передает URL участникам любым возможным способом (вне области действия приложения).
Шаг 17: Участник присоединяется к комнате любым возможным способом, открывает браузер и загружает предоставленную ссылку.
Шаг 18: Браузер открывает сайт совместного просмотра, вызывая системный сервер через предоставленный URL.
Шаг 19: Системный сервер:
- анализирует идентификатор комнаты из предоставленного URL;
- создает экземпляр виртуального участника в этой комнате для этого участника;
- обновляет HTML-страницу (шаг 14), добавляя сведения об участниках во все влиятельные элементы управления и фреймы;
- возвращает обновленный HTML-код всем активным браузерам пользователей и участников;
Шаг 20: Браузер пользователя и браузер участников отображает указанный HTML-код пользователю и участнику.
Варианты осуществления настоящего изобретения предусматривают этап совместного просмотра страницы.
Предварительные условия: Пользователь и участник имеют браузер, работающий с открытой комнатой совместного просмотра, имеющей определенный веб-сайт, который загружен для совместного просмотра (Шаг 20).
Этап совместного просмотра страницы включает в себя следующие Шаги: Шаг 21: Любой участник комнаты (пользователь или участник) выполняет действие (например, перемещение мыши, щелчок, ввод текста и т. д.).
Шаг 22: Браузер этого участника фиксирует действие через обработчик событий браузера.
Шаг 23: Браузер преобразует действие и его свойства в сообщение JSON, добавляя ID-идентификатор комнаты и ID участника/пользователя этого участника/пользователя.
Шаг 24: Браузер отправляет это сообщение на системный сервер по протоколу WebSocket.
Шаг 25: Системный сервер захватывает и анализирует сообщение, преобразовывая его в событие и владельца.
Шаг 26: Системный сервер:
- передает событие и владельца в CVM.
- отправляет сообщение всем участникам комнаты.
Шаг 27: Браузеры отображают уведомление о “загрузке”.
Браузеры захватывают сообщение и обрабатывают его локально, отображая уведомление о "загрузке" для пользователей/участников.
Шаг 28: CVM выполняет событие на веб-сайте и сохраняет в памяти владельца.
Шаг 29: после выполнения события новое состояние веб-сайта фиксируется СУМ, делая скриншот и моментальный снимок HTML (См. Шаги 12-13). СУМ присоединяет владельца назад к сообщениям со снимками скриншота веб-сайта и моментальным снимком HTML веб-сайта.
Шаг 30: СУМ передает снимок скриншота веб-сайта и моментальный снимок HTML веб-сайта как два отдельных сообщения на системный сервер.
Шаг 31: Системный сервер: - получает сообщения от СУМ, на основе новых данных из CVM повторно генерирует HTML-страницу с тремя фреймами:
Фрейм 1 - контент сайта в виде скриншота PNG.
Фрейм 2 - элементы управления совместным просмотром.
Фрейм 3 - моментальный снимок HTML веб-сайта.
- назначает указанный HTML-код идентификатору комнаты по идентификатору владельца, полученному от СУМ, и отправляет его всем пользователям, которые имеют тот же идентификатор комнаты.
Шаг 32: Браузеры всех пользователей/участников прекращают выполнение действия “загрузка” и отображают указанный HTML.
Варианты осуществления настоящего изобретения предусматривают этап создания комнаты и первоначального отображения сайта со встроенными плагинами. Предварительные условия: У пользователя запущен браузер с открытой пустой вкладкой.
Этап создания комнаты и начального отображения сайта со встроенными плагинами включает в себя следующие Шаги:
Шаг 33: Пользователь, используя электронное устройство, открывает (переходит на) веб-сайт совместного просмотра со встроенным плагином.
Шаг 34: Пользователь нажимает кнопку совместного просмотра.
Шаг 35: Браузер на устройстве пользователя отправляет запрос во внешнюю систему на создание сеанса совместного просмотра.
Шаг 36: Система внешнего сайта:
- захватывает запрос из браузера;
- устанавливает соединение WebSocket с System Server;
- отправляет запрос на создание комнаты, включая техническую информацию о типе браузера, разрешении экрана и т. д.
Шаг 37: Системный сервер: - захватывает запрос из внешней системы;
- анализирует запрос;
- создает комнату и присваивает ей уникальный Ш-идентификатор комнаты;
- сохраняет указанный Ш для всех существующих и будущих участников;
- создает iFrame с элементами управления совместным просмотром на основе полученной технической информации (тип браузера, разрешение и т. д.);
- отправляет сообщение с ID-идентификатором комнаты внешней системе;
- отправляет внешней системе запрос на внедрение iFrame;
- передает ID-идентификатор комнаты во внешнюю систему.
Шаг 38: Внешняя система:
- захватывает ID-идентификатор комнаты и сохраняет его;
- захватывает iFrame и вставляет его в тело веб-сайта;
- повторно отправляет обновленное тело веб-сайта в пользовательский браузер, включая ID-идентификатор комнаты.
Шаг 39: Браузер на устройстве пользователя:
- принимает новое содержание тела сайта;
- сохраняет ID -идентификатор комнаты как часть содержимого веб-сайта (например, через cookie, атрибут ссылки и т. д.);
- обновляет контент, который отображается, для пользователя на экране, показывая элементы управления с помощью совместного просмотра.
Варианты осуществления настоящего изобретения предусматривают этап приглашения участника.
Предварительные условия: У пользователя работает браузер с открытой комнатой для совместного просмотра с загруженным веб-сайтом для совместного просмотра (Шаг 39). Этап приглашения участника включает в себя следующие шаги:
Шаг 40: Пользователь:
- копирует ссылку URL на комнату, нажав кнопку или любым другим подходящим способом (на основе дизайна пользовательского интерфейса);
- передает URL участникам любым возможным способом.
Шаг 41: Участник присоединяется к комнате любым известным способом и открывает браузер и загружает предоставленную ссылку.
Шаг 42: Браузер на устройстве участника вызывает внешнюю систему для загрузки сайта.
Шаг 43: Внешняя система:
- анализирует ссылку и захватывает ID-идентификатор комнаты;
- собирает техническую информацию (разрешение экрана, тип браузера и т. д.) из браузера участника;
- вызывает системный сервер для добавления участника в комнату и передает техническую информацию.
Шаг 44: Системный сервер:
- захватывает вызов из внешней системы;
- создает экземпляр виртуального участника в этой комнате для этого участника;
- создает iFrame с элементами управления совместным просмотром на основе полученной технической информации (тип браузера, разрешение и т. д.);
- отправляет внешней системе запрос на внедрение iFrame и передает его содержимое;
- отправляет всем экземплярам внешних систем в этой комнате сообщение для отображения нового участника в списке участников.
Шаг 45: Внешняя система (данный экземпляр участника):
- захватывает iFrame и вставляет его в тело веб-сайта; - обновляет список посетителей комнаты, добавляя нового участника;
- отправляет обновленное тело веб-сайта в браузер участников, включая ID-идентификатор комнаты.
Шаг 46: Внешняя система (все остальные экземпляры посетителей комнаты):
- захватывает сообщение нового участника с системного сервера;
- вызывает всех посетителей комнаты браузера для добавления нового участника в список посетителей.
Шаг 47: Браузер на устройстве участника:
- отображает контент сайта;
- сохраняет ID-идентификатор комнаты как часть содержимого веб-сайта (например, через cookie, атрибут ссылки и т. д.).
Шаг 48: Браузер для всех остальных посетителей комнаты:
- принимает сообщение от внешней системы;
- обновляет страницу для отображения нового участника в списке посетителей и показывает его указатель на экране.
Варианты осуществления настоящего изобретения предусматривают этап совместного использования страницы со встроенными плагинами и обработки событий.
Предварительные условия: Пользователь и участник/участники имеют браузер, работающий с открытой комнатой для совместного просмотра, имеющей веб-сайт (со встроенным плагином), загруженный для совместного просмотра (Шаг 47, Шаг 48).
Этап совместного использования страницы со встроенными плагинами и обработки событий включает в себя следующие Шаги:
Шаг 49: Любой участник комнаты (пользователь или участник) выполняет действие (например, перемещение мыши, щелчок, ввод текста и т. д.). Шаг 50: Браузер этого участника:
- фиксирует действие через обработчик событий браузера;
- преобразует действие и его свойства в сообщение JSON, добавляя ID- идентификатор комнаты и ID участника/пользователя;
- выполняет это действие для данного участника (экземпляра внешней системы);
- отправляет это сообщение на системный сервер по протоколу WebSockets.
Шаг 51: Системный сервер:
- захватывает и анализирует сообщение, преобразовывая его в два объекта - событие и владельца;
- восстанавливает указанное сообщение, чтобы исключить владельца и включить всех остальных участников; отправляет указанное сообщение всем участникам комнаты (экземплярам внешней системы) для выполнения.
Шаг 52: Внешняя система (все остальные экземпляры участников):
- захватывает сообщение, анализирует и выполняет его на экземпляре веб- сайта;
- отправляет обновленное состояние веб-сайта в браузер.
Шаг 53: Браузер (все остальные экземпляры участников):
- принимает сообщение от внешней системы;
- обновляет страницу для отображения нового состояния веб-сайта. Вышеописанные этапы призваны объяснять показанные иллюстративные варианты осуществления, и можно предположить, что современное технологическое развитие изменит порядок осуществления конкретных функций. Таким образом, описание представлено здесь с целью иллюстрации, а не ограничения. Например, раскрытые здесь этапы или шаги не ограничиваются осуществлением в описанном порядке, а могут осуществляться в любом порядке, и некоторые этапы, которые согласуются с раскрытыми вариантами осуществления, могут быть исключены.
Специалисту в данной области техники также понятно, что различные иллюстративные логические блоки, модули и шаги алгоритмов, описанные согласно приведенному раскрытию, могут быть реализованы как специализированное электронное оборудование, компьютерное программное обеспечение или комбинацию электронного оборудования и компьютерного программного обеспечения. Например, модули/блоки могут быть реализованы одним или более процессорами, чтобы приказывать одному или более процессорам, становиться одним или более процессорами специального назначения для выполнения команд, хранящихся на компьютерно-считываемом носителе данных для осуществления специализированных функций модулей/блоков.
Ниже описаны преимущества предложенного технического решения:
- не нужно загружать и устанавливать любое программное обеспечение;
- доступно с компьютера, ноутбука, планшета и даже смартфона;
- встроенный чат и VoIP-конференция, имплементированные посредством технологии WebRTC;
- имеющиеся инструменты подсветки на экране, имплементированные посредством библиотеки HTML5 Canvas;
- веб-сесия защищена протоколами HTTPS и AES и безопасна;
- возможность просматривать веб-страницы с другими людьми. Совместный просмотр позволяет двум или более лицам, которые находятся в разных местах, взаимодействовать через одну и ту же сессию веб- страницы/браузера, не требуя входа в систему или загрузки или плагинов; - совместный просмотр позволяет каждому пользователю совместно просматривать веб-сайт; совместный просмотр позволяет каждому пользователю предусматривать курсор другого человека, который делится этим просмотром, независимо от веб-браузера или операционной системы, которыми пользуется;
- совместный просмотр позволяет каждому пользователю поделиться в Интернете с помощью веб-просмотра загруженной веб-страницей;
- совместный просмотр позволяет каждому пользователю комбинировать его с чатом в прямом эфире, видеочатом или голосовым звонком;
- совместный просмотр позволяет каждому пользователю использовать инструменты для выделения на экране, такие как рисование, выделение метки или поля, курсор; совместный просмотр позволяет каждому пользователю взаимодействовать между собой, имея индивидуальный контроль.

Claims

Формула
1. Система для совместного просмотра веб-страницы, содержащая: модуль подтверждения совместного использования, выполненный с возможностью приема содержимого для совместного использования, выбранного пользователем, и платформы совместного использования, выбранной пользователем; модуль верификации входа в платформу, выполненный с возможностью перехода в унифицированный интерфейс проверки для верификации зарегистрированного пользователя и осуществления пользователем входа в платформу совместного использования через унифицированный интерфейс проверки; и модуль создания виртуальной комнаты, выполненный с возможностью активации кода на электронном устройстве для создания одной или нескольких частных комнат совместного просмотра, причем комната сгенерирована по запросу одного из пользователей и представляет собой все программные компоненты и/или инфраструктуру, которые необходимы для совместного использования экрана и/или совместного просмотра и/или для поддержки голосовой и видео связи; модуль определения совместного использования, выполненный с возможностью определять участника комнаты, который инициализирует сеанс совместного просмотра, и автоматического представления содержимого сеанса на электронных устройствах конечных пользователей-участников; модуль передачи данных, выполненный с возможностью предоставления содержимого в платформу совместного использования для совместного использования; модуль передачи событий, выполненный с возможностью формирования записи пользовательских действий, причем запись включает события устройства ввода (мыши, скролла, клавиатуры, тачпада, Драг и Дроп) и визуальные события, причем указанные события сохраняются в формате "JavaScript Object Notation" (JSON), и передачи событий на системный сервер в виде сообщения через веб-соединение; модуль исполнения и отображения событий на устройстве конечного пользователя, который выполнен с возможностью передачи событий с системного сервера на устройства конечных пользователей.
2. Способ для совместного просмотра веб-страницы, содержащий этапы, на которых: принимают содержимое для совместного использования, выбранное пользователем, и платформу совместного использования, выбранную пользователем; переходят в унифицированный интерфейс проверки для осуществления пользователем входа в платформу совместного использования через унифицированный интерфейс проверки; создают виртуальную комнату для совместного просмотра и присваивают ей уникальный ID-идентификатор комнаты и сохраняют ID-идентификатор комнаты для всех участников; принимают от пользователя команду выполнить действие на веб- странице; фиксируют действие через обработчик событий браузера; преобразуют действие и его свойства в сообщение JSON; отправляют указанное сообщение на системный сервер по протоколу WebSockets; принимают сообщение с помощью устройства конечного участника комнаты и обновляют веб-страницу для отображения нового состояния веб сайта.
PCT/UA2021/000055 2021-05-25 2021-05-31 Способ и система для совместного просмотра веб-страницы WO2022250642A1 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
UAA202102752 2021-05-25
UAA202102752 2021-05-25

Publications (1)

Publication Number Publication Date
WO2022250642A1 true WO2022250642A1 (ru) 2022-12-01

Family

ID=84194051

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/UA2021/000055 WO2022250642A1 (ru) 2021-05-25 2021-05-31 Способ и система для совместного просмотра веб-страницы

Country Status (2)

Country Link
US (1) US20220382825A1 (ru)
WO (1) WO2022250642A1 (ru)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090249224A1 (en) * 2008-03-31 2009-10-01 Microsoft Corporation Simultaneous collaborative review of a document
US20110055309A1 (en) * 2009-08-30 2011-03-03 David Gibor Communication in Context of Content
JP2020191094A (ja) * 2016-05-18 2020-11-26 アップル インコーポレイテッドApple Inc. グラフィカルメッセージユーザインタフェースにおける確認応答オプションの使用

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2013290566B2 (en) * 2012-07-19 2018-03-08 Glance Networks, Inc Integrating co-browsing with other forms of information sharing
US10255023B2 (en) * 2016-02-12 2019-04-09 Haworth, Inc. Collaborative electronic whiteboard publication process

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090249224A1 (en) * 2008-03-31 2009-10-01 Microsoft Corporation Simultaneous collaborative review of a document
US20110055309A1 (en) * 2009-08-30 2011-03-03 David Gibor Communication in Context of Content
JP2020191094A (ja) * 2016-05-18 2020-11-26 アップル インコーポレイテッドApple Inc. グラフィカルメッセージユーザインタフェースにおける確認応答オプションの使用

Also Published As

Publication number Publication date
US20220382825A1 (en) 2022-12-01

Similar Documents

Publication Publication Date Title
JP7263442B2 (ja) モバイルアプリケーションのリアルタイム遠隔制御のためのシステムおよび方法
AU2018201109B2 (en) Integrating co-browsing with other forms of information sharing
US8250141B2 (en) Real-time event notification for collaborative computing sessions
US8185828B2 (en) Efficiently sharing windows during online collaborative computing sessions
US7933955B2 (en) One-click universal screen sharing
AU2011351386B2 (en) Method of providing assistance to the end-user of a software application
US20140053085A1 (en) Methods and systems for collaborative browsing
US10021165B2 (en) Method of sharing browsing on a web page displayed by a web browser
JP2015529878A (ja) ウェブクライアントを介したリモートアプリケーションへのアクセスの提供
CN112437004B (zh) 信息处理方法、装置、电子设备及存储介质
US8661355B1 (en) Distinguishing shared and non-shared applications during collaborative computing sessions
US20170185421A1 (en) User interfaces in a computer system
US10817137B2 (en) Method and system for communication between web browsers, using a unified communication environment
WO2018041087A1 (zh) 一种屏幕截图的方法及装置
US20140006915A1 (en) Webpage browsing synchronization in a real time collaboration session field
JP2019139276A (ja) Web共有システム、プログラム
WO2022250642A1 (ru) Способ и система для совместного просмотра веб-страницы
KR102198799B1 (ko) 다자간 회의 제공 장치 및 상기 장치에서의 콘텐츠 공유 방법
Thum et al. Synchronite-a service for real-time lightweight collaboration
CN114884914A (zh) 一种应用程序同屏交流方法、系统
Laurențiu-Bogdan et al. Command and Control Systems for Video Sensors Communications Based on Python Application for Mobile Smart Devices
Huang et al. Smartly Deploying WeChat Mobile Application on Cloud Foundry PaaS
CN117348775A (zh) 通信控制方法及计算设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21943241

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE