DE10000998B4 - Anmerkungsschicht zur synchronen Zusammenarbeit - Google Patents
Anmerkungsschicht zur synchronen Zusammenarbeit Download PDFInfo
- Publication number
- DE10000998B4 DE10000998B4 DE10000998A DE10000998A DE10000998B4 DE 10000998 B4 DE10000998 B4 DE 10000998B4 DE 10000998 A DE10000998 A DE 10000998A DE 10000998 A DE10000998 A DE 10000998A DE 10000998 B4 DE10000998 B4 DE 10000998B4
- Authority
- DE
- Germany
- Prior art keywords
- workspace
- annotation layer
- mode
- layer
- real
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
Abstract
Eine
vom Arbeitsbereich unabhängige
Benutzeroberfläche
für ein
System zur Echtzeit-Zusammenarbeit, implementiert auf Rechnern,
die mit einem Netzwerk verbunden sind, wobei das um die Benutzeroberfläche erweiterte
System zur Echtzeit-Zusammenarbeit weiterhin jeden Arbeitsbereich
unterstützt,
der bereits zuvor unterstützt
wurde, und wobei die Benutzeroberfläche folgendes umfaßt:
Eine im System zur Echtzeit-Zusammenarbeit gemeinsam genutzte transparente Anmerkungsschicht, wobei die Anmerkungsschicht zwischen jedem Teilnehmer und dem gemeinsam genutzten Arbeitsbereich plaziert wird und die gemeinsam genutzte Anmerkungsschicht über dem Arbeitsbereich liegt, so daß der Arbeitsbereich für jeden Teilnehmer durch die transparente Anmerkungsschicht hindurch sichtbar wird,
Ein Mittel zur Auswahl und Änderung des Betriebsmodus während einer gemeinsamen Arbeitssitzung vom Diskussionsmodus in den Bearbeitungsmodus, wobei im Diskussionsmodus nur die Anmerkungsschicht direkt bearbeitet und/oder geändert wird, während im Bearbeitungsmodus nur der Arbeitsbereich direkt bearbeitet und/oder geändert wird und die gemeinsam genutzte transparente Anmerkungsschicht im Diskussionsmodus den Teilnehmern der Echtzeit-Arbeitssitzung die Möglichkeit bietet, den Arbeitsbereich wahlweise anzuzeigen und zu...
Eine im System zur Echtzeit-Zusammenarbeit gemeinsam genutzte transparente Anmerkungsschicht, wobei die Anmerkungsschicht zwischen jedem Teilnehmer und dem gemeinsam genutzten Arbeitsbereich plaziert wird und die gemeinsam genutzte Anmerkungsschicht über dem Arbeitsbereich liegt, so daß der Arbeitsbereich für jeden Teilnehmer durch die transparente Anmerkungsschicht hindurch sichtbar wird,
Ein Mittel zur Auswahl und Änderung des Betriebsmodus während einer gemeinsamen Arbeitssitzung vom Diskussionsmodus in den Bearbeitungsmodus, wobei im Diskussionsmodus nur die Anmerkungsschicht direkt bearbeitet und/oder geändert wird, während im Bearbeitungsmodus nur der Arbeitsbereich direkt bearbeitet und/oder geändert wird und die gemeinsam genutzte transparente Anmerkungsschicht im Diskussionsmodus den Teilnehmern der Echtzeit-Arbeitssitzung die Möglichkeit bietet, den Arbeitsbereich wahlweise anzuzeigen und zu...
Description
- Bereich der Erfindung
- Die vorliegende Erfindung befaßt sich im allgemeinen mit der Zusammenarbeit durch mehrere Teilnehmer, die über ein Netzwerk miteinander verbunden sind und im besonderen mit der konsistenten Echtzeit-Zusammenarbeit, bei der jeder Datentyp von den Teilnehmern in einem gemeinsam genutzten Arbeitsbereich verwendet werden kann.
- Hintergrund der Erfindung
- Durch die Verbreitung von Internet und Intranets arbeiten immer mehr Menschen und Arbeitsteams an entfernten Standorten zusammen. Die Tools für die gemeinsame Zusammenarbeit können in asynchrone und synchrone Tools unterteilt werden. Bei Groupware, wie etwa Lotus Notes und Microsoft Exchange und Diskussionsforen in einem Netzwerk, in dem die Daten gemeinsam genutzt werden, handelt es sich um asynchrone Tools. Bei diesen Tools ist eine gleichzeitige Anwesenheit mehrerer Benutzer in der Umgebung nicht erforderlich, bzw. bringt keine weiteren Vorteile mit sich. Andererseits ermöglichen es neue Tools, wie etwa Chat, Whiteboards und weiter entwickelte Umgebungen, wie etwa SameTime, den Arbeitsgruppen eine simultane Interaktion. Diese Tools ermöglichen es Benutzern und Arbeitsteams, in einem gemeinsamen Arbeitsbereich zur gleichen Zeit synchron und in Echtzeit zu arbeiten. Änderungen im gemeinsam genutzten Arbeitsbereich werden für alle Teilnehmer umgehend sichtbar gemacht.
- Derzeit sind die synchronen Tools relativ eingeschränkt, was die Datentypen betrifft, die in dem gemeinsamen Arbeitsbereich verwendet werden können. Der Arbeitsbereich für Chat-Programme besteht aus einer gemeinsamen Textdatei, die als Konversationsprotokoll dient. Beim Arbeitsbereich für Whiteboards handelt es sich um eine gemeinsam verwendete Bitmap. Wenn eine Gruppe beispielsweise eine Tabellenkalkulation in einer Diskussion mit Hilfe eines Whiteboards einfügen möchte, muß sie die Bitmap für die Tabellenkalkulation gemeinsam verwenden und lokale Kopien der Tabellenkalkulation manuell verändern, um die Tabellenkalkulation und die Darstellung der Tabellenkalkulation in einer gemeinsamen Diskussion im Whiteboard synchron zur Verfügung zu stellen. Seit kurzem ist es möglich, Arbeitsbereiche, wie etwa Tabellenkalkulationen in Echtzeit-Zusammenarbeit direkt zu ändern, wobei die Arbeitsbereiche automatisch synchron bleiben. Diese Mechanismen jedoch sind eher arbeitsbereichspezifisch und bieten keine generelle Methode zur Diskussion in beliebigen Arbeitsbereichen für eine Echtzeit-Zusammenarbeit.
- US Patentschrift 5,761,419 beschreibt ein System von Computern, die miteinander verbunden sind. Auf einem Computer (Host) befindet sich eine Anwendung. Jeder Benutzer eines Computers kann Befehle auf der Anwendung des entfernten Host-Computers auszuführen und kann die Operationen von anderen Benutzern auf der Anwendung des Host-Computers auf seinem Bildschirm beobachten. Dies erfolgt dadurch, dass die Bildschirminhalte von der Anwendung auf alle Computer kopiert werden. Darüber hinaus kann jeder Benutzer auch Anmerkungen auf den Bildschirmen der anderen Computer machen. Dies erfolgt ebenfalls dadurch, dass die Anmerkungen auf alle Bildschirme der verbundenen Computer kopiert werden. Diese Methode ist jedoch arbeitsbereichspezifisch und bietet keine generelle Methode zur Diskussion in beliebigen Arbeitsbereichen für eine Echtzeit-Zusammenarbeit.
- Zusammenfassung der Erfindung
- Es ist deshalb Ziel der vorliegenden Erfindung, eine effektive Echtzeit-Zusammenarbeit zwischen entfernten Standorten zu bieten, in der beliebige Datentypen in einem gemeinsamen Arbeitsbereich konsistent genutzt werden können.
- Gemäß dieser Erfindung wird eine Methode für die standardisierte Anzeige, Diskussion und Expertenänderung in allen Arten von Arbeitsbereichen und in Echtzeit-Arbeitssitzungen zur Verfügung gestellt. Die Methode umfaßt eine Benutzeroberfläche auf der Grundlage einer transparenten Anmerkungsschicht, die in einem beliebigen Echtzeit-System zur Zusammenarbeit integriert werden kann. Das daraus resultierende System zur Zusammenarbeit arbeitet weiterhin mit allen Arbeitsbereichen zusammen, mit denen es bereits zuvor zusammenarbeiten konnte. Der Unterschied ist nun, daß es nun von einer transparenten Hülle umgeben ist, genannt Anmerkungsschicht, über die die Teilnehmer ihren Arbeitsbereich anzeigen können.
- Durch die Anzeige des Arbeitsbereichs über die transparente Hülle können Teilnehmer auf dieser Hülle Markierungen oder Anmerkungen für den Arbeitsbereich vornehmen. Dadurch wird der Arbeitsbereich selbst nicht verändert, da hierfür Fachkenntnisse über den Arbeitsbereich erforderlich sind. Die zulässigen Markierungen auf der Hülle können sehr umfangreich sein, in der Tat größer als die möglichen Änderungen in dem angezeigten Arbeitsbereich über der Hülle. Die Hülle beispielsweise kann das Markieren von Teilen einer Tabellen, das Schreiben einer Überschrift für eine Tabelle und das Schraffieren mehrerer Bereiche in einem gängigen Textdokument ermöglichen. Teilnehmer ohne Fachkenntnisse zu einem bestimmten Arbeitsbereich können an einer gemeinsamen Arbeitssitzung teilnehmen, indem sie einfach mit der Anmerkungsschicht arbeiten und anderen die Expertendetails zur Änderung des Arbeitsbereichs selbst überlassen.
- Je nach Wunsch der Teilnehmer kann die Anmerkungsschicht mit dem darunterliegenden Arbeitsbereich synchronisiert werden, oder die Anmerkungsschicht kann unsynchronisiert bleiben. Wenn die Anmerkungsschicht synchronisiert wird, verursacht das Verschieben der Anmerkungsschicht ein verschieben des Arbeitsbereichs, und umgekehrt. Das Erweitern des Arbeitsbereichs durch Hinzufügen von Daten erweitert ebenfalls die Anmerkungsschicht in den entsprechenden Bereichen. Eine Verringerung des Arbeitsbereichs durch Löschen von Daten verkleinert ebenfalls die Anmerkungsschicht in den entsprechenden Bereichen, usw. wenn die Anmerkungsschicht nicht synchronisiert wird, bewirkt das Verschieben des Arbeitsbereichs kein Verschieben der Anmerkungsschicht, und eine Veränderung des Arbeitsbereichs bewirkt auch keine Veränderungen der Anmerkungsschicht. Bei einer asynchronen Ausrichtung zwischen der Anmerkungsschicht und des darunterliegenden Arbeitsbereichs kann die Anmerkungsschicht als statischer Filter dienen, durch den der Arbeitsbereich ganz oder teilweise angezeigt werden kann. Teilnehmer möchten die Anmerkungsschicht beispielsweise als unbewegliche Schiene mit fester Größe anzeigen, durch die sie den Arbeitsbereich sehen, wenn sie den Arbeitsbereich verschieben.
- Jeder Teilnehmer kann sich dafür entscheiden, ob er mit der Anmerkungsschicht oder mit dem darunter liegenden Arbeitsbereich arbeiten möchte, indem er für sich einen Betriebsmodus festlegt. Im Diskussionsmodus kann ein Teilnehmer die Anmerkungsschicht markieren, gemeinsam genutzte Cursor bewegen und die Anzeige ändern, indem er sie durchblättert oder indem er zu einem anderen Bereich der Anmerkungsschicht wechselt. Je nach Wunsch des Teilnehmers kann der Arbeitsbereich durch die transparente Anmerkungsschicht hindurch sichtbar oder unsichtbar sein, abhängig vom ausgewählten Modus.
- Ein Teilnehmer kann den gemeinsam genutzten Arbeitsbereich nicht ändern, solange er sich im Diskussionsmodus befindet. Der Bearbeitungsmodus bietet dem Teilnehmer eine Möglichkeit, Änderungen am Arbeitsbereich vorzunehmen. Der Bearbeitungsmodus setzt bei dem Teilnehmer arbeitsbereichspezifische Kenntnisse voraus, d.h. der Teilnehmer muß wissen, wie die einzelnen Arbeitsbereiche bearbeitet und/oder verändert werden können. Je nach Wunsch des Teilnehmers kann die darüber liegende Anmerkungsschicht im Bearbeitungsmodus sichtbar oder unsichtbar sein. Sowohl im Bearbeitungs- als auch im Diskussionsmodus können die transparente Anmerkungsschicht und der darunter liegende Arbeitsbereich synchronisiert oder nicht synchronisiert werden. Der Modus für den Teilnehmer kann entweder vom Teilnehmer allein und/oder auch von den anderen Teilnehmern ausgewählt und/oder geändert werden. Bei denjenigen Teilnehmern mit der Berechtigung zur Steuerung, Beschränkung und Änderung anderer Teilnehmer kann es sich eine Untergruppe der Teilnehmer an einer gemeinsamen Arbeitssitzung handeln. Die Untergruppe kann während der gemeinsamen Arbeitssitzung geändert werden. Die Kontrolle über den Modus eines Teilnehmers umfaßt auch die Kontrolle über den Lese/Schreibzugriff des Teilnehmers im gemeinsamen Arbeitsbereich. Jeder Teilnehmer im Bearbeitungsmodus hat im gemeinsamen Arbeitsbereich Schreibzugriff, während die anderen Teilnehmer im Diskussionsmodus zumeist nur über Lesezugriff verfügen.
- Kurzbeschreibung der Zeichnungen
- Die vorangegangenen und anderen Ziele, Aspekte und Vorteile der Erfindung werden leichter verständlich, wenn die folgende detaillierte Beschreibung eines bevorzugten Ausführungsbeispiels der Erfindung mit Bezug auf die Zeichnungen gegeben wird.
-
1 ist eine Darstellung zweier Bildschirme zur Anzeige eines Beispiels für die Echtzeit-Zusammenarbeit, wobei zwei Clients im gleichen gemeinsam genutzten Arbeitsbereich synchronisiert werden, und wobei es sich in diesem Beispiel um eine Tabellenkalkulation handelt. -
2 ist die Darstellung einer Anmerkungsschicht entsprechend der vorliegenden Erfindung, wobei eine transparente, whiteboard-ähnliche Schicht den gemeinsam genutzten Arbeitsbereich bedeckt und darauf Anmerkungen, ein gemeinsam genutzter Cursor bewegt und andere Markierungen vorgenommen werden können. -
3A und3B sind dementsprechend Darstellungen der Anmerkungsschichten im Diskussionsmodus und im Bearbeitungsmodus während einer gemeinsamen Arbeitssitzung entsprechend der vorliegenden Erfindung. -
4 ist ein Flußdiagramm zur Darstellung der Verarbeitungslogik für Benutzereingaben in einer Implementierung der Anmerkungsschicht entsprechend der vorliegenden Erfindung. -
5 ist ein Flußdiagramm zur Darstellung der Verarbeitungslogik serialisierter Änderungen und Aktualisierungen in einer Implementierung der Anmerkungsschicht entsprechend der vorliegenden Erfindung. -
6A und6B sind dementsprechend Flußdiagramme zur Darstellung der Verarbeitungslogik für eine Modusänderung, basierend auf Benutzereingaben und die Verarbeitung einer Modusänderung basierend auf serialisierten Steuerungsänderungen in einer Implementierung der Eingabeschicht, entsprechend der vorliegenden Erfindung. -
7A und7B sind entsprechend Flußdiagramme mit der Verarbeitungslogik zur Weiterleitung von Benutzereingabesegmenten an Empfänger und Verarbeitung von Änderungen durch Benutzereingaben in einer Implementierung der Eingabeschicht entsprechend der vorliegenden Erfindung. - Detaillierte Beschreibung eines bevorzugten Ausführungsbeispiels der Erfindung
- Die Zeichnungen, und hier vor allem
1 , zeigen zwei Bildschirme auf verschiedenen Clients, auf denen synchronisierte Anwendungen Daten aus dem gemeinsam genutzten Arbeitsbereich zeigen. Der Arbeitsbereich in dem dargestellten Beispiel ist eine Tabellenkalkulation. Es erscheint auf jedem Client die gleiche Anzeige, da die Anwendungen synchronisiert wurden. D.h., daß jedesmal, wenn Daten in einer Anwendung geändert oder bearbeitet wurden, die Daten in der Anwendung des anderen Client aktualisiert werden, damit der Teilnehmer bei der Zusammenarbeit immer über die gleichen Daten verfügen. - Die Erfindung stellt einen Mechanismus für eine konsistente Echtzeit-Umgebung zur Zusammenarbeit zur Verfügung, in der jeder Datentyp im gemeinsam genutzten Arbeitsbereich verwendet werden kann. In der vorliegenden Erfindung werden Benutzer mit dem System verbunden und arbeiten in einer gemeinsamen Arbeitssitzung und in einem gemeinsamen Arbeitsbereich, der auf jedem Rechner über ein Netzwerk angezeigt wird. Bei den Daten in einem gemeinsam genutzten Arbeitsbereich kann es sich um beliebige Daten handeln, beispielsweise eine Tabellenkalkulation, eine Abbildung, eine einfache Textdatei, eine Zeichnung, ein Projektplan, eine dreidimensionale Anzeige oder andere benutzerdefinierte Daten. Der Arbeitsbereich eines jeden Teilnehmers wird mit denen der anderen synchronisiert. Dies kann entweder über Peer-to-Peer-Messaging zwischen den Clients oder über einen oder mehrere Server stattfinden.
- In den meisten Fällen zeigen alle synchronisierten Anwendungen die gleiche Anzeige an wie in
1 . Es können jedoch auch synchronisierte Anwendungen vorkommen, bei denen die Anzeigen der verschiedenen Clients syntaktische Unterschiede aufweisen, auch wenn die zugrundeliegenden Daten die gleichen sind. Das kann nützlich sein, wenn die Hardware für Clients nicht die gleiche wäre oder wenn einige Informationen auf verschiedenen Clients bewußt zurückgehalten oder hinzugefügt oder in einem anderen Format angezeigt werden sollen. - Ein Teilnehmer in einer gemeinsamen Arbeitssitzung ist jederzeit in verschiedenen Aktivitätsmodi tätig, je nach verbundenem Arbeitsbereich. In einem Modus diskutiert ein Benutzer die Daten des gemeinsam genutzten Arbeitsbereichs mit anderen Benutzern. Dieser Modus umfaßt die Anzeige verschiedener Bereiche des Arbeitsbereichs, der explizite Hinweis auf einige Teile des Arbeitsbereichs, Markieren eines Teils des Arbeitsbereichs mit Hilfe eines Stifts oder eines anderen Zeichentools oder das Schreiben von Anmerkungen auf einem bestimmten Teil des Arbeitsbereichs. wenn es sich beispielsweise um eine Tabellenkalkulation handelt, möchte der Benutzer möglicherweise einen Zelleneintrag ändern, wenn es sich um die dreidimensionale Darstellung eines Raums handelt, möchte der Benutzer möglicherweise einen Stuhl an einen anderen Platz verschieben. Der Modus zum Bearbeiten des Arbeitsbereichs ist datenspezifisch, d.h. der Arbeitsbereich wird von der jeweiligen Anwendung selbst verarbeitet. Der Modus zur Diskussion im Arbeitsbereich kann gemeinsam verarbeitet werden, unabhängig von den zugrundeliegenden Daten oder Anwendungen.
-
2 zeigt eine Anmerkungsschicht entsprechend der vorliegenden Erfindung zum Arbeiten im Diskussionsmodus in jedem synchronisierten Arbeitsbereich. Die Anmerkungsschicht erscheint als transparentes graphisches Objekt, das das gemeinsam genutzte Fenster bedeckt, das die synchronisierte Anwendung und die gemeinsamen Daten anzeigt. Im Diskussionsmodus erscheint es dem Benutzer so, als wäre die Anwendung von dieser transparenten Schicht bedeckt und alle Eingaben über die Maus, die Tastatur und andere Mittel ist davon betroffen. Die Anmerkungsschicht scheint auf jede Benutzereingabe, wie etwa über Maus oder Tastatur, die entsprechende Aktion zu generieren, wie etwa Bewegen des Cursors, Auswählen des Zeichentools, und Markieren eines Bereichs oder Plazieren eines Anmerkungstexts. Alle Anmerkungseffekte erscheinen auf der Anmerkungsschicht selbst, unabhängig von der darunterliegenden Anwendung. Um die darunterliegenden, gemeinsam genutzten Daten zu ändern, muß eine Benutzer im Bearbeitungsmodus arbeiten. In den Bearbeitungsmodus kann gewechselt werden, indem entsprechend dazu das Symbol, die Taste oder das grafische Objekt gewählt wird oder indem eine bestimmte vordefinierte Eingabe, wie etwa eine bestimmte Tastenkombination, eingegeben wird. Nach dem Wechsel in den Bearbeitungsmodus wird die Benutzereingabe direkt von der Anwendung verarbeitet. wenn es sich bei den gemeinsam genutzten Daten beispielsweise um eine Tabellenkalkulation handelt, arbeitet der Benutzer durch den Wechsel in den Bearbeitungsmodus mit der Anwendung zur Tabellenkalkulation, die sich unter der Anmerkungsschicht befunden hat. Die Anwendungen werden natürlich auf allen Clients über eine Realisation der Benutzereingaben oder mit Hilfe anderer Methoden synchronisiert, so daß bei der Bearbeitung der Daten durch einen Benutzer auf dem einen Client, die geänderten Daten auf allen Clients angezeigt werden. Die Anmerkungsschicht kann noch vorhanden sein und die von den verschiedenen Benutzern vorgenommenen Markierungen anzeigen, wobei sie sich allerdings für den Benutzer im Bearbeitungsmodus im Schlafmodus befindet. - Die Art des Moduswechsels wird in den
3A und3B dargestellt.3A zeigt den Diskussionsmodus an, in dem die Eingabe eines Benutzers beispielsweise über eine Maus31 und eine Tastatur32 aufgenommen und auf der transparenten Anmerkungsschicht33 angezeigt wird. Die darunter liegende Anwendung34 reagiert nicht auf die Cursorbewegungen und Anmerkungseingaben der verschiedenen Benutzer. Die Anmerkungsschicht33 selbst wird mit dem Arbeitsbereich darunter synchronisiert, so daß die Markierungen sich entsprechend ändern, wenn die Anwendungsanzeige bewegt oder ihre Größe verändert wird, oder wenn die innere Anzeige verschoben wird.3B zeigt den Bearbeitungsmodus, in dem die Eingaben des Benutzers über die Maus31 oder die Tastatur32 direkt in den darunterliegenden Arbeitsbereich34 eingegeben werden, um die Daten zu bearbeiten. - Die Anmerkungsschicht und ihr beschriebenes Verhalten sind einfach eine Eigenschaft der Benutzeroberfläche des Echtzeit-Arbeitsbereichs zur gemeinsamen Nutzung. Die tatsächliche Implementierung kann auf verschiedene Art erreicht werden. Bei der Anmerkungsschicht kann es sich um ein reales graphisches Objekt im Fenstersystem handeln, mit dem die Benutzer arbeiten. Wenn es sich bei allen Anwendungen beispielsweise um Java Applets handelt, kann die Anmerkungsschicht eine leichtgewichtige Komponente zur Bedeckung des Applets sein. Oder die Anmerkungsschicht kann in jede einzelne Anwendung integriert werden, wobei jede Anwendung die Diskussions- und Bearbeitungsmodi entsprechend selbst verwaltet und die Markierungen im eigenen Fenster auf die erforderliche Art generiert. Eine andere Implementierung könnte das Betriebssystem selbst oder verschiedene Implementierungskombinationen nutzen.
- Die gesamte, hier offengelegte Benutzeroberfläche kann in jedem Echtzeit-Arbeitsbereich erstellt werden. Jeder Echtzeit-Arbeitsbereich kann mit den folgenden Elementen angezeigt werden:
- 1. Ein Mittel zum Generieren einer Reihe von Front-End-Prozessen (Clients) für jede gemeinsame Echtzeit- Arbeitssitzung, unterstützt von dem System. In jeder Sitzung bieten die Clients den Teilnehmern synchronen Zugriff auf den für die Sitzung genutzten gemeinsamen Arbeitsbereich. Die Client-Prozesse können auf der nicht gemeinschaftlich genutzten Softwareanwendung für den Einzelbenutzer ausgeführt werden, die normalerweise verwendet wird, um auf den Arbeitsbereich sequentiell, isoliert und nicht gemeinschaftlich zuzugreifen. Jeder Client ist in der Lage, einen oder mehrere verschiedene Arbeitsbereiche zu unterstützen. Das System zur Echtzeit-Zusammenarbeit ist in der Lage, mehr als eine Art von Client zu generieren. Damit bilden die verschiedenen Arten von Arbeitsbereichen, die vom System zur Zusammenarbeit unterstützt werden, eine Vereinigung aller Arbeitsbereichsarten, die von den verschiedenen, vom System generierten Clients unterstützt werden.
- 2. Ein Mittel zum Generieren eines Serialisierungsmechanismus für jede Echtzeit-Arbeitssitzung, die vom System unterstützt wird. von jedem Client einer solchen gemeinsamen Arbeitssitzung nimmt der Serialisierungsmechanismus eine vom Client generierte Sequenz von Änderungen im Arbeitsbereich als Eingabe. Der Serialisierungsmechanismus stellt einen Strom aus serialisierten Änderungen im Arbeitsbereich allen Clients im Arbeitsbereich zur Verfügung, basierend auf den Sequenzen der Eingabeänderungen, die von den Clients erhalten wurden. Der serialisierte Änderungsstrom umfaßt ein Ineinandergreifen von Änderungssequenzen, die von den Clients gesendet wurden. Der Serialisierungsmechanismus kann auf einem Server, wie etwa einen zentralisierten Server, oder auf einem Peer-to-Peer-Messagingsystem basieren.
- 3. Ein Mittel zum Generieren des Kommunikationsmechanismus für jede Echtzeit-Arbeitssitzung, unterstützt durch das System. Für jede Sitzung dieser Art verfügt der Client in der Sitzung über ein Mittel zur Übermittlung einer Änderungssequenz zum Serialisierungsmechanismus der Sitzung. Der Client verfügt außerdem über ein Mittel zum Empfang serialisierter Änderungen vom Serialisierungsmechanismus.
- Jeder in Element 1 oben beschriebene Client kann die Erstellung einer Änderung durch jeden Teilnehmer unterstützen, der den Client verwendet. Die Erstellung einer Änderung kommt in einem Arbeitsbereichsstatus vor, der sich während der Erstellung der Änderung verändern kann. Dies kann aufgrund einer eingehenden serialisierten Änderung vorkommen. Der Client bietet dem Teilnehmer eine geeignete Up-to-date-Anzeige des Arbeitsbereichs auf der Basis der serialisierten Änderungen, die der Client empfangen hat. in der Änderungserstellung kann der Client dem Teilnehmer die potentiellen Auswirkungen seiner Veränderungen auf den Arbeitsbereich anzeigen, während die Änderung vorgenommen wird. Bei der Auswirkung muß es sich nicht um die Auswirkung handeln, die letztlich durch die Änderung tatsächlich eintritt, da nicht erkannte serialisierte Änderungen innerhalb des serialisierten Änderungsstroms ihr zuvorkommen können.
- Die hier offengelegte Erfindung, die Benutzeroberfläche, basiert auf einer transparenten Anmerkungsschicht. Bei der Anmerkungsschicht handelt es sich um einen bitmap- oder whiteboard-ähnlichen Arbeitsbereich, unter dem andere Arbeitsbereiche angeordnet werden können. Die Anmerkungsschicht ist transparent, so daß der Arbeitsbereich unter der whiteboard-ähnlichen Schicht ebenfalls erkennbar ist. Die Anmerkungsschicht ist whiteboard-ähnlich, da sie eine große Zahl an Markierungen unterstützt, die wie bit-by-bit oder pixel-by-pixel Markierungen wirken. Die Anmerkungsschicht ist nicht nur ein Whiteboard, da aus Effizienzgründen kein Bedarf besteht, die Kosten für einzelne Bit- oder Pixel-Einstellungen zu verursachen. Ungeachtet dessen ist es zur Erklärung der vorliegenden Erfindung einfacher und ausreichend, die Anmerkungsschicht einfach als eine Art von Whiteboard zu betrachten. Somit ist für die Anmerkungsschicht die Technologie eines Systems zur Echtzeit-Zusammenarbeit, wie sie in Whiteboard-Systemen üblich, gegeben. Diese Technologie verfügt über die Eigenschaften einer Echtzeit-Zusammenarbeit, wie im folgenden beschrieben.
- Die auf einer Anmerkungsschicht basierende Benutzeroberfläche umfaßt Komponenten, die im folgenden unter verschiedenen Überschriften beschrieben werden. Die Komponenten werden in jedem Client gestartet, der durch ein System zur Echtzeit-Zusammenarbeit generiert wurde, welches um eine auf einer Anmerkungsschicht basierenden Benutzeroberfläche erweitert wurde.
- Eine Live-Anmerkungsschicht
- Diese Beschreibung geht von einem System zur Echtzeit-Zusammenarbeit aus, wie sie in whiteboard-ähnlichen Umgebungen verwendet werden, hier ein Arbeitsbereich mit einer Anmerkungsschicht. Eine kombinierte Version eines solchen Systems zur Echtzeit-Zusammenarbeit, bei dem nur der Client-Bereich des System behalten wird, und der Serialisierungsmechanismus sowie der Kommunikationsmechanismus für den Serialisierungsmechanismus entfernt werden. Die Funktionen des Clients, eine Live-Anmerkungsschicht, die von einem solchen kombinierten System geboten werden, wird den Clients mit Hilfe der auf der Anmerkungsschicht basierenden Benutzeroberfläche zur Verfügung gestellt. Die Live-Anmerkungsschicht erhält nebeneinander zwei Eingabeströme: (a) einen Strom aus Benutzereingabesegmenten und (b) einen Strom aus serialisierten Änderungen und Aktualisierungen. Von jedem Strom verarbeitet die Anmerkungsschicht jeweils eine Einheit. Da die Ströme nebeneinander existieren, kann die Anmerkungsschicht mehrere Einheiten eines Stroms verarbeiten, während gleichzeitig eine Einheit aus dem anderen Strom verarbeitet wird. Der Benutzereingabestrom ist segmentiert. Eine Einheit des Stroms umfaßt ein Benutzereingabesegment. Ein Benutzereingabesegment besteht aus einer zusammenhängenden Serie von Eingaben, die von einem Teilnehmer an die Anmerkungsschicht gesendet wird, beispielsweise: Tastatureingabe, unterbrochen von Mauseingabe. Bei einem Benutzereingabesegment ist die Anmerkungsschicht dafür zuständig, eine Sequenz zurückzugeben, in der die Eingaben in der Anmerkungsschicht erkennbar werden. Beim Prozeß des Erstellens dieser Änderungen kann die Anmerkungsschicht die potentielle Auswirkung der Änderungen auf der Anzeige für die transparente Anmerkungsschicht anzeigen.
- Wie es bei Systemen zur Echtzeit-Zusammenarbeit üblich ist, muß die Anmerkungsschicht einen entsprechenden Up-to-date-Status des Arbeitsbereichs anzeigen, d.h. die Anmerkungsschicht mit eingefügten serialisierten Änderungen und Aktualisierungen für die Schicht. Der Strom serialisierter Änderungen und Aktualisierungen bietet entweder eine serialisierte Änderung oder eine serialisierte Aktualisierung der Anmerkungsschicht. Serialisierte Änderungen stellen serialisierte Eingaben dar, die auf der Anmerkungsschicht durch Teilnehmer der Echtzeit-Zusammenarbeit weitergeleitet werden.
- Serialisierte Aktualisierungen geben die Auswirkung auf die Anmerkungsschicht durch die serialisierte Eingabe wieder, die an den Arbeitsbereich der Echtzeit-Arbeitssitzung, d.h. den Arbeitsbereich unter der transparenten Anmerkungsschicht, weitergeleitet wird. Es wird zu keiner Zeit eine der folgenden Handlungen durchgeführt: (a) Weiterleiten einer serialisierten Änderung an die Anmerkungsschicht, (b) Weiterleiten einer serialisierten Änderung zum Arbeitsbereich der Echtzeit-Arbeitssitzung. Die Verarbeitung einer Änderung für eine Schicht (Anmerkungsschicht oder Arbeitsbereichsschicht) kann eine Aktualisierung der anderen Schicht hervorrufen, die der jeweils anderen Schicht sofort angezeigt wird, beispielsweise durch Plazieren an vorderer Stelle des Stroms an serialisierten Änderungen und Aktualisierungen für die Schicht. Erst wenn die Änderung und jede davon betroffene Aktualisierung vollständig verarbeitet wurden, wird die nächste serialisierte Änderung zur Verarbeitung freigegeben. Wenn somit die Anmerkungsschicht eine serialisierte Änderung zur Verarbeitung erhält, kann sie eine serialisierte Aktualisierung für die Arbeitsbereichsschicht erstellen. Sie wartet bis zur vollständigen Verarbeitung der serialisierten Änderung und auf eine Bestätigung der abgeschlossenen Verarbeitung der Aktualisierung, bevor bestätigt wird, daß die Verarbeitung der serialisierten Änderung abgeschlossen ist.
- Eine serialisierte Änderung in der Anmerkungsschicht ist nur zulässig, um Aktualisierungen aufzunehmen, die Änderungen an der Anzeige umfassen, wie etwa das verschieben oder Ändern der Größe der Arbeitsbereichsschicht. Somit wird durch das Löschen eines Teils der Anmerkungsschicht der entsprechende Teil des Arbeitsbereichs nicht mitgelöscht. Diese Einschränkung bindet die Zusammenarbeit in der Anmerkungsschicht an eine wünschenswerte Nur-Lesen-Zusammenarbeit, soweit es den Arbeitsbereich betrifft. Die Entwicklung geht zu einer Lockerung der Einschränkung, auch wenn dies nicht wünschenswert ist. Aktualisierungen der Arbeitsbereichsschicht können vorgenommen werden, indem die Bitmap oder eine andere Abbildung der Anzeige des Arbeitsbereichs mit einer Bitmap oder einer anderen Abbildung der Anmerkungsschicht vor und nach der serialisierten Änderung verglichen wird. Der Vergleich kann zur Generierung von Befehlen führen, die Aktualisierung umfassen, mit der der Arbeitsbereich und die Anmerkungsschicht aufeinander abgestimmt werden.
-
4 zeigt die Verarbeitungslogik für Benutzereingaben in der Anmerkungsschicht. Der Prozeß für den Arbeitsbereich ist ähnlich. Der Prozeß beginnt bei Funktionsblock401 , der auf den Start eines neuen Segments wartet. Wenn ein neues Segment startet, wird eine Segmenteingabe in der Reihenfolge empfangen, in der sie in Funktionsblock402 erfolgt. Dann wird ein Test in Entscheidungsblock403 durchgeführt, um festzustellen, ob das Segment beendet wurde. Wenn dies der Fall ist, wird die Eingabe verarbeitet, während ihre potentiellen Auswirkungen auf der Anzeige der Anmerkungsschicht in Funktionsblock404 angezeigt wird. Änderungen werden erstellt und an die Eingabeschicht weitergeleitet, bevor der Prozeß zum Funktionsblock401 zurückkehrt, um dort auf ein weiteres Segment zum Start zu warten. wenn das Segment nicht beendet ist, wie in Entscheidungsblock403 festgestellt, wird die potentielle Auswirkung in der Anzeige der Anmerkungsschicht in Funktionsblock405 gezeigt. Geordnete Änderungen für die Eingabe werden erstellt, und dann werden die Änderungen zur Eingabeschicht in Funktionsblock406 weitergeleitet. Der Prozeß kehrt dann zum Funktionsblock402 zurück, um mehr Eingaben für das Segment zu erhalten. - Der in
4 gezeigte Prozeß tritt gleichzeitig mit dem Prozeß aus5 auf, die die Verarbeitung serialisierter Änderungen und Aktualisierungen in der Anmerkungsschicht zeigt. Der Prozeß ähnelt dem für die Arbeitsbereichsschicht. Der Prozeß beginnt in Funktionsblock501 , der auf eine verfügbare serialisierte Änderung oder Aktualisierung wartet. wenn diese verfügbar ist, wird die Einheit, worum es sich auch immer handeln mag (Aktualisierung oder Änderung) empfangen. Dann wird die Einheit in Funktionsblock502 verarbeitet. Diese Verarbeitung umfaßt die Aktualisierung der Anzeige der Anmerkungsschicht im Client. In Entscheidungsblock503 wird ein Test vorgenommen, um zu bestimmen, ob es sich bei der Einheit um eine Änderung handelt. wenn dies nicht der Fall ist, wird eine Bestätigung zur Aktualisierung an Funktionsblock504 geleitet, und der Prozeß kehrt zu Funktionsblock501 zurück, wo er auf eine verfügbare serialisierte Änderung oder Aktualisierung wartet. wenn es sich bei der Einheit um eine Änderung handelt, wie in Entscheidungsblock503 festgestellt, wird ein weiterer Test in Entscheidungsblock505 durchgeführt, um zu bestimmen, ob eine Aktualisierung erforderlich ist. Wenn dies nicht der Fall ist, wird eine Bestätigung für die Änderung in Funktionsblock506 ausgegeben, und der Prozeß kehrt zu Funktionsblock501 zurück, um auf eine weitere verfügbare serialisierte Aktualisierung oder Änderung zu warten. Wenn eine erforderliche Aktualisierung in Entscheidungsblock505 festgestellt wurde, wird die Aktualisierung in Funktionsblock507 basierend auf einem Vergleich von Anzeigeabbildungen für die Anmerkungsschicht und des gemeinsam genutzten Arbeitsbereichs vor und nach der Änderung erstellt. Die Aktualisierung wird in Funktionsblock508 an den Arbeitsbereich gegeben, und dann wartet der Prozeß auf eine Bestätigung der vollständigen Verarbeitung der Aktualisierung durch die Arbeitsbereichsschicht in Funktionsblock509 . Wenn die Bestätigung empfangen wurde, wird eine weitere Bestätigung für die Änderung in Funktionsblock506 ausgegeben, und der Prozeß kehrt zu Funktionsblock501 zurück und wartet auf weitere verfügbare serialisierte Aktualisierungen und Änderungen. - Eine Live-Arbeitsbereichsschicht
- Eine Arbeitsbereichsschicht existiert neben und analog zur Anmerkungsschicht. Siehe
4 und5 . Die Arbeitsbereichsschicht erhält Eingaben auf eine ähnliche Art wie die Anmerkungsschicht und reagiert auf eine ähnliche Art darauf. Der große Unterschied zwischen der Arbeitsbereichsschicht und der Anmerkungsschicht ist, daß die Arbeitsbereichsschicht in der Lage ist, Aktualisierungen für die Anmerkungsschicht zu erstellen, Teile der Anmerkungsschicht löschen zu oder zu kopieren, neben der einfachen Änderung der Anzeige der Anmerkungsschicht. Es besteht keine Nur-Lesen-Bindung für die Zusammenarbeit im Arbeitsbereich hinsichtlich der Anmerkungsschicht. - Eine Eingabeschicht
- Eine Eingabeschicht existiert neben anderen Schichten, nimmt Benutzereingaben auf und segmentiert diese. Alle Eingaben (Tastatur, Maus und andere Eingabegeräte, wie etwa ein Stift) für jeden Client wird zunächst von dieser Schicht im Client aufgenommen. Jeder Client verfügt jederzeit über einen bestimmten Modus für diese Schicht. Der Modus des Clients beschreibt den Empfang der Benutzereingabe, also die Anmerkungsschicht, die Arbeitsbereichsschicht und die Eingabeschicht selbst. Der Modus des Clients kann durch die Benutzereingabe verändert werden, wobei die Eingabe durch den veränderten Modus identifiziert wird. Der Modus kann unabhängig und gleichzeitig durch die vom Client empfangenen serialisierten Änderungen geändert werden. Die Benutzereingabe wird von der Eingabeschicht segmentiert, so daß jedes Segment einen möglichst langen Abschnitt an zusammenhängenden Benutzereingaben umfaßt, während deren Eingabe der Modus sich nicht geändert hat. Jedes Eingabesegment wird dem entsprechenden Empfänger zur Verfügung gestellt, während es gerade erstellt wird. Somit wird die an die Anmerkungsschicht geleitete Eingabe umgehend für die Anmerkungsschicht verfügbar gemacht. Der Modus hierfür ist der Diskussionsmodus.
- Im Bearbeitungsmodus wird die Eingabe an die Arbeitsbereichsschicht geleitet. Die Eingabeschicht verfügt über eine Anzeigeleiste, die den Status der gemeinsamen Arbeitssitzung, einschließlich der Modi der einzelnen Clients anzeigt. Die Anzeigeleiste zeigt ebenfalls Bedienelemente (Symbole, Tasten usw.) und Menüs für die Steuerung von Modus und Zusammenarbeit. Durch Klicken auf Steueroptionen kann der Modus in einen Steuermodus geändert werden, der neben der Steuerung des Modus für den Client auch den Modus für andere Clients steuern kann. Die Änderung eines Modus kann ebenfalls durch andere Kombinationen von Benutzereingaben erreicht werden, wie etwa die Tastatureingabe. Nicht alle Steuer- und Modusoptionen stehen einem Teilnehmer zur gleichen Zeit zur Verfügung, da andere Teilnehmer ebenfalls Entscheidung treffen (weitergeleitet an den Client eines Teilnehmers über serialisierte Steuerungsänderungen).
- Der Prozeß zum Ändern des Modus auf der Grundlage von Benutzereingaben wird in
6A gezeigt. Der Prozeß beginnt in Funktionsblock601 , wo die Benutzereingabe empfangen wurde. Es wird ein Test in Entscheidungsblock602 ausgeführt, um festzustellen, ob im Änderungsmodus Eingaben vorgenommen wurden. Wenn dies nicht der Fall ist, kehrt der Prozeß zum Funktionsblock601 zurück, um auf die nächste Benutzereingabe zu warten. Wenn die Benutzereingabe eine Änderung des Modus verlangt, wie in Entscheidungsblock602 festgestellt, wird der Modus, falls dies möglich ist, in Funktionsblock603 geändert, und der Prozeß kehrt zu Funktionsblock601 zurück und wartet auf die nächste Benutzereingabe. - Die Eingabeschicht empfängt ebenfalls als Eingabe serialisierte Änderungen für den Modus und die Steuerung der Zusammenarbeit. Die Eingabeschicht empfängt und verarbeitet die Steuerungsänderungen neben der Verwaltung der Benutzereingaben (siehe
6A ). Der Prozeß wird in6B dargestellt. Der Prozeß beginnt bei Funktionsblock604 , wo eine serialisierte Steuerungsänderung empfangen wird. Es wird dann in Entscheidungsblock605 ein Test vorgenommen, um zu bestimmen, ob die Änderung eine Modusänderung ist. Wenn dies nicht der Fall ist, kehrt der Prozeß zu Funktionsblock604 und erwartet die nächste serialisierte Steuerungsänderung. wenn der Test in Entscheidungsblock605 ergibt, daß die Änderung eine Modusänderung ist, wird der Modus, falls machbar, in Funktionsblock606 geändert, und der Prozeß kehrt zu Funktionsblock604 zurück, um auf die nächste serialisierte Steuerungsänderung zu warten. Die Ausführbarkeit einer Modusänderung in den Prozessen der6A und6B hängt davon ab, ob die Modusänderung zuvor durch Steuerungsänderungen deaktiviert wurde oder nicht. - Die Steuerungsänderungen können die verfügbaren Optionen auf der Anzeigeleiste der Eingabeschicht ändern. Die Steuerungsänderungen können die für jeden Client verfügbaren Modi ändern und/oder einschränken. Die Zuständigkeit zur Erstellung und Versendung solcher Steuerungsänderungen kann an eine Untergruppe von Teilnehmern der Zusammenarbeit übergeben werden. Steuerungsänderungen umfassen auch Änderungen, die die Untergruppe der Teilnehmer mit einer solchen Zuständigkeit betrifft. Für jedes Segment einer Benutzereingabe empfängt die Eingabeschicht eine Sequenz an Änderungen von der Empfängerschicht der Eingabe. Die Eingabeschicht markiert die Änderungen durch ihren jeweiligen Modus (beispielsweise Änderungen an der Anmerkungsschicht durch Diskussionen, Änderungen an der Eingabeschicht durch Steuerung) und sendet die Änderungen in der Sequenzreihenfolge über ein Kommunikationsmittel an den Serialisierungsmechanismus für die gemeinsame Arbeitssitzung. Das Kommunikationsmittel und der Serialisierungsmechanismus können eine Adaption sein, die durch den nicht erweiterten (durch die anmerkungsschichtbasierte Benutzeroberfläche) Teil des erweiterten Systems zur Echtzeit-Zusammenarbeit generiert wird, oder sie können separat in dem erweiterten System zur Echtzeit-Zusammenarbeit zur Verfügung gestellt werden. Der Eingabeschicht-Prozeß zur Weiterleitung von Benutzereingabesegmenten an seine Empfänger wird in
7A gezeigt, und der Verarbeitungsprozeß der Eingabeschicht entsprechend der Benutzereingabe wird in7B gezeigt. Die beiden Prozesse7A und7B existieren nebeneinander und neben den beiden Prozessen aus den6A und6B . - In
7A beginnt der Prozeß durch Erhalt der Benutzereingabe in Funktionsblock701 . Es wird in Entscheidungsblock702 ein Test ausgeführt, um zu bestimmen, ob ein neues Segment gestartet wurde. Wenn dies nicht der Fall ist, wird die Benutzereingabe an den Empfänger weitergeleitet, je nach Modus für die Eingabe im Funktionsblock703 , und der Prozeß kehrt zu Funktionsblock701 zurück, um auf die nächste Benutzereingabe zu warten. wenn ein neues Segment gestartet wurde, wie durch den Test im Entscheidungsblock702 festgestellt, wartet der Prozeß auf den Empfang aller Änderungen für das letzte Segment in Funktionsblock704 , bevor die Eingabe an den Empfänger in Funktionsblock703 weitergegeben wird. - Der Prozeß in
7B beginnt in Funktionsblock705 , wo die durch einen der Empfänger von Benutzereingaben generierte Änderung empfangen wird. Die Änderung wird mit ihrem verknüpften Modus markiert und an den Serialisierungsmechanismus in Funktionsblock706 geleitet. - Dann wird ein Test in Entscheidungsblock
707 ausgeführt, um zu bestimmen, ob alle Änderungen für das aktuelle Segment empfangen wurden. Wenn dies nicht der Fall ist, kehrt der Prozeß zu Funktionsblock705 zurück, um die Verarbeitung des aktuellen Segments fortzusetzen, andernfalls wird eine Mitteilung über den Erhalt aller Segmentänderungen in Funktionsblock708 erstellt, bevor der Prozeß zu Funktionsblock705 zurückkehrt. - Ein Back-End
- Das Back-End empfängt serialisierte, durch den Modus markierte Änderungen vom Serialisierungsmechanismus und leitet diese in der Reihenfolge ihres Empfangs an die entsprechende Schicht im Client weiter (durch den Markierungsmodus). Das Back-End leitet eine serialisierte Änderung nur an eine Schicht weiter, wenn es eine Bestätigung darüber erhält, daß die dieser Änderung vorangegangene serialisierte Änderung vollständig durchgeführt wurde.
- Die auf der Anmerkungsschicht basierende Benutzeroberfläche kann wie folgt in jedem System zur Echtzeit-Zusammenarbeit erstellt werden. Die Anmerkungsschicht kann auf normaler Whiteboard-Technologie basieren, wobei eine Angleichung zur Transparenz und für die oben beschriebenen Prozesse vorgenommen wird. Die Arbeitsbereichsschicht kann einfach auf einer Verbindung zum Clientmechanismus des erweiterten Systems zur Echtzeit-Zusammenarbeit beruhen. Die Eingabeschicht und das Back-End können auf der Unterstützung für Kommunikationsmittel und Serialisierungsmechanismen beruhen, die im nicht erweiterten System zur Echtzeit- Zusammenarbeit gegeben werden. Andernfalls kann die übliche verfügbare Technologie für eine solche Unterstützung verwendet werden. Die für die Anmerkungsschicht, Arbeitsbereichsschicht, Eingabeschicht und Back-End spezifischen Prozesse, wie oben beschrieben, können entweder einzeln für eine bestimmte Erweiterung eines System zur Echtzeit-Zusammenarbeit implementiert werden, oder sie können beispielsweise als Softwarebibliothek verfügbar gemacht werden, die wiederholt zur Erweiterung mehrerer Systeme zur Echtzeit-Zusammenarbeit genutzt werden kann. Die auf einer Anmerkungsschicht basierende Benutzeroberfläche entsprechend der vorliegenden Erfindung bietet die standardisierte Anzeige, Diskussion, Markierung und Expertenänderungen für alle Arten von Arbeitsbereichen in Echtzeit-Zusammenarbeit, ohne daß die Arbeitsbereiche beeinflußt werden, die das System unterstützen kann. Die Benutzeroberfläche umfaßt eine transparente Hülle, eine Anmerkungsschicht, über die die Teilnehmer ihren Arbeitsbereich anzeigen können. Teilnehmer können den Arbeitsbereich markieren, indem sie die Hülle markieren, ohne daß der Arbeitsbereich selbst geändert wird. Eine Änderung des Arbeitsbereiches selbst setzt bei dem Teilnehmer ein gewisses Fachwissen voraus, so daß die Teilnehmer den Arbeitsbereich so nicht ohne weiteres ändern können. Die auf der Hülle zulässigen Markierungen können umfangreicher sein als das, was in dem Arbeitsbereich selbst möglich ist. Die Anmerkungsschicht kann mit dem darunter liegenden Arbeitsbereich synchronisiert werden oder nicht. Durch Verschieben eines synchronisierten Arbeitsbereichs wird ebenfalls die Anmerkungsschicht verschoben und umgekehrt, usw. Jeder Teilnehmer kann mit der Anmerkungsschicht oder dem Arbeitsbereich arbeiten, je nach Auswahl des Arbeitsmodus. Die Auswahl kann vom Teilnehmer allein oder in Abhängigkeit von den anderen Teilnehmern getroffen werden. Die Steuerung eines Arbeitsmodus für einen Teilnehmer bedeutet auch die Steuerung der Lese-/Schreib-Berechtigungen für den Arbeitsbereich. Die Autorität zur Steuerung der Arbeitsmodi anderer Teilnehmer kann während der Arbeitssitzung geändert werden.
- Während die Erfindung unter Bezugnahme eines einzelnen bevorzugten Ausführungsbeispiels beschrieben wurde, dürfte den Fachleuten klar sein, daß die Erfindung auch mit Änderungen im Sinne der angehängten Ansprüche ausgeführt werden kann.
Claims (24)
- Eine vom Arbeitsbereich unabhängige Benutzeroberfläche für ein System zur Echtzeit-Zusammenarbeit, implementiert auf Rechnern, die mit einem Netzwerk verbunden sind, wobei das um die Benutzeroberfläche erweiterte System zur Echtzeit-Zusammenarbeit weiterhin jeden Arbeitsbereich unterstützt, der bereits zuvor unterstützt wurde, und wobei die Benutzeroberfläche folgendes umfaßt: Eine im System zur Echtzeit-Zusammenarbeit gemeinsam genutzte transparente Anmerkungsschicht, wobei die Anmerkungsschicht zwischen jedem Teilnehmer und dem gemeinsam genutzten Arbeitsbereich plaziert wird und die gemeinsam genutzte Anmerkungsschicht über dem Arbeitsbereich liegt, so daß der Arbeitsbereich für jeden Teilnehmer durch die transparente Anmerkungsschicht hindurch sichtbar wird, Ein Mittel zur Auswahl und Änderung des Betriebsmodus während einer gemeinsamen Arbeitssitzung vom Diskussionsmodus in den Bearbeitungsmodus, wobei im Diskussionsmodus nur die Anmerkungsschicht direkt bearbeitet und/oder geändert wird, während im Bearbeitungsmodus nur der Arbeitsbereich direkt bearbeitet und/oder geändert wird und die gemeinsam genutzte transparente Anmerkungsschicht im Diskussionsmodus den Teilnehmern der Echtzeit-Arbeitssitzung die Möglichkeit bietet, den Arbeitsbereich wahlweise anzuzeigen und zu diskutieren, einschließlich dem Markieren der gemeinsam genutzten transparenten Anmerkungsschicht auf verschiedene Arten, ohne den Arbeitsbereich zu ändern und ohne daß die Markierungen auf jene Markierungen beschränkt werden, die vom Arbeitsbereich unterstützt werden, und ein Mittel zur Unterstützung der Synchronisation zwischen jedem Arbeitsbereich und der transparenten Anmerkungsschicht über dem Arbeitsbereich, wobei für jeden Arbeitsbereich bei der Synchronisierung von Arbeitsbereich und Anmerkungsschicht ein Verschieben des Arbeitsbereichs auch ein Verschieben der transparenten Anmerkungsschicht bewirkt und umgekehrt, und ein Erweitern des Arbeitsbereichs durch Hinzufügen von Daten ein Erweitern der entsprechenden Bereiche auf der Anmerkungsschicht verursacht, ein Verringern des Arbeitsbereichs durch Löschen von Daten ebenfalls eine Verringerung der transparenten Anmerkungsschicht durch Kürzen des entsprechenden Bereichs auslöst.
- Die Benutzeroberfläche nach Anspruch 1, wobei die Benutzeroberfläche standardisiertes Anzeigen, Diskussionen, Markieren und Expertenänderungen in jedem beliebigen Arbeitsbereich zur Echtzeit-Zusammenarbeit bietet, wobei ein Teilnehmer auf einfache Weise eine gemeinsame Arbeitssitzung leiten und/oder an ihr teilnehmen kann, ohne dafür über Expertenwissen verfügen zu müssen, um einen gemeinsam genutzten Arbeitsbereich zu bearbeiten und/oder zu ändern, während einem Teilnehmer mit Expertenwissen die Möglichkeit geboten wird, den sitzungsspezifischen Arbeitsbereich selbst zu bearbeiten und/oder zu ändern.
- Die Benutzeroberfläche nach Anspruch 2, wobei die Synchronisation zwischen einem Arbeitsbereich und der sie bedeckenden Anmerkungsschicht auf einem Vergleich von Abbildungen des Arbeitsbereichs und transparenten Anmerkungsschicht beruht.
- Die Benutzeroberfläche nach Anspruch 1, weiterhin folgendes umfassend: Ein Mittel zur Unterstützung einer asynchronen Abstimmung zwischen jedem Arbeitsbereich und der den Arbeitsbereich bedeckenden Anmerkungsschicht, wobei in jedem Arbeitsbereich mit unsynchronisiertem Arbeitsbereich und Anmerkungsschicht ein Verschieben des Arbeitsbereichs kein Verschieben der Anmerkungsschicht und ein Verschieben der Anmerkungsschicht kein Verschieben des Arbeitsbereich mit sich bringt, und eine Änderung im Arbeitsbereich keine dementsprechenden Änderungen in der Anmerkungsschicht verursacht.
- Die Benutzeroberfläche nach Anspruch 4, wobei die asynchrone Ausrichtung zwischen einem Arbeitsbereich und der sie bedeckenden Anmerkungsschicht der transparenten Anmerkungsschicht ermöglicht, als statischer Filter zu fungieren, durch den der gesamte Arbeitsbereich oder ein Teil von ihm angezeigt werden kann.
- Die Benutzeroberfläche nach Anspruch 1, wobei im Diskussionsmodus der unter der Anmerkungsschicht liegende Arbeitsbereich optional sichtbar bleiben kann, und wobei im Bearbeitungsmodus die über dem Arbeitsbereich liegende transparente Anmerkungsschicht optional sichtbar bleiben kann.
- Die Benutzeroberfläche nach Anspruch 1, wobei das Mittel zur Auswahl und Änderung des Modus die Angaben zur Auswahl und Änderung von jedem Teilnehmer unterstützt.
- Die Benutzeroberfläche nach Anspruch 1, wobei das Mittel zur Auswahl und Änderung des Modus die Steuerung des Modus einiger Teilnehmer durch andere Teilnehmer unterstützt.
- Die Benutzeroberfläche nach Anspruch 8, wobei das Mittel zur Auswahl und Änderung des Modus den Teilnehmern ermöglicht, den Modus zu ändern und eine Reihe von Modi, die den anderen Teilnehmern zur Verfügung stehen, zu beschränken.
- Die Benutzeroberfläche nach Anspruch 1, wobei das Mittel zur Auswahl und Änderung des Modus die Änderung einer Reihe von anderen Teilnehmern unterstützt, die über eine Berechtigung zur Steuerung des Modus anderer Teilnehmer verfügen.
- Die Benutzeroberfläche nach Anspruch 1, wobei die Steuerung des Modus eines Teilnehmers die Lese/Schreib-Berechtigungen der Teilnehmer steuert, wobei jeder Teilnehmer im Bearbeitungsmodus in den Arbeitsbereich schreiben kann, während Teilnehmer, die auf den Diskussionsmodus beschränkt wurden, nur Lesezugriff für den Arbeitsbereich haben.
- Die Benutzeroberfläche nach Anspruch 1, wobei die transparente Anmerkungsschicht auf einem Clientbereich eines Systems mit Echtzeit-Zusammenarbeit für whiteboard-ähnliche Bereiche basiert.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit, das auf Rechnern implementiert ist, die über ein Netzwerk miteinander verbunden sind, folgendes umfassend: Eine gemeinsam genutzte transparente Anmerkungsschicht, erstellt in dem System zur Echtzeit-Zusammenarbeit, wobei die gemeinsam genutzte transparente Anmerkungsschicht zwischen den einzelnen Teilnehmern und einem gemeinsam genutzten Arbeitsbereich plaziert wird, die gemeinsam genutzte transparente Anmerkungsschicht den Arbeitsbereich bedeckt, so daß jeder Teilnehmer den Arbeitsbereich durch die transparente gemeinsam genutzte Anmerkungsschicht hindurch anzeigen kann, das System zur Echtzeit-Zusammenarbeit wird um die Benutzeroberfläche erweitert und unterstützt weiterhin jeden Arbeitsbereich, der zuvor bereits unterstützt werden konnte; die gemeinsam genutzte transparente Anmerkungsschicht bietet weiterhin jedem Teilnehmer in der gemeinsamen Arbeitssitzung die Möglichkeit, den Arbeitsbereich entweder anzuzeigen oder in ihm zu diskutieren, einschließlich Markieren der gemeinsam genutzten transparenten Anmerkungsschicht auf verschiedene Arten, ohne tatsächlich den Arbeitsbereich selbst zu ändern, einen Schritt zum Anbieten einer Option zur Auswahl und Änderung eines Betriebsmodus während einer gemeinsamen Arbeitssitzung zwischen einem Diskussionsmodus und einem Bearbeitungsmodus, wobei im Diskussionsmodus nur die Anmerkungsschicht direkt bearbeitet und/oder geändert wird, während im Bearbeitungsmodus der Arbeitsbereich direkt bearbeitet und/oder geändert wird, und einen Schritt zur Unterstützung der Synchronisation zwischen jedem Arbeitsbereich und der transparenten Anmerkungsschicht auf dem Arbeitsbereich, wobei für jeden Arbeitsbereich bei der Synchronisierung von Arbeitsbereich und Anmerkungsschicht ein Verschieben des Arbeitsbereichs auch ein Verschieben der transparenten Anmerkungsschicht bewirkt und umgekehrt, und ein Erweitern des Arbeitsbereichs durch Hinzufügen von Daten ein Erweitern der entsprechenden Bereiche auf der Anmerkungsschicht verursacht, ein Verringern des Arbeitsbereichs durch Löschen von Daten ebenfalls eine Verringerung der transparenten Anmerkungsschicht durch Kürzen der entsprechenden Bereiche auslöst.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, bei der die Benutzeroberfläche standardisiertes Anzeigen, Diskussionen, Markieren und Expertenänderungen in jedem beliebigen Arbeitsbereich zur Echtzeit-Zusammenarbeit bietet, wobei ein Teilnehmer auf einfache Weise eine gemeinsame Arbeitssitzung leiten und/oder an ihr teilnehmen kann, ohne dafür über Expertenwissen verfügen zu müssen, um einen gemeinsam genutzten Arbeitsbereich zu bearbeiten und/oder zu ändern, während einem Teilnehmer mit Expertenwissen die Möglichkeit geboten wird, den sitzungsspezifischen gemeinsam genutzten Arbeitsbereich selbst zu bearbeiten und/oder zu ändern.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei der Schritt zum Anbieten einer Option zur Auswahl und Änderung des Modus für alle Teilnehmer die Angabe der Auswahl und Änderung durch die Teilnehmer umfaßt.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei der Schritt zum Anbieten einer Option zur Auswahl und Änderung des Modus für alle Teilnehmer die Steuerung des Modus einiger Teilnehmer durch andere Teilnehmer unterstützt.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 16, wobei der Schritt zum Anbieten einer Option zur Auswahl und Änderung des Modus für alle Teilnehmer es den Teilnehmern ermöglicht, den Modus zu ändern und mehrere, den anderen Teilnehmern verfügbarer Modi einzuschränken.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei der Schritt zum Anbieten einer Option zur Auswahl und Änderung des Modus für alle Teilnehmer die Änderung einer Reihe von Teilnehmern mit Autorisierung zur Steuerung des Modus anderer Teilnehmer beinhaltet.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 18, wobei die Steuerung des Modus eines Teilnehmers die Lese/Schreib-Berechtigung des Teilnehmers steuert, so daß jeder Teilnehmer im Bearbeitungsmodus in den Arbeitsbereich schreiben kann, während ein Teilnehmer, der auf den Diskussionsmodus beschränkt ist, nur Lesezugriff für den Arbeitsbereich hat.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei im Diskussionsmodus der unter der gemeinsam genutzten transparenten Anmerkungsschicht befindliche Arbeitsbereich optional sichtbar bleibt und wobei im Bearbeitungsmodus die transparente Anmerkungsschicht über dem Arbeitsbereich optional sichtbar bleibt.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei die Synchronisation zwischen einem Arbeitsbereich und der ihn bedeckenden Anmerkungsschicht auf einem Vergleich von Abbildungen des Arbeitsbereichs und der transparenten Anmerkungsschicht beruht.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, weiterhin folgendes umfassend: Einen Schritt zur Unterstützung einer asynchronen Abstimmung zwischen jedem Arbeitsbereich und der den Arbeitsbereich bedeckenden Anmerkungsschicht, wobei in jedem Arbeitsbereich mit unsynchronisiertem Arbeitsbereich und Anmerkungsschicht ein Verschieben des Arbeitsbereichs kein Verschieben der Anmerkungsschicht und ein Verschieben der Anmerkungsschicht kein Verschieben des Arbeitsbereichs mit sich bringt, und eine Änderung im Arbeitsbereich keine dementsprechenden Änderungen in der Anmerkungsschicht verursacht.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 22, wobei die asynchrone Ausrichtung zwischen einem Arbeitsbereich und der ihn bedeckenden transparenten Anmerkungsschicht der transparenten Anmerkungsschicht ermöglicht, als statischer Filter zu fungieren, durch den der gesamte Arbeitsbereich oder ein Teil von ihm angezeigt werden kann.
- Eine Methode zum Erweitern eines Systems zur Echtzeit-Zusammenarbeit nach Anspruch 13, wobei die transparente Anmerkungsschicht auf einem Clientbereich eines Systems mit Echtzeit-Zusammenarbeit für whiteboard-ähnliche Arbeitsbereiche basiert.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/243,084 US6342906B1 (en) | 1999-02-02 | 1999-02-02 | Annotation layer for synchronous collaboration |
US09/243,084 | 1999-02-02 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10000998A1 DE10000998A1 (de) | 2000-08-17 |
DE10000998B4 true DE10000998B4 (de) | 2006-04-27 |
Family
ID=22917306
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10000998A Expired - Lifetime DE10000998B4 (de) | 1999-02-02 | 2000-01-13 | Anmerkungsschicht zur synchronen Zusammenarbeit |
Country Status (3)
Country | Link |
---|---|
US (1) | US6342906B1 (de) |
KR (1) | KR100375808B1 (de) |
DE (1) | DE10000998B4 (de) |
Families Citing this family (251)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6911987B1 (en) * | 1995-07-05 | 2005-06-28 | Microsoft Corporation | Method and system for transmitting data for a shared application |
JP3546705B2 (ja) * | 1998-07-10 | 2004-07-28 | インターナショナル・ビジネス・マシーンズ・コーポレーション | アプリケーション・ウインドウにアノテーション・データを対応付ける方法及び装置、システム、アプリケーション・ウインドウへのアノテーション・データの対応付けを制御するプログラムを格納した記憶媒体 |
US7043529B1 (en) * | 1999-04-23 | 2006-05-09 | The United States Of America As Represented By The Secretary Of The Navy | Collaborative development network for widely dispersed users and methods therefor |
US6687878B1 (en) * | 1999-03-15 | 2004-02-03 | Real Time Image Ltd. | Synchronizing/updating local client notes with annotations previously made by other clients in a notes database |
US7213061B1 (en) * | 1999-04-29 | 2007-05-01 | Amx Llc | Internet control system and method |
US6958981B1 (en) * | 1999-05-24 | 2005-10-25 | Ncr Corporation | Synchronized web scrolling |
US6657646B2 (en) * | 1999-06-08 | 2003-12-02 | Amx Corporation | System and method for multimedia display |
US6640241B1 (en) * | 1999-07-19 | 2003-10-28 | Groove Networks, Inc. | Method and apparatus for activity-based collaboration by a computer system equipped with a communications manager |
US6654032B1 (en) * | 1999-12-23 | 2003-11-25 | Webex Communications, Inc. | Instant sharing of documents on a remote server |
US8024661B2 (en) * | 2001-10-18 | 2011-09-20 | Autodesk, Inc. | Collaboration framework |
JP2003521061A (ja) * | 2000-01-25 | 2003-07-08 | オートデスク,インコーポレイテッド | インターネット上で建築図面へのアクセスを提供し、処理する方法および装置 |
US6859909B1 (en) * | 2000-03-07 | 2005-02-22 | Microsoft Corporation | System and method for annotating web-based documents |
US20020056003A1 (en) * | 2000-04-11 | 2002-05-09 | Dinkar Goswami | System and method for real-time multi-directional file-based data streaming editor |
US6981019B1 (en) * | 2000-05-02 | 2005-12-27 | International Business Machines Corporation | System and method for a computer based cooperative work system |
US6721921B1 (en) * | 2000-07-26 | 2004-04-13 | Itm Associates | Method and system for annotating documents using an independent annotation repository |
US7363589B1 (en) * | 2000-07-28 | 2008-04-22 | Tandberg Telecom A/S | System and method for generating invisible notes on a presenter's screen |
JP2002073242A (ja) * | 2000-08-31 | 2002-03-12 | Internatl Business Mach Corp <Ibm> | アノテーション方法、アプリケーションウィンドウに対する追加的な書き込み方法、コンピュータ装置、自動契約機、コラボレーションシステム、記憶媒体、コンピュータ・プログラム・プロダクト、およびプログラム伝送装置 |
US7392484B1 (en) * | 2000-10-13 | 2008-06-24 | Hewlett-Packard Development Company, L.P. | Method and system for capturing, storing, sharing, and managing notes taken during a computer based meeting |
US7010570B1 (en) * | 2000-10-16 | 2006-03-07 | International Business Machines Corporation | System and method for the controlled progressive disclosure of information |
US6897853B2 (en) * | 2000-11-10 | 2005-05-24 | Microsoft Corp. | Highlevel active pen matrix |
US8255791B2 (en) | 2000-11-29 | 2012-08-28 | Dov Koren | Collaborative, flexible, interactive real-time displays |
US7346841B2 (en) * | 2000-12-19 | 2008-03-18 | Xerox Corporation | Method and apparatus for collaborative annotation of a document |
US7647373B2 (en) * | 2001-03-13 | 2010-01-12 | Eplus Capital, Inc. | System and process for network collaboration through embedded annotation and rendering instructions |
JP2002324037A (ja) * | 2001-04-24 | 2002-11-08 | Fujitsu Ltd | 連携表示プログラム |
US7143100B2 (en) * | 2001-06-13 | 2006-11-28 | Mci, Llc | Method, system and program product for viewing and manipulating graphical objects representing hierarchically arranged elements of a modeled environment |
US7370269B1 (en) * | 2001-08-31 | 2008-05-06 | Oracle International Corporation | System and method for real-time annotation of a co-browsed document |
US20050160113A1 (en) * | 2001-08-31 | 2005-07-21 | Kent Ridge Digital Labs | Time-based media navigation system |
US7907149B1 (en) * | 2001-09-24 | 2011-03-15 | Wolfgang Daum | System and method for connecting people |
JP2003196242A (ja) * | 2001-12-25 | 2003-07-11 | Sony Corp | プログラム、ネットワークシステム、端末装置、サーバ装置 |
WO2003085525A2 (en) * | 2002-04-02 | 2003-10-16 | Collabo-Technology, Inc. | Method and apparatus for synchronous project collaboration |
US7418664B2 (en) * | 2002-04-03 | 2008-08-26 | Microsoft Corporation | Application sharing single document sharing |
US7028266B2 (en) * | 2002-04-05 | 2006-04-11 | Microsoft Corporation | Processing occluded windows during application sharing |
US7454760B2 (en) | 2002-04-22 | 2008-11-18 | Rosebud Lms, Inc. | Method and software for enabling n-way collaborative work over a network of computers |
US8756513B1 (en) | 2002-04-23 | 2014-06-17 | Microsoft Corporation | Document viewing mechanism for document sharing environment |
US7293243B1 (en) * | 2002-05-22 | 2007-11-06 | Microsoft Corporation | Application sharing viewer presentation |
JP2003345764A (ja) * | 2002-05-27 | 2003-12-05 | Hitachi Ltd | 備忘録端末及び備忘録管理方法 |
WO2004057439A2 (en) * | 2002-05-31 | 2004-07-08 | University Of Utah Research Foundation | System and method for visual annotation and knowledge representation |
US7356563B1 (en) * | 2002-06-06 | 2008-04-08 | Microsoft Corporation | Methods of annotating a collaborative application display |
US7362349B2 (en) * | 2002-07-10 | 2008-04-22 | Seiko Epson Corporation | Multi-participant conference system with controllable content delivery using a client monitor back-channel |
US7234117B2 (en) * | 2002-08-28 | 2007-06-19 | Microsoft Corporation | System and method for shared integrated online social interaction |
KR100485670B1 (ko) * | 2002-08-30 | 2005-04-27 | 김덕우 | 대화형 쇼핑몰 시스템 |
US7224366B2 (en) * | 2002-10-17 | 2007-05-29 | Amx, Llc | Method and system for control system software |
US7392267B2 (en) * | 2002-12-04 | 2008-06-24 | International Business Machines Corporation | Annotation validity using partial checksums |
US7209948B2 (en) * | 2002-12-20 | 2007-04-24 | International Business Machines, Corporation | Collaborative review of distributed content |
US7681136B2 (en) | 2003-01-08 | 2010-03-16 | Oracle International Corporation | Methods and systems for collaborative whiteboarding and content management |
US7031842B1 (en) | 2003-02-26 | 2006-04-18 | 3Dgeo Development, Inc. | Systems and methods for collaboratively viewing and editing seismic data |
US7206811B2 (en) * | 2003-03-13 | 2007-04-17 | Oracle International Corp. | System and method for facilitating real-time collaborating by collapsing a queue for a slow client |
US7269787B2 (en) * | 2003-04-28 | 2007-09-11 | International Business Machines Coporation | Multi-document context aware annotation system |
US20040236830A1 (en) * | 2003-05-15 | 2004-11-25 | Steve Nelson | Annotation management system |
US20040230655A1 (en) * | 2003-05-16 | 2004-11-18 | Chia-Hsin Li | Method and system for media playback architecture |
US20050003330A1 (en) * | 2003-07-02 | 2005-01-06 | Mehdi Asgarinejad | Interactive virtual classroom |
US7302274B2 (en) * | 2003-09-19 | 2007-11-27 | Nokia Corporation | Method and device for real-time shared editing mobile video |
US7254587B2 (en) * | 2004-01-12 | 2007-08-07 | International Business Machines Corporation | Method and apparatus for determining relative relevance between portions of large electronic documents |
EP1574971A1 (de) * | 2004-03-10 | 2005-09-14 | Alcatel | Verfahren, hypermedia Browser, Netzwerkclient, Netzwerkserver und Computer Softwareprodukt zum Versehen gemeinschaftlicher Navigation von hypermedia Dokumenten |
US7102407B2 (en) * | 2004-03-31 | 2006-09-05 | Intel Corporation | Programmable clock delay circuit |
US7834819B2 (en) | 2004-04-01 | 2010-11-16 | Polyvision Corporation | Virtual flip chart method and apparatus |
US7948448B2 (en) | 2004-04-01 | 2011-05-24 | Polyvision Corporation | Portable presentation system and methods for use therewith |
JP4547990B2 (ja) * | 2004-05-25 | 2010-09-22 | 富士ゼロックス株式会社 | 情報処理装置、及び情報処理プログラム |
US7005957B2 (en) * | 2004-05-29 | 2006-02-28 | Tsung-Mou Yu | Mechanism for trip-free of the bimetallic plate of a safety switch device |
JP2008507776A (ja) * | 2004-07-23 | 2008-03-13 | ラーニング・ツリー・インターナショナル | 電子プレゼンテーションのシステムおよび方法 |
US20060041564A1 (en) * | 2004-08-20 | 2006-02-23 | Innovative Decision Technologies, Inc. | Graphical Annotations and Domain Objects to Create Feature Level Metadata of Images |
US20070118794A1 (en) * | 2004-09-08 | 2007-05-24 | Josef Hollander | Shared annotation system and method |
WO2006029391A2 (en) * | 2004-09-09 | 2006-03-16 | Amx Corporation | Method, system and computer program using standard interfaces for independent device controllers |
US20070211691A1 (en) * | 2004-09-09 | 2007-09-13 | Barber Ronald W | Method, system and computer program using standard interfaces for independent device controllers |
US7640502B2 (en) * | 2004-10-01 | 2009-12-29 | Microsoft Corporation | Presentation facilitation |
JP4151974B2 (ja) * | 2004-10-19 | 2008-09-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 文書表示装置、文書表示方法、及びプログラム |
US20060106804A1 (en) * | 2004-10-28 | 2006-05-18 | Nokia Corporation | Electronic equipment and method for carrying out communication with electronic equipment |
US7472341B2 (en) * | 2004-11-08 | 2008-12-30 | International Business Machines Corporation | Multi-user, multi-timed collaborative annotation |
US7342584B2 (en) * | 2004-11-18 | 2008-03-11 | Amx, Llc | Method and computer program for implementing interactive bargraphs of any shape or design on a graphical user interface |
US20060125846A1 (en) * | 2004-12-10 | 2006-06-15 | Springer Gregory T | Virtual overlay for computer device displays |
US20060200517A1 (en) * | 2005-03-03 | 2006-09-07 | Steve Nelson | Method and apparatus for real time multi-party conference document copier |
US7752561B2 (en) * | 2005-03-15 | 2010-07-06 | Microsoft Corporation | Method and system for creating temporary visual indicia |
AU2006287639C1 (en) | 2005-09-07 | 2012-06-28 | Open Invention Network, Llc | Method and computer program for device configuration |
US7962847B2 (en) * | 2005-10-20 | 2011-06-14 | International Business Machines Corporation | Method for providing dynamic process step annotations |
US20070239839A1 (en) * | 2006-04-06 | 2007-10-11 | Buday Michael E | Method for multimedia review synchronization |
US8214395B2 (en) * | 2006-04-21 | 2012-07-03 | Microsoft Corporation | Tracking and editing a resource in a real-time collaborative session |
US20070288164A1 (en) * | 2006-06-08 | 2007-12-13 | Microsoft Corporation | Interactive map application |
US20080028323A1 (en) * | 2006-07-27 | 2008-01-31 | Joshua Rosen | Method for Initiating and Launching Collaboration Sessions |
WO2008033317A2 (en) * | 2006-09-11 | 2008-03-20 | Live Cargo, Inc. | Creating, storing, transferring and manipulating electronic data layers |
JP2008171166A (ja) * | 2007-01-11 | 2008-07-24 | Yokogawa Electric Corp | 操作監視装置 |
US7853886B2 (en) * | 2007-02-27 | 2010-12-14 | Microsoft Corporation | Persistent spatial collaboration |
JP2008217590A (ja) * | 2007-03-06 | 2008-09-18 | Fuji Xerox Co Ltd | 情報共有支援システム、情報処理装置及び制御プログラム |
US20080235597A1 (en) * | 2007-03-19 | 2008-09-25 | Mor Schlesinger | Systems and methods of data integration for creating custom books |
US8156422B2 (en) * | 2007-04-30 | 2012-04-10 | Intuit Inc. | Method and apparatus for importing data from an application into a second application |
CN101315621B (zh) * | 2007-05-29 | 2010-10-06 | 北京书生国际信息技术有限公司 | 一种实现文档共享编辑的方法 |
EP2160734A4 (de) * | 2007-06-18 | 2010-08-25 | Synergy Sports Technology Llc | System und verfahren zum verteilten und parallelen videoeditieren, -etikettieren und indizieren |
WO2009002508A1 (en) * | 2007-06-25 | 2008-12-31 | Life Covenant Church, Inc. | Interactive delivery of editorial content |
US20090013044A1 (en) * | 2007-07-05 | 2009-01-08 | Microsoft Corporation | Techniques for managing annotation transformations for context changes |
US20090055737A1 (en) * | 2007-08-22 | 2009-02-26 | Andreas Borchardt | Contextual Collaborative Electronic Annotations |
US9178957B2 (en) * | 2007-09-27 | 2015-11-03 | Adobe Systems Incorporated | Application and data agnostic collaboration services |
US8397168B2 (en) | 2008-04-05 | 2013-03-12 | Social Communications Company | Interfacing with a spatial virtual communication environment |
US8407605B2 (en) * | 2009-04-03 | 2013-03-26 | Social Communications Company | Application sharing |
US8190987B2 (en) | 2007-10-25 | 2012-05-29 | Microsoft Corporation | Private views of data and local calculations during real time collaboration |
US8010901B1 (en) | 2007-10-26 | 2011-08-30 | Sesh, Inc. | System and method for automated synchronized co-browsing |
US7941399B2 (en) * | 2007-11-09 | 2011-05-10 | Microsoft Corporation | Collaborative authoring |
US9420014B2 (en) | 2007-11-15 | 2016-08-16 | Adobe Systems Incorporated | Saving state of a collaborative session in an editable format |
US8326814B2 (en) | 2007-12-05 | 2012-12-04 | Box, Inc. | Web-based file management system and service |
US8028229B2 (en) * | 2007-12-06 | 2011-09-27 | Microsoft Corporation | Document merge |
US8825758B2 (en) | 2007-12-14 | 2014-09-02 | Microsoft Corporation | Collaborative authoring modes |
US20090193327A1 (en) * | 2008-01-30 | 2009-07-30 | Microsoft Corporation | High-fidelity scalable annotations |
US8301588B2 (en) * | 2008-03-07 | 2012-10-30 | Microsoft Corporation | Data storage for file updates |
CN102084354A (zh) * | 2008-04-05 | 2011-06-01 | 社会传播公司 | 基于共享虚拟区域通信环境的装置和方法 |
US8352870B2 (en) | 2008-04-28 | 2013-01-08 | Microsoft Corporation | Conflict resolution |
US8825594B2 (en) * | 2008-05-08 | 2014-09-02 | Microsoft Corporation | Caching infrastructure |
US8429753B2 (en) * | 2008-05-08 | 2013-04-23 | Microsoft Corporation | Controlling access to documents using file locks |
US9418054B2 (en) | 2008-05-12 | 2016-08-16 | Adobe Systems Incorporated | Document comment management |
US9176943B2 (en) | 2008-05-12 | 2015-11-03 | Adobe Systems Incorporated | Comment presentation in electronic documents |
US8996621B2 (en) | 2008-05-12 | 2015-03-31 | Adobe Systems Incorporated | Asynchronous comment updates |
US7945595B1 (en) | 2008-05-12 | 2011-05-17 | Adobe Systems Incorporated | System and method for generating an item list in electronic content |
US7949633B1 (en) | 2008-05-12 | 2011-05-24 | Adobe Systems Incorporated | Shared edit access of electronic content |
US8893017B2 (en) | 2008-05-29 | 2014-11-18 | Adobe Systems Incorporated | Tracking changes in a database tool |
US8417666B2 (en) * | 2008-06-25 | 2013-04-09 | Microsoft Corporation | Structured coauthoring |
US10853336B2 (en) | 2008-09-29 | 2020-12-01 | Adobe Inc. | Tracking database changes |
US7945622B1 (en) | 2008-10-01 | 2011-05-17 | Adobe Systems Incorporated | User-aware collaboration playback and recording |
US8073812B2 (en) * | 2008-10-15 | 2011-12-06 | Microsoft Corporation | Preserving user intention in distributed data systems |
US9294291B2 (en) | 2008-11-12 | 2016-03-22 | Adobe Systems Incorporated | Adaptive connectivity in network-based collaboration |
US20100131836A1 (en) * | 2008-11-24 | 2010-05-27 | Microsoft Corporation | User-authored notes on shared documents |
AU2009319665B2 (en) | 2008-11-26 | 2015-08-20 | Calgary Scientific Inc. | Method and system for providing remote access to a state of an application program |
US9785914B2 (en) | 2008-12-08 | 2017-10-10 | Adobe Systems Incorporated | Collaborative review apparatus, systems, and methods |
US8108779B1 (en) | 2008-12-16 | 2012-01-31 | Adobe Systems Incorporated | Collaborative editing operations |
WO2010103540A2 (en) * | 2009-03-09 | 2010-09-16 | Balajee Rajaram | Systems and methods to use collaborative mind maps |
WO2010114624A1 (en) * | 2009-04-04 | 2010-10-07 | Brett Matthews | Online document annotation and reading system |
US8346768B2 (en) * | 2009-04-30 | 2013-01-01 | Microsoft Corporation | Fast merge support for legacy documents |
US20100302150A1 (en) * | 2009-05-29 | 2010-12-02 | Gerold Keith Shelton | Peer layers overlapping a whiteboard |
US9135599B2 (en) * | 2009-06-18 | 2015-09-15 | Microsoft Technology Licensing, Llc | Smart notebook |
US20110289401A1 (en) * | 2010-05-20 | 2011-11-24 | Salesforce.Com, Inc. | Multiple graphical annotations of documents using overlays |
AU2011295755B2 (en) * | 2010-09-03 | 2014-11-13 | Turnitin, Llc | Systems and methods for document analysis |
US20120078597A1 (en) * | 2010-09-27 | 2012-03-29 | Infosys Technologies Limited | Mobile device with a modeling platform |
US20120096345A1 (en) * | 2010-10-19 | 2012-04-19 | Google Inc. | Resizing of gesture-created markings for different display sizes |
US8856230B2 (en) | 2010-12-14 | 2014-10-07 | Microsoft Corporation | In browser real time collaboration lists and forms |
US9741084B2 (en) | 2011-01-04 | 2017-08-22 | Calgary Scientific Inc. | Method and system for providing remote access to data for display on a mobile device |
EP2661654A4 (de) | 2011-01-04 | 2014-07-09 | Calgary Scient Inc | Verfahren und system zur steuerung einer ferngesteuerten vorrichtung in einem ferngesteuerten chirurgischen eingriff |
GB2500356A (en) | 2011-01-20 | 2013-09-18 | Box Inc | Real time notification of activities that occur in a web-based collaboration environment |
WO2012162411A1 (en) | 2011-05-23 | 2012-11-29 | Haworth, Inc. | Digital whiteboard collaboration apparatuses, methods and systems |
US9471192B2 (en) | 2011-05-23 | 2016-10-18 | Haworth, Inc. | Region dynamics for digital whiteboard |
US9465434B2 (en) | 2011-05-23 | 2016-10-11 | Haworth, Inc. | Toolbar dynamics for digital whiteboard |
US20140055400A1 (en) | 2011-05-23 | 2014-02-27 | Haworth, Inc. | Digital workspace ergonomics apparatuses, methods and systems |
US20120317500A1 (en) * | 2011-06-07 | 2012-12-13 | At&T Intellectual Property I, L.P. | System and method for data visualization and user collaboration |
US9015601B2 (en) | 2011-06-21 | 2015-04-21 | Box, Inc. | Batch uploading of content to a web-based collaboration environment |
US9063912B2 (en) | 2011-06-22 | 2015-06-23 | Box, Inc. | Multimedia content preview rendering in a cloud content management system |
EP2729877A4 (de) | 2011-07-08 | 2015-06-17 | Box Inc | Desktopapplikation zum zugriff und zur interaktion mit arbeitsplätzen in einem cloud-basierten inhaltsverwaltungssystem und synchronisierungsmechanismen dafür |
GB2503625A (en) | 2011-07-08 | 2014-01-01 | Box Inc | Collaboration sessions in a workspace on cloud-based content management system |
CA2844871C (en) | 2011-08-15 | 2021-02-02 | Calgary Scientific Inc. | Non-invasive remote access to an application program |
WO2013046015A1 (en) * | 2011-09-30 | 2013-04-04 | Calgary Scientific Inc. | Uncoupled application extensions including interactive digital surface layer for collaborative remote application sharing and annotating |
US9948988B2 (en) * | 2011-10-04 | 2018-04-17 | Ricoh Company, Ltd. | Meeting system that interconnects group and personal devices across a network |
CN103049247B (zh) * | 2011-10-11 | 2016-01-06 | 永其科技股份有限公司 | 在计算机屏幕上进行批注的方法 |
US8515902B2 (en) | 2011-10-14 | 2013-08-20 | Box, Inc. | Automatic and semi-automatic tagging features of work items in a shared workspace for metadata tracking in a cloud-based content management system with selective or optional user contribution |
WO2013062599A1 (en) | 2011-10-26 | 2013-05-02 | Box, Inc. | Enhanced multimedia content preview rendering in a cloud content management system |
US9098474B2 (en) | 2011-10-26 | 2015-08-04 | Box, Inc. | Preview pre-generation based on heuristics and algorithmic prediction/assessment of predicted user behavior for enhancement of user experience |
US9294572B2 (en) | 2011-11-11 | 2016-03-22 | Calgary Scientific Inc. | Session transfer and suspension in a remote access application framework |
US8990307B2 (en) | 2011-11-16 | 2015-03-24 | Box, Inc. | Resource effective incremental updating of a remote client with events which occurred via a cloud-enabled platform |
CN104040946B (zh) * | 2011-11-23 | 2017-07-14 | 卡尔加里科学公司 | 用于协作远程应用程序共享和会议的方法和系统 |
WO2013082320A1 (en) | 2011-11-29 | 2013-06-06 | Box, Inc. | Mobile platform file and folder selection functionalities for offline access and synchronization |
US9019123B2 (en) | 2011-12-22 | 2015-04-28 | Box, Inc. | Health check services for web-based collaboration environments |
US11232481B2 (en) | 2012-01-30 | 2022-01-25 | Box, Inc. | Extended applications of multimedia content previews in the cloud-based content management system |
US9965745B2 (en) | 2012-02-24 | 2018-05-08 | Box, Inc. | System and method for promoting enterprise adoption of a web-based collaboration environment |
US9195636B2 (en) | 2012-03-07 | 2015-11-24 | Box, Inc. | Universal file type preview for mobile devices |
US9054919B2 (en) | 2012-04-05 | 2015-06-09 | Box, Inc. | Device pinning capability for enterprise cloud service and storage accounts |
US9575981B2 (en) | 2012-04-11 | 2017-02-21 | Box, Inc. | Cloud service enabled to handle a set of files depicted to a user as a single file in a native operating system |
US9413587B2 (en) | 2012-05-02 | 2016-08-09 | Box, Inc. | System and method for a third-party application to access content within a cloud-based platform |
GB2505272B (en) | 2012-05-04 | 2014-07-09 | Box Inc | Repository redundancy implementation of a system which incrementally updates clients with events that occurred via cloud-enabled platform |
US9691051B2 (en) | 2012-05-21 | 2017-06-27 | Box, Inc. | Security enhancement through application access control |
US9479549B2 (en) | 2012-05-23 | 2016-10-25 | Haworth, Inc. | Collaboration system with whiteboard with federated display |
US9479548B2 (en) | 2012-05-23 | 2016-10-25 | Haworth, Inc. | Collaboration system with whiteboard access to global collaboration data |
US9027108B2 (en) | 2012-05-23 | 2015-05-05 | Box, Inc. | Systems and methods for secure file portability between mobile applications on a mobile device |
US8914900B2 (en) | 2012-05-23 | 2014-12-16 | Box, Inc. | Methods, architectures and security mechanisms for a third-party application to access content in a cloud-based platform |
US9021099B2 (en) | 2012-07-03 | 2015-04-28 | Box, Inc. | Load balancing secure FTP connections among multiple FTP servers |
US9712510B2 (en) | 2012-07-06 | 2017-07-18 | Box, Inc. | Systems and methods for securely submitting comments among users via external messaging applications in a cloud-based platform |
US9792320B2 (en) | 2012-07-06 | 2017-10-17 | Box, Inc. | System and method for performing shard migration to support functions of a cloud-based service |
GB2505072A (en) | 2012-07-06 | 2014-02-19 | Box Inc | Identifying users and collaborators as search results in a cloud-based system |
US9237170B2 (en) | 2012-07-19 | 2016-01-12 | Box, Inc. | Data loss prevention (DLP) methods and architectures by a cloud service |
US8868574B2 (en) | 2012-07-30 | 2014-10-21 | Box, Inc. | System and method for advanced search and filtering mechanisms for enterprise administrators in a cloud-based environment |
US9794256B2 (en) | 2012-07-30 | 2017-10-17 | Box, Inc. | System and method for advanced control tools for administrators in a cloud-based service |
US8745267B2 (en) | 2012-08-19 | 2014-06-03 | Box, Inc. | Enhancement of upload and/or download performance based on client and/or server feedback information |
US9369520B2 (en) | 2012-08-19 | 2016-06-14 | Box, Inc. | Enhancement of upload and/or download performance based on client and/or server feedback information |
GB2513671A (en) | 2012-08-27 | 2014-11-05 | Box Inc | Server side techniques for reducing database workload in implementing selective subfolder synchronization in a cloud-based environment |
US9135462B2 (en) | 2012-08-29 | 2015-09-15 | Box, Inc. | Upload and download streaming encryption to/from a cloud-based platform |
US9195519B2 (en) | 2012-09-06 | 2015-11-24 | Box, Inc. | Disabling the self-referential appearance of a mobile application in an intent via a background registration |
US9311071B2 (en) | 2012-09-06 | 2016-04-12 | Box, Inc. | Force upgrade of a mobile application via a server side configuration file |
US9117087B2 (en) | 2012-09-06 | 2015-08-25 | Box, Inc. | System and method for creating a secure channel for inter-application communication based on intents |
US9292833B2 (en) | 2012-09-14 | 2016-03-22 | Box, Inc. | Batching notifications of activities that occur in a web-based collaboration environment |
US10200256B2 (en) | 2012-09-17 | 2019-02-05 | Box, Inc. | System and method of a manipulative handle in an interactive mobile user interface |
US9553758B2 (en) | 2012-09-18 | 2017-01-24 | Box, Inc. | Sandboxing individual applications to specific user folders in a cloud-based service |
US10915492B2 (en) | 2012-09-19 | 2021-02-09 | Box, Inc. | Cloud-based platform enabled with media content indexed for text-based searches and/or metadata extraction |
US9959420B2 (en) | 2012-10-02 | 2018-05-01 | Box, Inc. | System and method for enhanced security and management mechanisms for enterprise administrators in a cloud-based environment |
US9705967B2 (en) | 2012-10-04 | 2017-07-11 | Box, Inc. | Corporate user discovery and identification of recommended collaborators in a cloud platform |
US9495364B2 (en) | 2012-10-04 | 2016-11-15 | Box, Inc. | Enhanced quick search features, low-barrier commenting/interactive features in a collaboration platform |
US9665349B2 (en) | 2012-10-05 | 2017-05-30 | Box, Inc. | System and method for generating embeddable widgets which enable access to a cloud-based collaboration platform |
US9628268B2 (en) | 2012-10-17 | 2017-04-18 | Box, Inc. | Remote key management in a cloud-based environment |
US9756022B2 (en) | 2014-08-29 | 2017-09-05 | Box, Inc. | Enhanced remote key management for an enterprise in a cloud-based environment |
US10235383B2 (en) | 2012-12-19 | 2019-03-19 | Box, Inc. | Method and apparatus for synchronization of items with read-only permissions in a cloud-based environment |
US9396245B2 (en) | 2013-01-02 | 2016-07-19 | Box, Inc. | Race condition handling in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform |
US9462037B2 (en) | 2013-01-07 | 2016-10-04 | Google Inc. | Dynamically sizing chunks in a partially loaded spreadsheet model |
US9953036B2 (en) | 2013-01-09 | 2018-04-24 | Box, Inc. | File system monitoring in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform |
EP2755151A3 (de) | 2013-01-11 | 2014-09-24 | Box, Inc. | Funktionalitäten, Merkmale und der Benutzeroberfläche eines Synchronisationsclient zu einer Cloud-basierten Umgebung |
US9311622B2 (en) * | 2013-01-15 | 2016-04-12 | Google Inc. | Resolving mutations in a partially-loaded spreadsheet model |
EP2757491A1 (de) | 2013-01-17 | 2014-07-23 | Box, Inc. | Konfliktlösung, Wiederversuchbedingungsverwaltung und Handhabung von Problemdateien für den Synchronisations-Client zu einer Plattform auf Cloud-Basis |
US11861561B2 (en) | 2013-02-04 | 2024-01-02 | Haworth, Inc. | Collaboration system including a spatial event map |
US10304037B2 (en) | 2013-02-04 | 2019-05-28 | Haworth, Inc. | Collaboration system including a spatial event map |
US10846074B2 (en) | 2013-05-10 | 2020-11-24 | Box, Inc. | Identification and handling of items to be ignored for synchronization with a cloud-based platform by a synchronization client |
US10725968B2 (en) | 2013-05-10 | 2020-07-28 | Box, Inc. | Top down delete or unsynchronization on delete of and depiction of item synchronization with a synchronization client to a cloud-based platform |
GB2515192B (en) | 2013-06-13 | 2016-12-14 | Box Inc | Systems and methods for synchronization event building and/or collapsing by a synchronization component of a cloud-based platform |
US9805050B2 (en) | 2013-06-21 | 2017-10-31 | Box, Inc. | Maintaining and updating file system shadows on a local device by a synchronization client of a cloud-based platform |
US10110656B2 (en) | 2013-06-25 | 2018-10-23 | Box, Inc. | Systems and methods for providing shell communication in a cloud-based platform |
US10229134B2 (en) | 2013-06-25 | 2019-03-12 | Box, Inc. | Systems and methods for managing upgrades, migration of user data and improving performance of a cloud-based platform |
US9535924B2 (en) | 2013-07-30 | 2017-01-03 | Box, Inc. | Scalability improvement in a system which incrementally updates clients with events that occurred in 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 |
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 |
US10509527B2 (en) | 2013-09-13 | 2019-12-17 | Box, Inc. | Systems and methods for configuring event-based automation in cloud-based collaboration platforms |
US9213684B2 (en) | 2013-09-13 | 2015-12-15 | Box, Inc. | System and method for rendering document in web browser or mobile device regardless of third-party plug-in software |
US9535909B2 (en) | 2013-09-13 | 2017-01-03 | Box, Inc. | Configurable event-based automation architecture for cloud-based collaboration platforms |
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 |
KR102047499B1 (ko) * | 2013-09-27 | 2019-11-21 | 삼성전자주식회사 | 콘텐트를 공유하는 방법 및 그 장치 |
US10176611B2 (en) * | 2013-10-21 | 2019-01-08 | Cellco Partnership | Layer-based image updates |
US10866931B2 (en) | 2013-10-22 | 2020-12-15 | Box, Inc. | Desktop application for accessing a cloud collaboration platform |
KR20150075140A (ko) * | 2013-12-24 | 2015-07-03 | 삼성전자주식회사 | 전자 장치의 메시지 제어 방법 및 그 전자 장치 |
US9716861B1 (en) | 2014-03-07 | 2017-07-25 | Steelcase Inc. | Method and system for facilitating collaboration sessions |
US10664772B1 (en) | 2014-03-07 | 2020-05-26 | Steelcase Inc. | Method and system for facilitating collaboration sessions |
KR102266869B1 (ko) * | 2014-04-03 | 2021-06-21 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 디스플레이 방법 |
US10530854B2 (en) | 2014-05-30 | 2020-01-07 | Box, Inc. | Synchronization of permissioned content in cloud-based environments |
US9380682B2 (en) | 2014-06-05 | 2016-06-28 | Steelcase Inc. | Environment optimization for space based on presence and activities |
US9766079B1 (en) | 2014-10-03 | 2017-09-19 | Steelcase Inc. | Method and system for locating resources and communicating within an enterprise |
US9955318B1 (en) | 2014-06-05 | 2018-04-24 | Steelcase Inc. | Space guidance and management system and method |
US10433646B1 (en) | 2014-06-06 | 2019-10-08 | Steelcaase Inc. | Microclimate control systems and methods |
US11744376B2 (en) | 2014-06-06 | 2023-09-05 | Steelcase Inc. | Microclimate control systems and methods |
US9602514B2 (en) | 2014-06-16 | 2017-03-21 | Box, Inc. | Enterprise mobility management and verification of a managed application by a content provider |
US10038731B2 (en) | 2014-08-29 | 2018-07-31 | Box, Inc. | Managing flow-based interactions with cloud-based shared content |
US10574442B2 (en) | 2014-08-29 | 2020-02-25 | Box, Inc. | Enhanced remote key management for an enterprise in a cloud-based environment |
US9894119B2 (en) | 2014-08-29 | 2018-02-13 | Box, Inc. | Configurable metadata-based automation and content classification architecture for cloud-based collaboration platforms |
US9852388B1 (en) | 2014-10-03 | 2017-12-26 | Steelcase, Inc. | Method and system for locating resources and communicating within an enterprise |
US20160232144A1 (en) * | 2015-02-06 | 2016-08-11 | Liang Zhou | Browser extension allowing web users to draw on live web pages |
US20160253606A1 (en) * | 2015-02-27 | 2016-09-01 | Rulesware, LLC | Business Process Crowd Sourcing with Dynamic Group Discovery and Social Push Communications |
US9910644B2 (en) * | 2015-03-03 | 2018-03-06 | Microsoft Technology Licensing, Llc | Integrated note-taking functionality for computing system entities |
JP6568702B2 (ja) * | 2015-03-27 | 2019-08-28 | 京セラ株式会社 | 表示装置および共有表示システム |
EP3292524B1 (de) | 2015-05-06 | 2020-07-08 | Haworth, Inc. | Folgemodus eines ansichtsfensters eines virtuellen arbeitsraums in kollaborationssystemen |
US10733371B1 (en) | 2015-06-02 | 2020-08-04 | Steelcase Inc. | Template based content preparation system for use with a plurality of space types |
US10255023B2 (en) | 2016-02-12 | 2019-04-09 | Haworth, Inc. | Collaborative electronic whiteboard publication process |
US11023663B2 (en) | 2016-03-11 | 2021-06-01 | International Business Machines Corporation | Persisting annotations applied to an electronic hosted whiteboard |
US9921726B1 (en) | 2016-06-03 | 2018-03-20 | Steelcase Inc. | Smart workstation method and system |
US11409952B2 (en) | 2016-08-16 | 2022-08-09 | Myscript | System and method for collaborative ink management |
US10264213B1 (en) | 2016-12-15 | 2019-04-16 | Steelcase Inc. | Content amplification system and method |
US11126325B2 (en) | 2017-10-23 | 2021-09-21 | Haworth, Inc. | Virtual workspace including shared viewport markers in a collaboration system |
US11934637B2 (en) | 2017-10-23 | 2024-03-19 | Haworth, Inc. | Collaboration system including markers identifying multiple canvases in multiple shared virtual workspaces |
CN109614178A (zh) * | 2018-09-04 | 2019-04-12 | 广州视源电子科技股份有限公司 | 批注显示方法、装置、设备和存储介质 |
US10911573B2 (en) * | 2018-12-28 | 2021-02-02 | Microsoft Technology Licensing, Llc | Web-based collaborative inking via computer networks |
WO2020176517A1 (en) | 2019-02-25 | 2020-09-03 | Haworth, Inc. | Gesture based workflows in a collaboration system |
US11212127B2 (en) | 2020-05-07 | 2021-12-28 | Haworth, Inc. | Digital workspace sharing over one or more display clients and authorization protocols for collaboration systems |
US11750672B2 (en) | 2020-05-07 | 2023-09-05 | Haworth, Inc. | Digital workspace sharing over one or more display clients in proximity of a main client |
US11527329B2 (en) | 2020-07-28 | 2022-12-13 | Xifin, Inc. | Automatically determining a medical recommendation for a patient based on multiple medical images from multiple different medical imaging modalities |
US11880644B1 (en) * | 2021-11-12 | 2024-01-23 | Grammarly, Inc. | Inferred event detection and text processing using transparent windows |
KR102552898B1 (ko) | 2023-02-08 | 2023-07-14 | 주식회사 한국하이맥스 | 돌출부와 날개를 갖는 프로파일을 이용한 강성 향상형 후렉시블 유공관과 그 성형장치 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5761419A (en) * | 1993-03-19 | 1998-06-02 | Ncr Corporation | Remote collaboration system including first program means translating user inputs into annotations and running on all computers while second program means runs on one computer |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5920694A (en) * | 1993-03-19 | 1999-07-06 | Ncr Corporation | Annotation of computer video displays |
EP0622930A3 (de) * | 1993-03-19 | 1996-06-05 | At & T Global Inf Solution | Teilung der Anwendungen für Rechneranordnung mit Zusammenarbeit. |
US5649104A (en) * | 1993-03-19 | 1997-07-15 | Ncr Corporation | System for allowing user of any computer to draw image over that generated by the host computer and replicating the drawn image to other computers |
US5600775A (en) * | 1994-08-26 | 1997-02-04 | Emotion, Inc. | Method and apparatus for annotating full motion video and other indexed data structures |
US6240444B1 (en) * | 1996-09-27 | 2001-05-29 | International Business Machines Corporation | Internet web page sharing |
-
1999
- 1999-02-02 US US09/243,084 patent/US6342906B1/en not_active Expired - Fee Related
-
2000
- 2000-01-13 DE DE10000998A patent/DE10000998B4/de not_active Expired - Lifetime
- 2000-01-22 KR KR10-2000-0003062A patent/KR100375808B1/ko not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5761419A (en) * | 1993-03-19 | 1998-06-02 | Ncr Corporation | Remote collaboration system including first program means translating user inputs into annotations and running on all computers while second program means runs on one computer |
Also Published As
Publication number | Publication date |
---|---|
KR20000076508A (ko) | 2000-12-26 |
KR100375808B1 (ko) | 2003-03-15 |
US6342906B1 (en) | 2002-01-29 |
DE10000998A1 (de) | 2000-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10000998B4 (de) | Anmerkungsschicht zur synchronen Zusammenarbeit | |
DE69631808T2 (de) | Konferenzsystem, Endgerätkommunikationsverfahren und Speichereinheit zur Speicherung des Verfahrens | |
DE60127078T2 (de) | Vorrichtung für anhaltende Chatsitzungen | |
DE69835862T2 (de) | Benutzerschnittstelle mit sofortigen Indikatoren für die Merkmale Konkurrenz, in Gebrauch, verfügbar und nicht verfügbar | |
DE69433567T2 (de) | Rechnerkonferenzverfahren | |
DE602004006798T2 (de) | Nachrichtenübertragung über transiente Verbindungen in einer peer-to-peer Netzwerkumgebung | |
US9131022B2 (en) | Multi-party virtual desktop | |
DE60313531T2 (de) | Verfahren und Gerät zur Verarbeitung von sofortigen Nachrichten | |
DE60029774T2 (de) | Videokonferenzsystem | |
DE202010018484U1 (de) | System für die Bearbeitung eines Gesprächs in einem gehosteten Gesprächssystem | |
DE10138336A1 (de) | Verfahren und System zum Aufrechterhalten des Andauerns von graphischen Markierungen in einem kollaborativen Graphikbetrachtungssystem | |
DE19844071A1 (de) | Verfahren zum Lösen von Datenkonflikten in einem gemeinsamen Datenumfeld | |
DE202011110895U1 (de) | Echtzeitsynchronisierte Bearbeitung von Dokumenten durch mehrere Benutzer für das Bloggen | |
DE4434878A1 (de) | Fern-Anzeige von Objekten und Cursorbewegungen in einem Konferenzsystem | |
DE19607149A1 (de) | Verfahren zum rechnergestützten Abgleich mehrerer, in mindestens einem Rechner gespeicherten Dateikopien einer gespeicherten Datei | |
US20020056003A1 (en) | System and method for real-time multi-directional file-based data streaming editor | |
DE202019106796U1 (de) | Elektronisches Ereignismanagementsystem | |
DE19717167A1 (de) | Webbrowser-basiertes Konferenzsystem | |
DE102011114277B4 (de) | Globaler Konferenzplan für verteilte Brücken | |
DE69633373T2 (de) | Verfahren und Gerät zur Programmierung eines Aufgabentickets in einem Dokumentenverarbeitungssystem | |
DE102015008619A1 (de) | Verfahren und Vorrichtung zum Verfassen von elektronischen Postnachrichten beginnend von existierenden Nachrichten in einem elektronischen Postprogramm | |
US20230244434A1 (en) | Shared screen tools for collaboration | |
US20230244802A1 (en) | Managing permissions for collaborative shared documents | |
DE102022201862A1 (de) | Aktualisierung der teilnehmer von besprechungseinladungen in verschiedenen kalendersystemen | |
Nishida et al. | Lock-on-Chat: boosting anchored conversation and its operation at a technical conference |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8328 | Change in the person/name/address of the agent |
Representative=s name: DUSCHER, R., DIPL.-PHYS. DR.RER.NAT., PAT.-ANW., 7 |
|
R071 | Expiry of right |