WO2023121505A1 - System and method for managing the collaborative editing of digital objects - Google Patents

System and method for managing the collaborative editing of digital objects Download PDF

Info

Publication number
WO2023121505A1
WO2023121505A1 PCT/RU2021/000632 RU2021000632W WO2023121505A1 WO 2023121505 A1 WO2023121505 A1 WO 2023121505A1 RU 2021000632 W RU2021000632 W RU 2021000632W WO 2023121505 A1 WO2023121505 A1 WO 2023121505A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
digital object
editing
edit
rights
Prior art date
Application number
PCT/RU2021/000632
Other languages
French (fr)
Russian (ru)
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
Priority claimed from RU2021138665A external-priority patent/RU2780575C1/en
Application filed by Общество С Ограниченной Ответственностью "Кейс Студио" filed Critical Общество С Ограниченной Ответственностью "Кейс Студио"
Publication of WO2023121505A1 publication Critical patent/WO2023121505A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • 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]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range

Definitions

  • the present invention relates to systems and methods for managing collaborative editing of digital objects, allowing multiple users to efficiently edit digital objects simultaneously while maintaining the security of digital objects.
  • An invention is known according to patent US10817572B2 (publ. 10/27/2020; IPC: G06F 13/00; G06F 16/93; G06Q 10/10), which describes systems and methods that provide a client-server architecture capable of supporting multiple asynchronous and synchronized actions of joint work in the so-called place collaboration. Activities include: chatting, viewing and/or editing one or more data files, and sharing one or more applications, data files and/or displays.
  • the described client-server architecture supports seamless navigation between the supported asynchronous and synchronous activities in the collaboration space.
  • the client-server architecture supports data persistence so that data files associated with a collaboration space can be stored for later access.
  • the main disadvantage of this solution is that it does not provide for the possibility of sending a request for the transfer of rights/access to edit a digital object. Another difference is that in order to create a collaborative environment/space, you must send a request to the server.
  • the application describes a method for controlling access to and use of digital files stored in a file storage united in a network with several servers.
  • the method includes the following steps: requesting a server to access and use a file stored in a file storage, sending a request containing an identifier (ID) of the file to another server; each of the other servers accepting the request checks the internal block list to see if it contains a file identifier. If it is specified, the server returns an error message to the requesting server, but if not specified, it returns a success message; and the requesting server determines from all returned messages whether an error message exists.
  • ID an identifier
  • the first disadvantage of this solution is that it provides for sending a request to the server containing a request for access to edit a digital object, but it does not provide for the possibility of intercepting access for editing.
  • the second disadvantage is that the decision to transfer access to editing a digital object is made exclusively by the server.
  • the third disadvantage of this solution is that the system includes many servers. To implement the system described in this application, only one server is needed, which significantly reduces the required computing power and the cost of the system. It also mentions the ability to save files server, but does not describe the frequency of storage or the possibility of intermediate storage.
  • the first disadvantage of this solution is that it provides for sending a request to the server containing a request for access to edit a digital object, but it does not provide for the possibility of intercepting access for editing.
  • the second disadvantage is that the decision to transfer access to editing a digital object is made exclusively by the server.
  • the analogue also mentions the possibility of saving files by the server, but does not describe the frequency of saving or the possibility of intermediate saving.
  • the document tree is headed by an independently lockable and editable parent container that is used to store summary information and other information such as default formatting and other information covering the entire document.
  • the first disadvantage of this solution is that it provides for sending a request to the server containing a request for access to edit a digital object, but it does not provide for the possibility of intercepting access for editing.
  • the second drawback is that the decision to transfer access to editing a digital object is made exclusively by the server. Also in the analogue there is no periodic saving of the document in / files and the possibility of intermediate saving.
  • Another similar solution is the invention according to the patent US8429753B2 (publ. 23.04.2013; IPC: G06F 21/00). It describes implementation options related to systems and methods for controlling access to document files on a document server.
  • One example of the system includes document files stored on the document server, at least one of the document files referring to the file lock, and a document access processing module.
  • An exemplary document access processing module includes a file sharing processing module that determines the co-editing status of a client computer software application requesting access to a document file, and a file lock processing module that stores one or more file locks and manages setting, and resetting file locks.
  • An example document access processing module uses the software application's co-edit status and file/document lock status to determine whether the software application is allowed to have write access to the file/document.
  • the first disadvantage of this solution is that it provides for sending a request to the server containing a request for access to edit a digital object, but it does not provide for the possibility of intercepting access for editing.
  • the second drawback is that the decision to transfer access to editing a digital object is made exclusively by the server. Also, in the analogue there is no periodic saving of documents / files and the possibility of intermediate saving.
  • the objective of the claimed invention is to create and develop a system and method for effectively and safely managing the collaborative editing of digital objects with minimization of human participation, to optimize the process of creating digital objects.
  • the specified problem is solved thanks to such a technical result as ensuring the effectiveness of managing the joint editing of digital objects, as well as ensuring the security of digital objects in the co-editing mode, minimizing the degree of human intervention.
  • the specified objective is achieved including, but not limited to, thanks to: a. limiting the response time to the request of the second user to transfer the rights to edit the digital object; b. periodic formation of backup copies of a digital object in the process of its editing; c. transferring the rights to edit a digital object to the second user who requested this right, in case the response time to the request expires; d. transfer of editing rights using the server.
  • the technical result is achieved by the described method for managing the co-editing of digital objects, including the steps: sending the first user a request to the server to obtain rights to edit the digital object contained in the co-editing environment; granting by the server to the first user the rights to edit the digital object; sending the second user a request to transfer rights to edit the digital object; waiting by the server for the first user's response to the second user's request for a certain time.
  • the first user within a certain time has the opportunity to answer one of the following options: transfer the rights to edit the digital object to the second user; reject a request to transfer rights to edit a digital object to a second user; do not respond to the request to transfer rights to edit the digital object to the second user.
  • the first user transferred the rights to edit the digital object to the second user or did not respond to the request, with the help of the server: they revoke the rights to edit the digital object from the first user and grant the rights to edit the digital object to the second user.
  • the step at which the first user sends a request to the server to obtain the rights to edit the digital object contained in the co-editing environment, and the step of granting the server the rights to edit the digital object to the first user are necessary to include the first user in the co-editing environment , and also to ensure that the first user has a direct opportunity to edit this digital object.
  • the stage of sending a request by the second user to transfer rights to edit a digital object is necessary so that in the editing environment the second user has the ability to intercept editing rights digital object from the first user, if the first user is not currently editing the digital object.
  • the step of waiting for the server to respond from the first user to the second user's request for a certain amount of time is, in turn, necessary to enable the first user to respond to the second user's request.
  • the fact that the first user has the ability to transfer rights to edit the digital object for a certain time is necessary for the first user to voluntarily transfer his rights to edit the digital object to the second user.
  • the fact that the first user has the ability to reject a request to transfer rights to edit a digital object to a second user within a certain time is necessary so that the first user can reject the transfer of rights if the first user is currently editing this digital object.
  • the fact that the first user has the option not to respond to a request to transfer rights to edit the digital object to the second user is necessary to determine whether the first user is currently editing the digital object or not.
  • the server can revoke the rights from the first user and grant the rights to the second user, it is necessary to directly transfer the rights to edit the digital object from the first user second user.
  • blocking the user of exclusive rights to edit a digital object is necessary to prevent incompatible changes from being made to the digital object, that is, to ensure the security of the digital object.
  • the request may be sent directly to the first user. This may be necessary so that the first user can make their own decision about transferring editing rights.
  • a request may be sent to the server. This may be necessary if the server decides entirely on the transfer of editing rights. It is also possible to send a request to both the first user and the server.
  • the edited digital object Before the step of granting the right to edit the digital object to the second user, the edited digital object can be stored using the update module. In another embodiment, they can produce periodic saving digital objects using the update module. This can increase the security of data contained in digital objects.
  • the step of waiting for the response of the first user to the request of the second user can be performed within 1-15 minutes. This time is optimal for many tasks. In this case, periodic storage can be performed with a period of less waiting time. This will avoid loss of digital object data.
  • a notification may be sent to the first user that the rights to edit the digital object have been revoked by the server. This may inform the user that he no longer has rights to edit this digital object.
  • the server may first exclude the first user from the collaborative editing environment of the digital object and add it to the viewing environment. This may be necessary so that the first user, even after losing the rights to edit a digital object, can observe the editing process.
  • At least one digital object After saving at least one digital object, at least one digital object can be displayed using the viewing environment without being able to edit it. This may be necessary so that the first user, even after losing the rights to edit a digital object, can see significant changes made to a digital object during its editing.
  • a copy of the visual display of at least one digital object can be created using the server, the created copy can be transferred to the co-editing environment, and the resulting copy can be displayed using the co-editing environment.
  • Such an option may allow the first user to observe the entire editing process of the digital object.
  • a digital object co-editing control system configured for simultaneous operation of at least two users.
  • the system includes a server including memory and a processor.
  • the memory then includes at least one collaborative editing environment that includes at least one digital object.
  • the processor is configured to grant editing rights to the digital object contained in the collaborative editing environment; waiting for the first user's response to the second user's request to transfer rights to edit digital object for a certain time; and revoking the rights to edit the digital object contained in the co-editing environment.
  • the co-editing environment is configured in such a way that each user is able to: send a request to the editing rights server for the digital object contained in the co-editing environment; rejecting a request to transfer rights to another user to edit the digital object contained in the collaborative editing environment for a specified time; transferring rights to another user to edit the digital object contained in the collaborative editing environment for a certain time; and editing at least one digital object, provided that the user has been granted rights to edit this digital object using the server.
  • the server is needed to store the co-editing environment and its digital objects using memory, as well as to organize the process of transferring rights using the processor. Granting by the server to the first user the rights to edit the digital object is necessary to include the first user in the collaborative editing environment, as well as to ensure that the first user has the direct ability to edit this digital object. Waiting by the server for the first user's response to the second user's request for a certain time, in turn, is necessary in order to enable the first user to respond to the second user's request. And the combination of the possibility of granting and revoking rights by the server is necessary for the direct transfer of rights to edit a digital object from the first user to the second user.
  • the ability of the user to send a request to transfer the rights to edit a digital object to the server is necessary so that in the editing environment the user has the ability to intercept the rights to edit the digital object from another user if the other user is not currently editing the digital object.
  • the fact that the user has the ability to decline a request to transfer rights to edit a digital object to another user for a certain time is necessary so that the user can refuse the transfer of rights if the user is currently editing this digital object.
  • the fact that the user has the ability to transfer rights to edit a digital object for a certain time is necessary for the user to voluntarily transfer his rights to editing a digital object to another user.
  • the ability for users to edit a digital object is necessary for direct editing of a digital object, the editing rights of which are assigned to this user.
  • the server includes an update module connected to the memory may be necessary for intermediate savings of changes during editing of a digital object.
  • the update module can be configured to save the edited digital objects.
  • the storage may be a periodic storage. Periodic storage may be performed with a period less than the time to wait for the first user's response to the second user's request.
  • the server is configured in such a way that the first user's response time to the second user's request can be 1-15 minutes may be necessary for specific system tasks.
  • the server may also be configured to send notifications to users that the rights to edit a digital object have been revoked. This may inform the user that he no longer has rights to edit this digital object.
  • the server may include a viewing environment associated with the co-editing environment, and the server may be configured to exclude users from the co-editing environment of the digital object and add users to the viewing environment. This may be necessary so that the first user, even after losing the rights to edit a digital object, can observe the editing process.
  • the viewing environment can be configured to display at least one digital object from the collaborative editing environment without being able to edit it, and only display the digital objects with saved changes. This may also be necessary so that the first user, even after losing the rights to edit a digital object, can observe the process of editing it. At the same time, such an embodiment of displaying edited digital objects may allow displaying only significant changes made to the digital object.
  • the viewing environment may be configured to display the digital objects with all changes made to the digital objects. Such an option may allow the first user to observe the entire editing process of the digital object.
  • FIG. 1 is a flowchart illustrating a digital object co-editing control method according to the present invention.
  • FIG. 2 is a flowchart illustrating a method for controlling co-editing of digital objects with additional steps according to the present invention.
  • FIG. 3 is a schematic view of a digital object co-editing control system according to the present invention.
  • FIG. 4 is a schematic view of the digital object co-editing control system of the present invention with additional elements.
  • the present digital object co-editing control system and method can be applied to various co-editing environments that are capable of exclusive locking of a digital object to a user.
  • Exclusive locks protect digital objects from incompatible updates/changes. They can only be owned by one user at a time. Any user requesting an exclusive lock must wait for the digital object to be released and rights to it transferred. editing if another user currently owns an exclusive lock on the requested digital object.
  • FIG. 1 is a flowchart illustrating a digital object co-editing control method according to the present invention.
  • the first user sends a request to the server to obtain rights to edit the digital object. If the digital object is free, then the server grants the first user the rights to edit the digital object.
  • the second user sends a request to transfer the rights to edit the digital object, the editing rights of which currently belong to the first user. From the moment the request is sent, the server waits for the first user's response to the second user's request for a certain time.
  • first user revokes the rights to edit the digital object from the first user, and then grants editing rights digital object to the second user.
  • a client is a hardware or software component of a computing system that sends requests to a server.
  • the client program communicates with the server using a specific protocol. It can request some data from the server, manipulate data directly on the server, launch new processes on the server, and so on.
  • the client program can provide the data received from the server to the user or use it in some other way, depending on the purpose of the program.
  • a digital object is an object consisting of a structured sequence of bytes that has a name, a unique identifier, and attributes that describe its properties. In the context of the present invention, a digital object refers to any document, file, spreadsheet or any of their components placed in a digital environment.
  • the specific time during which the first user is expected to respond to the second user's request may be different, depending on
  • FIG. 2 is a flowchart illustrating a method for controlling co-editing of digital objects with additional steps according to the present invention.
  • the steps depicted therein and described below can be used in the digital object co-editing control method, in addition to the steps described above, individually, collectively, and in any combination.
  • the first user after the first user has been granted the rights to edit the digital object, the first user can edit the digital object. At the same time, in the process of work, they can save a digital object.
  • Saving can be done in several ways. Firstly, the user can save the changes made in the process of editing a digital object independently and at any stage of editing. Secondly, it is possible to provide for the periodic saving of changes made to the digital object. In this case, if a periodic saving of a digital object is provided, then it is preferable that the period for saving changes be less than the time the server waits for the first user's response to the second user's request. If the period is greater than or equal to the waiting time, then there is a risk of losing data about the changes that were made by the first user to the digital object if it is transferred to the second user.
  • a third way of saving a digital object can be used - namely, saving the changes made by the first user before directly transferring the rights to edit this digital object to the second user. That is, even if the changes made were not saved through periodic saving, they will in any case be saved before the transfer of rights. All three of these storage methods can be used individually, in combination, or in any combination.
  • the second user may send a request to transfer editing rights to the first user with these rights, the server, or the first user and the server at the same time.
  • the transfer of editing rights may not be carried out at all, due to the fact that the first user may not be connected to the server at the time the request was sent by the second user, and since. If the request was not sent to the server, then the server cannot grant the rights to edit the digital object to the second user. In other cases, even if the first user is not connected to the server and cannot respond to the request, the server can revoke edit rights from the first user and grant edit rights to the second user.
  • the time the server waits for the response of the first user to the request of the second user can be set in the range of 1-15 minutes, depending on the specific objectives of the method. If you set the time less than a minute, the user may not have enough time to respond to the request he received, because he will need to, for example, switch from editing to reading the text of the request, read it, understand what digital object is being requested and respond to the request. If the waiting time is more than 15 minutes, then this will significantly delay the user experience, because when submitting an edit request, the second user can expect to receive editing rights to the digital object as soon as possible in order to start editing it sooner. In this regard, a waiting time of 1-15 minutes is the optimal waiting time. At the same time, if the function of periodically saving a digital object is added, the saving period should be set to less than 1-15 minutes or it should be possible to save the changes made by the first user before directly transferring the rights to edit this digital object to the second user.
  • the first user may also be excluded from the collaborative editing environment of digital objects. In this case, if a viewing environment is provided, then the first user can be added to the viewing environment to enable him to observe the editing of the digital object.
  • At least one digital object can be displayed using the viewing environment without being able to edit it. That is, after each save of the changes made to the digital object, a visual copy is created using the server and the created copy is transferred to the viewing environment. Using the viewing environment, in turn, display the resulting copy.
  • saving a digital object is a trigger event for displaying the digital object in the viewing environment. In this case, the first user has the opportunity to observe the introduction of significant saved changes to the digital object while in the viewing environment.
  • a copy of the visual display of at least one digital object in the process of editing a digital object, can be created using a server, the created copy can be transferred to a co-editing environment, and the resulting copy can be displayed using the co-editing environment.
  • Such an option may allow the first user to observe the entire editing process of the digital object. It differs from the previously described method in that it does not have a trigger event. All changes are rendered in the viewing environment continuously and/or at certain intervals. In this case, it is preferable to set a certain periodicity up to 1 minute. Thus, the first user has the opportunity to observe the current state of the digital object in real time while in the viewing environment.
  • a method for controlling co-editing of digital objects while including all the additional steps shown in FIG. 2 is carried out as follows. First, the first user sends a request to the server to obtain rights to edit the digital object. If the digital object is free, then the server grants the first user the rights to edit the digital object. After granting rights to edit a digital object to the first user, the first user can editing a digital object. At the same time, during the editing process, the first user can independently save the changes made to the digital object at any stage of editing. In parallel, the changes made to the digital object are periodically saved. Immediately or after some time, the second user sends a request to the first user and/or server to transfer the rights to edit the digital object, the editing rights of which currently belong to the first user.
  • the server waits for the first user's response to the second user's request for a certain time.
  • the first user managed to respond to the request within a certain time and refused to transfer the rights to edit the digital object to the second user then the rights to edit the digital object are not granted to the second user. Otherwise, namely, if the first user did not have time to respond to the request of the second user or managed to transfer the editing rights to the second user, then using the server, they first save the changes made to the digital object by the first user, and then revoke the editing rights digital object from the first user.
  • a notification is sent to the first user that the rights to edit the digital object have been revoked, and the first user is excluded from the co-editing environment. After the exclusion, the first user can be added to the browsing environment. Further, the rights to edit the digital object are granted to the second user.
  • the server waits for a response for 1-15 minutes, and periodic saving of changes in the digital object is performed with a period of less than 1-15 minutes.
  • a copy of the visual display of at least one digital object is created and the created copy is transferred to the viewing environment using the server. After that, the resulting copy is displayed using the viewing environment.
  • the server checks whether the connection of the first user with the server is established. Those. whether the first user with editing rights for this digital object is connected to the co-editing environment. If this connection is not established, then the server, without waiting for the first user's response, revokes the rights to edit the digital object from the first user and grants rights to edit the digital object to the second user.
  • FIG. 3 is a schematic view of a digital object co-editing control system according to the present invention.
  • the digital object co-editing management system is configured for simultaneous operation of at least two users 1, 2 and includes a server 3.
  • Server 3 includes a memory 6 and a processor 7.
  • the memory 6 of the server 3 includes at least one co-editing environment 5 , including at least one digital object 4.
  • the processor 7 is configured to: grant editing rights to the digital object 4 contained in the collaborative editing environment 5; waiting for the response of the first user 1 to the request of the second user 2 to transfer the rights to edit the digital object 4 within a certain time, as well as to revoke the rights to edit the digital object 4 contained in the co-editing environment 5.
  • the co-editing environment 5 is configured in such a way that each user 1, 2 had the ability to: send a request to the server 3 to transfer the rights to edit the digital object 4; rejecting a request to transfer rights to another user 1, 2 to edit a digital object 4 for a certain time; transferring rights to another user 1, 2 to edit the digital object 4 for a certain time; as well as editing at least one digital object 4, provided that the user 1, 2, using the server 3, was granted the rights to edit this digital object 4.
  • the co-editing environment 5 may be an integrated development environment (hereinafter - IDS) (English Integrated development environment - IDE), also called a single development environment (ECR). IRS is a set of software tools used by programmers to develop software (SW).
  • the IDE may include a text editor, a translator (compiler and/or interpreter), build automation tools, a debugger, etc.
  • the IDE may also contain tools for integration with version control systems and various tools to simplify the construction of a graphical user interface.
  • Many modern development environments also include a class browser, an object inspector, and a class hierarchy diagram for use in object-oriented software development.
  • IDEs are usually designed for multiple programming languages such as IntelliJ IDEA, NetBeans, Eclipse, Qt Creator, Geany, Embarcadero RAD Studio, Code::Blocks, Xcode, or Microsoft Visual Studio, but there is also an IDE for one specific programming language - such as Visual Basic, Delphi, Dev-C ++.
  • a digital object 4 may mean, for example, a part of the code (some lines of code) or one of the files included in the total code.
  • a special case of the IDE is a visual development environment that includes the ability to visually edit the program interface.
  • a widget, a form, a control element, etc. can be considered as a digital object 4.
  • Variants may also be provided in which a co-editing environment is a set of software tools used by users to edit files, tables, and/or documents.
  • a co-editing environment is a set of software tools used by users to edit files, tables, and/or documents.
  • user 1, 2 can be assigned the rights to edit a specific column, row, cell, sheet, entire table, etc.
  • the column, row, cell, sheet, and the entire table are digital objects 4.
  • digital object 4 can be a term, a paragraph, a page, or the entire document.
  • the digital object 4 is some strictly defined part of it or the entire digital file.
  • the first 1 and second 2 users are people interacting with the digital objects 4 of the collaborative editing environment 5 via the user's client.
  • a client is a hardware or software component of a computing system that sends requests to a server.
  • the client program communicates with the server 3 using a specific protocol. It can request any data from server 3, manipulate data directly on server 3, launch new processes on server 3, etc.
  • the client program can provide data received from server 3 to user 1, 2 or use it in some other way, in depending on the purpose of the program.
  • the co-editing control system shown in FIG. 3 works as follows.
  • the first user 1 sends a request to server 3 to obtain rights to edit digital object 4, if digital object 4 is free, then using server 3, the first user 1 is granted rights to edit this digital object 4.
  • the second user 2 sends a request to transfer rights to edit a digital object 4, the editing rights of which currently belong to the first user 1, the server 3 waits for the response of the first user 1 to the request of the second user 2 for a certain amount of time. In this case, if the first user 1 managed to respond to the request within a certain time and refused to transfer the rights to edit the digital object 4 to the second user 2, then the server 3 does not grant the rights to edit the digital object 4 to the second user 2.
  • the rights to edit the digital object 4 are first revoked from the first user 1, and then grant the rights to edit the digital object 4 to the second user 2.
  • the digital object 4 is stored in the collaborative editing environment 5 included in the memory 6 of the server 3, and all actions performed by the server 3 are carried out using the processor 7 of the server 3.
  • FIG. 4 is a schematic view of a digital object co-editing control system with additional elements according to the present invention.
  • the items depicted therein and described below can be used in the digital object co-editing management system, in addition to the items described above, individually, collectively, and in any combination.
  • the server 3 may include an update module 8 connected to the memory 6.
  • the update module 8 is designed to update the data of the collaborative editing environment 5 stored in the memory 6.
  • the update module 8 may be configured to save changes to digital objects 4 contributed by users 1, 2.
  • the update module 8 can be configured to save changes in several ways. Firstly, the user 1, 2 can save the changes made during the editing process of the digital object 4 by means of the updater 8 independently and at any stage of editing. Secondly, it is possible to provide for the periodic saving of changes made to the digital object 4 by the update module 8. In this case, if the digital object 4 is periodically saved, it is preferable that the period for saving the changes is less than the time the server 3 waits for the first response. user 1 to the request of the second user 2. If the period is greater than or equal to the waiting time, then there is a risk of losing data about the changes that were made by the first user 1 to the digital object 4 if it is transferred to the second user 2, as described earlier .
  • a third way of saving the digital object 4 can be used, namely saving the changes made by the first user 1 by the update module 8 before directly transferring the rights to edit this digital object 4 to the second user 2. All these three methods of saving can be used by the update module 8 as separately, or in total or any combination.
  • the processor 7 may be configured such that the time the server 3 waits for a response from the first user 1 to a request from the second user 2 may be set in the range of 1-15 minutes, depending on the specific tasks of the system. If you set the time less than a minute, user 1 may not have enough time to respond to the request he received, because he will need to, for example, switch from editing to reading the text of the request, read it, understand which digital object 4 is being requested and respond to the request. If the waiting time is more than 15 minutes, then this will significantly delay the work process for users 1, 2, because when submitting an edit request, the second user 2 can expect to receive the rights to edit the digital object 4 as soon as possible in order to start editing it sooner.
  • a waiting time of 1-15 minutes is the optimal waiting time.
  • the saving period should be set to less than 1-15 minutes or it should be possible to save the changes made by the first user 1 before directly transferring the rights to edit this digital object 4 to the second user 2.
  • the processor 7 of the server 3 may further be configured to send notifications to the users 1, 2 that the rights to edit the digital object 4 have been revoked. This may allow the user 1, 2 to be informed of the loss of rights to edit a particular digital object 4.
  • the processor 7 may send a notification through the interface of the collaborative editing environment 5, in the browser during active use, or as an email notification.
  • the notification may include at least the name and/or some identifier of the digital object 4, the rights to edit which have been revoked.
  • the notification may also include the identifier of the user 1, 2 to whom the rights to edit the digital object 4 were transferred and/or the current status of the digital object 4.
  • the server 3 may further include a viewing environment 9 associated with the collaborative editing environment 5.
  • the viewing environment 9 is intended to display changes to the digital object 4, part of the digital objects 4 or all digital objects 4 included in the co-editing environment 5.
  • the viewing environment 9 can be implemented in several ways. Firstly, the viewing environment 9 can only display the digital objects 4 as they are currently stored in the memory 6. That is, if the updater 8 periodically stores the digital objects 4 times per minute, then the display of the digital objects 4 in the viewer 9 will change every minute at the moment the update module 8 saves the changes.
  • object 4 will be implemented with each change made to digital object 4 in co-editing environment 5.
  • Viewing environment 9 will be a “mirror” of co-editing environment 5, which does not provide the functionality of co-editing environment 5, but only displays digital objects 4 in their current condition.
  • the processor 7 of the server 3 can be further configured to exclude users 1, 2 from the co-editing environment 5 of the digital object 4, as well as add users 1, 2 to the viewing environment 9 This may be necessary in order to allow user 1, 2 to monitor the progress of editing digital object 4, and also to allow user 1, 2 to know when another user 1, 2 has stopped editing digital object 4. Also this may allow identification of currently unedited digital objects 4.
  • the digital object co-editing control system when all additional elements shown in FIG. 4 works as follows.
  • the first user 1 sends a request to the server 3 to obtain the rights to edit the digital object 4, if the digital object 4 is free, then using the server 3, the first user 1 is granted the rights to edit this digital object 4. After the server 3 grants the rights to the first user 1 to editing the digital object 4, the first user can edit the digital object 4 and save changes during editing using the update module 8.
  • the update module 8 also periodically stores the digital object 4 in the memory 6.
  • the second user 2 sends a transfer request for editing a digital object 4, the editing rights of which currently belong to the first user 1, the server 3 waits for the response of the first user 1 to the request of the second user 2 for a certain time (1-15 minutes).
  • the server 3 does not grant the rights to edit the digital object 4 to the second user 2. Otherwise, namely, if the first user 1 did not have time to respond to the request of the second user 2 or managed to transfer the editing rights to the second user 2, then with the help of the server 3, the rights to edit the digital object 4 are first revoked from the first user 1, and then grant the rights to edit the digital object 4 to the second user 2. After that, the server 3 sends a notification to the first user 1 that the rights to edit the digital object 4 have been revoked, and excludes the first user 1 from the co-editing environment 5.
  • the first user 1 can be added to the viewing environment 9.
  • the current state of the digital object 4 is stored in memory 6 using the update module 8.
  • the rights to edit the digital object 4 are granted to the second user 2. Waiting for a response by the server 3 while are carried out for 1-15 minutes, and periodic saving of changes in the digital object 4 is carried out with a period of less than 1-15 minutes.
  • a copy of the visual display of at least one digital object 4 is created and the created copy is transferred to the viewing environment 9 using the server 3. After that, the resulting copy is displayed using the viewing environment 9.
  • the digital object 4 is stored in the collaborative editing environment 5 included in the memory 6 of the server 3, and all actions performed by the server 3 are carried out using the processor 7 of the server 3.

Abstract

The invention relates to the field of computer technology for managing the collaborative editing of digital objects. The technical result consists in providing more secure management of the collaborative editing of digital objects and minimizing human involvement. This technical result is achieved in that the collaborative editing environment is configured so that each user is able to send to a server a request for transfer of the rights to edit a digital object contained in the collaborative editing environment; reject, during a set period of time, a request for transfer of the rights to edit a digital object contained in the collaborative editing environment to another user; transfer, during a set period of time, the rights to edit a digital object contained in the collaborative editing environment to another user; edit at least one digital object, provided that the rights to edit the given digital object have been granted to the user by the server.

Description

СИСТЕМА И СПОСОБ УПРАВЛЕНИЯ СОВМЕСТНЫМ РЕДАКТИРОВАНИЕМ ЦИФРОВЫХ ОБЪЕКТОВ SYSTEM AND METHOD FOR MANAGING JOINT EDITING OF DIGITAL OBJECTS
Область техники Technical field
[0001] Настоящее изобретение относится к системам и способам управления совместным редактированием цифровых объектов, позволяющим эффективно редактировать цифровые объекты одновременно нескольким пользователям и при этом обеспечивать безопасность цифровых объектов. [0001] The present invention relates to systems and methods for managing collaborative editing of digital objects, allowing multiple users to efficiently edit digital objects simultaneously while maintaining the security of digital objects.
Уровень техники State of the art
[0002] Программные системы состоят из множества взаимосвязанных цифровых объектов. Для корректной работы систем в целом требуется согласованное изменение нескольких объектов или частей одного объекта, в то время как разработка больших автоматизированных систем требует совместной работы нескольких разработчиков. Одновременное редактирование одного цифрового объекта несколькими разработчиками может привести к конфликтам или внесению несовместимых изменений. [0002] Software systems are composed of a plurality of interconnected digital objects. For the correct operation of systems as a whole, a coordinated change of several objects or parts of one object is required, while the development of large automated systems requires the joint work of several developers. Simultaneous editing of the same digital object by multiple developers may result in conflicts or incompatible changes.
[0003] Стандартный способ решения этой проблемы состоит в возможности получения эксклюзивного доступа к объекту. Изначально все объекты являются свободными, и перед началом редактирования один из разработчиков должен получить доступ к редактированию цифрового объекта, получив эксклюзивную блокировку. Через какое-то время разработчик, получивший эксклюзивную блокировку цифрового объекта, может освободить его. При этом, пока цифровой объект находится в его эксклюзивной блокировке, он может как вносить изменения, так и оставить объект неизмененным. В период времени, когда объект находится под эксклюзивной блокировкой, другие разработчики не могут вносить изменения в цифровой объект. [0003] The standard way to solve this problem is to be able to obtain exclusive access to the object. Initially, all objects are free, and before editing begins, one of the developers must gain access to editing the digital object, having received an exclusive lock. After some time, a developer who has obtained an exclusive lock on a digital object can release it. At the same time, while a digital object is in its exclusive lock, it can both make changes and leave the object unchanged. During the period of time when an object is under an exclusive lock, other developers cannot make changes to the digital object.
[0004] Недостаток такого подхода состоит в том, что разработчик может удерживать объект дольше необходимого, затрудняя или делая невозможной работу других разработчиков. Эта проблема зачастую решается путем введения в систему привилегированных пользователей, которые способны снять блокировку обычного пользователя. Однако это усложняет процесс, требуя наличия постоянной вовлеченности такого привилегированного пользователя. [0004] The disadvantage of this approach is that the developer can hold the object longer than necessary, making it difficult or impossible for other developers to work. This problem is often solved by introducing privileged users into the system who are able to unlock the normal user. However, this complicates the process by requiring the continued involvement of such a privileged user.
[0005] Известно изобретение по патенту US10817572B2 (опубл. 27.10.2020; МПК: G06F 13/00; G06F 16/93; G06Q 10/10), в котором описываются системы и способы, обеспечивающие архитектуру клиент-сервер, способную поддерживать множество асинхронных и синхронных действий совместной работы в так называемом месте совместной работы. Под действиями подразумеваются: общение в чате, просмотр и/или редактирование одного или нескольких файлов данных, а также совместное использование одного или нескольких приложений, файлов данных и/или дисплеев. Описанная архитектура клиент-сервер поддерживает плавную навигацию между поддерживаемыми асинхронными и синхронными действиями в месте совместной работы. Кроме того, архитектура клиент-сервер поддерживает сохранение данных, так что файлы данных, связанные с местом совместной работы, могут быть сохранены для последующего доступа. Главным недостатком такого решения является то, что в нем не предусмотрена возможность отправки запроса на передачу прав/доступа на редактирование цифрового объекта. Еще одним отличием является то, что для создания среды/места совместной работы необходимо отправить запрос на сервер. [0005] An invention is known according to patent US10817572B2 (publ. 10/27/2020; IPC: G06F 13/00; G06F 16/93; G06Q 10/10), which describes systems and methods that provide a client-server architecture capable of supporting multiple asynchronous and synchronized actions of joint work in the so-called place collaboration. Activities include: chatting, viewing and/or editing one or more data files, and sharing one or more applications, data files and/or displays. The described client-server architecture supports seamless navigation between the supported asynchronous and synchronous activities in the collaboration space. In addition, the client-server architecture supports data persistence so that data files associated with a collaboration space can be stored for later access. The main disadvantage of this solution is that it does not provide for the possibility of sending a request for the transfer of rights/access to edit a digital object. Another difference is that in order to create a collaborative environment/space, you must send a request to the server.
[0006] Также известно решение, описываемое в заявке US20140280347A1 (опубл. 18.09.2014; МПК: G06F 17/30). В заявке описан способ управления доступом и использованием цифровых файлов, хранящихся в файловом хранилище, объединенном в сеть с несколькими серверами. Способ включает следующие шаги: запрос сервера для получения доступа и использования файла, хранящегося в файловом хранилище, отправку другому серверу запроса, содержащего идентификатор (ID) файла; каждый из других серверов, принимающих запрос, проверяет внутренний список блокировок, чтобы установить, указан ли в нем идентификатор файла. Если он указан, сервер возвращает сообщение об ошибке запросившему серверу, но если не указан, то возвращает сообщение об успешном завершении; и запрашивающий сервер определяет из всех возвращаемых сообщений, существует ли сообщение об ошибке. Если существует, то не обращается к файлу и не использует его, и отправляет повторные запросы через заранее определенный интервал времени. Но если не существует, то обращается к файлу и использует его, и отправляет сообщение уведомление всем остальным серверам по окончании использования файла. Первым недостатком этого решения является то, что в нем предусмотрена отправка запроса на сервер, содержащего запрос на доступ к редактированию цифрового объекта, однако не предусмотрена возможность перехвата доступа на редактирование. Вторым недостатком является то, что решение о передаче доступа на редактирования цифрового объекта принимается исключительно сервером. Третьим недостатком данного решения является то, что система включает множество серверов. Для осуществления системы, описанной в настоящей заявке, необходим лишь один сервер, что значительно уменьшает требуемые вычислительные мощности и себестоимость системы. Также в аналоге упоминается возможность сохранения файлов сервером, однако не описывается частота сохранения или возможность промежуточного сохранения. [0006] Also known is the solution described in the application US20140280347A1 (publ. 18.09.2014; IPC: G06F 17/30). The application describes a method for controlling access to and use of digital files stored in a file storage united in a network with several servers. The method includes the following steps: requesting a server to access and use a file stored in a file storage, sending a request containing an identifier (ID) of the file to another server; each of the other servers accepting the request checks the internal block list to see if it contains a file identifier. If it is specified, the server returns an error message to the requesting server, but if not specified, it returns a success message; and the requesting server determines from all returned messages whether an error message exists. If it exists, it does not access or use the file, and sends repeated requests after a predetermined time interval. But if it doesn't exist, it accesses the file and uses it, and sends a notification message to all other servers when the file is finished. The first disadvantage of this solution is that it provides for sending a request to the server containing a request for access to edit a digital object, but it does not provide for the possibility of intercepting access for editing. The second disadvantage is that the decision to transfer access to editing a digital object is made exclusively by the server. The third disadvantage of this solution is that the system includes many servers. To implement the system described in this application, only one server is needed, which significantly reduces the required computing power and the cost of the system. It also mentions the ability to save files server, but does not describe the frequency of storage or the possibility of intermediate storage.
[0007] Еще одним сходным решением является изобретение по патенту AU2011320745В2 (опубл. 27.11.2014; МПК: G06F 9/44; G06F 15/16; G06F 17/21), в котором описывается сервис онлайн-документов, предоставляющийся серверами приложений для редактирования пользователями. Документы хранятся в структурах на основе компонентов в локальной памяти сервера приложений для обеспечения детализации при совместном редактировании и разрешении конфликтов. Блокировка на уровне компонентов используется для минимизации конфликтов, связанных с одновременным редактированием пользователей, а также для отображения присутствия других пользователей. Изменения структуры на основе компонентов сохраняются, чтобы фиксировать изменения компонентов и синхронизировать действия по сохранению документа. Когда изменения сохраняются одним или несколькими клиентами на сервере, они могут быть сохранены в текущей версии серверного документа, даже если этот документ отличается от версии, используемой для создания текущего представления на клиентском устройстве. Первым недостатком этого решения является то, что в нем предусмотрена отправка запроса на сервер, содержащего запрос на доступ к редактированию цифрового объекта, однако не предусмотрена возможность перехвата доступа на редактирование. Вторым недостатком является то, что решение о передаче доступа на редактирования цифрового объекта принимается исключительно сервером. Также в аналоге упоминается возможность сохранения файлов сервером, однако не описывается частота сохранения или возможность промежуточного сохранения. [0007] Another similar solution is the invention according to the patent AU2011320745B2 (publ. 11/27/2014; IPC: G06F 9/44; G06F 15/16; G06F 17/21), which describes an online document service provided by application servers for editing users. Documents are stored in component-based structures in the application server's local memory to provide granularity for co-authoring and conflict resolution. Component-level locking is used to minimize conflicts associated with simultaneous editing of users, as well as to indicate the presence of other users. Component-based design changes are persisted to capture component changes and keep document save actions in sync. When changes are saved by one or more clients on the server, they can be saved to the current version of the server document, even if that document is different from the version used to create the current view on the client device. The first disadvantage of this solution is that it provides for sending a request to the server containing a request for access to edit a digital object, but it does not provide for the possibility of intercepting access for editing. The second disadvantage is that the decision to transfer access to editing a digital object is made exclusively by the server. The analogue also mentions the possibility of saving files by the server, but does not describe the frequency of saving or the possibility of intermediate saving.
[0008] Также среди сходных решений есть изобретение по патенту US7249314B2 (опубл. 24.07.2007; МПК: G06F 15/00). В данном источнике раскрыты система и способы одновременного редактирования документа двумя или более пользователями. Документ разделен на несколько разделов. Каждый раздел хранится в отдельном контейнере данных, который является частью дерева документа. Главная копия дерева документов доступна серверу, который передает все или часть дерева документов двум или более клиентам, каждый из которых управляется пользователем. Клиенты могут независимо блокировать разные разделы, позволяя пользователям одновременно редактировать разные разделы. Когда пользователь завершает редактирование раздела, измененный раздел сохраняется на главном сервере и транслируется другим пользователям. Дерево документа возглавляется независимо блокируемым и редактируемым родительским контейнером, который используется для хранения сводной информации и другой информации, такой как форматирование по умолчанию и другая информация, охватывающая весь документ. Первым недостатком этого решения является то, что в нем предусмотрена отправка запроса на сервер, содержащего запрос на доступ к редактированию цифрового объекта, однако не предусмотрена возможность перехвата доступа на редактирование. Вторым недостатком является то, что решение о передаче доступа на редактирование цифрового объекта принимается исключительно сервером. Также в аналоге отсутствует периодическое сохранение документе в/файлов и возможность промежуточного сохранения. [0008] Also among similar solutions is an invention according to patent US7249314B2 (publ. 24.07.2007; IPC: G06F 15/00). This source discloses a system and methods for simultaneous editing of a document by two or more users. The document is divided into several sections. Each section is stored in a separate data container, which is part of the document tree. The master copy of the document tree is available to the server, which transfers all or part of the document tree to two or more clients, each of which is controlled by a user. Clients can independently lock different sections, allowing users to edit different sections at the same time. When a user finishes editing a section, the modified section is stored on the main server and broadcast to other users. The document tree is headed by an independently lockable and editable parent container that is used to store summary information and other information such as default formatting and other information covering the entire document. The first disadvantage of this solution is that it provides for sending a request to the server containing a request for access to edit a digital object, but it does not provide for the possibility of intercepting access for editing. The second drawback is that the decision to transfer access to editing a digital object is made exclusively by the server. Also in the analogue there is no periodic saving of the document in / files and the possibility of intermediate saving.
[0009] Другим сходным решением является изобретение по патенту US8429753B2 (опубл. 23.04.2013; МПК: G06F 21/00). В нем описываются варианты реализации, относящиеся к системам и методам управления доступом к файлам документов на сервере документов. Один пример системы включает файлы документов, хранящиеся на сервере документов, по меньшей мере, один из файлов документов, ссылающихся на блокировку файла, и модуль обработки доступа к документу. Примерный модуль обработки доступа к документу включает в себя модуль обработки совместного использования файлов, который определяет статус совместного редактирования программного приложения клиентского компьютера, запрашивающего доступ к файлу документа, и модуль обработки блокировки файлов, который хранит одну или несколько блокировок файлов и управляет настройкой, и сброс файловых блокировок. Пример модуля обработки доступа к документу использует статус совместного редактирования программного приложения и статус блокировки файла/документа, чтобы определить, разрешено ли приложению программного обеспечения иметь доступ для записи в файл/документ. Первым недостатком этого решения является то, что в нем предусмотрена отправка запроса на сервер, содержащего запрос на доступ к редактированию цифрового объекта, однако не предусмотрена возможность перехвата доступа на редактирование. Вторым недостатком является то, что решение о передаче доступа на редактирование цифрового объекта принимается исключительно сервером. Также, в аналоге отсутствует периодическое сохранение документов/файлов и возможность промежуточного сохранения. [0009] Another similar solution is the invention according to the patent US8429753B2 (publ. 23.04.2013; IPC: G06F 21/00). It describes implementation options related to systems and methods for controlling access to document files on a document server. One example of the system includes document files stored on the document server, at least one of the document files referring to the file lock, and a document access processing module. An exemplary document access processing module includes a file sharing processing module that determines the co-editing status of a client computer software application requesting access to a document file, and a file lock processing module that stores one or more file locks and manages setting, and resetting file locks. An example document access processing module uses the software application's co-edit status and file/document lock status to determine whether the software application is allowed to have write access to the file/document. The first disadvantage of this solution is that it provides for sending a request to the server containing a request for access to edit a digital object, but it does not provide for the possibility of intercepting access for editing. The second drawback is that the decision to transfer access to editing a digital object is made exclusively by the server. Also, in the analogue there is no periodic saving of documents / files and the possibility of intermediate saving.
Сущность изобретения The essence of the invention
[00010] Задачей заявляемого изобретения является создание и разработка системы и способа эффективного и безопасного управления совместным редактированием цифровых объектов с минимизацией человеческого участия, для оптимизации процесса создания цифровых объектов. [00010] The objective of the claimed invention is to create and develop a system and method for effectively and safely managing the collaborative editing of digital objects with minimization of human participation, to optimize the process of creating digital objects.
[00011] Указанная задача решается благодаря такому техническому результату, как обеспечение эффективности управления совместным редактированием цифровых объектов, а также обеспечение безопасности цифровых объектов в режиме совместного редактирования, минимизирующее степень вмешательства человека. Указанная задача достигается в том числе, но не ограничиваясь, благодаря: a. ограничению времени ответа на запрос второго пользователя о передаче прав на редактирование цифрового объекта; b. периодическому формированию резервных копий цифрового объекта в процессе его редактирования; c. передаче прав на редактирование цифрового объекта второму пользователю, запросившему это право, в случае истечения времени ответа на запрос; d. передаче прав на редактирование при помощи сервера. [00011] The specified problem is solved thanks to such a technical result as ensuring the effectiveness of managing the joint editing of digital objects, as well as ensuring the security of digital objects in the co-editing mode, minimizing the degree of human intervention. The specified objective is achieved including, but not limited to, thanks to: a. limiting the response time to the request of the second user to transfer the rights to edit the digital object; b. periodic formation of backup copies of a digital object in the process of its editing; c. transferring the rights to edit a digital object to the second user who requested this right, in case the response time to the request expires; d. transfer of editing rights using the server.
[00012] Более полно технический результат достигается описанным способом управления совместным редактированием цифровых объектов, включающим этапы: отправки первым пользователем запроса на сервер для получения прав на редактирование цифрового объекта, содержащегося в среде совместного редактирования; предоставления сервером первому пользователю прав на редактирование цифрового объекта; отправки вторым пользователем запроса на передачу прав на редактирование цифрового объекта; ожидания сервером ответа первого пользователя на запрос второго пользователя в течение определенного времени. При этом, первый пользователь в течение определенного времени имеет возможность ответить одним из следующих вариантов: передать права на редактирование цифрового объекта второму пользователю; отклонить запрос на передачу прав на редактирование цифрового объекта второму пользователю; не отвечать на запрос передачу прав на редактирование цифрового объекта второму пользователю. Причем, если первый пользователь передал права на редактирование цифрового объекта второму пользователю или не ответил на запрос, при помощи сервера: отзывают права на редактирование цифрового объекта у первого пользователя и предоставляют права на редактирование цифрового объекта второму пользователю. [00012] More fully, the technical result is achieved by the described method for managing the co-editing of digital objects, including the steps: sending the first user a request to the server to obtain rights to edit the digital object contained in the co-editing environment; granting by the server to the first user the rights to edit the digital object; sending the second user a request to transfer rights to edit the digital object; waiting by the server for the first user's response to the second user's request for a certain time. In this case, the first user within a certain time has the opportunity to answer one of the following options: transfer the rights to edit the digital object to the second user; reject a request to transfer rights to edit a digital object to a second user; do not respond to the request to transfer rights to edit the digital object to the second user. Moreover, if the first user transferred the rights to edit the digital object to the second user or did not respond to the request, with the help of the server: they revoke the rights to edit the digital object from the first user and grant the rights to edit the digital object to the second user.
[00013] При этом этап, на котором производят отправку первым пользователем запроса на сервер для получения прав на редактирование цифрового объекта, содержащегося в среде совместного редактирования, и этап предоставления сервером первому пользователю прав на редактирование цифрового объекта необходимы для включения первого пользователя в среду совместного редактирования, а также для того, чтобы первый пользователь имел непосредственную возможность редактирования этого цифрового объекта. Этап отправки вторым пользователем запроса на передачу прав на редактирование цифрового объекта необходим для того, чтобы в среде редактирования второй пользователь имел возможность перехватывать права на редактирование цифрового объекта у первого пользователя, в случае если первый пользователь на данный момент не осуществляет редактирование цифрового объекта. Этап ожидания сервером ответа первого пользователя на запрос второго пользователя в течение определенного времени, в свою очередь, необходим для того, чтобы дать возможность первому пользователю отреагировать на запрос второго пользователя. То, что первый пользователь имеет возможность передачи прав на редактирование цифрового объекта в течение определенного времени, необходимо для того, чтобы первый пользователь мог добровольно передать свои права на редактирование цифрового объекта второму пользователю. То, что первый пользователь имеет возможность отклонить запрос на передачу прав на редактирование цифрового объекта второму пользователю в течение определенного времени, необходимо для того, чтобы первый пользователь мог отклонить передачу прав, в случае если на данный момент первый пользователь осуществляет редактирование этого цифрового объекта. То, что первый пользователь имеет возможность не отвечать на запрос на передачу прав на редактирование цифрового объекта второму пользователю, необходимо, чтобы определить, редактирует ли первый пользователь цифровой объект на данный момент или нет. То, что, в случае если первый пользователь передал права на редактирование цифрового объекта второму или не ответил на запрос, при помощи сервера могут отозвать права у первого пользователя и предоставлять права второму пользователю, необходимо для непосредственного осуществления передачи прав на редактирование цифрового объекта от первого пользователя второму пользователю. В целом, блокирование за пользователем эксклюзивных прав на редактирование цифрового объекта необходимо для предотвращения внесения в цифровой объект несовместимых изменений, то есть, обеспечения безопасности цифрового объекта. [00013] At the same time, the step at which the first user sends a request to the server to obtain the rights to edit the digital object contained in the co-editing environment, and the step of granting the server the rights to edit the digital object to the first user are necessary to include the first user in the co-editing environment , and also to ensure that the first user has a direct opportunity to edit this digital object. The stage of sending a request by the second user to transfer rights to edit a digital object is necessary so that in the editing environment the second user has the ability to intercept editing rights digital object from the first user, if the first user is not currently editing the digital object. The step of waiting for the server to respond from the first user to the second user's request for a certain amount of time is, in turn, necessary to enable the first user to respond to the second user's request. The fact that the first user has the ability to transfer rights to edit the digital object for a certain time is necessary for the first user to voluntarily transfer his rights to edit the digital object to the second user. The fact that the first user has the ability to reject a request to transfer rights to edit a digital object to a second user within a certain time is necessary so that the first user can reject the transfer of rights if the first user is currently editing this digital object. The fact that the first user has the option not to respond to a request to transfer rights to edit the digital object to the second user is necessary to determine whether the first user is currently editing the digital object or not. The fact that, if the first user transferred the rights to edit the digital object to the second one or did not respond to the request, the server can revoke the rights from the first user and grant the rights to the second user, it is necessary to directly transfer the rights to edit the digital object from the first user second user. In general, blocking the user of exclusive rights to edit a digital object is necessary to prevent incompatible changes from being made to the digital object, that is, to ensure the security of the digital object.
[00014] На этапе отправки вторым пользователем запроса на передачу прав на редактирование цифрового объекта запрос могут отправлять напрямую первому пользователю. Это может быть необходимо для того, чтобы первый пользователь мог самостоятельно принять решение о передаче прав на редактирование. В другом варианте могут отправлять запрос серверу. Это может быть нужно, в случае если сервер полностью принимает решение о передаче прав на редактирование. Также возможен вариант отправки запроса и первому пользователю, и серверу. [00014] At the stage of sending the second user a request to transfer rights to edit the digital object, the request may be sent directly to the first user. This may be necessary so that the first user can make their own decision about transferring editing rights. Alternatively, a request may be sent to the server. This may be necessary if the server decides entirely on the transfer of editing rights. It is also possible to send a request to both the first user and the server.
[00015] Перед этапом предоставления права на редактирование цифрового объекта второму пользователю, могут сохранять отредактированный цифровой объект при помощи модуля обновления. В другом варианте могут производить периодическое сохранение цифровых объектов при помощи модуля обновления. Это может увеличить безопасность данных, содержащихся в цифровых объектах. [00015] Before the step of granting the right to edit the digital object to the second user, the edited digital object can be stored using the update module. In another embodiment, they can produce periodic saving digital objects using the update module. This can increase the security of data contained in digital objects.
[00016] Этап ожидания ответа первого пользователя на запрос второго пользователя может производиться в течение 1-15 минут. Это время является оптимальным для многих задач. Периодическое сохранение при этом могут производить с периодом меньшим времени ожидания. Это позволит избежать потери данных цифровых объектов. [00016] The step of waiting for the response of the first user to the request of the second user can be performed within 1-15 minutes. This time is optimal for many tasks. In this case, periodic storage can be performed with a period of less waiting time. This will avoid loss of digital object data.
[00017] На этапе отзыва прав на редактирование цифрового объекта у первого пользователя могут отправлять уведомление первому пользователю о том, что права на редактирование цифрового объекта были отозваны, при помощи сервера. Это может позволить проинформировать пользователя о том, что у него больше нет прав на редактирование этого цифрового объекта. [00017] In the step of revoking the rights to edit the digital object from the first user, a notification may be sent to the first user that the rights to edit the digital object have been revoked by the server. This may inform the user that he no longer has rights to edit this digital object.
[00018] После этапа отзыва прав на редактирование цифрового объекта у первого пользователя при помощи сервера могут сначала исключать первого пользователя из среды совместного редактирования цифрового объекта и добавлять его в среду просмотра. Это может быть нужно для того, чтобы первый пользователь даже после потери прав на редактирование цифрового объекта мог наблюдать за процессом его редактирования. [00018] After the step of revoking the rights to edit the digital object from the first user, the server may first exclude the first user from the collaborative editing environment of the digital object and add it to the viewing environment. This may be necessary so that the first user, even after losing the rights to edit a digital object, can observe the editing process.
[00019] После сохранения по крайней одного цифрового объекта могут отображать по крайней мере один цифровой объект при помощи среды просмотра без предоставления возможности его редактирования. Это может быть нужно для того, чтобы первый пользователь даже после потери прав на редактирование цифрового объекта мог видеть существенные изменения, вносимые в цифровой объект в ходе его редактирования. [00019] After saving at least one digital object, at least one digital object can be displayed using the viewing environment without being able to edit it. This may be necessary so that the first user, even after losing the rights to edit a digital object, can see significant changes made to a digital object during its editing.
[00020] Также в процессе редактирования цифрового объекта могут создавать копию визуального отображения по крайней мере одного цифрового объекта при помощи сервера, передать созданную копию среде совместного редактирования и отображать полученную копию при помощи среды совместного редактирования. Такой вариант может позволить первому пользователю наблюдать за всем процессом редактирования цифрового объекта. [00020] Also, in the process of editing a digital object, a copy of the visual display of at least one digital object can be created using the server, the created copy can be transferred to the co-editing environment, and the resulting copy can be displayed using the co-editing environment. Such an option may allow the first user to observe the entire editing process of the digital object.
[00021] Также технический результат достигается системой управления совместным редактированием цифровых объектов, сконфигурированной для одновременной работы по крайней мере двух пользователей. Система включает сервер, включающий память и процессор. Память при этом включает по крайней мере одну среду совместного редактирования, которая включает по крайней мере один цифровой объект. Процессор, в свою очередь, сконфигурирован для предоставления прав на редактирование цифрового объекта, содержащегося в среде совместного редактирования; ожидания ответа первого пользователя на запрос второго пользователя на передачу прав на редактирование цифрового объекта в течение определенного времени; и отзыва прав на редактирование цифрового объекта, содержащегося в среде совместного редактирования. Среда совместного редактирования сконфигурирована таким образом, чтобы каждый пользователь имел возможность: отправки запроса серверу прав на редактирование цифрового объекта, содержащегося в среде совместного редактирования; отклонения запроса на передачу прав другому пользователю на редактирование цифрового объекта, содержащегося в среде совместного редактирования, в течение определенного времени; передачи прав другому пользователю на редактирование цифрового объекта, содержащегося в среде совместного редактирования, в течение определенного времени; и редактирования по крайней мере одного цифрового объекта при условии, что пользователю при помощи сервера были предоставлены права на редактирование этого цифрового объекта. [00021] Also, the technical result is achieved by a digital object co-editing control system configured for simultaneous operation of at least two users. The system includes a server including memory and a processor. The memory then includes at least one collaborative editing environment that includes at least one digital object. The processor, in turn, is configured to grant editing rights to the digital object contained in the collaborative editing environment; waiting for the first user's response to the second user's request to transfer rights to edit digital object for a certain time; and revoking the rights to edit the digital object contained in the co-editing environment. The co-editing environment is configured in such a way that each user is able to: send a request to the editing rights server for the digital object contained in the co-editing environment; rejecting a request to transfer rights to another user to edit the digital object contained in the collaborative editing environment for a specified time; transferring rights to another user to edit the digital object contained in the collaborative editing environment for a certain time; and editing at least one digital object, provided that the user has been granted rights to edit this digital object using the server.
[00022] При этом, сервер необходим для хранения среды совместного редактирования и ее цифровых объектов при помощи памяти, а также для организации процесса передачи прав при помощи процессора. Предоставление сервером первому пользователю прав на редактирование цифрового объекта необходим для включения первого пользователя в среду совместного редактирования, а также для того, чтобы первый пользователь имел непосредственную возможность редактирования этого цифрового объекта. Ожидание сервером ответа первого пользователя на запрос второго пользователя в течение определенного времени, в свою очередь, необходимо для того, чтобы дать возможность первому пользователю отреагировать на запрос второго пользователя. А сочетание возможности предоставления и отзыва прав сервером необходимо для непосредственного осуществления передачи прав на редактирование цифрового объекта от первого пользователя второму пользователю. Возможность пользователя отправки запроса на передачу прав на редактирование цифрового объекта серверу необходим для того, чтобы в среде редактирования пользователь имел возможность перехватывать права на редактирование цифрового объекта у другого пользователя, в случае если другой пользователь на данный момент не осуществляет редактирование цифрового объекта. То, что пользователь имеет возможность отклонить запрос на передачу прав на редактирование цифрового объекта другому пользователю в течение определенного времени, необходимо для того, чтобы пользователь мог отклонить передачу прав, в случае если на данный момент пользователь осуществляет редактирование этого цифрового объекта. То, что пользователь имеет возможность передачи прав на редактирование цифрового объекта в течение определенного времени, необходимо для того, чтобы пользователь мог добровольно передать свои права на редактирование цифрового объекта другому пользователю. Возможность пользователями редактирования цифрового объекта необходима для осуществления непосредственного редактирования цифрового объекта, права на редактирование которого закреплены за этим пользователем. [00022] At the same time, the server is needed to store the co-editing environment and its digital objects using memory, as well as to organize the process of transferring rights using the processor. Granting by the server to the first user the rights to edit the digital object is necessary to include the first user in the collaborative editing environment, as well as to ensure that the first user has the direct ability to edit this digital object. Waiting by the server for the first user's response to the second user's request for a certain time, in turn, is necessary in order to enable the first user to respond to the second user's request. And the combination of the possibility of granting and revoking rights by the server is necessary for the direct transfer of rights to edit a digital object from the first user to the second user. The ability of the user to send a request to transfer the rights to edit a digital object to the server is necessary so that in the editing environment the user has the ability to intercept the rights to edit the digital object from another user if the other user is not currently editing the digital object. The fact that the user has the ability to decline a request to transfer rights to edit a digital object to another user for a certain time is necessary so that the user can refuse the transfer of rights if the user is currently editing this digital object. The fact that the user has the ability to transfer rights to edit a digital object for a certain time is necessary for the user to voluntarily transfer his rights to editing a digital object to another user. The ability for users to edit a digital object is necessary for direct editing of a digital object, the editing rights of which are assigned to this user.
[00023] То, что сервер включает модуль обновления, подключенный к памяти, может быть необходимо для промежуточных сохранений изменений в ходе редактирования цифрового объекта. При этом модуль обновления может быть сконфигурирован с возможностью сохранения отредактированных цифровых объектов. Причем, сохранение может быть периодическим сохранением. Периодическое сохранение может осуществляться с периодом меньшим, чем время ожидания ответа первого пользователя на запрос второго пользователя. [00023] The fact that the server includes an update module connected to the memory may be necessary for intermediate savings of changes during editing of a digital object. In this case, the update module can be configured to save the edited digital objects. Moreover, the storage may be a periodic storage. Periodic storage may be performed with a period less than the time to wait for the first user's response to the second user's request.
[00024] То, что сервер сконфигурирован таким образом, что время ожидания ответа первого пользователя на запрос второго пользователя может составлять 1-15 минут, может быть нужно для конкретных задач системы. [00024] The fact that the server is configured in such a way that the first user's response time to the second user's request can be 1-15 minutes may be necessary for specific system tasks.
[00025] Также сервер может быть сконфигурирован с возможностью отправки уведомлений пользователям о том, что права на редактирование цифрового объекта были отозваны. Это может позволить проинформировать пользователя о том, что у него больше нет прав на редактирование этого цифрового объекта. [00025] The server may also be configured to send notifications to users that the rights to edit a digital object have been revoked. This may inform the user that he no longer has rights to edit this digital object.
[00026] Сервер может включать среду просмотра, связанную со средой совместного редактирования, причем сервер может быть сконфигурирован с возможностью исключения пользователей из среды совместного редактирования цифрового объекта и добавления пользователей в среду просмотра. Это может быть нужно для того, чтобы первый пользователь даже после потери прав на редактирование цифрового объекта мог наблюдать за процессом его редактирования. [00026] The server may include a viewing environment associated with the co-editing environment, and the server may be configured to exclude users from the co-editing environment of the digital object and add users to the viewing environment. This may be necessary so that the first user, even after losing the rights to edit a digital object, can observe the editing process.
[00027] Среда просмотра может быть сконфигурирована с возможностью отображения по крайней мере одного цифрового объекта из среды совместного редактирования без предоставления возможности его редактирования, причем отображают цифровые объекты только с сохраненными изменениями. Это также может быть нужно для того, чтобы первый пользователь даже после потери прав на редактирование цифрового объекта мог наблюдать за процессом его редактирования. При этом такой вариант выполнения отображения редактируемых цифровых объектов может позволить отображать только существенные изменения, внесенные в цифровой объект. [00027] The viewing environment can be configured to display at least one digital object from the collaborative editing environment without being able to edit it, and only display the digital objects with saved changes. This may also be necessary so that the first user, even after losing the rights to edit a digital object, can observe the process of editing it. At the same time, such an embodiment of displaying edited digital objects may allow displaying only significant changes made to the digital object.
[00028] Среда просмотра может быть сконфигурирована с возможностью отображения цифровые объектов со всеми внесенными в цифровые объекты изменениями. Такой вариант может позволить первому пользователю наблюдать за всем процессом редактирования цифрового объекта. [00028] The viewing environment may be configured to display the digital objects with all changes made to the digital objects. Such an option may allow the first user to observe the entire editing process of the digital object.
Описание чертежей Description of drawings
[00029] На Фиг. 1 представлена блок-схема, иллюстрирующая способ управления совместным редактированием цифровых объектов, согласно настоящему изобретению. [00029] In FIG. 1 is a flowchart illustrating a digital object co-editing control method according to the present invention.
[00030] На Фиг. 2 представлена блок-схема, иллюстрирующая способ управления совместным редактированием цифровых объектов с дополнительными этапами, согласно настоящему изобретению. [00030] In FIG. 2 is a flowchart illustrating a method for controlling co-editing of digital objects with additional steps according to the present invention.
[00031] На Фиг. 3 представлен схематичный вид системы управления совместным редактированием цифровых объектов согласно настоящему изобретению. [00031] In FIG. 3 is a schematic view of a digital object co-editing control system according to the present invention.
[00032] На Фиг. 4 представлен схематичный вид системы управления совместным редактированием цифровых объектов согласно настоящему изобретению с дополнительными элементами. [00032] In FIG. 4 is a schematic view of the digital object co-editing control system of the present invention with additional elements.
Подробное описание Detailed description
[00033] В приведенном ниже подробном описании реализации изобретения приведены многочисленные детали реализации, призванные обеспечить отчетливое понимание настоящего изобретения. Однако, квалифицированному в предметной области специалисту очевидно, каким образом можно использовать настоящее изобретение, как с данными деталями реализации, так и без них. В других случаях, хорошо известные методы, процедуры и компоненты не описаны подробно, чтобы не затруднять излишнее понимание особенностей настоящего изобретения. [00033] In the following detailed description of the invention, numerous implementation details are provided to provide a clear understanding of the present invention. However, it will be obvious to one skilled in the art how the present invention can be used, both with and without these implementation details. In other cases, well-known methods, procedures and components are not described in detail so as not to obscure the features of the present invention.
[00034] Кроме того, из приведенного изложения ясно, что изобретение не ограничивается приведенной реализацией. Многочисленные возможные модификации, изменения, вариации и замены, сохраняющие суть и форму настоящего изобретения, очевидны для квалифицированных в предметной области специалистов. [00034] In addition, from the foregoing, it is clear that the invention is not limited to the above implementation. Numerous possible modifications, alterations, variations, and substitutions that retain the spirit and form of the present invention will be apparent to those skilled in the art.
[00035] Настоящие система и способ управления совместным редактированием цифровых объектов могут применяться для различных сред совместного редактирования, в которых предусмотрена возможность эксклюзивной блокировки цифрового объекта за пользователем. Эксклюзивные блокировки защищают цифровые объекты от несовместимых обновлений/изменений. Они могут принадлежать только одному пользователю одновременно. Любой пользователь, запрашивающий эксклюзивную блокировку, должен ожидать освобождения цифрового объекта и передачи прав на его редактирование, если другой пользователь в настоящее время владеет эксклюзивной блокировкой запрошенного цифрового объекта. [00035] The present digital object co-editing control system and method can be applied to various co-editing environments that are capable of exclusive locking of a digital object to a user. Exclusive locks protect digital objects from incompatible updates/changes. They can only be owned by one user at a time. Any user requesting an exclusive lock must wait for the digital object to be released and rights to it transferred. editing if another user currently owns an exclusive lock on the requested digital object.
[00036] На Фиг. 1 представлена блок-схема, иллюстрирующая способ управления совместным редактированием цифровых объектов, согласно настоящему изобретению. Сначала осуществляют отправку первым пользователем запроса на сервер для получения прав на редактирование цифрового объекта. Если цифровой объект свободен, то при помощи сервера предоставляют первому пользователю права на редактирование цифрового объекта. Сразу или через какое-то время осуществляют отправку вторым пользователем запроса на передачу прав на редактирование цифрового объекта, права на редактирование которого на данный момент принадлежат первому пользователю. С момента отправки запроса производят ожидание сервером ответа первого пользователя на запрос второго пользователя в течение определенного времени. При этом, в случае если первый пользователь успел ответить на запрос в течение определенного времени и отказал в передаче прав на редактирование цифрового объекта второму пользователю, то права на редактирование цифрового объекта второму пользователю не предоставляют. В противном случае, а именно в случае, если первый пользователь не успел ответить на запрос второго пользователя или успел и передал права на редактирование второму пользователю, то при помощи сервера сначала отзывают права на редактирование цифрового объекта у первого пользователя, а затем предоставляют права на редактирование цифрового объекта второму пользователю. [00036] In FIG. 1 is a flowchart illustrating a digital object co-editing control method according to the present invention. First, the first user sends a request to the server to obtain rights to edit the digital object. If the digital object is free, then the server grants the first user the rights to edit the digital object. Immediately or after some time, the second user sends a request to transfer the rights to edit the digital object, the editing rights of which currently belong to the first user. From the moment the request is sent, the server waits for the first user's response to the second user's request for a certain time. At the same time, if the first user managed to respond to the request within a certain time and refused to transfer the rights to edit the digital object to the second user, then the rights to edit the digital object are not granted to the second user. Otherwise, namely, if the first user did not have time to respond to the request of the second user or managed to transfer editing rights to the second user, then using the server, first user revokes the rights to edit the digital object from the first user, and then grants editing rights digital object to the second user.
[00037] Под первым и вторым пользователями понимаются люди, осуществляющие взаимодействие с цифровыми объектами среды совместного редактирования посредством клиента пользователя. Клиент — это аппаратный или программный компонент вычислительной системы, посылающий запросы серверу. Программа, являющаяся клиентом, взаимодействует с сервером, используя определённый протокол. Она может запрашивать с сервера какие-либо данные, манипулировать данными непосредственно на сервере, запускать на сервере новые процессы и т.п. Полученные от сервера данные клиентская программа может предоставлять пользователю или использовать как-либо иначе, в зависимости от назначения программы. Цифровой объект — объект, состоящий из структурированной последовательности байтов, имеющий название, уникальный идентификатор и атрибуты, описывающие его свойства. В рамках настоящего изобретения под цифровым объектом понимается любой документ, файл, таблица или какие-либо их компоненты, размещенные в цифровой среде. [00037] The first and second users are people interacting with the digital objects of the collaborative editing environment through the user's client. A client is a hardware or software component of a computing system that sends requests to a server. The client program communicates with the server using a specific protocol. It can request some data from the server, manipulate data directly on the server, launch new processes on the server, and so on. The client program can provide the data received from the server to the user or use it in some other way, depending on the purpose of the program. A digital object is an object consisting of a structured sequence of bytes that has a name, a unique identifier, and attributes that describe its properties. In the context of the present invention, a digital object refers to any document, file, spreadsheet or any of their components placed in a digital environment.
[00038] Определенное время, в течение которого ожидают ответа от первого пользователя на запрос второго пользователя, может быть разным, в зависимости от [00038] The specific time during which the first user is expected to respond to the second user's request may be different, depending on
И конкретного применения способа. Однако, при осуществлении способа оно должно быть заранее определено и задано. Оно задается специально с целью ограничить время ответа первого пользователя. В случае, если пользователь никак не отвечает на запрос в течение этого определенного времени, сервер интерпретирует это как факт того, что первый пользователь на данный момент не осуществляет редактирование цифрового объекта, права на редактирование которого ему принадлежат. В связи с этим, права на редактирование этого цифрового объекта могут быть переданы второму пользователю, запросившему передачу прав. AND specific application of the method. However, when implementing the method, it must be predetermined and specified. It is set specifically to limit the response time of the first user. If the user does not respond to the request within this specified time, the server interprets this as the fact that the first user is not currently editing the digital object, the editing rights of which belong to him. In this regard, the rights to edit this digital object can be transferred to the second user who requested the transfer of rights.
[00039] На Фиг. 2 изображена блок-схема, иллюстрирующая способ управления совместным редактированием цифровых объектов с дополнительными этапами, согласно настоящему изобретению. Изображенные на ней и нижеописанные этапы могут использоваться в способе управления совместным редактированием цифровых объектов, в дополнение к вышеописанным этапам, по отдельности, в совокупности и в любой комбинации. [00039] In FIG. 2 is a flowchart illustrating a method for controlling co-editing of digital objects with additional steps according to the present invention. The steps depicted therein and described below can be used in the digital object co-editing control method, in addition to the steps described above, individually, collectively, and in any combination.
[00040] В частности, после того как первому пользователю были предоставлены права на редактирование цифрового объекта первый пользователь может осуществлять редактирование этого цифрового объекта. При этом в процессе работы могут осуществлять сохранение цифрового объекта. [00040] In particular, after the first user has been granted the rights to edit the digital object, the first user can edit the digital object. At the same time, in the process of work, they can save a digital object.
[00041] Сохранение может осуществляться несколькими способами. Во-первых, пользователь может сохранять изменения, внесенные в процессе редактирования цифрового объекта, самостоятельно и на любом этапе редактирования. Во-вторых, возможно предусмотреть периодическое сохранение изменений, внесенных в цифровой объект. При этом, в случае если предусмотрено периодическое сохранение цифрового объекта, то предпочтительно, чтобы период сохранения изменений был меньше, чем время ожидания сервером ответа первого пользователя на запрос второго пользователя. В случае, если период больше или равен времени ожидания, то существует риск потери данных об изменениях, которые были внесены первым пользователем в цифровой объект в случае его передачи второму пользователю. Например, если время ожидания составляет 3 минуты, а период сохранения - 5 минут, то возможна ситуация, когда первый пользователь вносил изменения в цифровой объект 1 минуту назад. Спустя эту одну минуту, второй пользователь отправил запрос на передачу прав на редактирование цифрового объекта, а первый пользователь не ответил на этот запрос в течение 3-х минут. Тогда второму пользователю будут переданы права на редактирование цифрового объекта, причем в переданном цифровом объекте будут отсутствовать изменения, внесенные в него 4 минуты назад, т.к. период сохранения равен 5 минутам. Для предотвращения такой потери данных может применяться третий способ сохранения цифрового объекта - а именно сохранение изменений, внесенных первым пользователем, перед непосредственной передачей прав на редактирование этого цифрового объекта второму пользователю. То есть, даже если внесенные изменения не были сохранены посредством периодического сохранения, они в любом случае будут сохранены перед передачей прав. Все эти три способа сохранения могут применяться как по отдельности, так и в совокупности или любой комбинации. [00041] Saving can be done in several ways. Firstly, the user can save the changes made in the process of editing a digital object independently and at any stage of editing. Secondly, it is possible to provide for the periodic saving of changes made to the digital object. In this case, if a periodic saving of a digital object is provided, then it is preferable that the period for saving changes be less than the time the server waits for the first user's response to the second user's request. If the period is greater than or equal to the waiting time, then there is a risk of losing data about the changes that were made by the first user to the digital object if it is transferred to the second user. For example, if the timeout is 3 minutes and the retention period is 5 minutes, then it is possible that the first user made changes to the digital object 1 minute ago. After this one minute, the second user sent a request to transfer the rights to edit the digital object, and the first user did not respond to this request within 3 minutes. Then the rights to edit the digital object will be transferred to the second user, and in the transferred digital object there will be no changes made to it 4 minutes ago, because the storage period is 5 minutes. For To prevent such data loss, a third way of saving a digital object can be used - namely, saving the changes made by the first user before directly transferring the rights to edit this digital object to the second user. That is, even if the changes made were not saved through periodic saving, they will in any case be saved before the transfer of rights. All three of these storage methods can be used individually, in combination, or in any combination.
[00042] Второй пользователь может отправлять запрос на передачу прав на редактирование первому пользователю, имеющему эти права, серверу или первому пользователю и серверу одновременно. В случае отправки только первому пользователю, передача прав на редактирование может не осуществиться вовсе, по причине того, что первый пользователь может быть не подключен к серверу на момент отправки запроса вторым пользователем, а т.к. серверу запрос не отправлялся, то сервер не может предоставить права на редактирование цифрового объекта второму пользователю. В остальных случаях, даже если первый пользователь не подключен к серверу и не может ответить на запрос, сервер может отозвать права на редактирования у первого пользователя и предоставить права на редактирование второму пользователю. [00042] The second user may send a request to transfer editing rights to the first user with these rights, the server, or the first user and the server at the same time. In the case of sending only to the first user, the transfer of editing rights may not be carried out at all, due to the fact that the first user may not be connected to the server at the time the request was sent by the second user, and since. If the request was not sent to the server, then the server cannot grant the rights to edit the digital object to the second user. In other cases, even if the first user is not connected to the server and cannot respond to the request, the server can revoke edit rights from the first user and grant edit rights to the second user.
[00043] Время ожидания сервером ответа первого пользователя на запрос второго пользователя может быть установлено в диапазоне 1-15 минут, в зависимости от конкретных задач способа. В случае, если задавать время меньше минуты, у пользователя может не хватить времени среагировать на поступивший ему запрос, т.к. ему нужно будет, например, переключиться с редактирования на прочтение текста запроса, прочитать его, понять, какой цифровой объект запрашивают и ответить на запрос. В случае, если время ожидания составляет более 15 минут, то это будет значительно затягивать процесс работы пользователями, т.к. при отправке запроса на редактирование второй пользователь может рассчитывать получить права на редактирование цифрового объекта как можно раньше для того, чтобы скорее приступить к его редактированию. В связи с этим, время ожидания 1-15 минут является оптимальным временем ожидания. При этом, в случае добавления функции периодического сохранения цифрового объекта, следует установить период сохранения меньше 1-15 минут или предусмотреть возможность сохранения изменений, внесенных первым пользователем, перед непосредственной передачей прав на редактирование этого цифрового объекта второму пользователю. [00043] The time the server waits for the response of the first user to the request of the second user can be set in the range of 1-15 minutes, depending on the specific objectives of the method. If you set the time less than a minute, the user may not have enough time to respond to the request he received, because he will need to, for example, switch from editing to reading the text of the request, read it, understand what digital object is being requested and respond to the request. If the waiting time is more than 15 minutes, then this will significantly delay the user experience, because when submitting an edit request, the second user can expect to receive editing rights to the digital object as soon as possible in order to start editing it sooner. In this regard, a waiting time of 1-15 minutes is the optimal waiting time. At the same time, if the function of periodically saving a digital object is added, the saving period should be set to less than 1-15 minutes or it should be possible to save the changes made by the first user before directly transferring the rights to edit this digital object to the second user.
[00044] В случае отзыва прав на редактирование цифрового объекта у первого пользователя, непосредственно после отзыва прав могут дополнительно отправлять уведомление первому пользователю о том, что права на редактирование конкретного цифрового объекта были отозваны. [00044] In the event that the rights to edit a digital object are revoked from the first user, immediately after the rights are revoked, they can additionally send notification to the first user that the rights to edit a particular digital object have been revoked.
[00045] Если первому пользователю были предоставлены права на редактирование только одного цифрового объекта, то после их отзыва могут также исключать первого пользователя из среды совместного редактирования цифровых объектов. При этом, если предусмотрена среда просмотра, то первого пользователя могут добавлять в среду просмотра для предоставления ему возможности наблюдения за редактированием цифрового объекта. [00045] If the first user was granted rights to edit only one digital object, then after they are revoked, the first user may also be excluded from the collaborative editing environment of digital objects. In this case, if a viewing environment is provided, then the first user can be added to the viewing environment to enable him to observe the editing of the digital object.
[00046] После сохранения по крайней одного цифрового объекта могут отображать по крайней мере один цифровой объект при помощи среды просмотра без предоставления возможности его редактирования. То есть, после каждого сохранения изменений, внесенных в цифровой объект, создают его визуальную копию при помощи сервера и передают созданную копию в среду просмотра. При помощи среды просмотра, в свою очередь, отображают полученную копию. Таким образом, сохранение цифрового объекта является событием-триггером для отображения цифрового объекта в среде просмотра. При этом первый пользователь имеет возможность наблюдать за внесением существенных сохраненных изменений в цифровой объект, находясь в среде просмотра. [00046] After saving at least one digital object, at least one digital object can be displayed using the viewing environment without being able to edit it. That is, after each save of the changes made to the digital object, a visual copy is created using the server and the created copy is transferred to the viewing environment. Using the viewing environment, in turn, display the resulting copy. Thus, saving a digital object is a trigger event for displaying the digital object in the viewing environment. In this case, the first user has the opportunity to observe the introduction of significant saved changes to the digital object while in the viewing environment.
[00047] В другом варианте, в процессе редактирования цифрового объекта могут создавать копию визуального отображения по крайней мере одного цифрового объекта при помощи сервера, передать созданную копию среде совместного редактирования и отображать полученную копию при помощи среды совместного редактирования. Такой вариант может позволить первому пользователю наблюдать за всем процессом редактирования цифрового объекта. От ранее описанного способа он отличается тем, что не имеет событие-триггер. Все изменения визуализируют в среде просмотра непрерывно и/или с определенной периодичностью. Определенная периодичность при этом предпочтительно установить до 1 минуты. Таким образом, первый пользователь имеет возможность наблюдать за текущим состоянием цифрового объекта в режиме реального времени, находясь в среде просмотра. [00047] In another embodiment, in the process of editing a digital object, a copy of the visual display of at least one digital object can be created using a server, the created copy can be transferred to a co-editing environment, and the resulting copy can be displayed using the co-editing environment. Such an option may allow the first user to observe the entire editing process of the digital object. It differs from the previously described method in that it does not have a trigger event. All changes are rendered in the viewing environment continuously and/or at certain intervals. In this case, it is preferable to set a certain periodicity up to 1 minute. Thus, the first user has the opportunity to observe the current state of the digital object in real time while in the viewing environment.
[00048] Способ управления совместным редактированием цифровых объектов при включении всех дополнительных этапов, показанных на Фиг. 2, осуществляется следующим образом. Сначала осуществляют отправку первым пользователем запроса на сервер для получения прав на редактирование цифрового объекта. Если цифровой объект свободен, то при помощи сервера предоставляют первому пользователю права на редактирование цифрового объекта. После предоставления прав на редактирование цифрового объекта первому пользователю первый пользователь может осуществлять редактирование цифрового объекта. При этом в процессе редактирования первый пользователь может самостоятельно сохранять изменения, внесенные в цифровой объект, на любой стадии редактирования. Параллельно этому производят периодическое сохранение изменений, внесенных в цифровой объект. Сразу или через какое-то время осуществляют отправку вторым пользователем первому пользователю и/или серверу запроса на передачу прав на редактирование цифрового объекта, права на редактирование которого на данный момент принадлежат первому пользователю. С момента отправки запроса производят ожидание сервером ответа первого пользователя на запрос второго пользователя в течение определенного времени. При этом, в случае если первый пользователь успел ответить на запрос в течение определенного времени и отказал в передаче прав на редактирование цифрового объекта второму пользователю, то права на редактирование цифрового объекта второму пользователю не предоставляют. В противном случае, а именно в случае, если первый пользователь не успел ответить на запрос второго пользователя или успел и передал права на редактирование второму пользователю, то при помощи сервера сначала сохраняют изменения, внесенные в цифровой объект первым пользователем, а затем отзывают права на редактирование цифрового объекта у первого пользователя. После этого отправляют уведомление первому пользователю о том, что права на редактирование цифрового объекта были отозваны, и исключают первого пользователя из среды совместного редактирования. После исключения первого пользователя могут добавлять в среду просмотра. Далее, предоставляют права на редактирование цифрового объекта второму пользователю. Ожидание ответа сервером при этом осуществляют на протяжении 1-15 минут, а периодическое сохранение изменений цифрового объекта производят с периодом меньшим 1-15 минут. При этом в ходе редактирования цифрового объекта после сохранения, непрерывно и/или с определенной периодичностью создают копию визуального отображения по крайней мере одного цифрового объекта и передают созданную копию в среду просмотра при помощи сервера. После этого отображают полученную копию при помощи среды просмотра. [00048] A method for controlling co-editing of digital objects while including all the additional steps shown in FIG. 2 is carried out as follows. First, the first user sends a request to the server to obtain rights to edit the digital object. If the digital object is free, then the server grants the first user the rights to edit the digital object. After granting rights to edit a digital object to the first user, the first user can editing a digital object. At the same time, during the editing process, the first user can independently save the changes made to the digital object at any stage of editing. In parallel, the changes made to the digital object are periodically saved. Immediately or after some time, the second user sends a request to the first user and/or server to transfer the rights to edit the digital object, the editing rights of which currently belong to the first user. From the moment the request is sent, the server waits for the first user's response to the second user's request for a certain time. At the same time, if the first user managed to respond to the request within a certain time and refused to transfer the rights to edit the digital object to the second user, then the rights to edit the digital object are not granted to the second user. Otherwise, namely, if the first user did not have time to respond to the request of the second user or managed to transfer the editing rights to the second user, then using the server, they first save the changes made to the digital object by the first user, and then revoke the editing rights digital object from the first user. Thereafter, a notification is sent to the first user that the rights to edit the digital object have been revoked, and the first user is excluded from the co-editing environment. After the exclusion, the first user can be added to the browsing environment. Further, the rights to edit the digital object are granted to the second user. In this case, the server waits for a response for 1-15 minutes, and periodic saving of changes in the digital object is performed with a period of less than 1-15 minutes. At the same time, in the course of editing a digital object after saving, continuously and/or with a certain frequency, a copy of the visual display of at least one digital object is created and the created copy is transferred to the viewing environment using the server. After that, the resulting copy is displayed using the viewing environment.
[00049] Также возможна ситуация, когда после отправки запроса вторым пользователем на передачу прав на редактирование цифрового объекта сервер проверяет, установлено ли соединение первого пользователя с сервером. Т.е. подключен ли первый пользователь, имеющий права на редактирования этого цифрового объекта, к среде совместного редактирования. В случае же, если это соединение не установлено, то сервер, не ожидания ответа первого пользователя, отзывает прав на редактирование цифрового объекта у первого пользователя и предоставляет права на редактирование цифрового объекта второму пользователю. [00049] It is also possible that after the second user sends a request to transfer rights to edit a digital object, the server checks whether the connection of the first user with the server is established. Those. whether the first user with editing rights for this digital object is connected to the co-editing environment. If this connection is not established, then the server, without waiting for the first user's response, revokes the rights to edit the digital object from the first user and grants rights to edit the digital object to the second user.
[00050] На Фиг. 3 изображен схематичный вид системы управления совместным редактированием цифровых объектов согласно настоящему изобретению. Система управления совместным редактированием цифровых объектов сконфигурирована для одновременной работы по крайней мере двух пользователей 1, 2 и включает сервер 3. Сервер 3, в свою очередь, включает память 6 и процессор 7. Память 6 сервера 3 включает по крайней мере одну среду совместного редактирования 5, включающую по крайней мере один цифровой объект 4. Процессор 7 сконфигурирован для: предоставления прав на редактирование цифрового объекта 4, содержащегося в среде совместного редактирования 5; ожидания ответа первого пользователя 1 на запрос второго пользователя 2 на передачу прав на редактирование цифрового объекта 4 в течение определенного времени, а также для отзыва прав на редактирование цифрового объекта 4, содержащегося в среде совместного редактирования 5. Среда совместного редактирования 5 сконфигурирована таким образом, чтобы каждый пользователь 1, 2 имел возможность: отправки запроса серверу 3 на передачу прав на редактирование цифрового объекта 4; отклонение запроса на передачу прав другому пользователю 1, 2 на редактирование цифрового объекта 4 в течение определенного времени; передачи прав другому пользователю 1, 2 на редактирование цифрового объекта 4 в течение определенного времени; а также редактирования по крайней мере одного цифрового объекта 4 при условии, что пользователю 1, 2 при помощи сервера 3 были предоставлены права на редактирование этого цифрового объекта 4. [00050] In FIG. 3 is a schematic view of a digital object co-editing control system according to the present invention. The digital object co-editing management system is configured for simultaneous operation of at least two users 1, 2 and includes a server 3. Server 3, in turn, includes a memory 6 and a processor 7. The memory 6 of the server 3 includes at least one co-editing environment 5 , including at least one digital object 4. The processor 7 is configured to: grant editing rights to the digital object 4 contained in the collaborative editing environment 5; waiting for the response of the first user 1 to the request of the second user 2 to transfer the rights to edit the digital object 4 within a certain time, as well as to revoke the rights to edit the digital object 4 contained in the co-editing environment 5. The co-editing environment 5 is configured in such a way that each user 1, 2 had the ability to: send a request to the server 3 to transfer the rights to edit the digital object 4; rejecting a request to transfer rights to another user 1, 2 to edit a digital object 4 for a certain time; transferring rights to another user 1, 2 to edit the digital object 4 for a certain time; as well as editing at least one digital object 4, provided that the user 1, 2, using the server 3, was granted the rights to edit this digital object 4.
[00051] Среда совместного редактирования 5, в частном случае, может представлять собой интегрированную среду разработки (далее - ИСР) (англ. Integrated development environment — IDE), также называемую единой средой разработки (ЕСР). ИСР - это комплекс программных средств, используемый программистами для разработки программного обеспечения (ПО). ИСР может включать текстовый редактор, транслятор (компилятор и/или интерпретатор), средства автоматизации сборки, отладчик и др. В некоторых случаях ИСР также может содержать средства для интеграции с системами управления версиями и разнообразные инструменты для упрощения конструирования графического интерфейса пользователя. Многие современные среды разработки также включают браузер классов, инспектор объектов и диаграмму иерархии классов — для использования при объектно-ориентированной разработке ПО. ИСР обычно предназначены для нескольких языков программирования — такие как IntelliJ IDEA, NetBeans, Eclipse, Qt Creator, Geany, Embarcadero RAD Studio, Code::Blocks, Xcode или Microsoft Visual Studio, но есть и IDE для одного определённого языка программирования — как, например, Visual Basic, Delphi, Dev-C++. В этом случае, в качестве цифрового объекта 4 может подразумеваться, например, часть кода (некоторые строки кода) или один из файлов, включающийся в совокупный код. [00051] The co-editing environment 5, in a particular case, may be an integrated development environment (hereinafter - IDS) (English Integrated development environment - IDE), also called a single development environment (ECR). IRS is a set of software tools used by programmers to develop software (SW). The IDE may include a text editor, a translator (compiler and/or interpreter), build automation tools, a debugger, etc. In some cases, the IDE may also contain tools for integration with version control systems and various tools to simplify the construction of a graphical user interface. Many modern development environments also include a class browser, an object inspector, and a class hierarchy diagram for use in object-oriented software development. IDEs are usually designed for multiple programming languages such as IntelliJ IDEA, NetBeans, Eclipse, Qt Creator, Geany, Embarcadero RAD Studio, Code::Blocks, Xcode, or Microsoft Visual Studio, but there is also an IDE for one specific programming language - such as Visual Basic, Delphi, Dev-C ++. In this case, as a digital object 4 may mean, for example, a part of the code (some lines of code) or one of the files included in the total code.
[00052] Частный случай ИСР — среда визуальной разработки, которая включает возможность наглядного редактирования интерфейса программы. В этом случае в качестве цифрового объекта 4 может подразумеваться виджет, форма, элемент управления и др. [00052] A special case of the IDE is a visual development environment that includes the ability to visually edit the program interface. In this case, a widget, a form, a control element, etc. can be considered as a digital object 4.
[00053] Также могут быть предусмотрены варианты, в которых среда совместного редактирования является комплексом программных средств, используемым пользователями для редактирования файлов, таблиц и/или документов. В случае таблиц за пользователем 1, 2 могут закрепляться права на редактирование конкретной колонки, строки, ячейки, листа, всей таблицы и др. В этом случае колонка, строка, ячейка, лист и вся таблица являются цифровыми объектами 4. Для документа цифровым объектом 4 может являться срока, абзац, страница или весь документ целиком. [00053] Variants may also be provided in which a co-editing environment is a set of software tools used by users to edit files, tables, and/or documents. In the case of tables, user 1, 2 can be assigned the rights to edit a specific column, row, cell, sheet, entire table, etc. In this case, the column, row, cell, sheet, and the entire table are digital objects 4. For a document, digital object 4 can be a term, a paragraph, a page, or the entire document.
[00054] Таким образом, для различных типов цифровых файлов цифровым объектом 4 является какая-то его строго определенная часть или цифровой файл целиком. [00054] Thus, for various types of digital files, the digital object 4 is some strictly defined part of it or the entire digital file.
[00055] Под первым 1 и вторым 2 пользователями понимаются люди, осуществляющие взаимодействие с цифровыми объектами 4 среды совместного редактирования 5 посредством клиента пользователя. Клиент — это аппаратный или программный компонент вычислительной системы, посылающий запросы серверу. Программа, являющаяся клиентом, взаимодействует с сервером 3, используя определённый протокол. Она может запрашивать с сервера 3 какие-либо данные, манипулировать данными непосредственно на сервере 3, запускать на сервере 3 новые процессы и т. п. Полученные от сервера 3 данные клиентская программа может предоставлять пользователю 1, 2 или использовать как-либо иначе, в зависимости от назначения программы. [00055] The first 1 and second 2 users are people interacting with the digital objects 4 of the collaborative editing environment 5 via the user's client. A client is a hardware or software component of a computing system that sends requests to a server. The client program communicates with the server 3 using a specific protocol. It can request any data from server 3, manipulate data directly on server 3, launch new processes on server 3, etc. The client program can provide data received from server 3 to user 1, 2 or use it in some other way, in depending on the purpose of the program.
[00056] Система управления совместным редактированием, показанная на Фиг. 3, работает следующим образом. При отправке первым пользователем 1 запроса на сервер 3 для получения прав на редактирование цифрового объекта 4, если цифровой объект 4 свободен, то при помощи сервера 3 предоставляют первому пользователю 1 права на редактирование этого цифрового объекта 4. При отправке вторым пользователем 2 запроса на передачу прав на редактирование цифрового объекта 4, права на редактирование которого на данный момент принадлежат первому пользователю 1 производят ожидание сервером 3 ответа первого пользователя 1 на запрос второго пользователя 2 в течение определенного времени. При этом, в случае если первый пользователь 1 успел ответить на запрос в течение определенного времени и отказал в передаче прав на редактирование цифрового объекта 4 второму пользователю 2, то сервер 3 права на редактирование цифрового объекта 4 второму пользователю 2 не предоставляет. В противном случае, а именно в случае, если первый пользователь 1 не успел ответить на запрос второго пользователя 2 или успел и передал права на редактирование второму пользователю 2, то при помощи сервера 3 сначала отзывают права на редактирование цифрового объекта 4 у первого пользователя 1, а затем предоставляют права на редактирование цифрового объекта 4 второму пользователю 2. При этом цифровой объект 4 хранится в среде совместного редактирования 5, включающейся в память 6 сервера 3, а все действия, осуществляемые сервером 3, осуществляются при помощи процессора 7 сервера 3. [00056] The co-editing control system shown in FIG. 3 works as follows. When the first user 1 sends a request to server 3 to obtain rights to edit digital object 4, if digital object 4 is free, then using server 3, the first user 1 is granted rights to edit this digital object 4. When the second user 2 sends a request to transfer rights to edit a digital object 4, the editing rights of which currently belong to the first user 1, the server 3 waits for the response of the first user 1 to the request of the second user 2 for a certain amount of time. In this case, if the first user 1 managed to respond to the request within a certain time and refused to transfer the rights to edit the digital object 4 to the second user 2, then the server 3 does not grant the rights to edit the digital object 4 to the second user 2. Otherwise, namely, if the first user 1 did not have time to respond to the request of the second user 2 or managed to transfer the editing rights to the second user 2, then with the help of the server 3, the rights to edit the digital object 4 are first revoked from the first user 1, and then grant the rights to edit the digital object 4 to the second user 2. In this case, the digital object 4 is stored in the collaborative editing environment 5 included in the memory 6 of the server 3, and all actions performed by the server 3 are carried out using the processor 7 of the server 3.
[00057] На Фиг. 4 изображен схематичный вид системы управления совместным редактированием цифровых объектов с дополнительными элементами согласно настоящему изобретению. Изображенные на ней и нижеописанные элементы могут использоваться в системе управления совместным редактированием цифровых объектов, в дополнение к вышеописанным элементам, по отдельности, в совокупности и в любой комбинации. [00057] In FIG. 4 is a schematic view of a digital object co-editing control system with additional elements according to the present invention. The items depicted therein and described below can be used in the digital object co-editing management system, in addition to the items described above, individually, collectively, and in any combination.
[00058] В частности, сервер 3 может включать модуль обновления 8, подключенный к памяти 6. Модуль обновления 8 предназначен для обновления данных среды совместного редактирования 5, хранящейся в памяти 6. В частности, модуль обновления 8 может быть сконфигурирован с возможностью сохранения изменений в цифровых объектах 4, вносимых пользователями 1, 2. [00058] In particular, the server 3 may include an update module 8 connected to the memory 6. The update module 8 is designed to update the data of the collaborative editing environment 5 stored in the memory 6. In particular, the update module 8 may be configured to save changes to digital objects 4 contributed by users 1, 2.
[00059] Модуль обновления 8 может быть сконфигурирован с возможностью сохранения изменений несколькими способами. Во-первых, пользователь 1, 2 может сохранять изменения посредством модуля обновления 8, внесенные в процессе редактирования цифрового объекта 4, самостоятельно и на любом этапе редактирования. Во-вторых, возможно предусмотреть периодическое сохранение изменений, внесенных в цифровой объект 4, модулем обновления 8. При этом, в случае если предусмотрено периодическое сохранение цифрового объекта 4, то предпочтительно, чтобы период сохранения изменений был меньше, чем время ожидания сервером 3 ответа первого пользователя 1 на запрос второго пользователя 2. В случае, если период больше или равен времени ожидания, то существует риск потери данных об изменениях, которые были внесены первым пользователем 1 в цифровой объект 4 в случае его передачи второму пользователю 2, как это было описано ранее. Для предотвращения такой потери данных может применяться третий способ сохранения цифрового объекта 4, а именно сохранение изменений, внесенных первым пользователем 1, модулем обновления 8 перед непосредственной передачей прав на редактирование этого цифрового объекта 4 второму пользователю 2. Все эти три способа сохранения могут применяться модулем обновления 8 как по отдельности, так и в совокупности или любой комбинации. [00059] The update module 8 can be configured to save changes in several ways. Firstly, the user 1, 2 can save the changes made during the editing process of the digital object 4 by means of the updater 8 independently and at any stage of editing. Secondly, it is possible to provide for the periodic saving of changes made to the digital object 4 by the update module 8. In this case, if the digital object 4 is periodically saved, it is preferable that the period for saving the changes is less than the time the server 3 waits for the first response. user 1 to the request of the second user 2. If the period is greater than or equal to the waiting time, then there is a risk of losing data about the changes that were made by the first user 1 to the digital object 4 if it is transferred to the second user 2, as described earlier . To prevent such data loss a third way of saving the digital object 4 can be used, namely saving the changes made by the first user 1 by the update module 8 before directly transferring the rights to edit this digital object 4 to the second user 2. All these three methods of saving can be used by the update module 8 as separately, or in total or any combination.
[00060] Процессор 7 может быть сконфигурирован таким образом, что время ожидания сервером 3 ответа первого пользователя 1 на запрос второго пользователя 2 может быть установлен в диапазоне 1-15 минут, в зависимости от конкретных задач системы. В случае, если задавать время меньше минуты, у пользователя 1 может не хватить времени среагировать на поступивший ему запрос, т.к. ему нужно будет, например, переключиться с редактирования на прочтение текста запроса, прочитать его, понять, какой цифровой объект 4 запрашивают и ответить на запрос. В случае, если время ожидания составляет более 15 минут, то это будет значительно затягивать процесс работы пользователями 1, 2, т.к. при отправке запроса на редактирование второй пользователь 2 может рассчитывать получить права на редактирование цифрового объекта 4 как можно раньше для того, чтобы скорее приступить к его редактированию. В связи с этим, время ожидания 1-15 минут является оптимальным временем ожидания. При этом, в случае добавления функции периодического сохранения цифрового объекта 4 модулем обновления 8, следует установить период сохранения меньше 1-15 минут или предусмотреть возможность сохранения изменений, внесенных первым пользователем 1, перед непосредственной передачей прав на редактирование этого цифрового объекта 4 второму пользователю 2. [00060] The processor 7 may be configured such that the time the server 3 waits for a response from the first user 1 to a request from the second user 2 may be set in the range of 1-15 minutes, depending on the specific tasks of the system. If you set the time less than a minute, user 1 may not have enough time to respond to the request he received, because he will need to, for example, switch from editing to reading the text of the request, read it, understand which digital object 4 is being requested and respond to the request. If the waiting time is more than 15 minutes, then this will significantly delay the work process for users 1, 2, because when submitting an edit request, the second user 2 can expect to receive the rights to edit the digital object 4 as soon as possible in order to start editing it sooner. In this regard, a waiting time of 1-15 minutes is the optimal waiting time. In this case, if the function of periodically saving the digital object 4 by the update module 8 is added, the saving period should be set to less than 1-15 minutes or it should be possible to save the changes made by the first user 1 before directly transferring the rights to edit this digital object 4 to the second user 2.
[00061] Процессор 7 сервера 3 может дополнительно быть сконфигурирован с возможностью отправки уведомлений пользователям 1, 2 о том, что права на редактирование цифрового объекта 4 были отозваны. Это может позволить проинформировать пользователя 1, 2 о потере прав на редактирование конкретного цифрового объекта 4. Процессор 7 может отправлять уведомление посредством интерфейса среды совместного редактирования 5, в браузере во время активного использования или в виде уведомления на электронную почту. При этом уведомление может включать как минимум название и/или некоторый идентификатор цифрового объекта 4, права на редактирование которого были отозваны. Также уведомление может включать идентификатор пользователя 1, 2, которому были переданы права на редактирование цифрового объекта 4 и/или текущий статус цифрового объекта 4. [00061] The processor 7 of the server 3 may further be configured to send notifications to the users 1, 2 that the rights to edit the digital object 4 have been revoked. This may allow the user 1, 2 to be informed of the loss of rights to edit a particular digital object 4. The processor 7 may send a notification through the interface of the collaborative editing environment 5, in the browser during active use, or as an email notification. In this case, the notification may include at least the name and/or some identifier of the digital object 4, the rights to edit which have been revoked. The notification may also include the identifier of the user 1, 2 to whom the rights to edit the digital object 4 were transferred and/or the current status of the digital object 4.
[00062] Также сервер 3 может дополнительно включать среду просмотра 9, связанную со средой совместного редактирования 5. Среда просмотра 9 предназначена для отображения изменений цифрового объекта 4, части цифровых объектов 4 или всех цифровых объектов 4, включающихся в среду совместного редактирования 5. Среда просмотра 9 может быть реализована несколькими способами. Во-первых, среда просмотра 9 может отображать цифровые объекты 4 только в том виде, в котором они 4 сохранены на данный момент в памяти 6. То есть, если модуль обновления 8 совершает периодическое сохранение цифровых объектов 4 раз в минуту, то отображение цифровых объектов 4 в среде просмотра 9 будет меняться каждую минуту в момент сохранения изменений модулем обновления 8. Во-вторых, среда просмотра 9, за счет своего подключения к среде совместного редактирования 5, может отображать текущее состояние цифрового объекта 4. В этом случае, изменение отображения цифрового объекта 4 будет осуществляться с каждым внесенным изменением в цифровой объект 4 в среде совместного редактирования 5. Среда просмотра 9 при этом будет являться «зеркалом» среды совместного редактирования 5, не предоставляющий функционал среды совместного редактирования 5, а лишь отображающим цифровые объекты 4 в их текущем состоянии. [00062] Also, the server 3 may further include a viewing environment 9 associated with the collaborative editing environment 5. The viewing environment 9 is intended to display changes to the digital object 4, part of the digital objects 4 or all digital objects 4 included in the co-editing environment 5. The viewing environment 9 can be implemented in several ways. Firstly, the viewing environment 9 can only display the digital objects 4 as they are currently stored in the memory 6. That is, if the updater 8 periodically stores the digital objects 4 times per minute, then the display of the digital objects 4 in the viewer 9 will change every minute at the moment the update module 8 saves the changes. object 4 will be implemented with each change made to digital object 4 in co-editing environment 5. Viewing environment 9 will be a “mirror” of co-editing environment 5, which does not provide the functionality of co-editing environment 5, but only displays digital objects 4 in their current condition.
[00063] При включении среды просмотра 9 в систему управления совместным редактированием цифровых объектов процессор 7 сервера 3 может дополнительно быть сконфигурирован с возможностью исключения пользователей 1, 2 из среды совместного редактирования 5 цифрового объекта 4, а также добавления пользователей 1, 2 в среду просмотра 9. Это может быть нужно для того, чтобы предоставить пользователю 1, 2 возможность наблюдения за ходом редактирования цифрового объекта 4, а также для того, чтобы пользователь 1, 2 имел возможность узнать, когда другой пользователь 1, 2 прекратил редактирование цифрового объекта 4. Также это может обеспечить возможность идентификации не редактируемых на данный момент цифровых объектов 4. [00064] Система управления совместным редактированием цифровых объектов при включении всех дополнительных элементов, показанных на Фиг. 4, работает следующим образом. При отправке первым пользователем 1 запроса на сервер 3 для получения прав на редактирование цифрового объекта 4, если цифровой объект 4 свободен, то при помощи сервера 3 предоставляют первому пользователю 1 права на редактирование этого цифрового объекта 4. После предоставления сервером 3 прав первому пользователю 1 на редактирование цифрового объекта 4 первый пользователь может осуществлять редактирование цифрового объекта 4 и сохранять изменения в ходе редактирования при помощи модуля обновления 8. Параллельно при помощи модуля обновления 8 также осуществляют периодическое сохранение цифрового объекта 4 в памяти 6. При отправке вторым пользователем 2 запроса на передачу прав на редактирование цифрового объекта 4, права на редактирование которого на данный момент принадлежат первому пользователю 1 производят ожидание сервером 3 ответа первого пользователя 1 на запрос второго пользователя 2 в течение определенного времени (1-15 минут). При этом, в случае если первый пользователь 1 успел ответить на запрос в течение определенного времени и отказал в передаче прав на редактирование цифрового объекта 4 второму пользователю 2, то сервер 3 права на редактирование цифрового объекта 4 второму пользователю 2 не предоставляет. В противном случае, а именно в случае, если первый пользователь 1 не успел ответить на запрос второго пользователя 2 или успел и передал права на редактирование второму пользователю 2, то при помощи сервера 3 сначала отзывают права на редактирование цифрового объекта 4 у первого пользователя 1, а затем предоставляют права на редактирование цифрового объекта 4 второму пользователю 2. После этого при помощи сервера 3 отправляют уведомление первому пользователю 1 о том, что права на редактирование цифрового объекта 4 были отозваны, и исключают первого пользователя 1 из среды совместного редактирования 5. После исключения первого пользователя 1 могут добавить в среду просмотра 9. После этого сохраняют текущее состояние цифрового объекта 4 в память 6 при помощи модуля обновления 8. Далее, при помощи сервера 3 предоставляют права на редактирование цифрового объекта 4 второму пользователю 2. Ожидание ответа сервером 3 при этом осуществляют на протяжении 1-15 минут, а периодическое сохранение изменений цифрового объекта 4 производят с периодом меньшим 1-15 минут. Параллельно в ходе редактирования цифрового объекта 4 после сохранения, непрерывно и/или с определенной периодичностью создают копию визуального отображения по крайней мере одного цифрового объекта 4 и передают созданную копию в среду просмотра 9 при помощи сервера 3. После этого отображают полученную копию при помощи среды просмотра 9. При этом цифровой объект 4 храниться в среде совместного редактирования 5, включающейся в память 6 сервера 3, а все действия, осуществляемые сервером 3, осуществляются при помощи процессора 7 сервера 3. [00063] When the viewing environment 9 is included in the digital object co-editing management system, the processor 7 of the server 3 can be further configured to exclude users 1, 2 from the co-editing environment 5 of the digital object 4, as well as add users 1, 2 to the viewing environment 9 This may be necessary in order to allow user 1, 2 to monitor the progress of editing digital object 4, and also to allow user 1, 2 to know when another user 1, 2 has stopped editing digital object 4. Also this may allow identification of currently unedited digital objects 4. [00064] The digital object co-editing control system when all additional elements shown in FIG. 4 works as follows. When the first user 1 sends a request to the server 3 to obtain the rights to edit the digital object 4, if the digital object 4 is free, then using the server 3, the first user 1 is granted the rights to edit this digital object 4. After the server 3 grants the rights to the first user 1 to editing the digital object 4, the first user can edit the digital object 4 and save changes during editing using the update module 8. In parallel, the update module 8 also periodically stores the digital object 4 in the memory 6. When the second user 2 sends a transfer request for editing a digital object 4, the editing rights of which currently belong to the first user 1, the server 3 waits for the response of the first user 1 to the request of the second user 2 for a certain time (1-15 minutes). In this case, if the first user 1 managed to respond to the request within a certain time and refused to transfer the rights to edit the digital object 4 to the second user 2, then the server 3 does not grant the rights to edit the digital object 4 to the second user 2. Otherwise, namely, if the first user 1 did not have time to respond to the request of the second user 2 or managed to transfer the editing rights to the second user 2, then with the help of the server 3, the rights to edit the digital object 4 are first revoked from the first user 1, and then grant the rights to edit the digital object 4 to the second user 2. After that, the server 3 sends a notification to the first user 1 that the rights to edit the digital object 4 have been revoked, and excludes the first user 1 from the co-editing environment 5. After the exclusion the first user 1 can be added to the viewing environment 9. After that, the current state of the digital object 4 is stored in memory 6 using the update module 8. Further, using the server 3, the rights to edit the digital object 4 are granted to the second user 2. Waiting for a response by the server 3 while are carried out for 1-15 minutes, and periodic saving of changes in the digital object 4 is carried out with a period of less than 1-15 minutes. In parallel, in the course of editing the digital object 4 after saving, continuously and / or with a certain periodicity, a copy of the visual display of at least one digital object 4 is created and the created copy is transferred to the viewing environment 9 using the server 3. After that, the resulting copy is displayed using the viewing environment 9. In this case, the digital object 4 is stored in the collaborative editing environment 5 included in the memory 6 of the server 3, and all actions performed by the server 3 are carried out using the processor 7 of the server 3.
[00065] В настоящих материалах заявки представлено предпочтительное раскрытие осуществления заявленного технического решения, которое не должно использоваться как ограничивающее иные, частные воплощения его реализации, которые не выходят за рамки запрашиваемого объема правовой охраны и являются очевидными для специалистов в соответствующей области техники. [00065] The present application materials provide a preferred disclosure of the implementation of the claimed technical solution, which should not be used as limiting other, private embodiments of its implementation that do not go beyond the requested scope of legal protection and are obvious to specialists in the relevant field of technology.

Claims

Формула изобретения Claim
1. Способ управления совместным редактированием цифровых объектов, включающий следующие этапы: 1. A method for managing collaborative editing of digital objects, including the following steps:
• отправка первым пользователем запроса на сервер для получения прав на редактирование цифрового объекта, содержащегося в среде совместного редактирования ; • sending by the first user of a request to the server to obtain the rights to edit the digital object contained in the collaborative editing environment;
• предоставление сервером первому пользователю прав на редактирование цифрового объекта, содержащегося в среде совместного редактирования; • granting by the server to the first user the rights to edit the digital object contained in the collaborative editing environment;
• отправка вторым пользователем запроса на передачу прав на редактирование цифрового объекта, содержащегося в среде совместного редактирования; • a second user submitting a request to transfer rights to edit a digital object contained in a co-editing environment;
• ожидание сервером ответа первого пользователя на запрос второго пользователя в течение определенного времени; при этом, первый пользователь в течение определенного времени имеет возможность ответить одним из следующих вариантов: • waiting by the server for the first user's response to the second user's request for a certain time; at the same time, the first user within a certain time has the opportunity to answer one of the following options:
• передать права на редактирование цифрового объекта второму пользователю; • transfer the rights to edit the digital object to the second user;
• отклонить запрос на передачу прав на редактирование цифрового объекта второму пользователю; • reject a request to transfer rights to edit a digital object to a second user;
• не отвечать на запрос передачу прав на редактирование цифрового объекта второму пользователю, причем, если первый пользователь передал права на редактирование цифрового объекта второму или не ответил на запрос, при помощи сервера: • do not respond to the request to transfer the rights to edit the digital object to the second user, and if the first user transferred the rights to edit the digital object to the second or did not respond to the request, using the server:
• отзывают права на редактирование цифрового объекта у первого пользователя;• revoke the rights to edit the digital object from the first user;
• предоставляют права на редактирование цифрового объекта второму пользователю. • grant rights to edit the digital object to the second user.
2. Способ управления совместным редактированием цифровых объектов по п. 1, отличающийся тем, что запрос второго пользователя на передачу прав на редактирование цифрового объекта отправляют непосредственно первому пользователю и/или серверу.2. The method of managing joint editing of digital objects according to claim 1, characterized in that the second user's request to transfer rights to edit the digital object is sent directly to the first user and/or server.
3. Способ управления совместным редактированием цифровых объектов по п. 1, отличающийся тем, что перед этапом предоставления права на редактирование цифрового объекта второму пользователю, сохраняют отредактированный цифровой объект при помощи модуля обновления. 3. The method of managing the joint editing of digital objects according to claim 1, characterized in that before the step of granting the right to edit the digital object to the second user, the edited digital object is saved using the update module.
4. Способ управления совместным редактированием цифровых объектов по п. 1, отличающийся тем, что этап ожидания ответа первого пользователя на запрос второго пользователя производится в течение 1-15 минут. 4. The method of managing the joint editing of digital objects according to claim 1, characterized in that the stage of waiting for the response of the first user to the request of the second user is performed within 1-15 minutes.
22 22
5. Способ управления совместным редактированием цифровых объектов по п. 1, отличающийся тем, что производят периодическое сохранение цифровых объектов при помощи модуля обновления. 5. The method of managing the joint editing of digital objects according to claim 1, characterized in that the digital objects are periodically saved using the update module.
6. Способ управления совместным редактированием цифровых объектов по п. 5, отличающийся тем, что производят периодические сохранение цифровых объектов с периодом меньшим, чем время ожидания ответа первого пользователя на запрос второго пользователя. 6. The method of managing the joint editing of digital objects according to claim 5, characterized in that the digital objects are periodically saved with a period less than the waiting time for the first user's response to the second user's request.
7. Способ управления совместным редактированием цифровых объектов по п. 1, отличающийся тем, что на этапе отзыва прав на редактирование цифрового объекта у первого пользователя отправляют уведомление первому пользователю о том, что права на редактирование цифрового объекта были отозваны, при помощи сервера. 7. The method for managing the joint editing of digital objects according to claim 1, characterized in that at the stage of revoking the rights to edit the digital object from the first user, a notification is sent to the first user that the rights to edit the digital object have been revoked using the server.
8. Способ управления совместным редактированием цифровых объектов по п. 1, отличающийся тем, что после этапа отзыва права на редактирование объекта у первого пользователя при помощи сервера: 8. The method of managing the joint editing of digital objects according to claim 1, characterized in that after the stage of revoking the right to edit the object from the first user using the server:
• исключают первого пользователя из среды совместного редактирования цифрового объекта; • exclude the first user from the digital object co-editing environment;
• добавляют первого пользователя в среду просмотра. • add the first user to the browsing environment.
9. Способ управления совместным редактированием цифровых объектов по п. 8, отличающийся тем, что после сохранения по крайней одного цифрового объекта отображают по крайней мере один цифровой объект при помощи среды просмотра без предоставления возможности его редактирования. 9. The method for controlling co-editing of digital objects according to claim 8, characterized in that after saving at least one digital object, at least one digital object is displayed using the viewing environment without being able to edit it.
10. Способ управления совместным редактированием цифровых объектов по п. 8, отличающийся тем, что в процессе редактирования цифрового объекта вторым пользователем: 10. The method of managing the joint editing of digital objects according to claim 8, characterized in that in the process of editing a digital object by the second user:
• создают копию визуального отображения по крайней мере одного цифрового объекта при помощи сервера; • create a copy of the visual display of at least one digital object using the server;
• передают созданную копию среде просмотра при помощи сервера; • transfer the created copy to the viewing environment using the server;
• отображают полученную копию при помощи среды просмотра. • display the resulting copy using the viewing environment.
И. Система управления совместным редактированием цифровых объектов, сконфигурированная для одновременной работы по крайней мере двух пользователей и включающая: I. A digital object co-editing management system configured for at least two simultaneous users and including:
• сервер, включающий по крайней мере: о память, включающую по крайней мере одну среду совместного редактирования, которая включает по крайней мере один цифровой объект; и о процессор сконфигурированный для: предоставления прав на редактирование цифрового объекта, содержащегося в среде совместного редактирования; ожидания ответа первого пользователя на запрос второго пользователя на передачу прав на редактирование цифрового объекта в течение определенного времени; и отзыва прав на редактирование цифрового объекта, содержащегося в среде совместного редактирования, при этом среда совместного редактирования сконфигурирована таким образом, чтобы каждый пользователь имел возможность: • a server that includes at least: a memory that includes at least one co-editing environment that includes at least one digital object; and o processor configured for: granting rights to edit a digital object contained in a co-editing environment; waiting for the response of the first user to the request of the second user to transfer the rights to edit the digital object within a certain time; and revoke rights to edit the digital object contained in the co-editing environment, with the co-editing environment configured in such a way that each user has the ability to:
• отправки запроса серверу на передачу прав на редактирование цифрового объекта, содержащегося в среде совместного редактирования; • sending a request to the server to transfer rights to edit the digital object contained in the collaborative editing environment;
• отклонение запроса на передачу прав другому пользователю на редактирование цифрового объекта, содержащегося в среде совместного редактирования, в течение определенного времени; • Rejecting a request to transfer rights to another user to edit a digital object contained in a co-editing environment for a certain amount of time;
• передачи прав другому пользователю на редактирование цифрового объекта, содержащегося в среде совместного редактирования, в течение определенного времени; • transferring rights to another user to edit a digital object contained in a collaborative editing environment for a specified period of time;
• редактирования по крайней мере одного цифрового объекта при условии, что пользователю при помощи сервера были предоставлены права на редактирование этого цифрового объекта. • editing at least one digital object, provided that the user has been granted rights to edit this digital object using the server.
12. Система управления совместным редактированием цифровых объектов по п. И, отличающаяся тем, что сервер включает модуль обновления, подключенный к памяти.12. The control system for joint editing of digital objects according to claim. And, characterized in that the server includes an update module connected to the memory.
13. Система управления совместным редактированием цифровых объектов по п. 12, отличающаяся тем, что, модуль обновления сконфигурирован с возможностью сохранения отредактированных цифровых объектов. 13. The digital object co-editing control system according to claim 12, characterized in that the update module is configured to save the edited digital objects.
14. Система управления совместным редактированием цифровых объектов по п. И, отличающаяся тем, что сервер сконфигурирован таким образом, что время ожидания ответа первого пользователя на запрос второго пользователя составляет 1-15 минут. 14. Control system for collaborative editing of digital objects according to claim 1, characterized in that the server is configured in such a way that the waiting time for the first user's response to the second user's request is 1-15 minutes.
15. Система управления совместным редактированием цифровых объектов по п. 12, отличающаяся тем, что модуль обновления сконфигурирован с возможностью периодического сохранения цифровых объектов. 15. The digital object co-editing control system of claim 12, wherein the updater is configured to periodically save the digital objects.
16. Система управления совместным редактированием цифровых объектов по п. 15, отличающаяся тем, что модуль обновления производит периодические сохранение цифровых объектов с периодом меньшим, чем время ожидания ответа первого пользователя на запрос второго пользователя. 16. The control system for collaborative editing of digital objects according to claim 15, characterized in that the update module periodically saves digital objects with a period less than the waiting time for the first user's response to the second user's request.
17. Система управления совместным редактированием цифровых объектов по п. И, отличающаяся тем, сервер сконфигурирован с возможностью отправки уведомлений пользователям о том, что права на редактирование цифрового объекта были отозваны.17. The digital object co-editing management system according to claim 1, characterized in that the server is configured to send notifications to users that the rights to edit the digital object have been revoked.
18. Система управления совместным редактированием цифровых объектов по п. И, отличающаяся тем, что сервер включает среду просмотра, связанную со средой совместного редактирования, причем сервер сконфигурирован с возможностью: 18. The control system for joint editing of digital objects according to claim. And, characterized in that the server includes a viewing environment associated with the collaborative editing environment, and the server is configured to:
• исключения пользователей из среды совместного редактирования цифрового объекта; • exclusion of users from the environment of collaborative editing of a digital object;
• добавления пользователей в среду просмотра. • adding users to the browsing environment.
19. Система управления совместным редактированием цифровых объектов по п. 18, отличающаяся тем, что среда просмотра сконфигурирована с возможностью отображения по крайней мере одного цифрового объекта из среды совместного редактирования без предоставления возможности его редактирования, причем отображают цифровые объекты только с сохраненными изменениями. 19. The digital object co-editing control system according to claim 18, characterized in that the viewing environment is configured to display at least one digital object from the co-editing environment without allowing its editing, and the digital objects are displayed only with saved changes.
20. Система управления совместным редактированием цифровых объектов по п. 18, отличающаяся тем, что среда просмотра сконфигурирована с возможностью отображения по крайней мере одного цифрового объекта из среды совместного редактирования без предоставления возможности его редактирования, причем отображают цифровые объекты со всеми внесенными в цифровые объекты изменениями. 20. The control system for co-editing digital objects according to claim 18, characterized in that the viewing environment is configured to display at least one digital object from the co-editing environment without allowing its editing, and the digital objects are displayed with all the changes made to the digital objects .
25 25
PCT/RU2021/000632 2021-12-24 2021-12-30 System and method for managing the collaborative editing of digital objects WO2023121505A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2021138665 2021-12-24
RU2021138665A RU2780575C1 (en) 2021-12-24 System and method for managing collaborative editing of digital objects

Publications (1)

Publication Number Publication Date
WO2023121505A1 true WO2023121505A1 (en) 2023-06-29

Family

ID=86903456

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2021/000632 WO2023121505A1 (en) 2021-12-24 2021-12-30 System and method for managing the collaborative editing of digital objects

Country Status (1)

Country Link
WO (1) WO2023121505A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070271502A1 (en) * 2006-05-20 2007-11-22 Bharat Veer Bedi Method and system for collaborative editing of a document
RU2465642C2 (en) * 2007-12-14 2012-10-27 Майкрософт Корпорейшн Shared document editing modes
US20130283147A1 (en) * 2012-04-19 2013-10-24 Sharon Wong Web-based collaborative document review system
US20140053086A1 (en) * 2012-08-20 2014-02-20 Samsung Electronics Co., Ltd. Collaborative data editing and processing system
US20150186021A1 (en) * 2012-08-22 2015-07-02 Adobe Systems Incorporated Non-Destructive Collaborative Editing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070271502A1 (en) * 2006-05-20 2007-11-22 Bharat Veer Bedi Method and system for collaborative editing of a document
RU2465642C2 (en) * 2007-12-14 2012-10-27 Майкрософт Корпорейшн Shared document editing modes
US20130283147A1 (en) * 2012-04-19 2013-10-24 Sharon Wong Web-based collaborative document review system
US20140053086A1 (en) * 2012-08-20 2014-02-20 Samsung Electronics Co., Ltd. Collaborative data editing and processing system
US20150186021A1 (en) * 2012-08-22 2015-07-02 Adobe Systems Incorporated Non-Destructive Collaborative Editing

Similar Documents

Publication Publication Date Title
RU2421799C2 (en) Safety in applications of equivalent nodes synchronisation
RU2344468C2 (en) Method of multiple file conditions management for duplicated file
US7139798B2 (en) Method and apparatus for connecting a secure peer-to-peer collaboration system to an external system
US6529905B1 (en) Method and system for allowing multiple users to edit a hierarchical data structure
US5623659A (en) Parent/child subset locking scheme for versioned objects
CA2636810C (en) Anticipatory changes to resources managed by locks
JP2948496B2 (en) System and method for maintaining replicated data consistency in a data processing system
EP0081056B1 (en) A data processing network having a distributed data file access control
US8689179B2 (en) Transportable refactoring object
US9104715B2 (en) Shared data collections
Sun Optional and responsive fine-grain locking in internet-based collaborative systems
US20130318207A1 (en) Systems and methods for managing mobile app data
JP2007299431A (en) Replication facility
US6182115B1 (en) Method and system for interactive sharing of text in a networked environment
WO2001033362A1 (en) Action communication and synchronization for documents accessed by multiple users
RU2780575C1 (en) System and method for managing collaborative editing of digital objects
WO2023121505A1 (en) System and method for managing the collaborative editing of digital objects
US7346910B1 (en) Administration of groups of computer programs, data processing systems, or system resources
Xue et al. Conflict control locking in distributed cooperative graphics editors
JP2004078535A (en) Exclusive control device, method, and program
Ouyang et al. An Approach to Optimistic Commit and Transparent Compensation for E-Service Transactions.
Biskup et al. Administration rights in the sdsd-system
JP2003186728A (en) Sharing method for distributed management data
Guan et al. Jointly-owned objects for collaboration: Operating-system support and protection model
JPH07175641A (en) Distributed program development integration update managing system

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

Country of ref document: EP

Kind code of ref document: A1