US20050033811A1 - Collaborative email - Google Patents
Collaborative email Download PDFInfo
- Publication number
- US20050033811A1 US20050033811A1 US10/637,020 US63702003A US2005033811A1 US 20050033811 A1 US20050033811 A1 US 20050033811A1 US 63702003 A US63702003 A US 63702003A US 2005033811 A1 US2005033811 A1 US 2005033811A1
- Authority
- US
- United States
- Prior art keywords
- document
- revisions
- collaborators
- copies
- administrator
- Prior art date
- Legal status (The legal status 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 status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/107—Computer-aided management of electronic mailing [e-mailing]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
- H04L12/1827—Network arrangements for conference optimisation or adaptation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/42—Mailbox-related aspects, e.g. synchronisation of mailboxes
Definitions
- the field of the invention is data processing, or, more specifically, methods, systems, and products for collaborative email.
- Systems for collaboration in developing email documents generally maintain a master copy of a document in a central location, record changes in the master copy, and update collaborators' copies by providing a new copy of the entire document. This uses a lot of bandwidth, particularly when there are many revisions over a period of time.
- version control systems such as Unix's Source Code Control System or ‘SCCS’ and the open-source version control system known as the Concurrent Versions System or ‘CVS.’
- SCCS Unix's Source Code Control System
- CVS Concurrent Versions System
- Such systems are strongly oriented to version control for source code documents, however, and do not integrate very well with collaborative email, lacking, as they do, support for such collaborative features as automated updates to certain revision levels or authentication through valid digital signatures. For these reasons, there is an ongoing need for improvements in systems and methods for collaborative email.
- Methods, systems, and computer program products are disclosed for writing a collaborative email document, including establishing a collaborative email document on an administrator's computer; identifying one or more collaborators who are authorized to view and edit the document, wherein the collaborators optionally include the administrator; providing to the collaborators copies of the document for viewing and editing, wherein the collaborators' copies reside on collaborators' computers; creating revisions in at least one copy of the document; recording the revisions; and updating the copies of the document on collaborators' computers with the revisions.
- establishing a collaborative email document on an administrator's computer includes identifying an administrator for the document and retaining an administrative copy of the document on the administrator's computer.
- updating copies of a document with revisions includes updating a copy of the document with one or more revisions later than a current version identifier for the copy.
- Typical embodiments include identifying editable portions of the email document, wherein identifying one or more collaborators further comprises specifying that only certain collaborators are authorized to view and edit one or more portions of the document. Typical embodiments also include recording in the document authorization for only certain collaborators to edit one or more portions of the document.
- Typical embodiments also include identifying one or more signatories for the document; providing to each signatory a copy of the document for signing; affixing to the document a digital signature for each signatory; and sending the signed document from the administrator's computer to addressees.
- Such embodiments typically also include sending the collaborative email document from the administrator's computer to addressees only when the document bears valid digital signatures from all signatories.
- recording revisions comprises storing the revisions on a computer accessible to collaborators' computers.
- recording revisions typically includes storing the revisions with a version identification for each revision.
- recording revisions typically includes storing the revisions with a sequence identification for each revision.
- updating copies of a collaborative email document with revisions further comprises communicating the revisions asynchronously to the collaborators and to the administrator's computer.
- updating the collaborators' copies of the document with the revisions further comprises communicating the revisions synchronously to one or more collaborators as the revisions are made.
- updating the copies of the document with the revisions often includes identifying collaborator computers that are available for synchronous communications of revisions, communicating revisions synchronously to collaborator computers that are available for synchronous communications, and updating current version identifications for the copies of the document on collaborator's computers that are available for synchronous communications.
- identifying collaborator computers that are available for synchronous communications of revisions typically includes determining whether collaborators copies are synchronized with the latest revisions.
- FIG. 1 depicts an architecture for a data processing system in which various embodiments of the present invention may be implemented.
- FIG. 2 sets forth a block diagram of automated computing machinery useful in systems for collaborative email according to embodiments of the present invention.
- FIG. 3 sets forth a line drawing of a data entry screen on an email client improved according to embodiments of the present invention.
- FIG. 4 sets forth a database diagram of exemplary data structures useful in various embodiment of the present invention.
- FIG. 5 sets forth a flow chart depicting a method for writing a collaborative email document.
- FIG. 6 sets forth a flow chart illustrating an extension of the method of FIG. 5 .
- FIG. 7 sets forth a flow chart illustrating a method of synchronous communications of revisions.
- Suitable programming means include any means for directing a computer system to execute the steps of the method of the invention, including for example, systems comprised of processing units and arithmetic-logic circuits coupled to computer memory, which systems have the capability of storing in computer memory, which computer memory includes electronic circuits configured to store data and program instructions, programmed steps of the method of the invention for execution by a processing unit.
- the invention also may be embodied in a computer program product, such as a diskette or other recording medium, for use with any suitable data processing system.
- Embodiments of a computer program product may be implemented by use of any recording medium for machine-readable information, including magnetic media, optical media, or other suitable media.
- any computer system having suitable programming means will be capable of executing the steps of the method of the invention as embodied in a program product.
- Persons skilled in the art will recognize immediately that, although most of the exemplary embodiments described in this specification are oriented to software installed and executing on computer hardware, nevertheless, alternative embodiments implemented as firmware or as hardware are well within the scope of the present invention.
- CGI means “Common Gateway Interface,” a standard technology for data communications of resources between web servers and web clients.
- CGI provides a standard interface between servers and server-side ‘gateway’ programs that administer actual reads and writes of data to and from files systems and databases.
- Client means any computer or other automated computing machinery capable of administering collaborative email according to embodiments of the present invention. Examples include personal computers, PDAs, mobile telephones, laptop computers, handheld devices, and others as will occur to those of skill in the art. Clients include devices capable of wireless as well as wireline communications.
- HDML stands for ‘Handheld Device Markup Language,’ a markup language used to format content for web-enabled mobile phones.
- HDML is proprietary to Openwave Systems, Inc., and can only be operated on phones that use Openwave browsers. Rather than WAP, HDML operates over Openwave's Handheld Device Transport Protocol (“HDTP”).
- HDTP Handheld Device Transport Protocol
- HTML stands for ‘HyperText Markup Language,’ a standard markup language for displaying web pages on browsers.
- HTTP stands for ‘HyperText Transport Protocol,’ a standard data communications protocol of the World Wide Web.
- HTTP is a hyperlinking protocol.
- asynchronous communications of revisions are often implemented by use of hyperlinking protocols.
- Other examples of hyperlinking protocols include HDML and WAP.
- POP means Post Office Protocol, referring to the standard protocol for communicating email messages from email servers to email clients.
- POP3 is a standard Post Office Protocol capable of communicating email messages among email servers and both to and from email clients, which means that POP3 is now useful as a single email protocol with no need for SMTP.
- Server in this specification refers to a computer or other automated computing machinery on a network that manages resources, including documents, and requests for access to such resources.
- a “web server,” is a server that communicates with clients through data communications application programs, such as browsers or microbrowsers, by means of hyperlinking protocols such as HTTP, WAP, or HDTP, in order to manage and make available to networked computers documents, digital objects, and other resources.
- Servers generally include applications programs that that accept data communications connections in order to service requests from clients by sending back responses. Any given computer or program therefore may be both a client and a server.
- the use of these terms in this disclosure refers primarily to the role being performed by the computer or program for a particular connection or coupling for data communications, rather than to the computer or program's capabilities in general.
- SMTP Simple Mail Transfer Protocol
- POP POP
- TCP/IP refers to two layers of a standard OSI data communications protocol stack.
- the network layer is implemented with the Internet Protocol, hence the initials ‘IP.’
- the transport layer is implemented with the Transport Control Protocol, referred to as ‘TCP.’
- TCP/IP is the standard data transport suite for the well-known world-wide network of computers called ‘the Internet.’
- WAP refers to the Wireless Application Protocol, a protocol for use with handheld wireless devices. Examples of wireless devices useful with WAP include mobile phones, pagers, two-way radios, hand-held computers, and PDAs. WAP supports many wireless networks, and WAP is supported by many operating systems. WAP supports HTML, XML, and particularly WML (the Wireless Markup Language), which is a language particularly designed for small screen and one-hand navigation without a keyboard or mouse. Operating systems specifically engineered for handheld devices include PalmOS, EPOC, Windows CE, FLEXOS, OS/9, and JavaOS. WAP devices that use displays and access the Internet run “microbrowsers.” The microbrowsers use small file sizes that can accommodate the low memory constraints of handheld devices and the low-bandwidth constraints of wireless networks.
- Methods and systems according to the present invention generally implement collaborative email by identifying collaborators authorized to view and edit a collaborative email document as it is being written. Segments of the document may be identified that only particular collaborators are authorized to view and edit. Revisions are typically streamed asynchronously (or synchronously) among collaborators' clients through one or more servers. Such methods and systems typically identify an administrator for the document on whose client is maintained an administrative copy of the document. The administrator may or may not be an authorized collaborator, but the administrator's copy of the document may be synchronized to a current version of the document, so that the administrator may provide administrative services regarding development of the document, administrative services such as monitoring document status, securing valid digital signatures from signatories, and finally transmitting the final version of the document to addressees.
- the addressees may or may not include the collaborators, and the signatories may or may not be collaborators.
- a manager may assign the manager's secretary to create a collaborative document, type its initial contents, and act as administrator for development of the document.
- the manager may designate one or more executives as signatories, executives known to the manager as responsible for the subject area of the document.
- the manager may or may not be a signatory.
- the manager may designate collaborators who will receive copies of the document to view and edit while the document is being written. In fact, it may be said that the collaborative edits or revisions to the document actually implement the writing of the document.
- the manager may or may not be listed as a collaborator.
- the administrator may email it to the signatories for digital signatures. After all required signatures are affixed to the document, the administrator may ‘send’ the document to its addressees.
- the email client's ‘send’ function typically is not enabled for sending to addressees until all required signatures are present.
- the send button on collaborators' clients typically is not enabled at all.
- the administrator's copy is updated with revisions just as are all the collaborators' copies.
- the only thing that distinguishes operation of the administrator's client from collaborators' email clients is that sending to addressees typically will eventually become enabled on the administrator's client (when the document is signed), but not so on collaborators' clients.
- Revisions typically are the only transmissions of data from collaborators' clients regarding collaborative email documents.
- FIG. 1 depicts an architecture for a data processing system in which various embodiments of the present invention may be implemented.
- the system of FIG. 1 includes a number of computers coupled for data communications in networks.
- Each of the computers depicted may function as an email client or server according to embodiments of the present invention.
- the system of FIG. 1 includes networks 102 , 104 .
- Networks in such systems may comprise LANs, WANs, intranets, internets, the Internet, webs, and the World Wide Web itself.
- Such networks comprise media that may be used to provide couplings for data communications between various devices and computers connected together within a distributed data processing system.
- Such networks may include permanent couplings, such as wire or fiber optic cables, or temporary couplings made through wireline telephone or wireless communications.
- server 128 and server 105 are connected to network 102 .
- Storage unit 132 is connected to network 102 through server 105 .
- Revisions records 134 identifying revisions to a collaborative email document according to embodiments of the present invention may be stored on storage units like storage unit 132 .
- client devices including a PDA 106 , a workstation 108 , and a mobile phone 110 are connected to network 102 .
- Network-enabled mobile phone 110 connects to network 102 through wireless link 116
- PDA 106 connects to network 102 through wireless link 114 .
- server 128 couples directly to client workstation 130 and network 104 (which may be a LAN), which incorporates wireless communication links supporting a wireless coupling to laptop computer 126 and wireline protocols supporting a wired coupling to client workstation 112 .
- network 104 which may be a LAN
- Each of these exemplary client devices may support email clients for collaborative email according to embodiments of the present invention.
- Client devices and servers in such distributed processing systems may be represented by a variety of computing devices, such as mainframes, personal computers, personal digital assistants, web-enabled mobile telephones, and so on.
- the particular servers and client devices illustrated in FIG. 1 are for explanation, not for limitation.
- Data processing systems may include additional servers, clients, routers, other devices, and peer-to-peer architectures, not shown in FIG. 1 , as will occur to those of skill in the art.
- Networks in such distributed data processing systems may support many data communications protocols, TCP/IP, HTTP, WAP, HDTP, SMS, SMNT, POP, and others as will occur to those of skill in the art.
- Various embodiments of the present invention may be implemented on a variety of hardware platforms in addition to those illustrated in FIG. 1 .
- FIG. 1 is presented as an example of a heterogeneous computing environment in which various embodiments of the present invention may be implemented, not as an architectural limitation of the present invention.
- FIG. 2 sets forth a block diagram of automated computing machinery comprising a computer 106 , such as a client device, email client, or server, useful in systems for collaborative email according to embodiments of the present invention.
- the computer 106 of FIG. 2 includes at least one computer processor 156 or ‘CPU’ as well as random access memory 168 (“RAM”).
- RAM 168 Stored in RAM 168 is an application program 152 .
- Application programs useful in implementing collaborative email include Java servlets and CGI scripts running on servers and email clients on client machines.
- Also stored in RAM 168 is an operating system 154 .
- Operating systems useful in computers according to embodiments of the present invention include Unix, Linux, Microsoft NTTM, and others as will occur to those of skill in the art.
- the computer 106 of FIG. 2 includes computer memory 166 coupled through a system bus 160 to the processor 156 and to other components of the computer.
- Computer memory 166 may be implemented as a hard disk drive 170 , optical disk drive 172 , electrically erasable programmable read-only memory space (so-called ‘EEPROM’ or ‘Flash’ memory) 174 , RAM drives (not shown), or as any other kind of computer memory as will occur to those of skill in the art.
- the example computer 106 of FIG. 2 includes communications adapter 167 that implements connections for data communications 184 to other computers 182 , servers or clients.
- Communications adapters implement the hardware level of data communications connections through which client computers and servers send data communications directly to one another and through networks. Examples of communications adapters include modems for wired dial-up connections, Ethernet (IEEE 802.3) adapters for wired LAN connections, and 802.11b adapters for wireless LAN connections.
- the example computer of FIG. 2 includes one or more input/output interface adapters 178 .
- Input/output interface adapters in computers implement user-oriented input/output through, for example, software drivers and computer hardware for controlling output to display devices 180 such as computer display screens, as well as user input from user input devices 181 such as keyboards and mice.
- FIG. 3 sets forth a line drawing of a data entry screen on an email client improved according to embodiments of the present invention.
- the data entry screen of FIG. 3 includes a title line 302 that displays the fact that the document under edit is a collaborative email document, the document identification (“465”), and the name of the email client (“Client Name”).
- the Client Name is the actual name of an email client such as Microsoft's OutlookTM or Qualcomm's EudoraTM.
- the data entry screen of FIG. 3 includes a horizontal pull-down menu 304 containing the usual menu items such as ‘File,’ ‘Edit,’ ‘View,’ and so on.
- the entry screen of FIG. 3 also includes a toolbar 306 that includes buttons titled ‘Display Revisions,’ ‘Commit Revisions,’ ‘Version Back,’ ‘Version Forward,’ ‘Synch,’ ‘Sign,’ and ‘Send.’
- the email client of FIG. 3 is programmed to display revisions, or not, in response to operation of the ‘Display Revisions’ button in the toolbar 306 .
- the following text is displayed for collaborative email document 465 :
- ‘Display Revisions’ is set ‘on,’ and the email client therefore displays revisions representing deleting ‘hyperlink’ from row 2, column 1 and inserting ‘anchor’ at row 2, column 1. If ‘Display Revisions’ were set ‘off,’ the text under edit would be displayed as:
- the email client of FIG. 3 is programmed so that in response to operation of the ‘Commit Revisions’ button in the toolbar 306 , the email client encodes a current set of revisions of the copy of the document under edit on the client and sends them to a server.
- the server may be a web server, for example, making the revisions available for asynchronous delivery to other clients, or the server may be an instant messaging server, delivering the revisions synchronously to available clients.
- the encoding may be implemented, for example, as follows, for the exemplary revision described just above:
- FIG. 4 shows a database diagram in which records in a document table 402 are related one-to-many to records in a collaborator copy table 410 which are in turn related one-to-many to records in a revision table 422 .
- Each record in the document table 402 represents a collaborative email document having an administrative copy and one or more collaborators' copies.
- Each record in the document table includes a document identification field 404 , an identification of the administrator for the document 406 , and a status field 408 for the document.
- the status field may be used, for example, to note that the document has been created but not yet distributed to collaborators, is presently under edit by collaborators, or is disabled for editing while it is made available for signing by signatories.
- Each record in the collaborator copy table 410 represents a copy of a collaborative email document provided to a collaborator for viewing and editing.
- Each record in the collaborator copy table 410 includes an identification 412 of the collaborator to whom a copy was provided.
- the collaborator identification 412 may be implemented as, for example, a collaborator's email address.
- Each collaborator copy record 410 also includes a document identification field 404 identifying the document a copy of which was provided to the collaborator.
- Each collaborator copy record 410 in this example also includes an identification of the current version 414 of the document currently provided as a copy to the collaborator.
- Updating copies of collaborative email documents on collaborators' clients with revisions is typically carried out by updating a copy of the document with all revisions later than a current version identifier for the copy, and the repository of the current version identifier for the copy is often a server-side data structure such as the one shown in FIG. 4 .
- Storing a copy's current version identification server-side generally means that an update request message from a client need specify only the collaborator identification 412 and the document identification 404 .
- the update request message need not necessarily include the current version number of the collaborative email on the client because the server tracks the version identification 414 for that collaborator's copy of that document and can infer it from the collaborator identification and the document identification.
- the server then is programmed to respond to such an update request message with a response message transmitting all the revisions later than the current revision number for the copy identified in the request message—and then updating the current version identification 414 to the current version number.
- This process is referred to generally in this specification as full synchronization, a process often supported in email clients improved according to embodiments of the present invention by a ‘Synch’ button, for example, such as the one shown in the exemplary toolbar 306 for the email client of FIG. 3 .
- An alternative request message requests less than a full synchronization, such as, for example, the revisions comprising just the next version, or the revisions comprising a previous version. That is, email clients according to embodiments of the present invention are typically programmed to operate in response to, for example, a ‘Version Forward’ button, such as the one shown in the example toolbar 306 on FIG. 3 , by transmitting to a server a request for the revisions comprising the next version. ‘Next version’ means the version just after the version currently identified in a server-side current version identification such as the one at reference 414 on FIG. 4 .
- the server then is programmed to respond to such an update request message with a response message transmitting only the revisions identified by the next version number for the copy identified in the request message—and then updating the current version identification 414 to the next version number.
- the email client does not need to advise the server of its current version; the server knows.
- the request message need only identify itself as a ‘next version only please’ message type and provide the collaborator identification 412 and the document identification 404 for the pertinent collaborative document.
- email clients are typically programmed to operate in response to a ‘Version Back’ button, such as the one shown in the example toolbar 306 on FIG. 3 , by transmitting to a server a request for the revisions comprising the previous version.
- ‘Previous version’ means the version just before the version currently identified in a server-side current version identification such as the one at reference 414 on FIG. 4 .
- the server then is programmed to respond to such an update request message with a response message transmitting only the revisions identified by the previous version number for the copy identified in the request message—and then updating the current version identification 414 to the previous version number.
- the email client does not need to advise the server of its current version; the server knows.
- the request message need only identify itself as a ‘previous version only please’ message type and provide the collaborator identification 412 and the document identification 404 for the pertinent collaborative document.
- Each record in the revision table 422 represents a revision to a collaborative email document.
- each revision record 422 also includes a collaborator identification 412 of the collaborator who created a revision, a document identification 404 of the document for which the revision is intended, a revision identification 416 , and a sequence identification 418 for ordering revisions within a version.
- email clients are typically programmed so that in response to operation of a ‘Commit Revisions’ button in a toolbar like the one shown at reference 306 on FIG. 3 , the email client encodes a current set of revisions of the copy of the document under edit on the client and sends them to a server.
- a revision identification code 416 which may be implemented, for example, as a sequential integer, 1 , 2 , 3 , and so on.
- the version identification code (or ‘version number’) identifies a set of revisions from a particular collaborator, when used in correct order to update copies of the document, as implementing a particular version of the document.
- the email client may be programmed to provide a sequence number for each revision identifying the correct order in which the revisions are to be used to update copies of a collaborative email document. It is clear that the exemplary revisions mentioned above:
- FIG. 5 sets forth a flow chart depicting a method for writing a collaborative email document, where the method includes establishing ( 502 ) a collaborative email document on an administrator's client. The method of FIG. 5 also includes identifying ( 504 ) one or more collaborators who are authorized to view and edit the document as it is being written. The collaborators optionally include an administrator for the document.
- Establishing ( 502 ) a collaborative email document on an administrative client may be carried out by opening a new email document, identifying the document as a collaborative one, and identifying an administrator for the document.
- establishing a collaborative email document includes retaining an administrative copy of the document on an administrative client while the document is written by one or more collaborators.
- an administrative copy of a collaborative email document is not a master document according to prior art.
- an administrator is also an authorized collaborator, then all copies are identical, and the only thing that distinguishes the administrator's copy is that eventually its administrative client will acquire an enabled ‘send’ function, while none of the other clients ever will.
- the initial contents of a collaborative email document there is no limitation regarding the initial contents of a collaborative email document.
- the user who creates a document typically the user to be identified as the administrator for the document, may be an author, writing a first draft, so that the initial content is substantial.
- the administrator may be a clerk who creates on behalf of a supervisor a completely blank document to be written entirely by its collaborators.
- a metadata element named “Document Type” is used to identify an email document as a collaborative one.
- a metadata element named “Revision Number” is used to store the current revision identification of each copy of the document.
- the “Revision Number,” although typically stored server-side also, may advantageously be recorded in the metadata for each copy of a collaborative document because each collaborator's copy and the administrative copy may embody different versions of the document at the same time.
- a metadata element named “adminID” records the identity of the administrator of the document as “MaryJohnson@us.imb.com.”
- the administrator identification although typically stored server-side also, may advantageously be recorded in the metadata for each copy of a collaborative document so that the email client where the copy is revised by a collaborator or an administrator can know whether that particular email client is the administrative client for that document.
- a metadata element named “collaboratorID” records the identities of the collaborators authorized to view and edit the document in the process of writing the document.
- the method of FIG. 5 also includes providing ( 506 ) to the collaborators copies of the document for viewing and editing, and the collaborators' copies typically reside on collaborators' clients while the document is being written.
- Mary Johnson the administrator for the document
- Providing copies to collaborators may be implemented by emailing copies from the administrative client to the collaborators.
- the method of FIG. 5 includes creating ( 508 ) revisions in at least one copy of the document.
- Revisions are created by recording changes in a document effected by the usual email client document editor and encoding them as described above: “d 5 12 hyperlink,” “I5 12 anchor,” and so on, for example.
- the method of FIG. 5 includes recording ( 510 ) the revisions. Recording is often carried out by storing them temporarily on the email client until the collaborator making revisions arrives at a point where it is desirable to record them on the server as a version.
- a ‘commit revisions’ function is programmed to transmit to a server a set of revisions whose implementation represents a version. That is, in the method of FIG. 5 , recording revisions 510 may be implemented by storing the revisions on a server accessible to collaborators' clients. Many such email clients provide a toolbar button or other user interface control such as the ‘Commit Revisions’ button in the toolbar at reference 306 on FIG.
- Such a transmission of revisions is not a normal email function of SMTP or POP, for example. Instead, according to embodiments of the present invention, such transmissions are effected by use of TCP/IP, HTTP, or some other data communications protocol as will occur to those of skill in the art.
- recording revisions typically includes storing the revisions with a version identification for each revision. Storing revisions with versions identifications may be carried out by storing the version identifications in a server-side data structure such as that shown at reference 416 on FIG. 4 . Similarly, in the method of FIG. 5 , recording revisions often also includes storing the revisions with a sequence identification for each revision, so that the revisions can be sorted or indexed within a version. Storing revisions with sequence identifications may be carried out by storing the sequence identifications in a server-side data structure such as that shown at reference 418 on FIG. 4 . Persons of skill in the art will recognize that implementing a data structure like the revision table 422 of FIG.
- the sequence identification may be a sequential integer, unique within a revision, non-unique across revisions, so that a unique key that includes the sequence identification also includes the revision number.
- the sequence identification may be a time stamp that identifies the date and time when each revision is made. Even a time stamp can be ambiguous across revisions, however, so that a unique key that includes a time stamp as sequence identification also advantageously includes the revision number.
- the method of FIG. 5 includes updating ( 512 ) the copies of the document on collaborators' clients with the revisions.
- Revisions created on a collaborator's client may be considered already incorporated into the document copy on that client, and the revision number on the client side may be updated accordingly, for example:
- a server using server-side data structures like those of FIG. 4 is programmed to update the pertinent collaborator copy record 410 with a new version number 414 for the collaborator copy where the new version was created.
- Such a server then creates a revision record 422 for each revision comprising the new version of the document.
- a collaborator client sends an HTTP request message for an update, either an update to the next version after the one presently installed on the client or a request for a full update all the way from the client's current version to the latest version available.
- a request for a full update all the way from the client's current version to the latest version available is called a synchronization request.
- the email client of FIG. 3 for example, is programmed to transmit a request for a next version in response to operation of the ‘Version Forward’ button in its toolbar 306 .
- the email client of FIG. 3 is also programmed to transmit a request for a full update all the way from the client's current version to the latest version available in response to operation of the ‘Synch’ button in its toolbar 306 .
- a client can also request a previous version.
- the server receives such a request, the server provides in a response message the revisions defining a previous version, and the requesting email client implements those revisions in reverse order, thereby creating on that email client a previous version of the document.
- the email client of FIG. 3 is programmed to transmit a request for a previous version in response to operation of the ‘Version Back’ button in its toolbar 306 .
- Methods of collaborative email as illustrated in FIG. 5 also often include identifying ( 516 ) editable portions of a collaborative email document.
- identifying ( 504 ) one or more collaborators typically also includes specifying ( 518 ) that only certain collaborators are authorized to view and edit one or more portions of the document.
- Identifying ( 516 ) editable portions of a collaborative email document may be implemented by use of templates or by inserting markup identifying the editable portions.
- authorization for only certain collaborators to edit one or more portions of the document advantageously may be recorded in the document itself—or in each copy of the document—so that such limitations on authorization are easily available to each collaborator's email client.
- editable portions of a document are identified, in the document itself, by the markup elements ⁇ SEGMENT1> ⁇ /SEGMENT1> ⁇ SEGMENT2> ⁇ /SEGMENT2>.
- FIG. 6 sets forth a flow chart illustrating an extension of the method of FIG. 5 . That is, the method of FIG. 6 includes establishing a collaborative email document 502 , identifying collaborators 504 , and so on, as in the method of FIG. 5 . In addition, however, the method of FIG. 6 also includes identifying ( 602 ) one or more signatories for the document. Identifying the signatories may be implemented by programming an email client, such as the one shown in FIG. 3 , to accept as input through its ‘From:’ field 310 more than one entry of signatory identification, JaySchwarz@us.ibm.com, MikeWilliams@us.ibm.com, and so on, and treat each of them as a signatory.
- an email client such as the one shown in FIG. 3
- a collaborative email document according to the present invention is different from ordinary emails in that it may arrive in the in-boxes of collaborators with no entry in its ‘From:’ field, because, for example, no one has yet decided who must authorize the ultimate promulgation of the document to addressees.
- the method of FIG. 6 includes providing (604) to each signatory a copy of the document for signing.
- signatories are also collaborators, they may already have copy of the document, and they may affix their signatures as soon as revisions are concluded.
- Signatories who are not collaborators may be emailed a copy of the document, typically from the administrator, to obtain their signatures.
- the toolbar 306 includes a button labeled ‘Sign,’ where the email client is programmed to email the document to signatories. It is common in embodiments of this invention that the ‘Sign’ button, the ability to send a document to a signatory, is only enabled on the administrator's email client, so that there is administrative control over the process of affixing signatures to the document.
- the method of FIG. 6 includes affixing ( 606 ) to the document a digital signature for each signatory.
- signature generally refers to a digital signature.
- a digital signature is a data structure containing a hashed digest of the contents of a collaborative email document encrypted with a signatory's private key from a public/private key pair of an asymmetric cryptosystem.
- Email clients generally are equipped with the ability to affix digital signatures to email documents.
- Microsoft OutlookTM for example, a digital signature function is available, when an email document is open for editing, through the pull-down menus at View/Options/Security.
- Checking validity of a digital signature is accomplished by decrypting the hashed digest from the signature with a signatory's public key, hashing a new digest of the current contents of the document, and comparing the new digest with the decrypted digest from the signature. If the new digest and the decrypted digest from the signature are identical, the signature is considered valid. They will not be identical if revisions to the document are entered after the signature is affixed to the document.
- the document advantageously is first disabled 603 for revision.
- a document may be disabled for revisions, for example, by encoding that fact in a data element dedicated to that purpose, such as, for example, the ‘status’ field 408 in the exemplary data structures of FIG. 4 .
- Such a status field may be given a value such as ‘LOCKED,’ for example, and a server supporting the revision table may then be programmed to exclude or reject revisions received from collaborators while the document is so locked.
- methods for collaborative email advantageously may include determining 610 whether the digital signatures in a document are valid, and, if they are not, providing 606 the document again to one or more signatories for re-signing. In this way, a method such as the one illustrated by FIG. 6 may send a collaborative email document from an administrative client to addressees only when the document bears valid digital signatures from all signatories.
- the method of FIG. 6 includes sending ( 608 ) the signed document from the administrative client to addressees.
- the ‘From:’ field in a collaborative email arriving at addressees' in-boxes identifies the signatories of the document rather than its actual sender.
- the actual sender is typically an administrator who may or may not be known to the addressees.
- what the ‘From:’ field communicates is that the contents of the document are communicated to its addressees with the authority of the signatories.
- the identities of the administrator and the collaborators may be of little concern to the addressees.
- the collaborators often in effect develop a document for mailing on behalf of signatories who have authority over the subject matter of the document. It is therefore the identity of the signatories rather than the identify of the developers of the document that will often be considered more pertinent to addressees.
- the collaborators, the administrator, and the signatories may or may not be among the addressees.
- Updating ( 512 ) copies of a collaborative email document with revisions is typically carried out by communicating the revisions asynchronously to the collaborators and to the administrative client.
- Asynchronous communication of revisions is useful because the collaborators' clients may not be on-line on the network to receive the revisions at the time when they are created.
- Asynchronous communication of revisions is carried out by use of server-side data structures such as those shown in FIG. 4 , for example.
- the email clients may be programmed to transmit the revisions in a standard message format such as HTTP (the HyperText Transport Protocol), WAP (the Wireless Access Protocol), HDTP (the Handheld Device Transport Protocol), or others as will occur to those of skill in the art.
- the server may support a Java Servlet or a CGI script, or other server-side functionality as will occur to those of skill in the art, for receiving the revisions and recording them in a database supporting data structures similar to the exemplary ones set forth in FIG. 4 .
- the revisions are stored on the server and remain available for download to collaborators' email clients when the clients go on-line on the network to retrieve the revisions for updating their copies of the documents.
- the exact method of updating a copy of a document on an email client may be determined or selected by one or more setup parameters in the client. Updating a copy of a document by downloading revisions from a server may be carried out, for example, every time an email client is activated and at periodic intervals so long as the email client is operative. The periodic updates may be programmed to continue in background as long as the email client is running on a client machine even when the local copy of the document is not open for editing, so that when the copy opened for editing, it is likely to be fully synchronized with the latest revisions.
- a collaborator may wish to view the revisions since his or her last review of the document one at a time, stepping through them by use of, for example, a ‘Version Forward’ button like the one illustrated in the toolbar at reference 306 on the email client of FIG. 3 .
- the collaborator would turn off the email client's setup parameter for automatic background updates.
- updating ( 512 ) the collaborators' copies of a collaborative email document with revisions may be carried out by communicating the revisions synchronously to one or more collaborators as the revisions are made.
- Synchronous communications of revisions may be implemented by use of messages in an instant messaging protocol. Examples of instant messaging protocols useful with various embodiments of the present invention include the Instant Messaging and Presence Protocol (“IMPP”) specified by the IMPP Working Group of the Internet Engineering Task Force and the Mitre Corporation's Simple Instant Messaging and Presence Service (“SIMP”).
- IMPP Instant Messaging and Presence Protocol
- SIMP Simple Instant Messaging and Presence Service
- FIG. 7 sets forth a flow chart illustrating a method of synchronous communications of revisions.
- updating ( 512 ) copies of a collaborative email document with revisions includes identifying ( 702 ) collaborator clients that are available for synchronous communications of revisions.
- Instant messaging services generally define and support ‘presence services’ that provide indications whether an instant messaging client is on-line.
- Email clients capable of supporting synchronous communications of revisions according to embodiments of the present invention often are improved to support messaging and presence detection through one or more instant messaging protocols.
- the method of FIG. 7 includes communicating ( 704 ) revisions synchronously to collaborator clients that are available for synchronous communications, typically carried out by transmitting the revisions in instant messages to all collaborators' email clients that are determined to be presently on-line and available for instant messaging.
- updating the collaborators' copies includes updating ( 706 ) current version identifications for the copies of the document on collaborator's clients that are available for synchronous communications.
- Updating current version identifications may be implemented with HTTP messages, for example, from a client to a server that maintains server-side data structures like those shown in FIG. 4 .
- Such a server typically supports server-side functionality such as a Java servlet or a CGI script programmed to update version identifications in response to a message from a client bearing a collaborator identification 412 and a document identification 404 .
- synchronous updates and asynchronous updates are advantageously employed together.
- Synchronous communications of revisions are beneficially implemented for collaborators copies of a document after collaborators' copies are synchronized with the latest revisions from an asynchronous source of revisions.
- identifying ( 702 ) collaborator clients that are available for synchronous communications of revisions typically also includes determining whether collaborators copies are synchronized with the latest revisions. Determining whether collaborators copies are synchronized with the latest revisions may be accomplished by comparing a current version identification ( 414 on FIG. 4 ) for each collaborator's copy of a document with the latest revision identification 416 in a revision table such as the one exemplified at reference 422 on FIG. 4 .
- That copy may be updated by applying all the revisions later than its current revision number—and then updating its current version identification 414 to the latest version number.
- Email clients according to embodiments of the present invention therefore often transmit all revisions for storage on a server for later asynchronous downloads by the other collaborators at their convenience. In this way, even a collaborator who begins a synchronous session with other collaborators and logs off in the middle of the session, can later obtain the intervening revisions by asynchronous download from the server.
- the email client advantageously records the current version identification for that collaborator's copy of the document in a data structure such as that shown at reference 414 in FIG. 4 , for example.
- their email clients advantageously record the current version identification for each collaborator's copy of the document in a data structure such as the exemplary one shown at reference 414 in FIG. 4 .
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Marketing (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Technology Law (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Computer Hardware Design (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
- 1. Field of the Invention
- The field of the invention is data processing, or, more specifically, methods, systems, and products for collaborative email.
- 2. Description Of Related Art
- Systems for collaboration in developing email documents generally maintain a master copy of a document in a central location, record changes in the master copy, and update collaborators' copies by providing a new copy of the entire document. This uses a lot of bandwidth, particularly when there are many revisions over a period of time. There are version control systems, such as Unix's Source Code Control System or ‘SCCS’ and the open-source version control system known as the Concurrent Versions System or ‘CVS.’ Such systems are strongly oriented to version control for source code documents, however, and do not integrate very well with collaborative email, lacking, as they do, support for such collaborative features as automated updates to certain revision levels or authentication through valid digital signatures. For these reasons, there is an ongoing need for improvements in systems and methods for collaborative email.
- Methods, systems, and computer program products are disclosed for writing a collaborative email document, including establishing a collaborative email document on an administrator's computer; identifying one or more collaborators who are authorized to view and edit the document, wherein the collaborators optionally include the administrator; providing to the collaborators copies of the document for viewing and editing, wherein the collaborators' copies reside on collaborators' computers; creating revisions in at least one copy of the document; recording the revisions; and updating the copies of the document on collaborators' computers with the revisions. In typical embodiments, establishing a collaborative email document on an administrator's computer includes identifying an administrator for the document and retaining an administrative copy of the document on the administrator's computer. In typical embodiments, updating copies of a document with revisions includes updating a copy of the document with one or more revisions later than a current version identifier for the copy.
- Typical embodiments include identifying editable portions of the email document, wherein identifying one or more collaborators further comprises specifying that only certain collaborators are authorized to view and edit one or more portions of the document. Typical embodiments also include recording in the document authorization for only certain collaborators to edit one or more portions of the document.
- Typical embodiments also include identifying one or more signatories for the document; providing to each signatory a copy of the document for signing; affixing to the document a digital signature for each signatory; and sending the signed document from the administrator's computer to addressees. Such embodiments typically also include sending the collaborative email document from the administrator's computer to addressees only when the document bears valid digital signatures from all signatories.
- In typical embodiments, recording revisions comprises storing the revisions on a computer accessible to collaborators' computers. In such embodiments, recording revisions typically includes storing the revisions with a version identification for each revision. In such embodiments, recording revisions typically includes storing the revisions with a sequence identification for each revision.
- In typical embodiments, updating copies of a collaborative email document with revisions further comprises communicating the revisions asynchronously to the collaborators and to the administrator's computer. In many embodiments, updating the collaborators' copies of the document with the revisions further comprises communicating the revisions synchronously to one or more collaborators as the revisions are made. In such embodiments, updating the copies of the document with the revisions often includes identifying collaborator computers that are available for synchronous communications of revisions, communicating revisions synchronously to collaborator computers that are available for synchronous communications, and updating current version identifications for the copies of the document on collaborator's computers that are available for synchronous communications. In such embodiments, identifying collaborator computers that are available for synchronous communications of revisions typically includes determining whether collaborators copies are synchronized with the latest revisions.
- The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular descriptions of exemplary embodiments of the invention as illustrated in the accompanying drawings wherein like reference numbers generally represent like parts of exemplary embodiments of the invention.
-
FIG. 1 depicts an architecture for a data processing system in which various embodiments of the present invention may be implemented. -
FIG. 2 sets forth a block diagram of automated computing machinery useful in systems for collaborative email according to embodiments of the present invention. -
FIG. 3 sets forth a line drawing of a data entry screen on an email client improved according to embodiments of the present invention. -
FIG. 4 sets forth a database diagram of exemplary data structures useful in various embodiment of the present invention. -
FIG. 5 sets forth a flow chart depicting a method for writing a collaborative email document. -
FIG. 6 sets forth a flow chart illustrating an extension of the method ofFIG. 5 . -
FIG. 7 sets forth a flow chart illustrating a method of synchronous communications of revisions. - The present invention is described to a large extent in this specification in terms of methods for collaborative email. Persons skilled in the art, however, will recognize that any computer system that includes suitable programming means for operating in accordance with the disclosed methods also falls well within the scope of the present invention.
- Suitable programming means include any means for directing a computer system to execute the steps of the method of the invention, including for example, systems comprised of processing units and arithmetic-logic circuits coupled to computer memory, which systems have the capability of storing in computer memory, which computer memory includes electronic circuits configured to store data and program instructions, programmed steps of the method of the invention for execution by a processing unit. The invention also may be embodied in a computer program product, such as a diskette or other recording medium, for use with any suitable data processing system.
- Embodiments of a computer program product may be implemented by use of any recording medium for machine-readable information, including magnetic media, optical media, or other suitable media. Persons skilled in the art will immediately recognize that any computer system having suitable programming means will be capable of executing the steps of the method of the invention as embodied in a program product. Persons skilled in the art will recognize immediately that, although most of the exemplary embodiments described in this specification are oriented to software installed and executing on computer hardware, nevertheless, alternative embodiments implemented as firmware or as hardware are well within the scope of the present invention.
- In this specification, the terms “field,” “data element,” and “attribute,” unless the context indicates otherwise, generally are used as synonyms, referring to individual elements of information, typically represented as digital data. Aggregates of data elements are referred to as “records” or “data structures.” Aggregates of records are referred to as “tables” or “files.” Aggregates of files or tables are referred to as “databases.” In the context of tables in databases, fields may be referred to as “columns,” and records may be referred to as “rows.” Complex data structures that include member methods, functions, or software routines as well as data elements are referred to as “classes.” Instances of classes are referred to as “objects” or “class objects.”
- “CGI” means “Common Gateway Interface,” a standard technology for data communications of resources between web servers and web clients. CGI provides a standard interface between servers and server-side ‘gateway’ programs that administer actual reads and writes of data to and from files systems and databases.
- “Client,” “client device,” “client machine,” or “client computer” means any computer or other automated computing machinery capable of administering collaborative email according to embodiments of the present invention. Examples include personal computers, PDAs, mobile telephones, laptop computers, handheld devices, and others as will occur to those of skill in the art. Clients include devices capable of wireless as well as wireline communications.
- “HDML” stands for ‘Handheld Device Markup Language,’ a markup language used to format content for web-enabled mobile phones. HDML is proprietary to Openwave Systems, Inc., and can only be operated on phones that use Openwave browsers. Rather than WAP, HDML operates over Openwave's Handheld Device Transport Protocol (“HDTP”).
- “HTML” stands for ‘HyperText Markup Language,’ a standard markup language for displaying web pages on browsers.
- “HTTP” stands for ‘HyperText Transport Protocol,’ a standard data communications protocol of the World Wide Web. HTTP is a hyperlinking protocol. In exemplary embodiments of the present invention, asynchronous communications of revisions are often implemented by use of hyperlinking protocols. Other examples of hyperlinking protocols include HDML and WAP.
- “POP” means Post Office Protocol, referring to the standard protocol for communicating email messages from email servers to email clients. “POP3” is a standard Post Office Protocol capable of communicating email messages among email servers and both to and from email clients, which means that POP3 is now useful as a single email protocol with no need for SMTP.
- “Server” in this specification refers to a computer or other automated computing machinery on a network that manages resources, including documents, and requests for access to such resources. A “web server,” is a server that communicates with clients through data communications application programs, such as browsers or microbrowsers, by means of hyperlinking protocols such as HTTP, WAP, or HDTP, in order to manage and make available to networked computers documents, digital objects, and other resources. Servers generally include applications programs that that accept data communications connections in order to service requests from clients by sending back responses. Any given computer or program therefore may be both a client and a server. The use of these terms in this disclosure refers primarily to the role being performed by the computer or program for a particular connection or coupling for data communications, rather than to the computer or program's capabilities in general.
- “SMTP” means Simple Mail Transfer Protocol, referring to the standard protocol for communicating email messages from email clients to email servers and from email servers to other email servers. It is typical in prior art that SMTP is used to communicate email messages from source email clients to mailbox locations, and POP is then used to communicate the email messages from mailboxes to destination email clients.
- “TCP/IP” refers to two layers of a standard OSI data communications protocol stack. The network layer is implemented with the Internet Protocol, hence the initials ‘IP.’ And the transport layer is implemented with the Transport Control Protocol, referred to as ‘TCP.’ The two protocols are used together so frequently that they are often referred to as the TCP/IP suite, or, more simply, just ‘TCP/IP.’ TCP/IP is the standard data transport suite for the well-known world-wide network of computers called ‘the Internet.’
- “WAP” refers to the Wireless Application Protocol, a protocol for use with handheld wireless devices. Examples of wireless devices useful with WAP include mobile phones, pagers, two-way radios, hand-held computers, and PDAs. WAP supports many wireless networks, and WAP is supported by many operating systems. WAP supports HTML, XML, and particularly WML (the Wireless Markup Language), which is a language particularly designed for small screen and one-hand navigation without a keyboard or mouse. Operating systems specifically engineered for handheld devices include PalmOS, EPOC, Windows CE, FLEXOS, OS/9, and JavaOS. WAP devices that use displays and access the Internet run “microbrowsers.” The microbrowsers use small file sizes that can accommodate the low memory constraints of handheld devices and the low-bandwidth constraints of wireless networks.
- Methods and systems according to the present invention generally implement collaborative email by identifying collaborators authorized to view and edit a collaborative email document as it is being written. Segments of the document may be identified that only particular collaborators are authorized to view and edit. Revisions are typically streamed asynchronously (or synchronously) among collaborators' clients through one or more servers. Such methods and systems typically identify an administrator for the document on whose client is maintained an administrative copy of the document. The administrator may or may not be an authorized collaborator, but the administrator's copy of the document may be synchronized to a current version of the document, so that the administrator may provide administrative services regarding development of the document, administrative services such as monitoring document status, securing valid digital signatures from signatories, and finally transmitting the final version of the document to addressees.
- In such systems, the addressees may or may not include the collaborators, and the signatories may or may not be collaborators. For example, a manager may assign the manager's secretary to create a collaborative document, type its initial contents, and act as administrator for development of the document. The manager may designate one or more executives as signatories, executives known to the manager as responsible for the subject area of the document. The manager may or may not be a signatory. The manager may designate collaborators who will receive copies of the document to view and edit while the document is being written. In fact, it may be said that the collaborative edits or revisions to the document actually implement the writing of the document. The manager may or may not be listed as a collaborator.
- When the collaborators are finished editing the document, the administrator may email it to the signatories for digital signatures. After all required signatures are affixed to the document, the administrator may ‘send’ the document to its addressees. In email clients improved according to embodiments of the present invention, the email client's ‘send’ function typically is not enabled for sending to addressees until all required signatures are present. The send button on collaborators' clients typically is not enabled at all. The administrator's copy is updated with revisions just as are all the collaborators' copies. The only thing that distinguishes operation of the administrator's client from collaborators' email clients is that sending to addressees typically will eventually become enabled on the administrator's client (when the document is signed), but not so on collaborators' clients. Revisions typically are the only transmissions of data from collaborators' clients regarding collaborative email documents.
- Exemplary methods, system, and products for collaborative email are further explained with reference to the accompanying drawings, beginning with
FIG. 1 .FIG. 1 depicts an architecture for a data processing system in which various embodiments of the present invention may be implemented. The system ofFIG. 1 includes a number of computers coupled for data communications in networks. Each of the computers depicted may function as an email client or server according to embodiments of the present invention. - The system of
FIG. 1 includesnetworks - In the example of
FIG. 1 ,server 128 andserver 105 are connected to network 102.Storage unit 132 is connected to network 102 throughserver 105.Revisions records 134 identifying revisions to a collaborative email document according to embodiments of the present invention may be stored on storage units likestorage unit 132. In addition, several exemplary client devices including aPDA 106, aworkstation 108, and amobile phone 110 are connected to network 102. Network-enabledmobile phone 110 connects to network 102 throughwireless link 116, andPDA 106 connects to network 102 throughwireless link 114. In the example ofFIG. 1 ,server 128 couples directly toclient workstation 130 and network 104 (which may be a LAN), which incorporates wireless communication links supporting a wireless coupling tolaptop computer 126 and wireline protocols supporting a wired coupling toclient workstation 112. Each of these exemplary client devices may support email clients for collaborative email according to embodiments of the present invention. - Client devices and servers in such distributed processing systems may be represented by a variety of computing devices, such as mainframes, personal computers, personal digital assistants, web-enabled mobile telephones, and so on. The particular servers and client devices illustrated in
FIG. 1 are for explanation, not for limitation. Data processing systems may include additional servers, clients, routers, other devices, and peer-to-peer architectures, not shown inFIG. 1 , as will occur to those of skill in the art. Networks in such distributed data processing systems may support many data communications protocols, TCP/IP, HTTP, WAP, HDTP, SMS, SMNT, POP, and others as will occur to those of skill in the art. Various embodiments of the present invention may be implemented on a variety of hardware platforms in addition to those illustrated inFIG. 1 .FIG. 1 is presented as an example of a heterogeneous computing environment in which various embodiments of the present invention may be implemented, not as an architectural limitation of the present invention. - Although exemplary embodiments in this disclosure are described generally in terms of client-server architectures, that is not a limitation of the present invention. On the contrary, various embodiments of the present invention may be implemented, for example, in peer-to-peer architectures and in other computer architectural arrangements as will occur to those of skill in the art.
-
FIG. 2 sets forth a block diagram of automated computing machinery comprising acomputer 106, such as a client device, email client, or server, useful in systems for collaborative email according to embodiments of the present invention. Thecomputer 106 ofFIG. 2 includes at least onecomputer processor 156 or ‘CPU’ as well as random access memory 168 (“RAM”). Stored inRAM 168 is anapplication program 152. Application programs useful in implementing collaborative email include Java servlets and CGI scripts running on servers and email clients on client machines. Also stored inRAM 168 is anoperating system 154. Operating systems useful in computers according to embodiments of the present invention include Unix, Linux, Microsoft NTTM, and others as will occur to those of skill in the art. - The
computer 106 ofFIG. 2 includescomputer memory 166 coupled through a system bus 160 to theprocessor 156 and to other components of the computer.Computer memory 166 may be implemented as ahard disk drive 170,optical disk drive 172, electrically erasable programmable read-only memory space (so-called ‘EEPROM’ or ‘Flash’ memory) 174, RAM drives (not shown), or as any other kind of computer memory as will occur to those of skill in the art. - The
example computer 106 ofFIG. 2 includescommunications adapter 167 that implements connections fordata communications 184 toother computers 182, servers or clients. Communications adapters implement the hardware level of data communications connections through which client computers and servers send data communications directly to one another and through networks. Examples of communications adapters include modems for wired dial-up connections, Ethernet (IEEE 802.3) adapters for wired LAN connections, and 802.11b adapters for wireless LAN connections. - The example computer of
FIG. 2 includes one or more input/output interface adapters 178. Input/output interface adapters in computers implement user-oriented input/output through, for example, software drivers and computer hardware for controlling output to displaydevices 180 such as computer display screens, as well as user input fromuser input devices 181 such as keyboards and mice. - Exemplary embodiments of the present invention are further explained with reference to
FIG. 3 .FIG. 3 sets forth a line drawing of a data entry screen on an email client improved according to embodiments of the present invention. The data entry screen ofFIG. 3 includes atitle line 302 that displays the fact that the document under edit is a collaborative email document, the document identification (“465”), and the name of the email client (“Client Name”). In actual embodiments, the Client Name is the actual name of an email client such as Microsoft's Outlook™ or Qualcomm's Eudora™. - The data entry screen of
FIG. 3 includes a horizontal pull-down menu 304 containing the usual menu items such as ‘File,’ ‘Edit,’ ‘View,’ and so on. The entry screen ofFIG. 3 also includes atoolbar 306 that includes buttons titled ‘Display Revisions,’ ‘Commit Revisions,’ ‘Version Back,’ ‘Version Forward,’ ‘Synch,’ ‘Sign,’ and ‘Send.’ The email client ofFIG. 3 is programmed to display revisions, or not, in response to operation of the ‘Display Revisions’ button in thetoolbar 306. In the example ofFIG. 3 , the following text is displayed for collaborative email document 465: -
- Hyperlinks are implemented in HTML documents by use of the anchor element whose start and end tags are <a>and </a>.
- In this example, ‘Display Revisions’ is set ‘on,’ and the email client therefore displays revisions representing deleting ‘hyperlink’ from row 2, column 1 and inserting ‘anchor’ at row 2, column 1. If ‘Display Revisions’ were set ‘off,’ the text under edit would be displayed as:
-
- Hyperlinks are implemented in HTML documents by use of the anchor element whose start and end tags are <a> and </a>.
- The email client of
FIG. 3 is programmed so that in response to operation of the ‘Commit Revisions’ button in thetoolbar 306, the email client encodes a current set of revisions of the copy of the document under edit on the client and sends them to a server. The server may be a web server, for example, making the revisions available for asynchronous delivery to other clients, or the server may be an instant messaging server, delivering the revisions synchronously to available clients. The encoding may be implemented, for example, as follows, for the exemplary revision described just above: -
- d 2 1 hyperlink
- i 2 1 anchor
where “d 2 1 hyperlink” encodes “delete the text ‘hyperlink’ beginning at row 2, column 1,” and “i 2 1 anchor” encodes “insert the text ‘anchor’ beginning at row 2, column 1.”
- On a server, revisions so encoded may be stored in data structures such as those shown in
FIG. 4 .FIG. 4 shows a database diagram in which records in a document table 402 are related one-to-many to records in a collaborator copy table 410 which are in turn related one-to-many to records in a revision table 422. Each record in the document table 402 represents a collaborative email document having an administrative copy and one or more collaborators' copies. Each record in the document table includes adocument identification field 404, an identification of the administrator for the document 406, and a status field 408 for the document. The status field may be used, for example, to note that the document has been created but not yet distributed to collaborators, is presently under edit by collaborators, or is disabled for editing while it is made available for signing by signatories. - Each record in the collaborator copy table 410 represents a copy of a collaborative email document provided to a collaborator for viewing and editing. Each record in the collaborator copy table 410 includes an
identification 412 of the collaborator to whom a copy was provided. Thecollaborator identification 412 may be implemented as, for example, a collaborator's email address. Eachcollaborator copy record 410 also includes adocument identification field 404 identifying the document a copy of which was provided to the collaborator. - Each
collaborator copy record 410 in this example also includes an identification of the current version 414 of the document currently provided as a copy to the collaborator. Updating copies of collaborative email documents on collaborators' clients with revisions is typically carried out by updating a copy of the document with all revisions later than a current version identifier for the copy, and the repository of the current version identifier for the copy is often a server-side data structure such as the one shown inFIG. 4 . Storing a copy's current version identification server-side generally means that an update request message from a client need specify only thecollaborator identification 412 and thedocument identification 404. That is, the update request message need not necessarily include the current version number of the collaborative email on the client because the server tracks the version identification 414 for that collaborator's copy of that document and can infer it from the collaborator identification and the document identification. The server then is programmed to respond to such an update request message with a response message transmitting all the revisions later than the current revision number for the copy identified in the request message—and then updating the current version identification 414 to the current version number. This process is referred to generally in this specification as full synchronization, a process often supported in email clients improved according to embodiments of the present invention by a ‘Synch’ button, for example, such as the one shown in theexemplary toolbar 306 for the email client ofFIG. 3 . - An alternative request message requests less than a full synchronization, such as, for example, the revisions comprising just the next version, or the revisions comprising a previous version. That is, email clients according to embodiments of the present invention are typically programmed to operate in response to, for example, a ‘Version Forward’ button, such as the one shown in the
example toolbar 306 onFIG. 3 , by transmitting to a server a request for the revisions comprising the next version. ‘Next version’ means the version just after the version currently identified in a server-side current version identification such as the one at reference 414 onFIG. 4 . The server then is programmed to respond to such an update request message with a response message transmitting only the revisions identified by the next version number for the copy identified in the request message—and then updating the current version identification 414 to the next version number. Once again, in this method, the email client does not need to advise the server of its current version; the server knows. The request message need only identify itself as a ‘next version only please’ message type and provide thecollaborator identification 412 and thedocument identification 404 for the pertinent collaborative document. - Similarly, email clients according to embodiments of the present invention are typically programmed to operate in response to a ‘Version Back’ button, such as the one shown in the
example toolbar 306 onFIG. 3 , by transmitting to a server a request for the revisions comprising the previous version. ‘Previous version’ means the version just before the version currently identified in a server-side current version identification such as the one at reference 414 onFIG. 4 . The server then is programmed to respond to such an update request message with a response message transmitting only the revisions identified by the previous version number for the copy identified in the request message—and then updating the current version identification 414 to the previous version number. Once again, in this method, the email client does not need to advise the server of its current version; the server knows. The request message need only identify itself as a ‘previous version only please’ message type and provide thecollaborator identification 412 and thedocument identification 404 for the pertinent collaborative document. - Each record in the revision table 422 represents a revision to a collaborative email document. In addition to the revision itself 420, which may be string-encoded as described above, each
revision record 422 also includes acollaborator identification 412 of the collaborator who created a revision, adocument identification 404 of the document for which the revision is intended, arevision identification 416, and asequence identification 418 for ordering revisions within a version. - As mentioned above, email clients according to embodiments of the present invention are typically programmed so that in response to operation of a ‘Commit Revisions’ button in a toolbar like the one shown at
reference 306 onFIG. 3 , the email client encodes a current set of revisions of the copy of the document under edit on the client and sends them to a server. Such a set of revisions, upon arriving at a server, often then is given arevision identification code 416, which may be implemented, for example, as a sequential integer, 1, 2, 3, and so on. The version identification code (or ‘version number’) identifies a set of revisions from a particular collaborator, when used in correct order to update copies of the document, as implementing a particular version of the document. - In typical embodiments, the email client may be programmed to provide a sequence number for each revision identifying the correct order in which the revisions are to be used to update copies of a collaborative email document. It is clear that the exemplary revisions mentioned above:
-
- d 2 1 hyperlink
- i 2 1 anchor
could not be performed meaningfully in reverse order because after inserting ‘anchor’ at row 2, column 1, an email client could not then delete ‘hyperlink’ from the same location. This explains the usefulness of the sequence identification code shown atreference 418 onFIG. 4 .
- Methods of the invention are further explained with reference to
FIG. 5 .FIG. 5 sets forth a flow chart depicting a method for writing a collaborative email document, where the method includes establishing (502) a collaborative email document on an administrator's client. The method ofFIG. 5 also includes identifying (504) one or more collaborators who are authorized to view and edit the document as it is being written. The collaborators optionally include an administrator for the document. - Establishing (502) a collaborative email document on an administrative client may be carried out by opening a new email document, identifying the document as a collaborative one, and identifying an administrator for the document. In typical embodiments, establishing a collaborative email document includes retaining an administrative copy of the document on an administrative client while the document is written by one or more collaborators.
- It is useful to understand that an administrative copy of a collaborative email document according to embodiments of the present invention is not a master document according to prior art. In fact, according to embodiments of the present invention, there is no ‘master copy’ of a collaborative document against which revisions are recognized. All copies, including an administrative copy, here have the same status and eligibility for viewing, editing, and updating. In fact, if an administrator is also an authorized collaborator, then all copies are identical, and the only thing that distinguishes the administrator's copy is that eventually its administrative client will acquire an enabled ‘send’ function, while none of the other clients ever will.
- In the present invention, there is no limitation regarding the initial contents of a collaborative email document. The user who creates a document, typically the user to be identified as the administrator for the document, may be an author, writing a first draft, so that the initial content is substantial. Alternatively, the administrator may be a clerk who creates on behalf of a supervisor a completely blank document to be written entirely by its collaborators.
- Identifying collaborators and administrators may be carried out by including identifiers for them in meta data in an email document implemented in HTML format, for example, as shown here:
<HTML> <HEAD> <META name=“Document Type” content=“Collaborative Email”> <META name=“Revision Number” content=“1”> <META name=“adminID” content=“MaryJohnson@us.ibm.com”> <META name=“collaboratorID” content=“MaryJohnson@us.ibm.com PeteJones@us.ibm.com JohnSmith@us.ibm.com”> <META name=“RevisionAuthority” content=“MaryJohnson@us.ibm.com ALL PeteJones@us.ibm.com Segment1 JohnSmith@us.ibm.com Segment2”> </HEAD> <BODY> <SEGMENT1> </SEGMENT1> <SEGMENT2> </SEGMENT2> </BODY> </HTML> - In this example, a metadata element named “Document Type” is used to identify an email document as a collaborative one. A metadata element named “Revision Number” is used to store the current revision identification of each copy of the document. The “Revision Number,” although typically stored server-side also, may advantageously be recorded in the metadata for each copy of a collaborative document because each collaborator's copy and the administrative copy may embody different versions of the document at the same time.
- In the exemplary metadata, a metadata element named “adminID” records the identity of the administrator of the document as “MaryJohnson@us.imb.com.” The administrator identification, although typically stored server-side also, may advantageously be recorded in the metadata for each copy of a collaborative document so that the email client where the copy is revised by a collaborator or an administrator can know whether that particular email client is the administrative client for that document.
- In this example, a metadata element named “collaboratorID” records the identities of the collaborators authorized to view and edit the document in the process of writing the document. The method of
FIG. 5 also includes providing (506) to the collaborators copies of the document for viewing and editing, and the collaborators' copies typically reside on collaborators' clients while the document is being written. In the metadata example, Mary Johnson, the administrator for the document, is also identified as a collaborator, which is optional. Providing copies to collaborators may be implemented by emailing copies from the administrative client to the collaborators. The ‘From:’ field (310 onFIG. 3 ) in email clients according to embodiments of the present invention is often reserved for the identification of signatories, and communications of revisions among collaborators are carried out synchronously or asynchronously as described in this specification. It is possible, therefore, if an administrator is not listed as a collaborator, that none of the collaborators will ever know or care who the administrator is. - The method of
FIG. 5 includes creating (508) revisions in at least one copy of the document. Revisions are created by recording changes in a document effected by the usual email client document editor and encoding them as described above: “d 5 12 hyperlink,” “I5 12 anchor,” and so on, for example. - The method of
FIG. 5 includes recording (510) the revisions. Recording is often carried out by storing them temporarily on the email client until the collaborator making revisions arrives at a point where it is desirable to record them on the server as a version. In email clients according to embodiments of the present invention, a ‘commit revisions’ function is programmed to transmit to a server a set of revisions whose implementation represents a version. That is, in the method ofFIG. 5 ,recording revisions 510 may be implemented by storing the revisions on a server accessible to collaborators' clients. Many such email clients provide a toolbar button or other user interface control such as the ‘Commit Revisions’ button in the toolbar atreference 306 onFIG. 3 programmed to transmit to a server a set of revisions for a version. Such a transmission of revisions is not a normal email function of SMTP or POP, for example. Instead, according to embodiments of the present invention, such transmissions are effected by use of TCP/IP, HTTP, or some other data communications protocol as will occur to those of skill in the art. - In the method of
FIG. 5 , recording revisions typically includes storing the revisions with a version identification for each revision. Storing revisions with versions identifications may be carried out by storing the version identifications in a server-side data structure such as that shown atreference 416 onFIG. 4 . Similarly, in the method ofFIG. 5 , recording revisions often also includes storing the revisions with a sequence identification for each revision, so that the revisions can be sorted or indexed within a version. Storing revisions with sequence identifications may be carried out by storing the sequence identifications in a server-side data structure such as that shown atreference 418 onFIG. 4 . Persons of skill in the art will recognize that implementing a data structure like the revision table 422 ofFIG. 4 with arevision identification 416 and asequence identification 418 creates a unique compound key into the revisions records comprising the revision identification and the sequence identification in combination. In such embodiments, the sequence identification may be a sequential integer, unique within a revision, non-unique across revisions, so that a unique key that includes the sequence identification also includes the revision number. Alternatively, the sequence identification may be a time stamp that identifies the date and time when each revision is made. Even a time stamp can be ambiguous across revisions, however, so that a unique key that includes a time stamp as sequence identification also advantageously includes the revision number. - The method of
FIG. 5 includes updating (512) the copies of the document on collaborators' clients with the revisions. Revisions created on a collaborator's client may be considered already incorporated into the document copy on that client, and the revision number on the client side may be updated accordingly, for example: -
- <META name=“Revision Number” content=“2”>
- Similarly, in response to the data communications transmission carrying the revisions of a version to a server, a server using server-side data structures like those of
FIG. 4 is programmed to update the pertinentcollaborator copy record 410 with a new version number 414 for the collaborator copy where the new version was created. Such a server then creates arevision record 422 for each revision comprising the new version of the document. - Updating other collaborators' copies is then carried out by request/response communications between the collaborators' clients and the server. A collaborator client sends an HTTP request message for an update, either an update to the next version after the one presently installed on the client or a request for a full update all the way from the client's current version to the latest version available. A request for a full update all the way from the client's current version to the latest version available is called a synchronization request. The email client of
FIG. 3 , for example, is programmed to transmit a request for a next version in response to operation of the ‘Version Forward’ button in itstoolbar 306. The email client ofFIG. 3 is also programmed to transmit a request for a full update all the way from the client's current version to the latest version available in response to operation of the ‘Synch’ button in itstoolbar 306. - In addition to requesting a next version and full synchronization, a client can also request a previous version. When a server receives such a request, the server provides in a response message the revisions defining a previous version, and the requesting email client implements those revisions in reverse order, thereby creating on that email client a previous version of the document. The email client of
FIG. 3 , for example, is programmed to transmit a request for a previous version in response to operation of the ‘Version Back’ button in itstoolbar 306. - Methods of collaborative email as illustrated in
FIG. 5 also often include identifying (516) editable portions of a collaborative email document. In such methods, identifying (504) one or more collaborators typically also includes specifying (518) that only certain collaborators are authorized to view and edit one or more portions of the document. Identifying (516) editable portions of a collaborative email document may be implemented by use of templates or by inserting markup identifying the editable portions. Moreover, authorization for only certain collaborators to edit one or more portions of the document advantageously may be recorded in the document itself—or in each copy of the document—so that such limitations on authorization are easily available to each collaborator's email client. In the following exemplary email document implemented in markup format, for example:<HTML> <HEAD> <META name=“RevisionAuthority” content=“MaryJohnson@us.ibm.com ALL PeteJones@us.ibm.com Segment1 JohnSmith@us.ibm.com Segment2”> </HEAD> <BODY> <SEGMENT1> </SEGMENT1> <SEGMENT2> </SEGMENT2> </BODY> </HTML>, - editable portions of a document are identified, in the document itself, by the markup elements <SEGMENT1></SEGMENT1><SEGMENT2></SEGMENT2>. Specifying (518) that only certain collaborators are authorized to view and edit one or more portions of the document in this example is carried out by use of the metadata:
<META name=“RevisionAuthority” content=“MaryJohnson@us.ibm.com ALL PeteJones@us.ibm.com Segment1 JohnSmith@us.ibm.com Segment2”>,
which specifies that Mary Johnson is authorized to view and edit the entire document, Pete Jones is authorized to view and edit Segment 1, and John Smith is authorized to view and edit Segment 2. -
FIG. 6 sets forth a flow chart illustrating an extension of the method ofFIG. 5 . That is, the method ofFIG. 6 includes establishing acollaborative email document 502, identifyingcollaborators 504, and so on, as in the method ofFIG. 5 . In addition, however, the method ofFIG. 6 also includes identifying (602) one or more signatories for the document. Identifying the signatories may be implemented by programming an email client, such as the one shown inFIG. 3 , to accept as input through its ‘From:’field 310 more than one entry of signatory identification, JaySchwarz@us.ibm.com, MikeWilliams@us.ibm.com, and so on, and treat each of them as a signatory. In such embodiments, there is no limitation regarding when the signatories are to be identified. That is, they may be identified when the document is first created by an administrator, or later, after all the collaborators are finished revising the document. In this sense, a collaborative email document according to the present invention is different from ordinary emails in that it may arrive in the in-boxes of collaborators with no entry in its ‘From:’ field, because, for example, no one has yet decided who must authorize the ultimate promulgation of the document to addressees. Consider an email announcement of a new corporate policy to be sent to hundreds of addressees. The email is created by a clerk in a corporate planning department and revised by several collaborators. Then later, after the collaborators are satisfied with the contents of the document, it is decided whether the president of the company will sign it and whether one or more vice presidents will sign it. - The method of
FIG. 6 includes providing (604) to each signatory a copy of the document for signing. To the extent that signatories are also collaborators, they may already have copy of the document, and they may affix their signatures as soon as revisions are concluded. Signatories who are not collaborators may be emailed a copy of the document, typically from the administrator, to obtain their signatures. In the email client ofFIG. 3 , for example, thetoolbar 306 includes a button labeled ‘Sign,’ where the email client is programmed to email the document to signatories. It is common in embodiments of this invention that the ‘Sign’ button, the ability to send a document to a signatory, is only enabled on the administrator's email client, so that there is administrative control over the process of affixing signatures to the document. - The method of
FIG. 6 includes affixing (606) to the document a digital signature for each signatory. In this context, ‘signature’ generally refers to a digital signature. A digital signature is a data structure containing a hashed digest of the contents of a collaborative email document encrypted with a signatory's private key from a public/private key pair of an asymmetric cryptosystem. Email clients generally are equipped with the ability to affix digital signatures to email documents. In Microsoft Outlook™, for example, a digital signature function is available, when an email document is open for editing, through the pull-down menus at View/Options/Security. - Checking validity of a digital signature is accomplished by decrypting the hashed digest from the signature with a signatory's public key, hashing a new digest of the current contents of the document, and comparing the new digest with the decrypted digest from the signature. If the new digest and the decrypted digest from the signature are identical, the signature is considered valid. They will not be identical if revisions to the document are entered after the signature is affixed to the document.
- When the document is provided 604 to signatories for signing, therefore, in many embodiments of the present invention, the document advantageously is first disabled 603 for revision. A document may be disabled for revisions, for example, by encoding that fact in a data element dedicated to that purpose, such as, for example, the ‘status’ field 408 in the exemplary data structures of
FIG. 4 . Such a status field may be given a value such as ‘LOCKED,’ for example, and a server supporting the revision table may then be programmed to exclude or reject revisions received from collaborators while the document is so locked. - Some embodiments do not implement disabling of revisions during signing. In some embodiments that do implement disabling of revisions during signing, a signatory who is also a collaborator may go ahead and affix a signature that may be rendered invalid by a later revision. In such embodiments, as shown in
FIG. 6 , methods for collaborative email advantageously may include determining 610 whether the digital signatures in a document are valid, and, if they are not, providing 606 the document again to one or more signatories for re-signing. In this way, a method such as the one illustrated byFIG. 6 may send a collaborative email document from an administrative client to addressees only when the document bears valid digital signatures from all signatories. - The method of
FIG. 6 includes sending (608) the signed document from the administrative client to addressees. Unlike ordinary emails, the ‘From:’ field in a collaborative email arriving at addressees' in-boxes identifies the signatories of the document rather than its actual sender. The actual sender is typically an administrator who may or may not be known to the addressees. In this context, what the ‘From:’ field communicates is that the contents of the document are communicated to its addressees with the authority of the signatories. - At this point in processing, the identities of the administrator and the collaborators may be of little concern to the addressees. The collaborators often in effect develop a document for mailing on behalf of signatories who have authority over the subject matter of the document. It is therefore the identity of the signatories rather than the identify of the developers of the document that will often be considered more pertinent to addressees. The collaborators, the administrator, and the signatories may or may not be among the addressees.
- Updating (512) copies of a collaborative email document with revisions is typically carried out by communicating the revisions asynchronously to the collaborators and to the administrative client. Asynchronous communication of revisions is useful because the collaborators' clients may not be on-line on the network to receive the revisions at the time when they are created. Asynchronous communication of revisions is carried out by use of server-side data structures such as those shown in
FIG. 4 , for example. The email clients may be programmed to transmit the revisions in a standard message format such as HTTP (the HyperText Transport Protocol), WAP (the Wireless Access Protocol), HDTP (the Handheld Device Transport Protocol), or others as will occur to those of skill in the art. The server may support a Java Servlet or a CGI script, or other server-side functionality as will occur to those of skill in the art, for receiving the revisions and recording them in a database supporting data structures similar to the exemplary ones set forth inFIG. 4 . In this way, the revisions are stored on the server and remain available for download to collaborators' email clients when the clients go on-line on the network to retrieve the revisions for updating their copies of the documents. - The exact method of updating a copy of a document on an email client may be determined or selected by one or more setup parameters in the client. Updating a copy of a document by downloading revisions from a server may be carried out, for example, every time an email client is activated and at periodic intervals so long as the email client is operative. The periodic updates may be programmed to continue in background as long as the email client is running on a client machine even when the local copy of the document is not open for editing, so that when the copy opened for editing, it is likely to be fully synchronized with the latest revisions. Alternatively, a collaborator may wish to view the revisions since his or her last review of the document one at a time, stepping through them by use of, for example, a ‘Version Forward’ button like the one illustrated in the toolbar at
reference 306 on the email client ofFIG. 3 . In this case, the collaborator would turn off the email client's setup parameter for automatic background updates. - In addition to asynchronous updates implemented through a server, updating (512) the collaborators' copies of a collaborative email document with revisions may be carried out by communicating the revisions synchronously to one or more collaborators as the revisions are made. Synchronous communications of revisions may be implemented by use of messages in an instant messaging protocol. Examples of instant messaging protocols useful with various embodiments of the present invention include the Instant Messaging and Presence Protocol (“IMPP”) specified by the IMPP Working Group of the Internet Engineering Task Force and the Mitre Corporation's Simple Instant Messaging and Presence Service (“SIMP”).
-
FIG. 7 sets forth a flow chart illustrating a method of synchronous communications of revisions. In the method ofFIG. 7 , updating (512) copies of a collaborative email document with revisions includes identifying (702) collaborator clients that are available for synchronous communications of revisions. Instant messaging services generally define and support ‘presence services’ that provide indications whether an instant messaging client is on-line. Email clients capable of supporting synchronous communications of revisions according to embodiments of the present invention often are improved to support messaging and presence detection through one or more instant messaging protocols. The method ofFIG. 7 includes communicating (704) revisions synchronously to collaborator clients that are available for synchronous communications, typically carried out by transmitting the revisions in instant messages to all collaborators' email clients that are determined to be presently on-line and available for instant messaging. - Updating copies of documents synchronously affects their version identifications. In the method of
FIG. 7 , therefore, updating the collaborators' copies includes updating (706) current version identifications for the copies of the document on collaborator's clients that are available for synchronous communications. Updating current version identifications may be implemented with HTTP messages, for example, from a client to a server that maintains server-side data structures like those shown inFIG. 4 . Such a server typically supports server-side functionality such as a Java servlet or a CGI script programmed to update version identifications in response to a message from a client bearing acollaborator identification 412 and adocument identification 404. - By way of further explanation, it is noted that synchronous updates and asynchronous updates are advantageously employed together. When synchronous communications of revisions are employed for collaborators' copies that are not synchronized with the latest revisions, there is a risk that the asynchronous revisions will be applied to a copy out of proper sequence, thereby causing confusion in the copy of the document on that collaborator's client. Synchronous communications of revisions therefore are beneficially implemented for collaborators copies of a document after collaborators' copies are synchronized with the latest revisions from an asynchronous source of revisions.
- In the method of
FIG. 7 , for example, identifying (702) collaborator clients that are available for synchronous communications of revisions typically also includes determining whether collaborators copies are synchronized with the latest revisions. Determining whether collaborators copies are synchronized with the latest revisions may be accomplished by comparing a current version identification (414 onFIG. 4 ) for each collaborator's copy of a document with thelatest revision identification 416 in a revision table such as the one exemplified atreference 422 onFIG. 4 . To the extent that it is determined that the version of a collaborator's copy on an email client that is ‘present,’ available for synchronous communications of revisions, is not the current version of the document, that copy may be updated by applying all the revisions later than its current revision number—and then updating its current version identification 414 to the latest version number. - It will often be the case that some collaborators on a document engage in synchronous communications of revisions when other collaborators on the same document are unavailable for synchronous communications of revisions. Email clients according to embodiments of the present invention therefore often transmit all revisions for storage on a server for later asynchronous downloads by the other collaborators at their convenience. In this way, even a collaborator who begins a synchronous session with other collaborators and logs off in the middle of the session, can later obtain the intervening revisions by asynchronous download from the server. When such a collaborator logs off during synchronous communication of revisions, the email client advantageously records the current version identification for that collaborator's copy of the document in a data structure such as that shown at reference 414 in
FIG. 4 , for example. When the collaborators log off at the end of synchronous communication of revisions, their email clients advantageously record the current version identification for each collaborator's copy of the document in a data structure such as the exemplary one shown at reference 414 inFIG. 4 . - It will be understood from the foregoing description that modifications and changes may be made in various embodiments of the present invention without departing from its true spirit. The descriptions in this specification are for purposes of illustration only and are not to be construed in a limiting sense. The scope of the present invention is limited only by the language of the following claims.
Claims (45)
Priority Applications (11)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/637,020 US20050033811A1 (en) | 2003-08-07 | 2003-08-07 | Collaborative email |
US10/835,336 US7437421B2 (en) | 2003-08-07 | 2004-04-29 | Collaborative email with delegable authorities |
PCT/EP2004/051698 WO2005015432A1 (en) | 2003-08-07 | 2004-08-03 | Collaborative email |
CNA2004800010258A CN1701326A (en) | 2003-08-07 | 2004-08-03 | Collaborative email |
CA002532776A CA2532776A1 (en) | 2003-08-07 | 2004-08-03 | Collaborative email |
JP2006522354A JP2007501969A (en) | 2003-08-07 | 2004-08-03 | Method, system, and computer program for creating collaborative e-mail documents (collaborative e-mail) |
US12/054,487 US8606855B2 (en) | 2003-08-07 | 2008-03-25 | Collaborative email with hierachical signature authority |
US12/143,426 US7673006B2 (en) | 2003-08-07 | 2008-06-20 | Collaborative email with delegable authorities |
US12/143,884 US20080263155A1 (en) | 2003-08-07 | 2008-06-23 | Collaborative Email With Delegable Authorities |
US14/090,486 US9886428B2 (en) | 2003-08-07 | 2013-11-26 | Collaborative email with hierarchical signature authority |
US15/889,062 US10860784B2 (en) | 2003-08-07 | 2018-02-05 | Collaborative email with hierarchical signature authority |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/637,020 US20050033811A1 (en) | 2003-08-07 | 2003-08-07 | Collaborative email |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/835,336 Continuation-In-Part US7437421B2 (en) | 2003-08-07 | 2004-04-29 | Collaborative email with delegable authorities |
Publications (1)
Publication Number | Publication Date |
---|---|
US20050033811A1 true US20050033811A1 (en) | 2005-02-10 |
Family
ID=34116513
Family Applications (7)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/637,020 Abandoned US20050033811A1 (en) | 2003-08-07 | 2003-08-07 | Collaborative email |
US10/835,336 Active 2026-05-18 US7437421B2 (en) | 2003-08-07 | 2004-04-29 | Collaborative email with delegable authorities |
US12/054,487 Expired - Lifetime US8606855B2 (en) | 2003-08-07 | 2008-03-25 | Collaborative email with hierachical signature authority |
US12/143,426 Expired - Fee Related US7673006B2 (en) | 2003-08-07 | 2008-06-20 | Collaborative email with delegable authorities |
US12/143,884 Abandoned US20080263155A1 (en) | 2003-08-07 | 2008-06-23 | Collaborative Email With Delegable Authorities |
US14/090,486 Expired - Fee Related US9886428B2 (en) | 2003-08-07 | 2013-11-26 | Collaborative email with hierarchical signature authority |
US15/889,062 Expired - Lifetime US10860784B2 (en) | 2003-08-07 | 2018-02-05 | Collaborative email with hierarchical signature authority |
Family Applications After (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/835,336 Active 2026-05-18 US7437421B2 (en) | 2003-08-07 | 2004-04-29 | Collaborative email with delegable authorities |
US12/054,487 Expired - Lifetime US8606855B2 (en) | 2003-08-07 | 2008-03-25 | Collaborative email with hierachical signature authority |
US12/143,426 Expired - Fee Related US7673006B2 (en) | 2003-08-07 | 2008-06-20 | Collaborative email with delegable authorities |
US12/143,884 Abandoned US20080263155A1 (en) | 2003-08-07 | 2008-06-23 | Collaborative Email With Delegable Authorities |
US14/090,486 Expired - Fee Related US9886428B2 (en) | 2003-08-07 | 2013-11-26 | Collaborative email with hierarchical signature authority |
US15/889,062 Expired - Lifetime US10860784B2 (en) | 2003-08-07 | 2018-02-05 | Collaborative email with hierarchical signature authority |
Country Status (5)
Country | Link |
---|---|
US (7) | US20050033811A1 (en) |
JP (1) | JP2007501969A (en) |
CN (1) | CN1701326A (en) |
CA (1) | CA2532776A1 (en) |
WO (1) | WO2005015432A1 (en) |
Cited By (74)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050088704A1 (en) * | 2003-10-23 | 2005-04-28 | Microsoft Corporation | System and method for extending a message schema to represent fax messages |
US20050102361A1 (en) * | 2003-10-23 | 2005-05-12 | Winjum Randy K. | Decoupling an attachment from an electronic message that included the attachment |
US20050108332A1 (en) * | 2003-10-23 | 2005-05-19 | Vaschillo Alexander E. | Schema hierarchy for electronic messages |
US20050193067A1 (en) * | 2004-02-27 | 2005-09-01 | Research In Motion Limited | Method and system for synchronizing a drafts folder |
US20050246423A1 (en) * | 2004-04-30 | 2005-11-03 | Starbuck Bryan T | Maintaining multiple versions of message bodies in a common database |
US20060010097A1 (en) * | 2004-07-09 | 2006-01-12 | Fuji Xerox Co., Ltd. | Document management apparatus, document management method, and storage medium storing program |
US20070022166A1 (en) * | 2005-07-21 | 2007-01-25 | Bhogal Kulvir S | System, computer program product and method of keeping track of a detached e-mail attachment |
US20070118598A1 (en) * | 2005-11-22 | 2007-05-24 | International Business Machines Corporation | Collaborative editing of a document |
US20070208815A1 (en) * | 2006-03-02 | 2007-09-06 | International Business Machines Corporation | Methods and apparatus for implementing version-based electronic mail |
US20070271502A1 (en) * | 2006-05-20 | 2007-11-22 | Bharat Veer Bedi | Method and system for collaborative editing of a document |
US20080140784A1 (en) * | 2006-12-11 | 2008-06-12 | International Business Machines Corporation | Multiple Originators in an Electronic Message |
US20080162651A1 (en) * | 2007-01-03 | 2008-07-03 | Madnani Rajkumar R | Mechanism for generating a composite email |
US20080209313A1 (en) * | 2007-02-28 | 2008-08-28 | Docusign, Inc. | System and method for document tagging templates |
US20080263155A1 (en) * | 2003-08-07 | 2008-10-23 | International Business Machines Corporation | Collaborative Email With Delegable Authorities |
US20080313459A1 (en) * | 2003-07-11 | 2008-12-18 | Computer Associates Think, Inc. | Method and System for Protecting Against Computer Viruses |
US20090024912A1 (en) * | 2007-07-18 | 2009-01-22 | Docusign, Inc. | Systems and methods for distributed electronic signature documents |
US20090045856A1 (en) * | 2007-08-14 | 2009-02-19 | Qimonda Ag | Clock signal synchronizing device with inherent duty-cycle correction capability |
US20090282041A1 (en) * | 2008-05-08 | 2009-11-12 | Microsoft Corporation | Caching Infrastructure |
US20090282462A1 (en) * | 2008-05-08 | 2009-11-12 | Microsoft Corporation | Controlling Access to Documents Using File Locks |
WO2009158172A2 (en) | 2008-06-27 | 2009-12-30 | Microsoft Corporation | Exposing non-authoring features through document status information in an out-space user interface |
US20090327294A1 (en) * | 2008-06-25 | 2009-12-31 | Microsoft Corporation | Structured Coauthoring |
US20100036917A1 (en) * | 2008-08-07 | 2010-02-11 | Mccaffrey Corey S | Electronic mail reply with update |
US20100083133A1 (en) * | 2008-09-30 | 2010-04-01 | Hiromitsu Takayama | E-mail delivery method, e-mail delivery system, and server used therefor |
US20100169269A1 (en) * | 2008-12-30 | 2010-07-01 | Karthik Chandrasekaran | Systems and methods for providing collaborative editing |
US20100281074A1 (en) * | 2009-04-30 | 2010-11-04 | Microsoft Corporation | Fast Merge Support for Legacy Documents |
US7954043B2 (en) | 2002-12-02 | 2011-05-31 | International Business Machines Corporation | Concurrent editing of a file by multiple authors |
US8041770B1 (en) * | 2006-07-13 | 2011-10-18 | Avaya Inc. | Method of providing instant messaging functionality within an email session |
US20110276875A1 (en) * | 2010-05-04 | 2011-11-10 | Docusign, Inc. | Systems and methods for distributed electronic signature documents including version control |
US8185132B1 (en) | 2009-07-21 | 2012-05-22 | Modena Enterprises, Llc | Systems and methods for associating communication information with a geographic location-aware contact entry |
US8301588B2 (en) | 2008-03-07 | 2012-10-30 | Microsoft Corporation | Data storage for file updates |
US20130007144A1 (en) * | 2011-06-30 | 2013-01-03 | International Business Machines Corporation | Email question object ownership and status tracking |
US8352418B2 (en) | 2007-11-09 | 2013-01-08 | Microsoft Corporation | Client side locking |
US8352870B2 (en) | 2008-04-28 | 2013-01-08 | Microsoft Corporation | Conflict resolution |
US20130117376A1 (en) * | 2011-11-09 | 2013-05-09 | Microsoft Corporation | Document collaboration |
US20130191451A1 (en) * | 2012-01-19 | 2013-07-25 | Microsoft Corporation | Presence-based Synchronization |
US20140033067A1 (en) * | 2008-01-28 | 2014-01-30 | Adobe Systems Incorporated | Rights application within document-based conferencing |
US20140123076A1 (en) * | 2012-11-01 | 2014-05-01 | Microsoft Corporation | Navigating among edit instances of content |
US8819149B2 (en) | 2010-03-03 | 2014-08-26 | Modena Enterprises, Llc | Systems and methods for notifying a computing device of a communication addressed to a user based on an activity or presence of the user |
US8825758B2 (en) | 2007-12-14 | 2014-09-02 | Microsoft Corporation | Collaborative authoring modes |
US8949708B2 (en) | 2010-06-11 | 2015-02-03 | Docusign, Inc. | Web-based electronically signed documents |
US9222798B2 (en) | 2009-12-22 | 2015-12-29 | Modena Enterprises, Llc | Systems and methods for identifying an activity of a user based on a chronological order of detected movements of a computing device |
US9230130B2 (en) | 2012-03-22 | 2016-01-05 | Docusign, Inc. | System and method for rules-based control of custody of electronic signature transactions |
US9268758B2 (en) | 2011-07-14 | 2016-02-23 | Docusign, Inc. | Method for associating third party content with online document signing |
US20160088075A1 (en) * | 2006-03-03 | 2016-03-24 | Linkedin Corporation | Inline media |
US9438546B2 (en) | 2012-12-15 | 2016-09-06 | Microsoft Technology Licensing, Llc | Attachment collaboration within message environments |
US9461834B2 (en) | 2010-04-22 | 2016-10-04 | Sharp Laboratories Of America, Inc. | Electronic document provision to an online meeting |
US9479469B2 (en) | 2014-08-18 | 2016-10-25 | Dropbox, Inc. | Collaborative drafting of a message |
US9628462B2 (en) | 2011-07-14 | 2017-04-18 | Docusign, Inc. | Online signature identity and verification in community |
US9634975B2 (en) | 2007-07-18 | 2017-04-25 | Docusign, Inc. | Systems and methods for distributed electronic signature documents |
US20170134495A1 (en) * | 2015-04-20 | 2017-05-11 | Infraware Inc. | Method and apparatus for sharing collaboratively edited document |
US9824198B2 (en) | 2011-07-14 | 2017-11-21 | Docusign, Inc. | System and method for identity and reputation score based on transaction history |
WO2018111659A1 (en) * | 2016-12-13 | 2018-06-21 | Microsoft Technology Licensing, Llc | Document linking in an email system |
US20180205772A1 (en) * | 2018-03-12 | 2018-07-19 | Vaultize Technologies Private Limited | Folder and file based collaboration using messaging |
US10033533B2 (en) | 2011-08-25 | 2018-07-24 | Docusign, Inc. | Mobile solution for signing and retaining third-party documents |
US20180285323A1 (en) * | 2006-03-31 | 2018-10-04 | Google Llc | Collaborative workflow through messaging conversations |
US10248687B2 (en) | 2005-09-12 | 2019-04-02 | Microsoft Technology Licensing, Llc | Expanded search and find user interface |
US10437431B2 (en) | 2004-08-16 | 2019-10-08 | Microsoft Technology Licensing, Llc | Command user interface for displaying selectable software functionality controls |
US10445114B2 (en) | 2008-03-31 | 2019-10-15 | Microsoft Technology Licensing, Llc | Associating command surfaces with multiple active components |
US10482637B2 (en) | 2006-06-01 | 2019-11-19 | Microsoft Technology Licensing, Llc | Modifying and formatting a chart using pictorially provided chart elements |
US10482429B2 (en) | 2003-07-01 | 2019-11-19 | Microsoft Technology Licensing, Llc | Automatic grouping of electronic mail |
US10511732B2 (en) | 2011-08-25 | 2019-12-17 | Docusign, Inc. | Mobile solution for importing and signing third-party electronic signature documents |
US10521081B2 (en) | 2004-08-16 | 2019-12-31 | Microsoft Technology Licensing, Llc | User interface for displaying a gallery of formatting options |
US10635266B2 (en) | 2004-08-16 | 2020-04-28 | Microsoft Technology Licensing, Llc | User interface for displaying selectable software functionality controls that are relevant to a selected object |
US10642927B2 (en) | 2007-06-29 | 2020-05-05 | Microsoft Technology Licensing, Llc | Transitions between user interfaces in a content editing application |
US10892905B2 (en) * | 2011-01-20 | 2021-01-12 | Box, Inc. | Real time notification of activities that occur in a web-based collaboration environment |
CN112654995A (en) * | 2019-04-08 | 2021-04-13 | 谷歌有限责任公司 | Tracking content attribution in online collaborative electronic documents |
US10997562B2 (en) | 2008-06-20 | 2021-05-04 | Microsoft Technology Licensing, Llc | Synchronized conversation-centric message list and message reading pane |
US11012379B2 (en) * | 2019-03-20 | 2021-05-18 | Fuji Xerox Co., Ltd. | Controller and control system for chatting |
CN112994955A (en) * | 2021-04-21 | 2021-06-18 | 恒生电子股份有限公司 | Upgrade package sending management method, incremental upgrade package preparation method and related device |
US11310178B2 (en) * | 2010-05-07 | 2022-04-19 | Microsoft Technology Licensing, Llc | Streamlined collaboration on document |
US20220368656A1 (en) * | 2020-04-30 | 2022-11-17 | Beijing Bytedance Network Technology Co., Ltd. | Information interaction method and apparatus, and non-transitory computer-readable storage medium |
US20220394002A1 (en) * | 2020-04-30 | 2022-12-08 | Beijing Bytedance Network Technology Co., Ltd. | Information exchange method and apparatus, electronic device, and storage medium |
EP4131866A4 (en) * | 2020-04-30 | 2023-09-06 | Beijing Bytedance Network Technology Co., Ltd. | Information interaction method and apparatus, server, system, and storage medium |
US11777884B2 (en) | 2020-11-20 | 2023-10-03 | Microsoft Technology Licensing, Llc | Converting links and static data into collaborative user experiences |
Families Citing this family (167)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000079452A2 (en) * | 1999-06-18 | 2000-12-28 | Echarge Corporation | Method and apparatus for ordering goods, services and content over an internetwork using a virtual payment account |
US7814155B2 (en) | 2004-03-31 | 2010-10-12 | Google Inc. | Email conversation management system |
JP4197311B2 (en) * | 2004-06-22 | 2008-12-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Security policy generation method, security policy generation device, program, and recording medium |
FR2882168B1 (en) * | 2005-02-14 | 2007-06-08 | Pierre Yves Lazure | METHOD FOR PROVIDING DATA TRACEABILITY IN A COMMUNICATION NETWORK |
US8700523B2 (en) * | 2005-06-10 | 2014-04-15 | American Express Travel Related Services Company, Inc. | System and method for delegating management of a financial transaction account to a designated assistant |
US7877460B1 (en) * | 2005-09-16 | 2011-01-25 | Sequoia International Limited | Methods and systems for facilitating the distribution, sharing, and commentary of electronically published materials |
US8171104B2 (en) * | 2005-12-15 | 2012-05-01 | International Business Machines Corporation | Scheduling and searching meetings in a network environment |
US8433753B2 (en) * | 2005-12-15 | 2013-04-30 | International Business Machines Corporation | Providing meeting information from a meeting server to an email server to store in an email database |
US7895166B2 (en) * | 2006-01-18 | 2011-02-22 | Echosign, Inc. | Automatic document exchange with archiving capability |
US7996439B2 (en) * | 2006-01-18 | 2011-08-09 | Echosign, Inc. | Automatic document exchange and execution management |
US7996367B2 (en) | 2006-01-18 | 2011-08-09 | Echosign, Inc. | Automatic document exchange with document searching capability |
WO2007112369A2 (en) * | 2006-03-24 | 2007-10-04 | Meebo, Inc. | A method and system for event polling |
DE102006038497A1 (en) * | 2006-08-17 | 2008-02-21 | Epcos Ag | sun sensor |
US7814534B2 (en) * | 2006-09-08 | 2010-10-12 | Microsoft Corporation | Auditing authorization decisions |
US20080066169A1 (en) * | 2006-09-08 | 2008-03-13 | Microsoft Corporation | Fact Qualifiers in Security Scenarios |
US8060931B2 (en) | 2006-09-08 | 2011-11-15 | Microsoft Corporation | Security authorization queries |
US8201215B2 (en) * | 2006-09-08 | 2012-06-12 | Microsoft Corporation | Controlling the delegation of rights |
US8656503B2 (en) | 2006-09-11 | 2014-02-18 | Microsoft Corporation | Security language translations with logic resolution |
US8938783B2 (en) | 2006-09-11 | 2015-01-20 | Microsoft Corporation | Security language expressions for logic resolution |
US20080133571A1 (en) * | 2006-12-05 | 2008-06-05 | International Business Machines Corporation | Modifying Behavior in Messaging Systems According to Organizational Hierarchy |
US20080154976A1 (en) * | 2006-12-21 | 2008-06-26 | Ogle David M | Policy management of local document replica leasing in a collaborative environment |
US8966362B2 (en) * | 2007-05-15 | 2015-02-24 | Palo Alto Research Center Incorporated | Method and system for in-document markup in support of information sharing |
US7937663B2 (en) * | 2007-06-29 | 2011-05-03 | Microsoft Corporation | Integrated collaborative user interface for a document editor program |
US7933952B2 (en) * | 2007-06-29 | 2011-04-26 | Microsoft Corporation | Collaborative document authoring |
US7818384B2 (en) * | 2007-07-26 | 2010-10-19 | Rachal Eric M | Simultaneous synchronous split-domain email routing with conflict resolution |
US20090055236A1 (en) * | 2007-08-23 | 2009-02-26 | International Business Machines Corporation | System and method for evaluating likelihood of meeting attendance |
US20090144654A1 (en) * | 2007-10-03 | 2009-06-04 | Robert Brouwer | Methods and apparatus for facilitating content consumption |
US8091035B2 (en) * | 2007-11-08 | 2012-01-03 | International Business Machines Corporation | System and method for sharing data |
US8121880B2 (en) * | 2007-12-12 | 2012-02-21 | International Business Machines | Method for calendar driven decisions in web conferences |
US8180657B2 (en) * | 2007-12-31 | 2012-05-15 | International Business Machines Corporation | System and method for event slot negotiation |
US7747784B2 (en) * | 2008-03-04 | 2010-06-29 | Apple Inc. | Data synchronization protocol |
US8843816B2 (en) * | 2008-04-25 | 2014-09-23 | Microsoft Corporation | Document collaboration by transforming and reflecting a document object model |
US8078957B2 (en) | 2008-05-02 | 2011-12-13 | Microsoft Corporation | Document synchronization over stateless protocols |
US8484747B2 (en) * | 2008-05-09 | 2013-07-09 | International Business Machines Corporation | Method and system for managing electronic messages |
US8484746B2 (en) * | 2008-05-09 | 2013-07-09 | International Business Machines Corporation | Method and system for managing electronic messages |
US20090287793A1 (en) * | 2008-05-19 | 2009-11-19 | O'sullivan Patrick Joseph | Markup elements in referenced content |
JP4597219B2 (en) * | 2008-05-22 | 2010-12-15 | 富士通株式会社 | Electronic document management program, recording medium recording the program, electronic document management apparatus, and electronic document management method |
US20090313075A1 (en) * | 2008-06-12 | 2009-12-17 | O'sullivan Patrick Joseph | System and method for adaptive scheduling |
US20090327735A1 (en) * | 2008-06-26 | 2009-12-31 | Microsoft Corporation | Unidirectional multi-use proxy re-signature process |
US8286171B2 (en) | 2008-07-21 | 2012-10-09 | Workshare Technology, Inc. | Methods and systems to fingerprint textual information using word runs |
JP5355032B2 (en) * | 2008-10-23 | 2013-11-27 | キヤノン株式会社 | Client device, server device, and document management system, document management method, and document management program using them |
WO2010059747A2 (en) | 2008-11-18 | 2010-05-27 | Workshare Technology, Inc. | Methods and systems for exact data match filtering |
US8775527B2 (en) * | 2008-12-15 | 2014-07-08 | International Business Machines Corporation | Collaborative email filtering |
US8689352B2 (en) * | 2008-12-18 | 2014-04-01 | Sap Ag | Distributed access control for document centric collaborations |
US8368525B2 (en) * | 2008-12-31 | 2013-02-05 | International Business Machines Corporation | System and method for distinguishing messages |
US8386573B2 (en) | 2008-12-31 | 2013-02-26 | International Business Machines Corporation | System and method for caching linked email data for offline use |
US8589502B2 (en) * | 2008-12-31 | 2013-11-19 | International Business Machines Corporation | System and method for allowing access to content |
US9935793B2 (en) | 2009-02-10 | 2018-04-03 | Yahoo Holdings, Inc. | Generating a live chat session in response to selection of a contextual shortcut |
US8327278B2 (en) * | 2009-02-17 | 2012-12-04 | Microsoft Corporation | Synchronizing metadata describes user content updates and an indication of user gestures being performed within the document, and across client systems using different communication channels |
US9159074B2 (en) * | 2009-03-23 | 2015-10-13 | Yahoo! Inc. | Tool for embedding comments for objects in an article |
US8639762B2 (en) | 2009-03-23 | 2014-01-28 | Google Inc. | Providing access to a conversation in a hosted conversation system |
US8874533B1 (en) * | 2009-03-25 | 2014-10-28 | MyWerx, LLC | System and method for data validation and life cycle management |
US8612380B2 (en) * | 2009-05-26 | 2013-12-17 | Adobe Systems Incorporated | Web-based collaboration for editing electronic documents |
US9298834B2 (en) | 2009-05-26 | 2016-03-29 | Adobe Systems Incorporated | User presence data for web-based document collaboration |
US9021386B1 (en) | 2009-05-28 | 2015-04-28 | Google Inc. | Enhanced user interface scrolling system |
US9602444B2 (en) | 2009-05-28 | 2017-03-21 | Google Inc. | Participant suggestion system |
US8527602B1 (en) | 2009-05-28 | 2013-09-03 | Google Inc. | Content upload system with preview and user demand based upload prioritization |
US8219526B2 (en) | 2009-06-05 | 2012-07-10 | Microsoft Corporation | Synchronizing file partitions utilizing a server storage model |
US20110010640A1 (en) * | 2009-07-10 | 2011-01-13 | Novell, Inc. | Intelligent co-browsing and co-editing |
US8782144B2 (en) * | 2009-07-29 | 2014-07-15 | Cisco Technology, Inc. | Controlling the distribution of messages |
US8561163B2 (en) * | 2009-12-03 | 2013-10-15 | International Business Machines Corporation | Maintaining the integrity of email authorship |
US20110191692A1 (en) * | 2010-02-03 | 2011-08-04 | Oto Technologies, Llc | System and method for e-book contextual communication |
AU2011240695A1 (en) | 2010-04-12 | 2012-11-01 | Google Inc. | Real-time collaboration in a hosted word processor |
WO2011130286A1 (en) | 2010-04-12 | 2011-10-20 | Google Inc. | Collaborative cursors in a hosted word processor |
US9380011B2 (en) | 2010-05-28 | 2016-06-28 | Google Inc. | Participant-specific markup |
US9026935B1 (en) | 2010-05-28 | 2015-05-05 | Google Inc. | Application user interface with an interactive overlay |
US10025759B2 (en) * | 2010-11-29 | 2018-07-17 | Workshare Technology, Inc. | Methods and systems for monitoring documents exchanged over email applications |
US11030163B2 (en) | 2011-11-29 | 2021-06-08 | Workshare, Ltd. | System for tracking and displaying changes in a set of related electronic documents |
US10783326B2 (en) | 2013-03-14 | 2020-09-22 | Workshare, Ltd. | System for tracking changes in a collaborative document editing environment |
US9165285B2 (en) | 2010-12-08 | 2015-10-20 | Microsoft Technology Licensing, Llc | Shared attachments |
US9729694B2 (en) | 2010-12-29 | 2017-08-08 | Avaya Inc. | Method and apparatus for providing priority indicia associated with a plurality of messages |
US9955014B2 (en) | 2010-12-29 | 2018-04-24 | Avaya Inc. | Method and system for delivering messages |
US8954517B2 (en) | 2010-12-29 | 2015-02-10 | Avaya Inc. | Method and apparatus for delegating a message |
US20120174192A1 (en) | 2011-01-05 | 2012-07-05 | International Business Machines Corporation | Displaying A Known Sender's Identifier To A Recipient Of A Joint Senders' Message |
US8996985B1 (en) | 2011-03-16 | 2015-03-31 | Google Inc. | Online document processing service for displaying comments |
US9137185B2 (en) | 2011-04-28 | 2015-09-15 | Microsoft Technology Licensing, Llc | Uploading attachment to shared location and replacing with a link |
US11308449B2 (en) | 2011-04-28 | 2022-04-19 | Microsoft Technology Licensing, Llc | Storing metadata inside file to reference shared version of file |
US8682989B2 (en) * | 2011-04-28 | 2014-03-25 | Microsoft Corporation | Making document changes by replying to electronic messages |
US10552799B2 (en) | 2011-04-28 | 2020-02-04 | Microsoft Technology Licensing, Llc | Upload of attachment and insertion of link into electronic messages |
US10185932B2 (en) | 2011-05-06 | 2019-01-22 | Microsoft Technology Licensing, Llc | Setting permissions for links forwarded in electronic messages |
US8965983B2 (en) * | 2011-05-06 | 2015-02-24 | Microsoft Technology Licensing, Llc | Changes to documents are automatically summarized in electronic messages |
US9170990B2 (en) | 2013-03-14 | 2015-10-27 | Workshare Limited | Method and system for document retrieval with selective document comparison |
US10880359B2 (en) | 2011-12-21 | 2020-12-29 | Workshare, Ltd. | System and method for cross platform document sharing |
US10963584B2 (en) | 2011-06-08 | 2021-03-30 | Workshare Ltd. | Method and system for collaborative editing of a remotely stored document |
US9613340B2 (en) | 2011-06-14 | 2017-04-04 | Workshare Ltd. | Method and system for shared document approval |
US10574729B2 (en) | 2011-06-08 | 2020-02-25 | Workshare Ltd. | System and method for cross platform document sharing |
US8849777B1 (en) | 2011-06-30 | 2014-09-30 | Emc Corporation | File deletion detection in key value databases for virtual backups |
US9311327B1 (en) * | 2011-06-30 | 2016-04-12 | Emc Corporation | Updating key value databases for virtual backups |
US8849769B1 (en) | 2011-06-30 | 2014-09-30 | Emc Corporation | Virtual machine file level recovery |
US9229951B1 (en) | 2011-06-30 | 2016-01-05 | Emc Corporation | Key value databases for virtual backups |
US8671075B1 (en) | 2011-06-30 | 2014-03-11 | Emc Corporation | Change tracking indices in virtual machines |
US9158632B1 (en) | 2011-06-30 | 2015-10-13 | Emc Corporation | Efficient file browsing using key value databases for virtual backups |
US8843443B1 (en) | 2011-06-30 | 2014-09-23 | Emc Corporation | Efficient backup of virtual data |
US8949829B1 (en) | 2011-06-30 | 2015-02-03 | Emc Corporation | Virtual machine disaster recovery |
US9336137B2 (en) | 2011-09-02 | 2016-05-10 | Google Inc. | System and method for performing data management in a collaborative development environment |
US10430388B1 (en) | 2011-10-17 | 2019-10-01 | Google Llc | Systems and methods for incremental loading of collaboratively generated presentations |
US8434002B1 (en) | 2011-10-17 | 2013-04-30 | Google Inc. | Systems and methods for collaborative editing of elements in a presentation document |
US8397153B1 (en) | 2011-10-17 | 2013-03-12 | Google Inc. | Systems and methods for rich presentation overlays |
US8812946B1 (en) | 2011-10-17 | 2014-08-19 | Google Inc. | Systems and methods for rendering documents |
US20150199308A1 (en) | 2011-10-17 | 2015-07-16 | Google Inc. | Systems and methods for controlling the display of online documents |
US8266245B1 (en) | 2011-10-17 | 2012-09-11 | Google Inc. | Systems and methods for incremental loading of collaboratively generated presentations |
US8471871B1 (en) | 2011-10-17 | 2013-06-25 | Google Inc. | Authoritative text size measuring |
US8738706B1 (en) | 2011-11-16 | 2014-05-27 | Google Inc. | Systems and methods for collaborative document editing |
US20130219296A1 (en) * | 2012-02-20 | 2013-08-22 | Sudeep Mathew Thazhmon | Real time editing for electronic mail |
US9367522B2 (en) | 2012-04-13 | 2016-06-14 | Google Inc. | Time-based presentation editing |
WO2013166518A1 (en) * | 2012-05-04 | 2013-11-07 | Institutional Cash Distributors Technology, Llc | Secure transaction object creation, propagation and invocation |
US11250423B2 (en) * | 2012-05-04 | 2022-02-15 | Institutional Cash Distributors Technology, Llc | Encapsulated security tokens for electronic transactions |
US10423952B2 (en) * | 2013-05-06 | 2019-09-24 | Institutional Cash Distributors Technology, Llc | Encapsulated security tokens for electronic transactions |
US9596206B2 (en) * | 2012-10-09 | 2017-03-14 | Facebook, Inc. | In-line images in messages |
US9529785B2 (en) | 2012-11-27 | 2016-12-27 | Google Inc. | Detecting relationships between edits and acting on a subset of edits |
US9462037B2 (en) | 2013-01-07 | 2016-10-04 | Google Inc. | Dynamically sizing chunks in a partially loaded spreadsheet model |
US10956667B2 (en) | 2013-01-07 | 2021-03-23 | Google Llc | Operational transformations proxy for thin clients |
US9311622B2 (en) | 2013-01-15 | 2016-04-12 | Google Inc. | Resolving mutations in a partially-loaded spreadsheet model |
US9471556B2 (en) * | 2013-01-30 | 2016-10-18 | Microsoft Technology Licensing, Llc | Collaboration using multiple editors or versions of a feature |
US11567907B2 (en) | 2013-03-14 | 2023-01-31 | Workshare, Ltd. | Method and system for comparing document versions encoded in a hierarchical representation |
US9191345B2 (en) * | 2013-06-26 | 2015-11-17 | Timyo Holdings, Inc. | Method and system for exchanging emails |
US20150012820A1 (en) * | 2013-07-02 | 2015-01-08 | Mark Thomas App | System and method of publishing compositions |
US10911492B2 (en) | 2013-07-25 | 2021-02-02 | Workshare Ltd. | System and method for securing documents prior to transmission |
US9971752B2 (en) | 2013-08-19 | 2018-05-15 | Google Llc | Systems and methods for resolving privileged edits within suggested edits |
US8892679B1 (en) | 2013-09-13 | 2014-11-18 | Box, Inc. | Mobile device, methods and user interfaces thereof in a mobile device platform featuring multifunctional access and engagement in a collaborative environment provided by a cloud-based platform |
US9704137B2 (en) * | 2013-09-13 | 2017-07-11 | Box, Inc. | Simultaneous editing/accessing of content by collaborator invitation through a web-based or mobile application to a cloud-based collaboration platform |
GB2518298A (en) | 2013-09-13 | 2015-03-18 | Box Inc | High-availability architecture for a cloud-based concurrent-access collaboration platform |
US9348803B2 (en) | 2013-10-22 | 2016-05-24 | Google Inc. | Systems and methods for providing just-in-time preview of suggestion resolutions |
US10866931B2 (en) | 2013-10-22 | 2020-12-15 | Box, Inc. | Desktop application for accessing a cloud collaboration platform |
US10599753B1 (en) | 2013-11-11 | 2020-03-24 | Amazon Technologies, Inc. | Document version control in collaborative environment |
US11336648B2 (en) | 2013-11-11 | 2022-05-17 | Amazon Technologies, Inc. | Document management and collaboration system |
US9542391B1 (en) | 2013-11-11 | 2017-01-10 | Amazon Technologies, Inc. | Processing service requests for non-transactional databases |
US10540404B1 (en) | 2014-02-07 | 2020-01-21 | Amazon Technologies, Inc. | Forming a document collection in a document management and collaboration system |
US8949360B1 (en) * | 2013-12-30 | 2015-02-03 | crWOWd, Inc. | Request and response aggregation system and method with request relay |
US10691877B1 (en) | 2014-02-07 | 2020-06-23 | Amazon Technologies, Inc. | Homogenous insertion of interactions into documents |
US10069868B2 (en) * | 2014-03-28 | 2018-09-04 | Intel Corporation | Systems and methods to facilitate multi-factor authentication policy enforcement using one or more policy handlers |
US10404637B2 (en) | 2014-03-31 | 2019-09-03 | Microsoft Technology Licensing, Llc | Electronic communication-based storage of documents to support multiple workflows |
US11340769B2 (en) | 2014-03-31 | 2022-05-24 | Microsoft Technology Licensing, Llc | Generating content items out of an electronic communication workflow |
US10466882B2 (en) | 2014-03-31 | 2019-11-05 | Microsoft Technology Licensing, Llc | Collaborative co-authoring via an electronic user interface |
DE202015009277U1 (en) * | 2014-06-24 | 2017-01-20 | Google Inc. | Systems for managing processing proposals in a text editing environment for collaborative documents |
JP6074396B2 (en) * | 2014-09-26 | 2017-02-01 | 富士フイルム株式会社 | Layout creation system, server, client, layout creation method, program, and recording medium |
US9807073B1 (en) | 2014-09-29 | 2017-10-31 | Amazon Technologies, Inc. | Access to documents in a document management and collaboration system |
US9292876B1 (en) * | 2014-12-16 | 2016-03-22 | Docusign, Inc. | Systems and methods for employing document snapshots in transaction rooms for digital transactions |
US11182551B2 (en) | 2014-12-29 | 2021-11-23 | Workshare Ltd. | System and method for determining document version geneology |
US10133723B2 (en) | 2014-12-29 | 2018-11-20 | Workshare Ltd. | System and method for determining document version geneology |
US10015016B2 (en) * | 2015-01-28 | 2018-07-03 | Bank Of America Corporation | Method and apparatus for maintaining a centralized repository that stores entitlement capability for authorized signatories |
CN104796323B (en) * | 2015-03-26 | 2019-02-12 | 小米科技有限责任公司 | E-mail sending method, mail server and Mail Clients |
US9367854B1 (en) | 2015-03-31 | 2016-06-14 | Workiva Inc. | Methods and a computing device for carrying out data collection |
KR101701110B1 (en) * | 2016-03-11 | 2017-02-13 | 주식회사 인프라웨어 | Method and apparatus for sharing common editing documents |
US11763013B2 (en) | 2015-08-07 | 2023-09-19 | Workshare, Ltd. | Transaction document management system and method |
US10178168B2 (en) * | 2015-08-19 | 2019-01-08 | Facebook, Inc. | Read-after-write consistency in data replication |
US10152503B2 (en) * | 2015-10-29 | 2018-12-11 | The Dun & Bradstreet Corporation | Data communications system and method that maximize efficient usage of communications resources |
US11971860B2 (en) | 2015-12-28 | 2024-04-30 | Dropbox, Inc. | Embedded folder views |
KR101812957B1 (en) * | 2016-05-16 | 2017-12-29 | 주식회사 인프라웨어 | Method and apparatus for sharing a collaborative editing document |
US10645036B2 (en) | 2016-06-16 | 2020-05-05 | Microsoft Technology Licensing, Llc | In-line collaboration in e-mail |
KR101858970B1 (en) * | 2016-09-26 | 2018-05-17 | 주식회사 인프라웨어 | Method and apparatus for sharing common editing documents |
EP3321833B1 (en) * | 2016-11-14 | 2022-12-21 | Mastercard International Incorporated | Method for biometric based signing of document |
KR101727235B1 (en) * | 2017-02-14 | 2017-05-02 | (주) 사이냅소프트 | Document editing system and method supporting collaborative editing |
KR101750429B1 (en) * | 2017-02-22 | 2017-06-23 | (주) 사이냅소프트 | Document editing system and method for collaborative editing |
US11741300B2 (en) | 2017-11-03 | 2023-08-29 | Dropbox, Inc. | Embedded spreadsheet data implementation and synchronization |
CN108549623B (en) * | 2018-04-12 | 2022-03-01 | 北京三快在线科技有限公司 | Collaborative document editing control method and device, electronic equipment and storage medium |
US11847301B2 (en) * | 2019-11-14 | 2023-12-19 | Black Hills Ip Holdings, Llc | Structured text for electronic communications |
EP3828794A1 (en) * | 2019-11-27 | 2021-06-02 | Microsoft Technology Licensing, LLC | Email collaboration |
US10637810B1 (en) | 2019-12-17 | 2020-04-28 | Capital One Services, Llc | System and method for distributed document upload via electronic mail |
CN113595853A (en) * | 2020-04-30 | 2021-11-02 | 北京字节跳动网络技术有限公司 | Mail attachment processing method and device, electronic equipment and storage medium |
CN113595856B (en) | 2020-04-30 | 2022-09-30 | 北京字节跳动网络技术有限公司 | Information interaction method, device, equipment and medium |
US11424936B2 (en) | 2020-10-30 | 2022-08-23 | Docusign, Inc. | Post-completion action management in online document system |
US11962427B2 (en) * | 2021-02-18 | 2024-04-16 | Microsoft Technology Licensing, Llc | Auto-generated object for impromptu collaboration |
US11836679B2 (en) | 2021-02-18 | 2023-12-05 | Microsoft Technology Licensing, Llc | Object for pre- to post-meeting collaboration |
CN113221517B (en) * | 2021-07-08 | 2021-12-10 | 金蝶软件(中国)有限公司 | Mail editing method and device, computer equipment and storage medium |
US20230095155A1 (en) * | 2021-09-28 | 2023-03-30 | Docusign, Inc. | Delegated signing using sensitivity classification |
CN116738943A (en) * | 2023-08-14 | 2023-09-12 | 佳瑛科技有限公司 | File content oriented sharing editing method and related device based on cloud server |
Citations (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5093918A (en) * | 1988-12-22 | 1992-03-03 | International Business Machines Corporation | System using independent attribute lists to show status of shared mail object among respective users |
US5220657A (en) * | 1987-12-02 | 1993-06-15 | Xerox Corporation | Updating local copy of shared data in a collaborative system |
US5787175A (en) * | 1995-10-23 | 1998-07-28 | Novell, Inc. | Method and apparatus for collaborative document control |
US6005571A (en) * | 1997-09-30 | 1999-12-21 | Softline, Inc. | Graphical user interface for managing security in a database system |
US6088702A (en) * | 1998-02-25 | 2000-07-11 | Plantz; Scott H. | Group publishing system |
US20010000811A1 (en) * | 1996-05-24 | 2001-05-03 | May Phillip J. | Method and system for managing data while sharing application programs |
US20010003202A1 (en) * | 1999-12-02 | 2001-06-07 | Niels Mache | Instant messaging |
US6266682B1 (en) * | 1998-08-31 | 2001-07-24 | Xerox Corporation | Tagging related files in a document management system |
US20010037273A1 (en) * | 2000-03-02 | 2001-11-01 | Greenlee George Richard | Commercial real estate lease automation system |
US20020099777A1 (en) * | 2001-01-25 | 2002-07-25 | Anoop Gupta | Integrating collaborative messaging into an electronic mail program |
US6505233B1 (en) * | 1999-08-30 | 2003-01-07 | Zaplet, Inc. | Method for communicating information among a group of participants |
US6507865B1 (en) * | 1999-08-30 | 2003-01-14 | Zaplet, Inc. | Method and system for group content collaboration |
US20030028600A1 (en) * | 2001-04-24 | 2003-02-06 | Parker Jamses A. | Electronic mail file access system |
US6525747B1 (en) * | 1999-08-02 | 2003-02-25 | Amazon.Com, Inc. | Method and system for conducting a discussion relating to an item |
US20030050981A1 (en) * | 2001-09-13 | 2003-03-13 | International Business Machines Corporation | Method, apparatus, and program to forward and verify multiple digital signatures in electronic mail |
US20030182177A1 (en) * | 2002-03-25 | 2003-09-25 | Gallagher March S. | Collective hierarchical decision making system |
US20030220855A1 (en) * | 2002-05-24 | 2003-11-27 | Duc Lam | System and method for payer (buyer) defined electronic invoice exchange |
US20040044648A1 (en) * | 2002-06-24 | 2004-03-04 | Xmyphonic System As | Method for data-centric collaboration |
US6769013B2 (en) * | 2002-02-02 | 2004-07-27 | E-Wings, Inc. | Distributed system for interactive collaboration |
US20040172450A1 (en) * | 2003-02-28 | 2004-09-02 | Microsoft Corporation | Method to initiate server based collaboration on e-mail attachments |
US20040205653A1 (en) * | 2001-12-17 | 2004-10-14 | Workshare Technology, Ltd. | Method and system for document collaboration |
US20040230658A1 (en) * | 2003-02-14 | 2004-11-18 | Julio Estrada | System and method for message downloading and initializing a collaborative work environment |
US20040267871A1 (en) * | 2003-06-27 | 2004-12-30 | Christopher Pratley | Method and apparatus for viewing and managing collaboration data from within the context of a shared document |
US20050034079A1 (en) * | 2003-08-05 | 2005-02-10 | Duraisamy Gunasekar | Method and system for providing conferencing services |
US20050055306A1 (en) * | 1998-09-22 | 2005-03-10 | Science Applications International Corporation | User-defined dynamic collaborative environments |
US20050188016A1 (en) * | 2002-11-25 | 2005-08-25 | Subramanyam Vdaygiri | Method and system for off-line, on-line, and instant-message-based multimedia collaboration |
US7152220B2 (en) * | 1999-12-09 | 2006-12-19 | Sensemaking Technologies Corp. | Collaboration engine: adding collaboration functionality to computer software |
US7437421B2 (en) * | 2003-08-07 | 2008-10-14 | International Business Machines Corporations | Collaborative email with delegable authorities |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS4827690B1 (en) * | 1968-08-07 | 1973-08-24 | ||
JPH05135056A (en) * | 1991-11-12 | 1993-06-01 | Fuji Xerox Co Ltd | Joint write supporting device |
JPH08202688A (en) * | 1995-01-23 | 1996-08-09 | Toshiba Corp | Collaborative document preparation device |
EP0737895B1 (en) | 1995-04-10 | 1999-09-08 | Shipley Company LLC | Photoresist with photoactive compound mixtures |
JPH0954719A (en) * | 1995-08-14 | 1997-02-25 | Meidensha Corp | Client and server type data base |
US6023715A (en) * | 1996-04-24 | 2000-02-08 | International Business Machines Corporation | Method and apparatus for creating and organizing a document from a plurality of local or external documents represented as objects in a hierarchical tree |
US5892513A (en) * | 1996-06-07 | 1999-04-06 | Xerox Corporation | Intermediate nodes for connecting versioned subtrees in a document management system |
US6067551A (en) * | 1997-11-14 | 2000-05-23 | Microsoft Corporation | Computer implemented method for simultaneous multi-user editing of a document |
US6405225B1 (en) * | 1998-06-17 | 2002-06-11 | Microsoft Corporation | Integrating email functionality into a word processor by incorporating an email GUI within the word processor |
US7213030B1 (en) * | 1998-10-16 | 2007-05-01 | Jenkins Steven R | Web-enabled transaction and collaborative management system |
US6475693B1 (en) | 1998-12-10 | 2002-11-05 | Clariant Finance (Bvi) Limited | Positively photosensitive resin composition |
US7424543B2 (en) * | 1999-09-08 | 2008-09-09 | Rice Iii James L | System and method of permissive data flow and application transfer |
JP2001273285A (en) | 2000-03-27 | 2001-10-05 | Mitsubishi Electric Corp | Device and method for controlling disclosure information |
US6785721B1 (en) * | 2000-06-19 | 2004-08-31 | International Business Machines Corporation | System and method for providing a distributable runtime that deploys web applications and services from a workflow, enterprise, and mail-enabled web application server and platform |
WO2002001823A2 (en) | 2000-06-26 | 2002-01-03 | America Online Incorporated | E-mail integrated instant messaging |
US20050210393A1 (en) * | 2000-07-05 | 2005-09-22 | Forgent Networks, Inc. | Asynchronous collaboration via audio/video annotation |
CA2424713C (en) * | 2000-08-21 | 2007-12-04 | Thoughtslinger Corporation | Simultaneous multi-user document editing system |
US20030177187A1 (en) * | 2000-11-27 | 2003-09-18 | Butterfly.Net. Inc. | Computing grid for massively multi-player online games and other multi-user immersive persistent-state and session-based applications |
US6744447B2 (en) * | 2000-12-29 | 2004-06-01 | International Business Machines Corporation | Method and system for compiling and using placebot agents for automatically accessing, processing, and managing the data in a place |
MXPA03006362A (en) * | 2001-01-17 | 2004-04-20 | Contentguard Holdings Inc | Method and apparatus for managing digital content usage rights. |
CA2440159C (en) | 2001-03-07 | 2011-05-03 | Netscape Communications Corporation | Integration of e-mail with instant messaging services |
JP2002296772A (en) | 2001-04-02 | 2002-10-09 | Tokyo Ohka Kogyo Co Ltd | Positive type photoresist composition |
US6732090B2 (en) * | 2001-08-13 | 2004-05-04 | Xerox Corporation | Meta-document management system with user definable personalities |
US7133862B2 (en) * | 2001-08-13 | 2006-11-07 | Xerox Corporation | System with user directed enrichment and import/export control |
JP2003058532A (en) * | 2001-08-13 | 2003-02-28 | Hitachi Device Eng Co Ltd | Mail magazine editing system |
US20030112273A1 (en) * | 2001-12-17 | 2003-06-19 | Workshare Technology, Ltd. | Document collaboration suite using a common database |
JP2003203168A (en) * | 2002-01-07 | 2003-07-18 | Toshiba Eng Co Ltd | Electronic business system and electronic business method |
US7954043B2 (en) * | 2002-12-02 | 2011-05-31 | International Business Machines Corporation | Concurrent editing of a file by multiple authors |
US20060028600A1 (en) * | 2004-08-03 | 2006-02-09 | Industrial Technology Research Institute | High transmittance brightness enhancement optically element for LCD by wholly coating process |
US20080188016A1 (en) * | 2007-02-02 | 2008-08-07 | Texas Instruments, Inc. | Die detection and reference die wafermap alignment |
US20090250474A1 (en) * | 2008-04-07 | 2009-10-08 | Malcolm Carter T | Plate with features that cooperatively interact with utensils |
US10033702B2 (en) * | 2015-08-05 | 2018-07-24 | Intralinks, Inc. | Systems and methods of secure data exchange |
US10627976B2 (en) * | 2015-09-18 | 2020-04-21 | Microsoft Technology Licensing, Llc | Smart notifications |
US20170091778A1 (en) * | 2015-09-30 | 2017-03-30 | Microsoft Technology Licensing, Llc | Context-aware support integration |
-
2003
- 2003-08-07 US US10/637,020 patent/US20050033811A1/en not_active Abandoned
-
2004
- 2004-04-29 US US10/835,336 patent/US7437421B2/en active Active
- 2004-08-03 CA CA002532776A patent/CA2532776A1/en not_active Abandoned
- 2004-08-03 CN CNA2004800010258A patent/CN1701326A/en active Pending
- 2004-08-03 JP JP2006522354A patent/JP2007501969A/en active Pending
- 2004-08-03 WO PCT/EP2004/051698 patent/WO2005015432A1/en active Application Filing
-
2008
- 2008-03-25 US US12/054,487 patent/US8606855B2/en not_active Expired - Lifetime
- 2008-06-20 US US12/143,426 patent/US7673006B2/en not_active Expired - Fee Related
- 2008-06-23 US US12/143,884 patent/US20080263155A1/en not_active Abandoned
-
2013
- 2013-11-26 US US14/090,486 patent/US9886428B2/en not_active Expired - Fee Related
-
2018
- 2018-02-05 US US15/889,062 patent/US10860784B2/en not_active Expired - Lifetime
Patent Citations (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5220657A (en) * | 1987-12-02 | 1993-06-15 | Xerox Corporation | Updating local copy of shared data in a collaborative system |
US5093918A (en) * | 1988-12-22 | 1992-03-03 | International Business Machines Corporation | System using independent attribute lists to show status of shared mail object among respective users |
US5787175A (en) * | 1995-10-23 | 1998-07-28 | Novell, Inc. | Method and apparatus for collaborative document control |
US20010000811A1 (en) * | 1996-05-24 | 2001-05-03 | May Phillip J. | Method and system for managing data while sharing application programs |
US6005571A (en) * | 1997-09-30 | 1999-12-21 | Softline, Inc. | Graphical user interface for managing security in a database system |
US6088702A (en) * | 1998-02-25 | 2000-07-11 | Plantz; Scott H. | Group publishing system |
US6266682B1 (en) * | 1998-08-31 | 2001-07-24 | Xerox Corporation | Tagging related files in a document management system |
US20030237051A1 (en) * | 1998-08-31 | 2003-12-25 | Xerox Corporation | Clustering related files in a document management system |
US20010039553A1 (en) * | 1998-08-31 | 2001-11-08 | Xerox Corporation | Clustering related files in a document management system |
US20050055306A1 (en) * | 1998-09-22 | 2005-03-10 | Science Applications International Corporation | User-defined dynamic collaborative environments |
US6525747B1 (en) * | 1999-08-02 | 2003-02-25 | Amazon.Com, Inc. | Method and system for conducting a discussion relating to an item |
US6507865B1 (en) * | 1999-08-30 | 2003-01-14 | Zaplet, Inc. | Method and system for group content collaboration |
US6505233B1 (en) * | 1999-08-30 | 2003-01-07 | Zaplet, Inc. | Method for communicating information among a group of participants |
US20010003202A1 (en) * | 1999-12-02 | 2001-06-07 | Niels Mache | Instant messaging |
US7152220B2 (en) * | 1999-12-09 | 2006-12-19 | Sensemaking Technologies Corp. | Collaboration engine: adding collaboration functionality to computer software |
US20010037273A1 (en) * | 2000-03-02 | 2001-11-01 | Greenlee George Richard | Commercial real estate lease automation system |
US20020099777A1 (en) * | 2001-01-25 | 2002-07-25 | Anoop Gupta | Integrating collaborative messaging into an electronic mail program |
US20030028600A1 (en) * | 2001-04-24 | 2003-02-06 | Parker Jamses A. | Electronic mail file access system |
US20030050981A1 (en) * | 2001-09-13 | 2003-03-13 | International Business Machines Corporation | Method, apparatus, and program to forward and verify multiple digital signatures in electronic mail |
US20040205653A1 (en) * | 2001-12-17 | 2004-10-14 | Workshare Technology, Ltd. | Method and system for document collaboration |
US6769013B2 (en) * | 2002-02-02 | 2004-07-27 | E-Wings, Inc. | Distributed system for interactive collaboration |
US20030182177A1 (en) * | 2002-03-25 | 2003-09-25 | Gallagher March S. | Collective hierarchical decision making system |
US20030220855A1 (en) * | 2002-05-24 | 2003-11-27 | Duc Lam | System and method for payer (buyer) defined electronic invoice exchange |
US20040044648A1 (en) * | 2002-06-24 | 2004-03-04 | Xmyphonic System As | Method for data-centric collaboration |
US20050188016A1 (en) * | 2002-11-25 | 2005-08-25 | Subramanyam Vdaygiri | Method and system for off-line, on-line, and instant-message-based multimedia collaboration |
US20040230658A1 (en) * | 2003-02-14 | 2004-11-18 | Julio Estrada | System and method for message downloading and initializing a collaborative work environment |
US20040172450A1 (en) * | 2003-02-28 | 2004-09-02 | Microsoft Corporation | Method to initiate server based collaboration on e-mail attachments |
US20040267871A1 (en) * | 2003-06-27 | 2004-12-30 | Christopher Pratley | Method and apparatus for viewing and managing collaboration data from within the context of a shared document |
US20050034079A1 (en) * | 2003-08-05 | 2005-02-10 | Duraisamy Gunasekar | Method and system for providing conferencing services |
US7437421B2 (en) * | 2003-08-07 | 2008-10-14 | International Business Machines Corporations | Collaborative email with delegable authorities |
US20080263155A1 (en) * | 2003-08-07 | 2008-10-23 | International Business Machines Corporation | Collaborative Email With Delegable Authorities |
US20090083384A1 (en) * | 2003-08-07 | 2009-03-26 | International Business Machines Corporation | Collaborative Email With Hierachical Signature Authority |
US7673006B2 (en) * | 2003-08-07 | 2010-03-02 | International Business Machines Corporation | Collaborative email with delegable authorities |
Cited By (148)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7954043B2 (en) | 2002-12-02 | 2011-05-31 | International Business Machines Corporation | Concurrent editing of a file by multiple authors |
US10482429B2 (en) | 2003-07-01 | 2019-11-19 | Microsoft Technology Licensing, Llc | Automatic grouping of electronic mail |
US9088593B2 (en) * | 2003-07-11 | 2015-07-21 | Ca, Inc. | Method and system for protecting against computer viruses |
US20080313459A1 (en) * | 2003-07-11 | 2008-12-18 | Computer Associates Think, Inc. | Method and System for Protecting Against Computer Viruses |
US20080263155A1 (en) * | 2003-08-07 | 2008-10-23 | International Business Machines Corporation | Collaborative Email With Delegable Authorities |
US8606855B2 (en) | 2003-08-07 | 2013-12-10 | Ebay Inc. | Collaborative email with hierachical signature authority |
US9886428B2 (en) | 2003-08-07 | 2018-02-06 | Paypal, Inc. | Collaborative email with hierarchical signature authority |
US20190065450A1 (en) * | 2003-08-07 | 2019-02-28 | Paypal, Inc. | Collaborative email with hierarchical signature authority |
US10860784B2 (en) * | 2003-08-07 | 2020-12-08 | Paypal, Inc. | Collaborative email with hierarchical signature authority |
US20090083384A1 (en) * | 2003-08-07 | 2009-03-26 | International Business Machines Corporation | Collaborative Email With Hierachical Signature Authority |
US8370436B2 (en) | 2003-10-23 | 2013-02-05 | Microsoft Corporation | System and method for extending a message schema to represent fax messages |
US20050108332A1 (en) * | 2003-10-23 | 2005-05-19 | Vaschillo Alexander E. | Schema hierarchy for electronic messages |
US20050102361A1 (en) * | 2003-10-23 | 2005-05-12 | Winjum Randy K. | Decoupling an attachment from an electronic message that included the attachment |
US20050088704A1 (en) * | 2003-10-23 | 2005-04-28 | Microsoft Corporation | System and method for extending a message schema to represent fax messages |
US8150923B2 (en) | 2003-10-23 | 2012-04-03 | Microsoft Corporation | Schema hierarchy for electronic messages |
US7424513B2 (en) | 2003-10-23 | 2008-09-09 | Microsoft Corporation | Decoupling an attachment from an electronic message that included the attachment |
US20050193067A1 (en) * | 2004-02-27 | 2005-09-01 | Research In Motion Limited | Method and system for synchronizing a drafts folder |
US8566399B2 (en) * | 2004-02-27 | 2013-10-22 | Blackberry Limited | Method and system for synchronizing a drafts folder |
US20050246423A1 (en) * | 2004-04-30 | 2005-11-03 | Starbuck Bryan T | Maintaining multiple versions of message bodies in a common database |
US7533149B2 (en) * | 2004-04-30 | 2009-05-12 | Microsoft Corporation | Maintaining multiple versions of message bodies in a common database |
US7720865B2 (en) * | 2004-07-09 | 2010-05-18 | Fuji Xerox Co., Ltd. | Document management apparatus, document management method, and storage medium storing program |
US20060010097A1 (en) * | 2004-07-09 | 2006-01-12 | Fuji Xerox Co., Ltd. | Document management apparatus, document management method, and storage medium storing program |
US10521081B2 (en) | 2004-08-16 | 2019-12-31 | Microsoft Technology Licensing, Llc | User interface for displaying a gallery of formatting options |
US10437431B2 (en) | 2004-08-16 | 2019-10-08 | Microsoft Technology Licensing, Llc | Command user interface for displaying selectable software functionality controls |
US10635266B2 (en) | 2004-08-16 | 2020-04-28 | Microsoft Technology Licensing, Llc | User interface for displaying selectable software functionality controls that are relevant to a selected object |
US20070022166A1 (en) * | 2005-07-21 | 2007-01-25 | Bhogal Kulvir S | System, computer program product and method of keeping track of a detached e-mail attachment |
US9275371B2 (en) * | 2005-07-21 | 2016-03-01 | International Business Machines Corporation | Keeping track of a detached e-mail attachment |
US10248687B2 (en) | 2005-09-12 | 2019-04-02 | Microsoft Technology Licensing, Llc | Expanded search and find user interface |
US20070118598A1 (en) * | 2005-11-22 | 2007-05-24 | International Business Machines Corporation | Collaborative editing of a document |
US8060820B2 (en) | 2005-11-22 | 2011-11-15 | International Business Machines Corporation | Collaborative editing of a document |
US20070208815A1 (en) * | 2006-03-02 | 2007-09-06 | International Business Machines Corporation | Methods and apparatus for implementing version-based electronic mail |
US20160088075A1 (en) * | 2006-03-03 | 2016-03-24 | Linkedin Corporation | Inline media |
US10558734B2 (en) * | 2006-03-31 | 2020-02-11 | Google Llc | Collaborative workflow through messaging conversations |
US20180285323A1 (en) * | 2006-03-31 | 2018-10-04 | Google Llc | Collaborative workflow through messaging conversations |
US20070271502A1 (en) * | 2006-05-20 | 2007-11-22 | Bharat Veer Bedi | Method and system for collaborative editing of a document |
US7962853B2 (en) | 2006-05-20 | 2011-06-14 | International Business Machines Corporation | Method and system for collaborative editing of a document |
US10482637B2 (en) | 2006-06-01 | 2019-11-19 | Microsoft Technology Licensing, Llc | Modifying and formatting a chart using pictorially provided chart elements |
US8041770B1 (en) * | 2006-07-13 | 2011-10-18 | Avaya Inc. | Method of providing instant messaging functionality within an email session |
US20080140784A1 (en) * | 2006-12-11 | 2008-06-12 | International Business Machines Corporation | Multiple Originators in an Electronic Message |
US20110173548A1 (en) * | 2007-01-03 | 2011-07-14 | Madnani Rajkumar R | Mechanism for Implementing Labels and Reminders in a Email System |
US11343214B2 (en) | 2007-01-03 | 2022-05-24 | Tamiras Per Pte. Ltd., Llc | Mechanism for associating emails with filter labels |
US8024410B2 (en) | 2007-01-03 | 2011-09-20 | Madnani Rajkumar R | Mechanism for facilitating organization and accessing of emails |
US20080162651A1 (en) * | 2007-01-03 | 2008-07-03 | Madnani Rajkumar R | Mechanism for generating a composite email |
US7921176B2 (en) | 2007-01-03 | 2011-04-05 | Madnani Rajkumar R | Mechanism for generating a composite email |
US8856244B2 (en) | 2007-01-03 | 2014-10-07 | Misaki Acquisitions L.L.C. | Mechanism for implementing reminders in an electronic messaging system |
US10616159B2 (en) | 2007-01-03 | 2020-04-07 | Tamiras Per Pte. Ltd., Llc | Mechanism for associating emails with filter labels |
US8874659B2 (en) | 2007-01-03 | 2014-10-28 | Misaki Acquisitions L.L.C. | Mechanism for generating a composite email |
US20080208992A1 (en) * | 2007-01-03 | 2008-08-28 | Madnani Rajkumar R | Mechanism for discovering and recovering missing emails in an email conversation |
US20080215687A1 (en) * | 2007-01-03 | 2008-09-04 | Madnani Rajkumar R | Mechanism for facilitating organization and accessing of emails |
US11057327B2 (en) | 2007-01-03 | 2021-07-06 | Tamiras Per Pte. Ltd., Llc | Mechanism for associating emails with filter labels |
US9619783B2 (en) | 2007-01-03 | 2017-04-11 | Tamiras Per Pte. Ltd., Llc | Mechanism for associating emails with filter labels |
US9514117B2 (en) | 2007-02-28 | 2016-12-06 | Docusign, Inc. | System and method for document tagging templates |
US20080209313A1 (en) * | 2007-02-28 | 2008-08-28 | Docusign, Inc. | System and method for document tagging templates |
US10521073B2 (en) | 2007-06-29 | 2019-12-31 | Microsoft Technology Licensing, Llc | Exposing non-authoring features through document status information in an out-space user interface |
US10642927B2 (en) | 2007-06-29 | 2020-05-05 | Microsoft Technology Licensing, Llc | Transitions between user interfaces in a content editing application |
US10592073B2 (en) | 2007-06-29 | 2020-03-17 | Microsoft Technology Licensing, Llc | Exposing non-authoring features through document status information in an out-space user interface |
US9634975B2 (en) | 2007-07-18 | 2017-04-25 | Docusign, Inc. | Systems and methods for distributed electronic signature documents |
US20090024912A1 (en) * | 2007-07-18 | 2009-01-22 | Docusign, Inc. | Systems and methods for distributed electronic signature documents |
US10198418B2 (en) | 2007-07-18 | 2019-02-05 | Docusign, Inc. | Systems and methods for distributed electronic signature documents |
US8949706B2 (en) * | 2007-07-18 | 2015-02-03 | Docusign, Inc. | Systems and methods for distributed electronic signature documents |
US20090045856A1 (en) * | 2007-08-14 | 2009-02-19 | Qimonda Ag | Clock signal synchronizing device with inherent duty-cycle correction capability |
US10394941B2 (en) | 2007-11-09 | 2019-08-27 | Microsoft Technology Licensing, Llc | Collaborative authoring |
US8990150B2 (en) | 2007-11-09 | 2015-03-24 | Microsoft Technology Licensing, Llc | Collaborative authoring |
US9547635B2 (en) | 2007-11-09 | 2017-01-17 | Microsoft Technology Licensing, Llc | Collaborative authoring |
US8352418B2 (en) | 2007-11-09 | 2013-01-08 | Microsoft Corporation | Client side locking |
US20140373108A1 (en) | 2007-12-14 | 2014-12-18 | Microsoft Corporation | Collaborative authoring modes |
US8825758B2 (en) | 2007-12-14 | 2014-09-02 | Microsoft Corporation | Collaborative authoring modes |
US10057226B2 (en) | 2007-12-14 | 2018-08-21 | Microsoft Technology Licensing, Llc | Collaborative authoring modes |
US20140033067A1 (en) * | 2008-01-28 | 2014-01-30 | Adobe Systems Incorporated | Rights application within document-based conferencing |
US9965638B2 (en) * | 2008-01-28 | 2018-05-08 | Adobe Systems Incorporated | Rights application within document-based conferencing |
US8301588B2 (en) | 2008-03-07 | 2012-10-30 | Microsoft Corporation | Data storage for file updates |
US10445114B2 (en) | 2008-03-31 | 2019-10-15 | Microsoft Technology Licensing, Llc | Associating command surfaces with multiple active components |
US8352870B2 (en) | 2008-04-28 | 2013-01-08 | Microsoft Corporation | Conflict resolution |
US9760862B2 (en) | 2008-04-28 | 2017-09-12 | Microsoft Technology Licensing, Llc | Conflict resolution |
US8429753B2 (en) | 2008-05-08 | 2013-04-23 | Microsoft Corporation | Controlling access to documents using file locks |
US8825594B2 (en) | 2008-05-08 | 2014-09-02 | Microsoft Corporation | Caching infrastructure |
US20090282462A1 (en) * | 2008-05-08 | 2009-11-12 | Microsoft Corporation | Controlling Access to Documents Using File Locks |
US20090282041A1 (en) * | 2008-05-08 | 2009-11-12 | Microsoft Corporation | Caching Infrastructure |
US10997562B2 (en) | 2008-06-20 | 2021-05-04 | Microsoft Technology Licensing, Llc | Synchronized conversation-centric message list and message reading pane |
US20090327294A1 (en) * | 2008-06-25 | 2009-12-31 | Microsoft Corporation | Structured Coauthoring |
US8417666B2 (en) | 2008-06-25 | 2013-04-09 | Microsoft Corporation | Structured coauthoring |
WO2009158172A2 (en) | 2008-06-27 | 2009-12-30 | Microsoft Corporation | Exposing non-authoring features through document status information in an out-space user interface |
EP2304604A4 (en) * | 2008-06-27 | 2017-12-13 | Microsoft Technology Licensing, LLC | Exposing non-authoring features through document status information in an out-space user interface |
US9311626B2 (en) * | 2008-08-07 | 2016-04-12 | International Business Machines Corporation | Electronic mail reply with update |
US20100036917A1 (en) * | 2008-08-07 | 2010-02-11 | Mccaffrey Corey S | Electronic mail reply with update |
US20100083133A1 (en) * | 2008-09-30 | 2010-04-01 | Hiromitsu Takayama | E-mail delivery method, e-mail delivery system, and server used therefor |
US20100169269A1 (en) * | 2008-12-30 | 2010-07-01 | Karthik Chandrasekaran | Systems and methods for providing collaborative editing |
US9152644B2 (en) | 2008-12-30 | 2015-10-06 | Novell, Inc. | Systems and methods for providing collaborative editing |
US8346768B2 (en) * | 2009-04-30 | 2013-01-01 | Microsoft Corporation | Fast merge support for legacy documents |
AU2010241814B2 (en) * | 2009-04-30 | 2014-06-05 | Microsoft Technology Licensing, Llc | Fast merge support for legacy documents |
US20100281074A1 (en) * | 2009-04-30 | 2010-11-04 | Microsoft Corporation | Fast Merge Support for Legacy Documents |
US8478295B1 (en) | 2009-07-21 | 2013-07-02 | Modena Enterprises, Llc | Systems and methods for associating communication information with a geographic location-aware contact entry |
US9026131B2 (en) | 2009-07-21 | 2015-05-05 | Modena Enterprises, Llc | Systems and methods for associating contextual information and a contact entry with a communication originating from a geographic location |
US8185132B1 (en) | 2009-07-21 | 2012-05-22 | Modena Enterprises, Llc | Systems and methods for associating communication information with a geographic location-aware contact entry |
US9473886B2 (en) | 2009-07-21 | 2016-10-18 | Modena Enterprisees, LLC | Systems and methods for associating communication information with a geographic location-aware contact entry |
US9222798B2 (en) | 2009-12-22 | 2015-12-29 | Modena Enterprises, Llc | Systems and methods for identifying an activity of a user based on a chronological order of detected movements of a computing device |
US9215735B2 (en) | 2010-03-03 | 2015-12-15 | Modena Enterprises, Llc | Systems and methods for initiating communications with contacts based on a communication specification |
US9253804B2 (en) | 2010-03-03 | 2016-02-02 | Modena Enterprises, Llc | Systems and methods for enabling recipient control of communications |
US8819149B2 (en) | 2010-03-03 | 2014-08-26 | Modena Enterprises, Llc | Systems and methods for notifying a computing device of a communication addressed to a user based on an activity or presence of the user |
US9461834B2 (en) | 2010-04-22 | 2016-10-04 | Sharp Laboratories Of America, Inc. | Electronic document provision to an online meeting |
US9798710B2 (en) | 2010-05-04 | 2017-10-24 | Docusign, Inc. | Systems and methods for distributed electronic signature documents including version control |
US9251131B2 (en) * | 2010-05-04 | 2016-02-02 | Docusign, Inc. | Systems and methods for distributed electronic signature documents including version control |
US20110276875A1 (en) * | 2010-05-04 | 2011-11-10 | Docusign, Inc. | Systems and methods for distributed electronic signature documents including version control |
US11310178B2 (en) * | 2010-05-07 | 2022-04-19 | Microsoft Technology Licensing, Llc | Streamlined collaboration on document |
US8949708B2 (en) | 2010-06-11 | 2015-02-03 | Docusign, Inc. | Web-based electronically signed documents |
US10892905B2 (en) * | 2011-01-20 | 2021-01-12 | Box, Inc. | Real time notification of activities that occur in a web-based collaboration environment |
US20130007144A1 (en) * | 2011-06-30 | 2013-01-03 | International Business Machines Corporation | Email question object ownership and status tracking |
US8898234B2 (en) * | 2011-06-30 | 2014-11-25 | International Business Machines Corporation | Email question object ownership and status tracking |
US9971754B2 (en) | 2011-07-14 | 2018-05-15 | Docusign, Inc. | Method for associating third party content with online document signing |
US11263299B2 (en) | 2011-07-14 | 2022-03-01 | Docusign, Inc. | System and method for identity and reputation score based on transaction history |
USRE50043E1 (en) | 2011-07-14 | 2024-07-16 | Docusign, Inc. | Method for associating third party content with online document signing |
US10430570B2 (en) | 2011-07-14 | 2019-10-01 | Docusign, Inc. | System and method for identity and reputation score based on transaction history |
US9268758B2 (en) | 2011-07-14 | 2016-02-23 | Docusign, Inc. | Method for associating third party content with online document signing |
US9824198B2 (en) | 2011-07-14 | 2017-11-21 | Docusign, Inc. | System and method for identity and reputation score based on transaction history |
US9628462B2 (en) | 2011-07-14 | 2017-04-18 | Docusign, Inc. | Online signature identity and verification in community |
US11055387B2 (en) | 2011-07-14 | 2021-07-06 | Docusign, Inc. | System and method for identity and reputation score based on transaction history |
US11790061B2 (en) | 2011-07-14 | 2023-10-17 | Docusign, Inc. | System and method for identity and reputation score based on transaction history |
US10511732B2 (en) | 2011-08-25 | 2019-12-17 | Docusign, Inc. | Mobile solution for importing and signing third-party electronic signature documents |
US10033533B2 (en) | 2011-08-25 | 2018-07-24 | Docusign, Inc. | Mobile solution for signing and retaining third-party documents |
US20130117376A1 (en) * | 2011-11-09 | 2013-05-09 | Microsoft Corporation | Document collaboration |
US9606972B2 (en) * | 2011-11-09 | 2017-03-28 | Microsoft Technology Licensing, Llc | Document collaboration with collaboration context data |
US20130191451A1 (en) * | 2012-01-19 | 2013-07-25 | Microsoft Corporation | Presence-based Synchronization |
USRE49119E1 (en) | 2012-03-22 | 2022-06-28 | Docusign, Inc. | System and method for rules-based control of custody of electronic signature transactions |
US9893895B2 (en) | 2012-03-22 | 2018-02-13 | Docusign, Inc. | System and method for rules-based control of custody of electronic signature transactions |
US9230130B2 (en) | 2012-03-22 | 2016-01-05 | Docusign, Inc. | System and method for rules-based control of custody of electronic signature transactions |
US20140123076A1 (en) * | 2012-11-01 | 2014-05-01 | Microsoft Corporation | Navigating among edit instances of content |
US9438546B2 (en) | 2012-12-15 | 2016-09-06 | Microsoft Technology Licensing, Llc | Attachment collaboration within message environments |
US9935780B2 (en) | 2012-12-15 | 2018-04-03 | Microsoft Technology Licensing, Llc | Attachment collaboration within message environments |
US11128594B2 (en) * | 2014-08-18 | 2021-09-21 | Dropbox, Inc. | Managing drafts of electronic documents across client devices |
US10623367B2 (en) * | 2014-08-18 | 2020-04-14 | Dropbox, Inc. | Managing drafts of electronic documents across client devices |
US9479469B2 (en) | 2014-08-18 | 2016-10-25 | Dropbox, Inc. | Collaborative drafting of a message |
US20170134495A1 (en) * | 2015-04-20 | 2017-05-11 | Infraware Inc. | Method and apparatus for sharing collaboratively edited document |
CN107924391A (en) * | 2015-04-20 | 2018-04-17 | 盈发伟公司 | The method and apparatus of shared collaborative editing document |
WO2018111659A1 (en) * | 2016-12-13 | 2018-06-21 | Microsoft Technology Licensing, Llc | Document linking in an email system |
CN110073385A (en) * | 2016-12-13 | 2019-07-30 | 微软技术许可有限责任公司 | Document links in e-mail system |
US10223340B2 (en) | 2016-12-13 | 2019-03-05 | Microsoft Technology Licensing, Llc | Document linking in an email system |
US20180205772A1 (en) * | 2018-03-12 | 2018-07-19 | Vaultize Technologies Private Limited | Folder and file based collaboration using messaging |
US11012379B2 (en) * | 2019-03-20 | 2021-05-18 | Fuji Xerox Co., Ltd. | Controller and control system for chatting |
CN112654995A (en) * | 2019-04-08 | 2021-04-13 | 谷歌有限责任公司 | Tracking content attribution in online collaborative electronic documents |
US11706170B2 (en) * | 2020-04-30 | 2023-07-18 | Beijing Bytedance Network Technology Co., Ltd. | Collaborative editing method of an electronic mail, electronic device, and storage medium |
EP4099646A4 (en) * | 2020-04-30 | 2023-07-26 | Beijing Bytedance Network Technology Co., Ltd. | Method and device for information exchange, electronic device, and storage medium |
EP4131866A4 (en) * | 2020-04-30 | 2023-09-06 | Beijing Bytedance Network Technology Co., Ltd. | Information interaction method and apparatus, server, system, and storage medium |
US20220394002A1 (en) * | 2020-04-30 | 2022-12-08 | Beijing Bytedance Network Technology Co., Ltd. | Information exchange method and apparatus, electronic device, and storage medium |
US11868707B2 (en) | 2020-04-30 | 2024-01-09 | Beijing Bytedance Network Technology Co., Ltd. | Information interaction method and apparatus, server, system, and storage medium |
US12028298B2 (en) * | 2020-04-30 | 2024-07-02 | Beijing Bytedance Network Technology Co., Ltd. | System for sharing mail for group collaboration |
US20220368656A1 (en) * | 2020-04-30 | 2022-11-17 | Beijing Bytedance Network Technology Co., Ltd. | Information interaction method and apparatus, and non-transitory computer-readable storage medium |
US11777884B2 (en) | 2020-11-20 | 2023-10-03 | Microsoft Technology Licensing, Llc | Converting links and static data into collaborative user experiences |
CN112994955A (en) * | 2021-04-21 | 2021-06-18 | 恒生电子股份有限公司 | Upgrade package sending management method, incremental upgrade package preparation method and related device |
Also Published As
Publication number | Publication date |
---|---|
WO2005015432A1 (en) | 2005-02-17 |
US8606855B2 (en) | 2013-12-10 |
US20090083384A1 (en) | 2009-03-26 |
JP2007501969A (en) | 2007-02-01 |
US20050033813A1 (en) | 2005-02-10 |
US7437421B2 (en) | 2008-10-14 |
US20080250474A1 (en) | 2008-10-09 |
US20080263155A1 (en) | 2008-10-23 |
US9886428B2 (en) | 2018-02-06 |
US20140082113A1 (en) | 2014-03-20 |
US20190065450A1 (en) | 2019-02-28 |
CN1701326A (en) | 2005-11-23 |
CA2532776A1 (en) | 2005-02-17 |
US10860784B2 (en) | 2020-12-08 |
US7673006B2 (en) | 2010-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10860784B2 (en) | Collaborative email with hierarchical signature authority | |
US11321750B1 (en) | Multiple data store authentication | |
US10079789B2 (en) | Shared attachments | |
US7130885B2 (en) | Methods and apparatus providing electronic messages that are linked and aggregated | |
US20030135565A1 (en) | Electronic mail application with integrated collaborative space management | |
US6324587B1 (en) | Method, computer program product, and data structure for publishing a data object over a store and forward transport | |
JP4979193B2 (en) | Method, system and computer program for integrating events published on a server project calendar with "personal calendar and scheduling" application data of each of a plurality of clients | |
US8001186B2 (en) | Method and system for providing collaborative moderation and correction of message history in an instant messaging session | |
US20040230658A1 (en) | System and method for message downloading and initializing a collaborative work environment | |
US20060031358A1 (en) | System and method for managing mail messages | |
US20120011239A1 (en) | Methods and apparatus for automated workflow management | |
US11900049B2 (en) | Embedded meeting extensions | |
CA2875987C (en) | Systems, methods and interfaces for using a messaging program across a multiple applications and communications environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERNATIONAL BUSSINESS MACHINES CORPORATION, NEW Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BHOGAL, KULVIR SINGH;ISHMAEL, NIZAMUDEEN JR.;KAMPER, ROBERT J.;AND OTHERS;REEL/FRAME:014383/0351;SIGNING DATES FROM 20030730 TO 20030805 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |
|
AS | Assignment |
Owner name: EBAY INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTERNATIONAL BUSINESS MACHINES CORPORATION;REEL/FRAME:029536/0564 Effective date: 20120928 |
|
AS | Assignment |
Owner name: PAYPAL, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:EBAY INC.;REEL/FRAME:036159/0873 Effective date: 20150717 |