System and method for merging edits for a conversation in a hosted conversation system
First Claim
1. A method comprising:
- at a system hosting a plurality of conversations, including, for a respective conversation including a message and one or more responses to the message, in the plurality of conversations;
receiving, from a first messaging client, a first sequence of edits to a portion of the respective conversation from a first participant of the respective conversation;
receiving, from a second messaging client, a second sequence of edits to the portion of the respective conversation from a second participant of the respective conversation;
responsive to a determination that the first sequence of edits and the second sequence of edits meet a predefined conflict criterion;
(A) transforming the first sequence of edits to produce a first transformed sequence of edits in accordance with the second sequence of edits, and(B) transforming the second sequence of edits to produce a second transformed sequence of edits in accordance with the first sequence of edits;
(C) causing the first transformed sequence of edits to be applied to the second messaging client, and causing the second transformed sequence of edits to be applied to the first messaging client, thereby producing a same modification to the portion of the respective conversation at both the first messaging client and the second messaging client; and
(D) causing a first visual aid and a second visual aid to be concurrently displayed at both the first messaging client and the second messaging client, whereinthe first visual aid moves responsive to the edits of the first participant and visually indicates the portion of the conversation the first participant is editing thereby visually indicating a first location in the portion of the respective conversation where the first sequence of edits is applied, wherein the first visual aid further indicates a personal identity of the first participant; and
the second visual aid moves responsive to the edits of the second participant and visually indicates the portion of the conversation the second participant is editing thereby visually indicating a second location in the portion of the respective conversation where the second sequence of edits is applied, wherein the second visual aid further indicates a personal identity of the second participant.
3 Assignments
0 Petitions
Accused Products
Abstract
A server system hosts a plurality of conversations. For a respective conversation the server system receives a first sequence of edits and a second sequence of edits to a respective content unit of the conversation from different participants of the conversation. The server system converts the first and second sequences of edits into respective first and second merged sequences of edits. The server system responds to a determination that the first merged sequence of edits and the second merged sequence of edits meet predefined conflict criteria by transforming the first and second merged sequences of edits. The server system sends the respective transformed sequences of edits to respective participants so that respective participants can apply either the first sequence of edits followed by the second transformed sequence of edits or applying the second sequence of edits followed by the first transformed sequence of edits to produce a same result.
129 Citations
23 Claims
-
1. A method comprising:
-
at a system hosting a plurality of conversations, including, for a respective conversation including a message and one or more responses to the message, in the plurality of conversations; receiving, from a first messaging client, a first sequence of edits to a portion of the respective conversation from a first participant of the respective conversation; receiving, from a second messaging client, a second sequence of edits to the portion of the respective conversation from a second participant of the respective conversation; responsive to a determination that the first sequence of edits and the second sequence of edits meet a predefined conflict criterion; (A) transforming the first sequence of edits to produce a first transformed sequence of edits in accordance with the second sequence of edits, and (B) transforming the second sequence of edits to produce a second transformed sequence of edits in accordance with the first sequence of edits; (C) causing the first transformed sequence of edits to be applied to the second messaging client, and causing the second transformed sequence of edits to be applied to the first messaging client, thereby producing a same modification to the portion of the respective conversation at both the first messaging client and the second messaging client; and (D) causing a first visual aid and a second visual aid to be concurrently displayed at both the first messaging client and the second messaging client, wherein the first visual aid moves responsive to the edits of the first participant and visually indicates the portion of the conversation the first participant is editing thereby visually indicating a first location in the portion of the respective conversation where the first sequence of edits is applied, wherein the first visual aid further indicates a personal identity of the first participant; and the second visual aid moves responsive to the edits of the second participant and visually indicates the portion of the conversation the second participant is editing thereby visually indicating a second location in the portion of the respective conversation where the second sequence of edits is applied, wherein the second visual aid further indicates a personal identity of the second participant. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 21, 22, 23)
-
-
10. A system, comprising:
-
one or more processors; memory; and one or more programs stored in the memory for execution by the one or more processors, the one or more programs comprising instructions for hosting a plurality of conversations, the hosting including, for a respective conversation including a message and one or more responses to the message, in the plurality of conversations, instructions for;
receiving, from a first messaging client, a first sequence of edits to a portion of the respective conversation from a first participant of the respective conversation;receiving, from a second messaging client, a second sequence of edits to the portion of the respective conversation from a second participant of the respective conversation; responsive to a determination that the first sequence of edits and the second sequence of edits meet a predefined conflict criterion; (A) transforming the first sequence of edits to produce a first transformed sequence of edits in accordance with the second sequence of edits, and (B) transforming the second sequence of edits to produce a second transformed sequence of edits in accordance with the first sequence of edits; (C) causing the first transformed sequence of edits to be applied to the second messaging client, and causing the second transformed sequence of edits to be applied to the first messaging client, thereby producing a same modification to the portion of the respective conversation at both the first messaging client and the second messaging client; and (D) causing a first visual aid and a second visual aid to be concurrently displayed at both the first messaging client and the second messaging client, wherein the first visual aid moves responsive to the edits of the first participant and visually indicates the portion of the conversation the first participant is editing thereby visually indicating a first location in the portion of the respective conversation where the first sequence of edits is applied, wherein the first visual aid further indicates a personal identity of the first participant; and the second visual aid moves responsive to the edits of the second participant and visually indicates the portion of the conversation the second participant is editing thereby visually indicating a second location in the portion of the respective conversation where the second sequence of edits is applied, wherein the second visual aid further indicates a personal identity of the second participant. - View Dependent Claims (11, 13, 14, 15, 16)
-
-
12. A non-transitory computer readable storage medium storing one or more programs configured for execution by one or more processors of a system, the one or more programs comprising instructions, which when executed cause the system to:
-
host a plurality of conversations; and for a respective conversation including a message and one or more responses to the message, in the plurality of conversations; receive, from a first messaging client, a first sequence of edits to a portion of the respective conversation from a first participant of the respective conversation; receive, from a second messaging client, a second sequence of edits to the portion of the respective conversation from a second participant of the respective conversation; responsive to a determination that the first sequence of edits and the second sequence of edits meet a predefined conflict criterion; (A) transform the first sequence of edits to produce a first transformed sequence of edits in accordance with the second sequence of edits, and (B) transform the second sequence of edits to produce a second transformed sequence of edits in accordance with the first sequence of edits; (C) cause the first transformed sequence of edits to be applied to the second messaging client, and cause the second transformed sequence of edits to be applied to the first messaging client, thereby producing a same modification to the portion of the respective conversation at both the first messaging client and the second messaging client; and
;(D) cause a first visual aid and a second visual aid to be concurrently displayed at both the first messaging client and the second messaging client, wherein the first visual aid moves responsive to the edits of the first participant and visually indicates the portion of the conversation the first participant is editing thereby visually indicating a first location in the portion of the respective conversation where the first sequence of edits is applied, wherein the first visual aid further indicates a personal identity of the first participant; and the second visual aid moves responsive to the edits of the second participant and visually indicates the portion of the conversation the second participant is editing thereby visually indicating a second location in the portion of the respective conversation where the second sequence of edits is applied, wherein the second visual aid further indicates a personal identity of the second participant. - View Dependent Claims (17, 18, 19, 20)
-
Specification