Communicating messages over transient connections in a peer-to-peer network
First Claim
1. A method of transferring data on a network, comprisingusing one or more processors to perform the following computer executable acts:
- adding a first computer as a participant in a collaborative session including a plurality of computers after determining, by the first computer, that the first computer is included in a session participation list;
receiving, at the first computer, after adding the first computer as a participant, a first broadcast message from the session, the first broadcast message being a message generated by a second computer different from the first computer, wherein the first broadcast message includes at least;
a broadcasting participant identifier, a message identifier, session information, and a message payload;
responsive to determining that the first computer is a participant in the session, processing the first broadcast message generated by the second computer for display on the first computer, the message payload including electronic ink data;
deleting, by the first computer, at least a portion of the electronic ink data that was included in the first broadcast message; and
broadcasting to the session, by the first computer, a dependent broadcast message, the message payload of the dependent broadcast message including the deletion of the at least a portion of the electronic ink data included in the first broadcast message,wherein the dependent broadcast message is dependent on the first broadcast message, andwherein the session comprises a virtual whiteboard on which session computers are configured to add new messages, delete existing messages, or modify existing messages.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods useful in communicating messages over a peer-to-peer network, optionally over transient connections to participants in a collaborative session (e.g., an “electronic whiteboard” session), are described. Examples include establishing a session for data transfer, wherein participants easily enter and leave the session without losing data or connections between the participants. Participants in a session may gain access to and catch up with data previously transmitted. Various data structures are useful for communicating messages. Such data structures may be used for transmitting message data or identification data to participants.
48 Citations
15 Claims
-
1. A method of transferring data on a network, comprising
using one or more processors to perform the following computer executable acts: -
adding a first computer as a participant in a collaborative session including a plurality of computers after determining, by the first computer, that the first computer is included in a session participation list; receiving, at the first computer, after adding the first computer as a participant, a first broadcast message from the session, the first broadcast message being a message generated by a second computer different from the first computer, wherein the first broadcast message includes at least;
a broadcasting participant identifier, a message identifier, session information, and a message payload;responsive to determining that the first computer is a participant in the session, processing the first broadcast message generated by the second computer for display on the first computer, the message payload including electronic ink data; deleting, by the first computer, at least a portion of the electronic ink data that was included in the first broadcast message; and broadcasting to the session, by the first computer, a dependent broadcast message, the message payload of the dependent broadcast message including the deletion of the at least a portion of the electronic ink data included in the first broadcast message, wherein the dependent broadcast message is dependent on the first broadcast message, and wherein the session comprises a virtual whiteboard on which session computers are configured to add new messages, delete existing messages, or modify existing messages. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method executed on a first workstation comprising:
-
connecting the first workstation and a second workstation in a peer-to-peer manner, the workstations not being operatively connected to a common server, wherein each of the workstations is configured to broadcast message data to other workstations in a session in a peer-to-peer manner and receive broadcast message data from other workstations in the session in a peer-to-peer manner; receiving, at the first workstation, a first message created by the second workstation and broadcast by the second workstation, the first message including a payload containing electronic ink data, the electronic ink data comprising at least one electronic ink stroke; processing, by the first workstation, the first message for display on the first workstation; modifying, by the first workstation, the at least one electronic ink stroke of the electronic ink data; creating, by the first workstation, a second message including a payload containing the modification of the at least one electronic ink stroke of the electronic ink data, the second message being dependent on the first message; including a message history in the second message, the message history including the dependency of the second message on the first message; and broadcasting, by the first workstation, the second message, wherein the session comprises a virtual whiteboard on which session computers are configured to add new messages, delete existing messages, or modify existing messages. - View Dependent Claims (13, 14, 15)
-
Specification