DE69433189T2 - Anzeigesteuerung für Rechneranordnung mit Zusammenarbeit - Google Patents

Anzeigesteuerung für Rechneranordnung mit Zusammenarbeit Download PDF

Info

Publication number
DE69433189T2
DE69433189T2 DE69433189T DE69433189T DE69433189T2 DE 69433189 T2 DE69433189 T2 DE 69433189T2 DE 69433189 T DE69433189 T DE 69433189T DE 69433189 T DE69433189 T DE 69433189T DE 69433189 T2 DE69433189 T2 DE 69433189T2
Authority
DE
Germany
Prior art keywords
computer
comment
computers
remote
user
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
Application number
DE69433189T
Other languages
English (en)
Other versions
DE69433189D1 (de
Inventor
Catherine M. Fitzpatrick
Krista S. Schwartz
Allison A. Carleton
Theresa M. Pommier
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NCR International Inc
Original Assignee
NCR International Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=21880589&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE69433189(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by NCR International Inc filed Critical NCR International Inc
Application granted granted Critical
Publication of DE69433189D1 publication Critical patent/DE69433189D1/de
Publication of DE69433189T2 publication Critical patent/DE69433189T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/133Protocols for remote procedure calls [RPC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

  • Die Erfindung bezieht sich auf den Betrieb einer Mehrzahl miteinander verknüpfter Computer.
  • Moderne Telefonsysteme erlauben mehreren Parteien an unterschiedlichen Orten eine Konferenz abzuhalten. Jedoch bieten Telefonkonferenzen nicht alle Bequemlichkeiten einer Konferenz von Angesicht zu Angesicht, wo die Teilnehmer sich alle an einem gemeinsamen Tisch in einem Konferenzraum treffen. Beispielsweise können die Teilnehmer in einem Konferenzraum einen interessierenden Gegenstand, wie eine Zeichnung oder ein Produkt, ansehen. Ein solches Anschauen ist bei einer Telefonkonferenz nicht möglich.
  • In der US-A-5119319 ist ein Computerkooperationssystem beschrieben, bei welchem Änderungen auf einem Display, welche ein Benutzer an einem örtlichen Terminal vornimmt, praktisch zur gleichen Zeit an den Bildschirmen aller Terminals erscheinen. Jeder Benutzer kann daher mit dem örtlichen Display und mit anderen Benutzern über Displays in Kontakt treten, ohne warten zu müssen, dass ein Benutzer seine Informationseingabe vollendet.
  • Die Aufgabe der Erfindung besteht in der Schaffung eines verbesserten elektronischen Konferenzsystems.
  • Gemäß einem Gesichtspunkt der Erfindung ist daher ein Computerkonferenzsystem vorgesehen mit
    einem Hostcomputer, auf dem ein Applikationsprogramm läuft,
    einem oder mehreren entfernten Computern, die mit dem Hostcomputer verknüpft sind, und
    einer Steuereinrichtung, welche es allen entfernten Computern erlaubt, das Display des Hostcomputers abzuwandeln und zu bewirken, dass das Display des Hostcomputers auf den entfernten Computern erscheint,
    wobei die Erfindung dadurch gekennzeichnet ist, dass die Computer wahlweise in einem Anwendungsmodus (application mode) oder einem Kommentiermodus (annotation mode) betrieben werden können, wobei im Anwendungsmodus der Hostcomputer lediglich Wiedergabedaten an die entfernten Computer überträgt.
  • Gemäß einem anderen Gesichtspunkt der Erfindung ist ein Verfahren zum Betreiben eines Computerkonferenzsystems vorgesehen mit einem Hostcomputer, auf dem ein Anwenderprogramm läuft, und einem oder mehreren mit dem Hostcomputer verknüpften entfernten Computern, mit den folgenden Schritten: entfernten Computern wird ermöglicht, die Darstellung des Hostcomputers zu ändern, die Darstellung des Hostcomputers wird auf den entfernten Computern wiedergegeben, und mit den kennzeichnenden Schritten, dass die Computer wahlweise in einem Anwendungsmodus oder einem Kommentiermodus betrieben werden können und im Kommentiermodus der Hostcomputer lediglich Darstellungsdaten auf die entfernten Computer überträgt.
  • Es sei nun eine Ausführungsform der Erfindung anhand eines Beispiels mit Bezug auf die beiliegenden Zeichnungen erläutert.
  • 1 veranschaulicht drei über Telefonleitungen miteinander verknüpfte Computer.
  • 2 initiiert in ein Beispiel ein, welches anhand der 3 bis 14 noch näher ausgeführt wird. Im Beispiel wird ein Rechnungsprogramm von verschiedenen Teilnehmern durchgeführt und kommentiert.
  • 3 zeigt, wie das System reagiert, wenn ein Hostbenutzer versucht, im Kommentiermodus mit dem Rechner zu arbeiten.
  • 4 zeigt, wie das System reagiert, wenn ein Hostbenutzer versucht, im Kommentiermodus den Rechner zu kommentieren.
  • 5 zeigt, wie das System reagiert, wenn ein Hostbenutzer im Anwendungsmodus versucht, mit dem Rechner zu arbeiten.
  • 6 zeigt, wie das System reagiert, wenn ein Hostbenutzer in einem Local-Kommentiermodus versucht, mit dem Rechner zu arbeiten.
  • 7 zeigt, wie das System reagiert, wenn ein Hostbenutzer im Local-Kommentiermodus versucht, den Rechner zu kommentieren.
  • 8 zeigt, wie das System in einem Betrachtungsmodus auf einen Hostbenutzer reagiert.
  • 9 zeigt, wie das System reagiert, wenn ein entfernter Benutzer im Kommentiermodus versucht, mit dem Rechner zu arbeiten.
  • 10 veranschaulicht, wie das System reagiert, wenn entfernter Benutzer im Kommentiermodus versucht, den Rechner zu kommentieren.
  • 11 zeigt, wie das System reagiert, wenn ein entfernter Benutzer versucht, im Anwendungsmodus mit dem Rechner zu arbeiten.
  • 12 veranschaulicht, wie das System reagiert, wenn ein entfernter Benutzer im Local-Kommentiermodus versucht, mit dem Rechner zu arbeiten.
  • 13 veranschaulicht, wie das System reagiert, wenn ein entfernter Benutzer versucht, im Local-Kommentiermodus den Rechner zu kommentieren.
  • 14 veranschaulicht, wie das System im Betrachtungsmodus auf einen entfernten Benutzer reagiert.
  • 15 und 16 zeigen den vom System benutzten logischen Fluss.
  • 1 zeigt drei Computer, die durch Telefonleitungen miteinander verbunden sind. Auf jedem Computer läuft ein nachrichtengesteuertes (message-driven), vielseitiges (multi-tasking) Graphical-User-Interface (GUI), wie es unter dem Namen Windows handelsüblich ist und von der Microsoft Corporation in Redmond, Washington erhältlich ist. Solche GUIs werden auch als Betriebsumgebungen (operating environments) bezeichnet.
  • Der Benutzer eines GUI kommuniziert über Fenster mit einem Programm. Auf den entfernten Computern werden ausgewählte Fenster anstelle des gesamten Schirmbildes wiedergegeben. Diese selektive Wiedergabe erlaubt es Benutzern, auf ihren Bildschirmen private Bereiche zu behalten, welche nicht mit den anderen geteilt werden. Auf jedem Computer läuft eine Software, welche die hier beschriebenen Operationen bewirkt. Außerdem läuft auf einem Computer (dem Host) ein Anwendungsprogramm. (Auf dem Hostcomputer können wegen der vielseitigen Fähigkeiten des GUI auch beide Programme laufen).
  • Es gibt vier Grund-Betriebsmoden:
  • 1. Anwendungsmodus
  • Irgendein Benutzer eines der drei in 1 gezeigten Computer kann Befehle an das Anwendungsprogramm geben. Beispielsweise sei angenommen, dass das Anwendungsprogramm ein solches ist, welches einen Handrechner simuliert. Die Anfangssituation ist in 2 gezeigt, wo jedes Display den Rechner zeigt. Es sei weiter angenommen, dass die folgenden Ereignisse auftreten:
  • Der Benutzer des Hosts drückt die Taste "3" auf dem Rechner (entweder über Tastatureingabe oder Mauseingabe, je nach Entwurf des Rechnerprogramms).
  • Daraufhin zeigt jeder Rechner in seinem Displaybereich eine "3".
  • sDer Benutzer eines entfernten Computers drückt "+".
  • Der Benutzer eines anderen entfernten Computers drückt "6"
  • Der Benutzer des Hosts drückt "=".
  • An dieser Stelle zeigen alle Rechner eine "9", welches die Summe von drei und 6 darstellt. Die Benutzer haben das Rechnerprogramm zusammen betrieben, und das Display eines jeden zeigt das Ergebnis.
  • Das Rechnerprogramm kümmert sich weder darum, welcher Benutzer die Tasten gedrückt hat, noch ob einige Benutzer gar keine Tasten gedrückt haben, sofern eine gültige Folge von Tasten erhalten wurde. (Es wird angenommen, dass die Benutzer miteinander kooperieren und keiner versucht den Betrieb des Rechners zu sabotieren).
  • 2. Kommentiermodus
  • Irgendein Benutzer kann auf seinem eigenen lokalen Bildschirm zeichnen, wobei er Zeichnungs-Tools verwendet, wie sie in einem Zeichen-Programm zu finden sind. Der Benutzer kann Kästen, Kreise, Bögen, Text, Ellipsen usw. zeichnen und er kann auch Gegenstände aus der Darstellung entfernen. Die Kommentare des Benutzers werden auf den anderen Bildschirmen wiedergegeben, so dass alle Benutzer die gleiche Darstellung sehen. Jedoch können die Darstellungen sich aus folgenden Gründen unterscheiden
    • (A) Unterschiedliche Monitore können verschiedene Eigenschaften haben, wie Auflösung oder Farbdarstellungsmöglichkeiten.
    • (B) Unterschiedliche Displayprotokolle (EGA, VGA, etc.) stellen Grafikbilder unterschiedlich dar und haben unterschiedliche Farbwiedergabemöglichkeiten.
    • (C) Unterschiedliche GUIs oder verschiedene Versionen des selben GUI können verschiedene Wiedergabekonventionen haben. Auf unterschiedlichen Computern in 1 können die verschiedenen GUIs laufen.
    • (D) Einige Benutzer haben die Größe des Fensters, in der ihr Rechner dargestellt wird, verändert, so dass eine Abweichung im Maßstab vorliegt.
  • Diese Unterschiede können zu Unterschieden in der Erscheinung der wiedergegebenen Bilder untereinander führen, jedoch sollte der Grundinhalt aller Darstellungen der selbe sein. Um unterschiedliche Größen auszugleichen, können die Darstellungen in unterschiedlichen Maßstäben gezeichnet werden, wenn dies zweckmäßig ist.
  • 3. Local-Kommentiermodus
  • Ein Benutzer kann die örtliche Darstellung kommentieren, aber die Kommentare bleiben privat, und kein anderer Benutzer kann sie sehen.
  • 4. Darstellungsmodus
  • Kein Benutzer kann kommentieren noch Befehle ausgeben. Jedoch kann eine einer Kommentierung gleichende Aktion vorgenommen werden. Benutzer können ihren Cursor bewegen und andere können die Bewegung sehen, so dass man von fern auf etwas zeigen kann. Der Betrachtungsmodus ist bei einer Ausführung zweckmäßig, wo beispielsweise der Kommentiermodus vorliegt, aber ein spezieller Benutzermodus als BETRACHTEN bezeichnet ist. Hierbei können alle Benutzer kommentieren, aber der Betrachter-Nutzer kann nur beobachten und kann nicht kommentieren.
  • Die 3 bis 14 veranschaulichen im Wege eines Beispiels die verschiedenen Moden, welche das Rechnerprogramm benutzen.
  • In 3 ist eine Situation gezeigt, wo auf dem Host ein Anwendungsprogramm läuft: Der Modus ist "Kommentieren", die Be nutzereingabe erfolgt am Hostcomputer; die Benutzer versuchen den Rechner in Betrieb zu nehmen.
  • Es sei angenommen, dass der Benutzer des Hostcomputers versucht, unter Verwendung des Rechners zwei Zahlen zu addieren. Es sei der Eingabeversuch der ersten Zahl betrachtet.
  • Der sich am Host befindende Benutzer bewegt den Cursor des Hosts auf eine Taste des Rechners, wie es 3 zeigt, und versucht die Taste zu drücken, in dem er auf die Maus klickt. Jedoch ist der Mausklick blockiert und erreicht nicht das Anwendungsprogramm. Das Anwendungsprogramm reagiert nicht, weil es keinen Mausklick empfangen hat.
  • Im Einzelnen stellt das GUI die Mausbewegung fest und veranlasst die Erzeugung von "Mausnachrichten". Das GUI setzt die Mausnachrichten in eine Warteschlange, wo sie auf die Verarbeitung warten. Der EINGABE-ROUTER in 5 liest diese Nachrichten. Weil momentan gerade der Kommentiermodus in Betrieb ist, führt der EINGABE-ROUTER die Nachrichten zu einem KOMMENTIER-Block. Die Anwendung erhält die Nachricht nicht und reagiert daher nicht. Der Mausklick wird ignoriert. KOMMENTIERUNG kann so konfiguriert werden, dass auf zwei (oder mehr) wegen auf die Mausnachrichten reagiert wird. Bei der einen Konfiguration erfordert die Kommentierung, dass die Maus anfänglich ein KOMMENTIERUNGS-TOOL wählt. Erfolgt keine Auswahl, dann ignoriert KOMMENTIEREN die Mausnachrichten.
  • Die Auswahl erfolgt durch Klicken der Maus über ein Bild des Tools, wie es üblicherweise in einem Zeichenprogramm erfolgt. KOMMENTIEREN erkennt diese Toolauswahl und behandelt anschließend Mausklicks als Daten zum Zeichnen mit dem ausgewählten Tool. Wenn beispielsweise ein Rechteck-Tool ausgewählt worden ist, würden die nächsten beiden Mausklicks diagonale Ecken des Rechtecks definieren (4 veranschaulicht das Zeichnen eines Rechtecks, wie noch erläutert wird).
  • Bei der zweiten Konfiguration würde im Kommentiermodus automatisch ein Vorgabe-Tool, wie ein Stift ausgewählt. Wenn der Benutzer bei dieser Konfiguration eine Taste des Rechners zu drücken versucht (indem er darauf klickt), dann beginnt er (unabsichtlich) unter Verwendung des Stiftes eine Linie zu zeichnen. Wenn er dies erkennt, kann er das Zeichnen der Linie auf irgendeine der verschiedenen bekannten Weisen beenden.
  • Im Kommentiermodus reagiert somit das System (a) entweder auf die Mauseingabe durch das Einleiten einer Zeichenkommentierung (draft annotation) oder (b) ignoriert die Mauseingabe, weil kein Kommentier-Tool ausgewählt war. Eine Tastatureingabe seitens des Benutzers wird in gleicher Weise behandelt. Natürlich können auch andere Reaktionen durch KOMMENTIEREN bestimmt werden.
  • Jeder Bildschirm zeigt einen Cursor, dessen Position durch die zugehörige Maus gesteuert werden kann. Jeder Cursor wird auf allen Bildschirmen wiedergegeben. Somit erscheinen gemäß 3 mit drei Mäusen auf jedem Display drei Cursor (von denen der Einfachheit halber nur einer gezeichnet ist). Wenn also ein Benutzer eine Maus bewegt, bewegt sich demzufolge der entsprechende Cursor auf allen Bildschirmen. Generell sind die drei Cursor voneinander unterscheidbar: Jeder Cursor identifiziert seinen Eigentümer etwa durch Farbe, Form, Hinzufügung eines Etiketts oder dergleichen.
  • Es sei nun 4 betrachtet, welche den Fall zeigt, wo auf dem Cursor ein Anwendungsprogramm läuft: Dieser Modus ist "Kommentieren"; die Benutzereingabe erfolgt am Hostcomputer, und der Benutzer versucht über den Rechner einen Kasten zu zeichnen.
  • Diese Situation ist sehr ähnlich derjenigen nach 3 mit der Ausnahme, dass nun der Benutzer versucht einen Kommentar zu zeichnen, anstatt eine Taste drücken zu wollen, wie im Fall der 3.
  • Es sei angenommen, dass der Benutzer des Hostcomputers einen Kasten über den Rechner zeichnet. (Der Kasten ist zur Betonung übergroß. Vorzugsweise reicht der Kasten aber nicht über den Rechner selbst.) Der Kasten wird auf allen entfernten Computern wiedergegeben. (Der Kasten wird unter Verwendung von Kommentier-Tools gezeichnet, welche hier aber nicht gezeigt sind.)
  • Mit der Terminologie der 15 richtet der EINGABE-ROUTER den Logikfluss zu KOMMENTIEREN. KOMMENTIEREN ruft die richtigen GDI-Funktionen auf, um den Kasten zu zeichnen. Ferner sendet KOMMENTIEREN Kommentierungsnachrichten an VERBINDUNGS-API, welches die Kommentierungsnachrichten an die entfernten Computer übermittelt.
  • KOMMENTIEREN in 15A erhält die Kommentiernachrichten. Der Block KOMMENTIEREN bedeutet die bei jedem entfernten Computer ausgeführte Logik. Dieses KOMMENTIEREN ruft die geeigneten GDI Funktionen über den Block GDI auf.
  • "GDI" ist ein Akronym für ein Graphikgerätinterface (graphical device interface). "GDI"-Funktionen sind kleine Programme, die in einem größeren Programm des GUI, welches GDI.EXE genannt wird, enthalten sind. Eine GDI-Funktion zeichnet bei Aufruf ein spezielles graphisches Bild, wie etwa einen Kreis, einen Kasten oder Text aufgrund einer nachfolgenden Eingabe seitens des Benutzers. Andere GDI-Funktionen führen andere Aufgaben durch, wie Auswahl der Strichdicke.
  • GDI.EXE ist ein handelsübliches Produkt. Technische Details hierüber finden sich in "Windows Software Development Kit", welches von der Microsoft Corporation erhältlich ist, und in Programming Windows 3.1 von Charles Petzold (Microsoft Press, Redmond, Washington, 1992, ISBN 1-55615-395-3).
  • Es sei nun 5 betrachtet, welche den Fall zeigt, wo auf dem Host ein Anwendungsprogramm läuft; der Modus ist "Anwendung"; die Benutzereingabe erfolgt am Hostcomputer, und der Benutzer versucht, den Rechner zu benutzen.
  • Der Benutzer des Hosts bewegt den Cursor auf die Rechnertaste "3" und klickt die Maus. Das GUI erzeugt eine Mausnachricht und fügt diese in die Warteschlange. Die Mausnachricht wird gelesen und an das Anwendungsprogramm weitergeleitet (also an das Rechnerprogramm), welches damit reagiert, dass es (1) zeigt, dass die Taste "3" gedrückt wurde, und (2) die Zahl "3" in das Display des Rechners zeichnet, wobei es GDI-Aufrufe verwendet. Das Anwendungsprogramm registriert für eigene interne Informationen auch die Tatsache, dass der Benutzer eine "3" eingibt.
  • Die GDI-Aufrufe, welche das Anwendungsprogramm beim Zeichnen der "3" in den Rechner und beim Zeichnen der gedrückten "3"-Taste gemacht hat, werden erfasst und an die anderen Computer mitgeteilt. Die anderen Computer geben den Hostbildschirm wieder, indem sie die selben GDI-Funktionen ausführen. Weitere Einzelheiten bezüglich dieser GDI-Erfassung folgen später.
  • So sehen alle Benutzer gleichzeitig, wie der Benutzer des Hosts mit dem Rechner arbeitet. (Die Aktion verläuft nicht exakt gleichzeitig, weil sehr kleine Verzögerungen auftreten. Jedoch könnte ein Mensch die Verzögerungen wahrscheinlich nicht einmal bemerken, wenn der Hostcomputer und der entfernte Computer nebeneinander arbeiten würden.)
  • In der Terminologie der 15 erkennt der EINGABE-ROUTER, dass die Mausnachrichten an das Anwendungsprogramm gerichtet werden sollten und richtet den Logikfluss an ANWENDEN (d. h. das Rechnerprogramm). ANWENDEN zeichnet (1) die gedrückte Taste "3" und schreibt (2) die Zahl "3" auf das Display des Rechners, indem die geeigneten GDI-Funktionen aufgerufen werden.
  • Jedoch erfasst das System über GDI-ERFASSEN in 15 die GDI-Aufrufe des Anwendungsprogramms, wie sie ausgeführt werden. Mit den erfassten Aufrufen werden zwei Dinge getan. Erstens werden die anderen Computer von diesen Aufrufen über den Block VERBINDUNG-API informiert. Diese Aktion führt zu Block ERFASS-TES GDI DISPLAY in 15A, welches veranlasst, dass jeder entfernte Computer dieselben GDI-Funktionen ausführt, wie vom Block GDI angegeben. Zweitens erlaubt das System, dass die vom Anwendungsprogramm aufgerufenen GDI-Funktionen über den Block GDI in 15 am Host ausgeführt werden. Daher werden vom Anwendungsprogramm ausgehende GDI-Funktionsaufrufe erfasst und den entfernten Computern zur Kenntnis gebracht, so dass diese sie duplizieren können. Die erfassten Aufrufe werden dann wie vom Host beabsichtigt durchgeführt.
  • Es sei nun 6 betrachtet, welche den Fall zeigt, wo ein Anwendungsprogramm auf dem Host läuft. Der Modus ist "Lokale Kommentierung"; die Benutzereingabe erfolgt am Hostcomputer, und der Benutzer versucht mit dem Rechner zu arbeiten.
  • Angenommen sei, dass im Kommentiermodus dem Benutzer kein Vorgabekommentier-Tool gegeben wird. Wenn der Benutzer unter dieser Annahme den Cursor auf eine Rechnertaste führt und versucht diese zu "drücken", dann gibt der EINGABE-ROUTER in 15 eine Mausnachricht an den Kommentierblock. Weil der Mausklick nicht Teil einer gültigen Kommentiereingabefolge ist (es wurde kein Tool gewählt), zeichnet KOMMENTIEREN nichts. Weiterhin zeigen die entfernten Computer nicht die Cursorbewegung ent sprechend der Maus des Hostcomputers, wie angedeutet, weil Zeile 5 in 15 keine Kommentiernachrichten an die anderen Computer schickt, wenn Lokale Kommentierung in Betrieb ist. Weiterhin wird die Rechnertaste nicht als gedrückte Taste auf dem Hostdisplay neu gezeichnet, wenn versucht wird sie zu drücken, weil die ANWENDUNG keine Mausnachricht erhalten hat. ANWENDUNG ist verantwortlich für das Zeichnen gedrückter Rechnertasten.
  • Wenn dem Benutzer im Lokal-Kommentier-Modus eine Vorgabekommentierung zugeteilt wird, würde ein Mausklick seitens des Benutzers ein Zeichnen mit diesem Tool einleiten. Bemerkt der Benutzer den Irrtum, dann würde er das Zeichnen in bekannter Weise beenden.
  • Ein Fall, wo auf dem Host ein Anwendungsprogramm läuft, ist in 7 gezeigt; der Modus ist "Lokal-Kommentierung"; die Benutzereingabe erfolgt am Hostcomputer, und der Benutzer versucht, den Rechner zu kommentieren. In diesem Fall erkennt der EINGABE-ROUTER in 15 einen gültigen Versuch zur Durchführung einer Kommentierung, etwa durch das Zeichnen eines Kastens. Der EINGABE-ROUTER richtet den Logikfluss zum KOMMENTIERBlock, welcher die geeigneten GDI-Funktionen zum zeichnen der Kommentierung aufruft, nämlich eines Kastens, wie es 7 zeigt. Da die Kommentierung jedoch örtlich ist, werden keine Kästen auf entfernten Computern gezeichnet, wie 7 zu entnehmen ist. Es werden keine Daten über den Datenweg 5 in 15 geschickt.
  • 8 zeigt den Fall, wo auf dem Host ein Anwendungsprogramm läuft; es handelt sich um den "Betrachter"-Modus; die Benutzereingabe erfolgt am Hostcomputer, und der Benutzer versucht mit dem Rechner zu arbeiten. Wie 8 zeigt, wird der Mausklick ignoriert und es passiert an den entfernten Computern nichts. In 15 liest der EINGABE-ROUTER die Mausnachricht, blockt sie jedoch gegen ANWENDUNG ab, weil der derzeitige Modus der "Betrachter"-Modus ist.
  • 9 zeigt einen Fall, wo auf dem Host ein Anwendungsprogramm läuft; der Modus ist der "KOMMENTIER"-Modus; die Benutzereingabe erfolgt am entfernten Computer, und der Benutzer versucht, mit dem Rechner zu arbeiten.
  • Es sei angenommen, dass der Benutzer den Mauscursor über eine Rechnertaste bewegt und die Maus klickt. Der Mausklick wird ignoriert. Die anderen Computer (Host und entfernte Computer) zeigen lediglich die Cursorbewegung des Benutzers aber nichts sonst, weil kein Tool ausgewählt wurde. In 15A verhindert der EINGABE-ROUTER, dass die Mausnachricht ANWENDUNG erreicht. Die Logik wird zu KOMMENTIEREN gerichtet, wodurch über den Block GDI ein Cursor auf den entfernten Display des Benutzers gezeichnet wird. KOMMENTIEREN sendet auch Daten zum VERBINDUNGS-API, welcher die Logik zu KOMMENTIEREN in 15 leitet. Dieses KOMMENTIEREN stellt die Kommentierlogik dar, welche auf den beiden anderen Computern vorhanden ist dem Host und dem anderen entfernten Computer. Dieses KOMMENTIEREN unterdrückt das Zeichnen von dem Cursor des Benutzers entsprechenden Cursors an entsprechenden Positionen über den GDI Block in 15, der die GDI-Funktionsaufrufe darstellt. Der Host kann ein Tool benutzen, etwa ein Kastenzeichnungs-Tool, während der entfernte Computer ein anderes Tool etwa ein Kreiszeichnungs-Tool benutzen kann.
  • 10 zeigt einen Fall, wo ein Anwendungsprogramm auf dem Host läuft; der Modus ist der KOMMENTIER-Modus; Die Benutzereingabe erfolgt am entfernten Computer, und der Benutzer versucht, den Rechner zu kommentieren. Es sei angenommen, der Kommentar sei ein Kasten. Es wird auf allen Displays ein Kasten gezeichnet. In 15A richtet der EINGABE-ROUTER am entfernten Computer des Benutzers die Mausnachrichten an den Block KOMMENTIEREN, und KOMMENTIEREN tut zwei Dinge Erstens ruft es die geeigneten GDI-Funktionen auf, um das Kommentieren durchzuführen, nämlich den Kasten zu zeichnen. Zweitens sendet KOMMENTIEREN Kommentiernachrichten an das VERBINDUNGS-API, welches die Kommentiernachrichten an die anderen Computer übermittelt. Einer von diesen ist jedoch der Host, und der andere ist ein entfernter Computer. Die Logik am Host erreicht KOMMENTIEREN in 15, und die Logik an den anderen entfernten Computern erreicht KOMMENTIEREN in 15A.
  • Beide diese KOMMENTIER-Blocks veranlassen das Aufrufen der geeigneten GDI-Funktionen, um einen Kommentar entsprechend der Kommentierung des Benutzers zu zeichnen. Jedoch wird im Host der Logikweg 5 zu diesem Zeitpunkt nicht genommen, weil es nicht notwendig ist, die Kommentierungen des Hosts an anderen Computern wiederzugeben.
  • 11 zeigt einen Fall, wo ein Anwendungsprogramm auf dem Host läuft; die Benutzereingabe erfolgt an einem entfernten Computer, und der Benutzer versucht mit dem Rechner zu arbeiten. Es sei daran erinnert, dass das Rechnerprogramm nur auf dem Host geladen ist, während ein entfernter Benutzer damit arbeiten möchte.
  • Der EINGABE-ROUTER in 15A des entfernten Benutzers leitet die Mausnachrichten an das VERBINDUNGS-API. Der Host erhält diese Nachrichten, welche zum EINGABE-ROUTER in 15 des Hosts geleitet worden sind. Der EINGABE-ROUTER des Hosts leitet diese Nachrichten zum Block ANWENDUNG (d. h. zum Anwendungsprogramm, nämlich dem Rechnerprogramm), welches zwei wichtige Dinge ausführt.
  • Das Rechnerprogramm behandelt die Maßnahmen, als ob sie von der Maus des Hosts ausgegangen wären, obwohl sie von einer entfernten Maus kommen. Das Rechnerprogramm reagiert in seiner übli chen Weise folgendermaßen: (1) zeigt es eine niedergedrückte Rechnertaste "3", (2) schreibt es die Nummer "3" in das Display des Rechners und (3) führt es die eigenen internen Berechnungen aus, wenn es erfährt, dass der Benutzer Daten eingegeben hat (nämlich die "3").
  • Ehe das Rechnerprogramm allerdings (1) und (2) vom vorigen Absatz ausführen kann, erfasst das System zunächst die GDI-Funktionen, welche das Rechnerprogramm aufruft. Dieses Erfassen ist im Block GDI-ERFASSEN in 15 veranschaulicht. Während dieses Erfassens tut das System praktisch zwei Dinge. Erstens sendet es diese GDI-Funktionen an das VERBINDUNGS-API (zum Gebrauch durch die anderen Computer). Am entfernten Computer des Benutzers richtet das VERBINDUNGS-API in 15A die GDI-Funktionen an das ERFASSTE GDI-DISPLAY, welches das Hostdisplay wiedergibt. Zweitens veranlasst es, dass die GDI-Funktionen am Host (über Block GDI in 15) ausgeführt werden. Daher ist die allgemeine Abfolge von Ereignissen die folgende:
    Der entfernte Benutzer versucht eine Rechnertaste zu drücken.
    Die auf dem entfernten Computer laufende Software stellt diesen Versuch fest und sendet Daten an das auf dem Host laufende Rechnerprogramm. Die Daten haben die Form von Nachrichten, bei denen das Rechnerprogramm "denkt", dass sie von der Maus des Host kommen.
    Das Rechnerprogramm läuft wie üblich ab und zeichnet Bilder über GDI-Aufrufe auf dem Hostdisplay.
    Das System erfasst die GDI-Aufrufe und informiert die entfernten Computer davon.
    Die entfernten Computer geben das Schirmbild des Hosts wieder. Auf diese Weise können die entfernten Benutzer mit dem auf dem Host laufenden Rechnerprogramm von fern arbeiten.
  • Anders zusammengefasst: Aufgrund der am entfernten Computer gegebenen Mausnachrichten werden am Host Mausnachrichten erzeugt. Das (auf dem Host laufende) Rechnerprogramm reagiert auf die Mausnachrichten als ob sie am Host erzeugt wären. Die vom Rechnerprogramm erfolgten GDI-Aufrufe werden aufgenommen und am entfernten Computer ausgeführt, wobei dort das Schirmbild des Hosts wiedergegeben wird.
  • 12 zeigt den Fall, wo eine Anwendung auf dem Host läuft; der Modus ist "Lokal-Kommentierung", die Benutzereingabe erfolgt am entfernten Computer, und der Benutzer versucht mit dem Rechner zu arbeiten. Der Mausklick des Benutzers wird ignoriert. Auf den anderen Bildschirmen erscheint auf die Mausbewegung hin nichts, weil kein Tool gewählt wurde.
  • 13 zeigt einen Fall, wo ein Anwendungsprogramm auf dem Host läuft; der Modus ist "Lokal-Kommentierung"; die Benutzereingabe erfolgt vom entfernten Computer, und der Benutzer versucht den Rechner zu kommentieren. Die Kommentierung wird auf dem Display des Benutzers gezeichnet wie angedeutet. Auf den anderen Displays erfolgt keine Kommentierung.
  • 14 zeigt einen Fall, wo ein Anwendungsprogramm auf dem Host läuft; der Modus ist "Betrachten"; die Benutzereingabe erfolgt am entfernten Computer, und der Benutzer versucht, mit dem Rechner zu arbeiten. Wie angedeutet, bewegt sich der Mauscursor am Display des Benutzers, jedoch wird der Mausklick ignoriert. Außerdem zeigen die beiden anderen Displays die Bewegung des Mauscursors des Benutzers.
  • Hinsichtlich der oben beschriebenen Fälle sollen die folgenden Punkte bemerkt werden. Die Schirmbilder werden unter Benutzung der GDI-Funktionen gezeichnet. Jedoch werden unterschiedliche Teile der Schirmbilder von unterschiedlichen Programmen gezeichnet.
  • Obwohl alle diese Zeichenvorgänge unter Benutzung von GDI-Funktionen erfolgen, sind die GDI-Funktionen nicht das einzige Kommunikationsmedium zwischen Computern zur Replizierung der Schirmbilder. Wenn beispielsweise ein Benutzer eine Kommentierung durchführt, dann werden die Mausnachrichten des Benutzers als Nachrichten über den Weg 5 in 15 an den anderen Computern gezeigt. Diese gezeigten Nachrichten veranlassen dann, dass die entsprechenden KOMMENTIERUNGS-Blocks (an den anderen Computern) die richtigen GDI-Aufrufe zum Zeichnen der Kommentierung ausgeben. D. h., GDI-Aufrufe werden nicht direkt von dem die Kommentierung durchführenden Benutzer an die anderen Computer geschickt. Vielmehr werden, wenn ein Anwenderprogramm das Zeichnen eines graphischen Bildes auf einem Display veranlasst, alle GDI-Aufrufe über GDI ERFASSEN in 15 aufgenommen und veranlasst, dass sie auf den anderen Computern wiedergegeben werden.
  • Ein Hauptgrund für die zwei unterschiedlichen Verfahren (Wiedergabe von Mausnachrichten und Wiedergabe von GDI-Aufrufen) ist derjenige, dass die Kommentierungen in einem Speicher an anderen Stellen als die Schirmbildinformationen gespeichert werden. D. h. wenn wiederum der Rechner in 2 betrachtet wird, dass das Anwenderprogramm das Bild des Rechners auf folgende generelle Weise speichert. Kommentierungsdaten werden gespeichert. Anwendungsprogrammdaten werden im Anwendungsprogramm (am Host) gespeichert. Jedes Bild einer Taste wird als Daten gespeichert, aus welchen eine GDI-Funktion die Taste zeichnen kann. Die Daten enthalten Informationen wie Position, Größe, Farbe, usw. Jede Taste enthält eine zugeordnete Zahl. Die Zahl kann als Textzeichen gespeichert werden mit Informationen bezüglich Position, Größe, Buchstabentyp usw. Kommentierungsdaten werden an einer anderen Stelle, generell aber in gleicher Weise, gespeichert. Wenn entweder das Kommentierungs- oder das An wendungsprogramm Bitmaps benötigt, dann werden diese durch das GUI in einer üblichen bekannten Weise gespeichert.
  • Die Kommentierbilder werden mit den Anwendungsbildern in bekannter Maskiertechnik kombiniert. D. h., an einem entfernten Computer werden die empfangenen GDI-Funktionen in einen Graphikspeicher (Bitmap) abgespeichert. Die empfangenen Kommentierinformationen werden in einem anderen Graphikspeicher abgelegt. Die beiden Graphikspeicher werden miteinander maskiert. Die Kommentierdaten werden getrennt von den Anwendungsdaten gehalten, so dass beispielsweise ein Benutzer ein Anwendungsbild, jedoch ohne Kommentierungen aufbewahren kann. Alternativ kann ein Benutzer Kommentierdaten allein oder ein kommentiertes Schirmbild aufbewahren.
  • Als anderes Beispiel erlaubt das getrennte Aufbewahren von Kommentierdaten das Zeichnen eines Schirmbildes, welches keine Kommentierdaten hat. Wenn die Kommentierdaten mit den Rechnerbilddaten vermischt werden, dann wäre ein Eliminieren der Kommentierdaten schwierig, wenn nicht sogar unmöglich. Falls GDI-Aufrufe exklusiv übertragen werden (d. h. es wird keine Nachrichtenreplizierung vorgenommen), dann wäre Extraaufwand erforderlich, um Kommentierdaten zur getrennten Speicherung zu erstellen.
  • Die GDI-Erfassung kann folgendermaßen verstanden werden.
    • A. Beim Anlaufen werden die ersten fünf Bytes jeder GDI-Funktion durch einen SPRUNG-Befehl zu einem bestimmten Programm, nämlich Trap.GDI ersetzt.
    • B. Trap.GDI holt die Parameter für das gewünschte Graphikbild (z. B. im Fall eines Kastens die Lage der beiden diagonalen Ecken) und ruft das Unterprogramm PkgDispCall auf. Trap.GDI ersetzt ferner die ersten fünf Bytes.
    • C. PkgDispCall erhält die Parameter von Trap.GDI und erzeugt eine Objektstruktur, die einen Block von Daten darstellt, welche alles notwendige enthalten, damit die anderen Computer den Kasten zeichnen können.
  • Beispielsweise enthält die Objektstruktur Informationen bezüglich Größe und Position des Kastens. Ferner zeichnet das GUI Bilder innerhalb eines "Kontextes". Der Kontext enthält Dinge wie Strichbreite, Farbe und andere Merkmale. Die Kontexte der einzelnen Computer werden einander nachgeführt. Wenn der Kontext des gezeichneten Kastens sich von den Kontexten der entfernten Computer unterscheidet, enthält PkgDispCall Daten, welche die anderen Computer brauchen, um die richtigen Kontexte zu erstellen.
    • D. Die Objektstruktur wird zu den anderen Computern übertragen, welche dann dieselben GDI-Funktionen ausführen
    • E. Bei der Erfindung wurden die ursprünglichen GDI-Funktionen ausgeführt.
  • Die Schirmbilder werden nicht Bit für Bit repliziert. Beispielsweise könnte das Bild des Rechners nach 2 bitweise zwischen Computern übertragen werden. Wenn der Rechner einen Platz von 200 × 300 Pixeln benötigt, dann muss Information bezüglich 60.000 (d. h. 200 × 300) Pixeln gesendet werden.
  • Stattdessen wird das in 2 gezeigte spezielle Rechnerbild als achtzehn Rechtecke behandelt zuzüglich eines Textzeichens für jedes der 16 Rechtecke, so dass man insgesamt 34 Objekte erhält. Jedes Objekt benötigt Parameter wie Größe und Position. Die Anzahl von Parametern ist klein und liegt im Bereich von 3 bis 10. Nimmt man 10 Parameter an, dann müssen 340 Posten von Daten gesendet werden. Natürlich hängt die Größe jedes Postens von vielen Faktoren ab, aber eine kleine Anzahl von Bytes für jeder Posten kann angenommen werden.
  • Daher werden die 60.000 Posten von Daten, die für eine bitweise Replizierung erforderlich sind, auf maximal 300 Stücke von Daten für eine Objektreplikation verringert. Natürlich können einige Objekte die Form von Graphikspeichern haben, und müssen Bit für Bit gesendet werden. Im Allgemeinen ist jedoch zu erwarten, dass Graphikspeicher selten auftreten. Weiterhin ist im Allgemeinen zu erwarten, dass Graphikspeicher, wenn sie gesendet werden, nur einmal gesendet zu werden brauchen. Außerdem werden die Objektdaten wenn möglich komprimiert. d. h. dass jede Übertragung zwischen Computern möglichst mit komprimierten Daten erfolgt. Komprimierung ist in der Technik bekannt.
  • Kommunikation zwischen Computern kann verschiedene Formen haben. Kommerziell verfügbare Netze, wie örtliche oder weite Netze, können benutzt werden. Es können auch kommerziell verfügbare ISDN-Telefondienste benutzt werden, sofern sie von den örtlichen Telefonfirmen bereitgestellt werden. Es kann auch eine Modemkommunikation benutzt werden. Es gibt kommerziell erhältlich Packages, welche Nachrichten detektieren, die in Reaktion auf ein Eingangsgerät von dem GUI erzeugt werden. Ein solches Package ist WINSIGHT, welches von Borland International erhältlich ist.
  • Eine andere Möglichkeit für die oben beschriebene Graphikerfassung ist die folgende. Das von GDI gebotene System wird durch ein getrennte Prozedur ersetzt, welche GDI-Aufrufe verarbeitet, ehe das aktuelle System GDI aufgerufen wird. Der Name des System GDI wird verändert, um Verwirrung zwischen den beiden Modulen zu vermeiden. die selbe Technik wird auch auf USR.EXE angewandt, um gleichfalls GDI-Aufrufe zu erfassen, Welche über die systemeigenen Module erfolgen.
  • Ein gegebener Computer kann als Host für ein Programm und ein entfernter Computer für ein anderes dienen. Beispielsweise kann auf einem Computer ein Wortverarbeitungsprogramm laufen und auf einem anderen ein CAD-Zeichenprogramm. Für das jeweilige Programm ist jeder der Host.
  • Da die Software bei jedem Computer gleich oder praktisch gleich ist, können alle Benutzer entweder das Wortverarbeitungsprogramm oder das CAD-Programm in der oben beschriebenen Weise laufen lassen.
  • Es gibt zwei "Cursor"-Typen. Jedes GUI erzeugt seinen eigenen "realen" Cursor. Der reale Cursor wird nicht von den GDI-Funktionen erzeugt, sondern durch eine unabhängige Funktion im GUI. Der Leser kann den Cursor als Graphikspeicher (Bitmap) ansehen, den das GUI auf die Mausbewegung hin bewegt.
  • Außer dem realen Cursor, der von der lokalen Maus gesteuert wird, erzeugt das System einen "Pseudo"-Cursor für jeden entfernten Teilnehmer. Die Pseudo-Cursor werden unter Verwendung der GDI-Funktionen erzeugt.
  • Manchmal ändert ein realer Cursor seine Gestalt, wenn er sich bewegt. Beispielsweise kann er die Form eines Pfeils annehmen, wenn er sich auf einer Tool-Leiste befindet, und sich dann in eine Hand verändern, wenn sie auf einem Kundenbereich liegt. Manchmal erfolgt diese Änderung unter Steuerung durch das Anwendungsprogramm. Wenn also ein entfernter Benutzer ein Anwendungsprogramm, das auf einem Host läuft (wie in 11) steuert, dann kann das Anwendungsprogramm den Cursor am Host verändern, ohne jedoch die GDI-Aufrufe zu benutzen. Daher werden durch die GDI-Erfassung nach den 15 und 15A die Änderung auf dem entfernten Bildschirm nicht wiedergegeben.
  • Um diesem Problem zu begegnen, überwacht das System die Funktionen, welche den realen Cursor (also den SetCursor-Befehl) verändern. Die Cursoränderung wird auch auf dem entfernten Computer wiedergegeben. Eine Möglichkeit besteht in der Durchführung desselben SetCursor-Befehls. Eine andere bestünde darin, den entfernten Cursor durch die Ausführung einer geeigneten Folge von GDI-Aufrufen zu verändern, oder einen Grafikspeicher zu zeichnen, wenn sich der Hostcursor ändert.
  • Es versteht sich, dass das System nur Fenster wiedergibt, welche der Benutzer eines Displays identifiziert. D. h., der Benutzer kann einen Arbeitsplatz, wie ein Notepad, während einer Konferenz in der Privatsphäre halten. GDI-Aufrufe benutzen einen Auftragsabwickler (task handle), und wenn dieser sich nicht auf einen aufgeteilten Posten bezieht, dann werden die GDI-Aufrufe nicht aufgeteilt.

Claims (8)

  1. Computerkonferenzsystem mit einem Hostcomputer, auf dem ein Anwendungsprogramm läuft, einem oder mehreren entfernten Computern, die mit dem Hostcomputer verknüpft sind, und einer Steuereinrichtung, welche es allen entfernten Computern ermöglicht, die Bildschirmdarstellung des Hostcomputers zu ändern und die Bildschirmdarstellung des Hostcomputers auf den entfernten Computern erscheinen zu lassen, dadurch gekennzeichnet, dass die Computer wahlweise in einem Anwendermodus oder einem Kommentiermodus betreibbar sind, wobei der Hostcomputer im Anwendungsmodus lediglich Bildschirmdaten an die entfernten Computer weiterleitet.
  2. Computerkonferenzsystem nach Anspruch 1, dadurch gekennzeichnet, dass in einem Kommentier-Modus ein Benutzer die Bildschirmdarstellung seines Computers kommentieren kann und dass die Kommentierungen auf den anderen Computern des Systems durch Bildschirmdaten wiedergegeben werden, die vom Computer des Benutzers zu den anderen Computern weitergeleitet werden.
  3. Computersystem nach Anspruch 1, dadurch gekennzeichnet, dass die Steuereinrichtung feststellen kann, welche Graphikbefehle gerade im Hostcomputer verarbeitet werden, und die Ausführung jedes der festgestellten Graphikbefehle in den entfernten Computern veranlasst.
  4. Computersystem nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Steuereinrichtung die auf den Bildschirmen der entfernten Computer erscheinenden entfernten Graphikoperationen identifizieren kann, den Hostcomputer von den identifizierten Graphikoperationen informieren kann und die entfernten Graphikoperationen auf dem Bildschirm des Hostcomputers wiedergeben kann.
  5. Computersystem nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass die wiedergegebenen Bildschirmdarstellungen in Fenstern erfolgen, so dass in jedem Computerschirmbild ein Fenster dasselbe Bild zeigt.
  6. Verfahren zum Betrieb eines Computerkonferenzsystems mit einem Hostcomputer, auf dem ein Anwendungsprogramm läuft, und einem oder mehreren entfernten Computern, die mit dem Hostcomputer verknüpft sind, mit den Schritten: Erlauben, dass die entfernten Computer das Schirmbild des Hostcomputers verändern, Wiedergeben des Schirmbildes des Hostcomputers auf den entfernten Computern, dadurch gekennzeichnet, dass die Computer wahlweise in einem Anwendungsmodus oder einem Kommentiermodus betreibbar sind und dass im Anwendungsmodus der Hostcomputer lediglich Bildschirmdaten an die entfernten Computer weiterleitet.
  7. Verfahren zum Betrieben eines Computerkonferenzsystems nach Anspruch 6, dadurch gekennzeichnet, dass im Kommentiermodus ein Benutzer das Schirmbild seines Computers kommentieren kann und dass die Kommentierungen auf den anderen Computern des Systems dadurch wiedergegeben werden, dass Bilddaten vom Computer des Benutzers zu den anderen Computern weitergeleitet werden.
  8. Verfahren nach Anspruch 6, gekennzeichnet durch die Schritte: Festhalten einer Mehrzahl ähnlicher Graphikbefehle in jedem Computer und, wenn Graphikbefehle auf einem der Computer ausgeführt werden, Identifizieren jedes Befehls und Veranlassen, dass jeder entfernte Computer einen ähnlichen Befehl ausführt.
DE69433189T 1993-03-19 1994-03-15 Anzeigesteuerung für Rechneranordnung mit Zusammenarbeit Expired - Lifetime DE69433189T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/035,091 US5835713A (en) 1993-03-19 1993-03-19 Remote collaboration system for selectively locking the display at remote computers to prevent annotation of the display by users of the remote computers
US35091 1993-03-19

Publications (2)

Publication Number Publication Date
DE69433189D1 DE69433189D1 (de) 2003-11-06
DE69433189T2 true DE69433189T2 (de) 2004-07-01

Family

ID=21880589

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69433189T Expired - Lifetime DE69433189T2 (de) 1993-03-19 1994-03-15 Anzeigesteuerung für Rechneranordnung mit Zusammenarbeit

Country Status (4)

Country Link
US (2) US5835713A (de)
EP (1) EP0622929B1 (de)
JP (1) JPH0793251A (de)
DE (1) DE69433189T2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11106420B2 (en) 2018-06-11 2021-08-31 Alibaba Group Holding Limited Method, device, system and storage medium for information transmission and data processing

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
EP0622930A3 (de) * 1993-03-19 1996-06-05 At & T Global Inf Solution Teilung der Anwendungen für Rechneranordnung mit Zusammenarbeit.
US6911987B1 (en) 1995-07-05 2005-06-28 Microsoft Corporation Method and system for transmitting data for a shared application
US7720672B1 (en) * 1995-12-29 2010-05-18 Wyse Technology Inc. Method and apparatus for display of windowing application programs on a terminal
DE69823809T2 (de) * 1997-02-12 2005-04-14 British Telecommunications P.L.C. Kommunikation zwischen stationen
US6662210B1 (en) 1997-03-31 2003-12-09 Ncr Corporation Method of remote collaboration system
US6507845B1 (en) 1998-09-14 2003-01-14 International Business Machines Corporation Method and software for supporting improved awareness of and collaboration among users involved in a task
US6707811B2 (en) 1999-03-19 2004-03-16 Estara, Inc. Internet telephony for ecommerce
EP1166543A1 (de) 1999-03-19 2002-01-02 Estara, Inc. Öffentliches web-fernsprechsystem
US6507865B1 (en) 1999-08-30 2003-01-14 Zaplet, Inc. Method and system for group content collaboration
US6463461B1 (en) 1999-08-30 2002-10-08 Zaplet, Inc. System for communicating information among a group of participants
US6457045B1 (en) 1999-08-30 2002-09-24 Zaplet, Inc. System and method for group choice making
US6505233B1 (en) 1999-08-30 2003-01-07 Zaplet, Inc. Method for communicating information among a group of participants
US6691153B1 (en) 1999-08-30 2004-02-10 Zaplet, Inc. Method and system for process interaction among a group
US6523063B1 (en) 1999-08-30 2003-02-18 Zaplet, Inc. Method system and program product for accessing a file using values from a redirect message string for each change of the link identifier
US6453337B2 (en) 1999-10-25 2002-09-17 Zaplet, Inc. Methods and systems to manage and track the states of electronic media
US6498611B1 (en) 2000-01-28 2002-12-24 Lexmark International, Inc. System and method for providing a virtual operator panel for a peripheral device
US7043534B1 (en) * 2000-03-31 2006-05-09 Lenavo (Singapore) Pte. Ltd. Remote execution of commands in a multi-host network
US7130885B2 (en) 2000-09-05 2006-10-31 Zaplet, Inc. Methods and apparatus providing electronic messages that are linked and aggregated
AU2002226889A1 (en) * 2000-11-13 2002-05-21 Gtco Cal Comp Collaborative input system
US6914899B2 (en) 2001-01-30 2005-07-05 Estara, Inc. Caller identification and voice/data synchronization for internet telephony and related applications
US7075921B2 (en) 2001-01-30 2006-07-11 Estara, Inc. Remote media control for voice over internet telephony and related applications
US7406165B2 (en) * 2001-03-05 2008-07-29 Sbc Properties, L.P. Direct route ISDN primary route interface
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
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
US7356563B1 (en) 2002-06-06 2008-04-08 Microsoft Corporation Methods of annotating a collaborative application display
US8095409B2 (en) * 2002-12-06 2012-01-10 Insors Integrated Communications Methods and program products for organizing virtual meetings
US7571210B2 (en) 2002-12-06 2009-08-04 Insors Integrated Communications Methods and systems for linking virtual meeting attendees over a network
US7996461B1 (en) * 2003-01-30 2011-08-09 Ncr Corporation Method of remotely controlling a user interface
US7949116B2 (en) * 2003-05-22 2011-05-24 Insors Integrated Communications Primary data stream communication
US7613137B2 (en) 2003-05-22 2009-11-03 Insors Integrated Communications Data stream communication
US7076735B2 (en) * 2003-07-21 2006-07-11 Landmark Graphics Corporation System and method for network transmission of graphical data through a distributed application
US7948448B2 (en) 2004-04-01 2011-05-24 Polyvision Corporation Portable presentation system and methods for use therewith
US20070044028A1 (en) * 2004-04-01 2007-02-22 Dunn Michael H Virtual flip chart method and apparatus
US7834819B2 (en) * 2004-04-01 2010-11-16 Polyvision Corporation Virtual flip chart method and apparatus
US7580867B2 (en) * 2004-05-04 2009-08-25 Paul Nykamp Methods for interactively displaying product information and for collaborative product design
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
US7908325B1 (en) 2005-06-20 2011-03-15 Oracle America, Inc. System and method for event-based collaboration
US7933956B2 (en) * 2006-01-24 2011-04-26 Simulat, Inc. System and method to create a collaborative web-based multimedia layered platform
US8505006B1 (en) * 2006-02-10 2013-08-06 Ringcube Technologies, Inc. Resource management in virtual machines using dynamic table for performing resource queries
US8060887B2 (en) 2007-03-30 2011-11-15 Uranus International Limited Method, apparatus, system, and medium for supporting multiple-party communications
US7765266B2 (en) 2007-03-30 2010-07-27 Uranus International Limited Method, apparatus, system, medium, and signals for publishing content created during a communication
US7950046B2 (en) 2007-03-30 2011-05-24 Uranus International Limited Method, apparatus, system, medium, and signals for intercepting a multiple-party communication
US8702505B2 (en) 2007-03-30 2014-04-22 Uranus International Limited Method, apparatus, system, medium, and signals for supporting game piece movement in a multiple-party communication
US7765261B2 (en) 2007-03-30 2010-07-27 Uranus International Limited Method, apparatus, system, medium and signals for supporting a multiple-party communication on a plurality of computer servers
US8627211B2 (en) 2007-03-30 2014-01-07 Uranus International Limited Method, apparatus, system, medium, and signals for supporting pointer display in a multiple-party communication
US7937663B2 (en) 2007-06-29 2011-05-03 Microsoft Corporation Integrated collaborative user interface for a document editor program
US8503539B2 (en) 2010-02-26 2013-08-06 Bao Tran High definition personal computer (PC) cam
US20140055400A1 (en) 2011-05-23 2014-02-27 Haworth, Inc. Digital workspace ergonomics 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
CA2836813C (en) 2011-05-23 2020-10-27 Jeffrey Jon REUSCHEL Digital whiteboard collaboration apparatuses, methods and systems
US9646313B2 (en) * 2011-12-13 2017-05-09 Microsoft Technology Licensing, Llc Gesture-based tagging to view related content
JP2013131164A (ja) * 2011-12-22 2013-07-04 Internatl Business Mach Corp <Ibm> ロック機能を有する情報処理装置およびロック機能を実行させるためのプログラム
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
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
US9596319B2 (en) * 2013-11-13 2017-03-14 T1V, Inc. Simultaneous input system for web browsers and other applications
WO2016179401A1 (en) 2015-05-06 2016-11-10 Haworth, Inc. Virtual workspace viewport follow mode and location markers in collaboration systems
US10255023B2 (en) 2016-02-12 2019-04-09 Haworth, Inc. Collaborative electronic whiteboard publication process
US10264213B1 (en) 2016-12-15 2019-04-16 Steelcase Inc. Content amplification system and method
US12019850B2 (en) 2017-10-23 2024-06-25 Haworth, Inc. Collaboration system including markers identifying multiple canvases in multiple shared virtual workspaces
US11934637B2 (en) 2017-10-23 2024-03-19 Haworth, Inc. Collaboration system including markers identifying multiple canvases in multiple shared virtual workspaces
US11126325B2 (en) 2017-10-23 2021-09-21 Haworth, Inc. Virtual workspace including shared viewport markers in a collaboration system
US11573694B2 (en) 2019-02-25 2023-02-07 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

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1207347B (it) * 1987-02-12 1989-05-17 C Olivetti E C Sp A Ing Sistema di stazioni di lavoro di in formatica per uso didattico in una classe di studenti
US5220657A (en) * 1987-12-02 1993-06-15 Xerox Corporation Updating local copy of shared data in a collaborative system
US4962468A (en) * 1987-12-09 1990-10-09 International Business Machines Corporation System and method for utilizing fast polygon fill routines in a graphics display system
US4939509A (en) * 1988-01-25 1990-07-03 At&T Company Data conferencing arrangement for stations having keyboards and displays, using a keyboard buffer and a screen buffer
US5280583A (en) * 1988-05-13 1994-01-18 Hitachi, Ltd. System and method for performing interlocution at a plurality of terminals connected to communication network
US5107443A (en) * 1988-09-07 1992-04-21 Xerox Corporation Private regions within a shared workspace
US4953159A (en) * 1989-01-03 1990-08-28 American Telephone And Telegraph Company Audiographics conferencing arrangement
US5206934A (en) * 1989-08-15 1993-04-27 Group Technologies, Inc. Method and apparatus for interactive computer conferencing
US5119319A (en) * 1989-12-14 1992-06-02 Options Unlimited Research Corp. Full-duplex video communication system
JP2793308B2 (ja) * 1989-12-21 1998-09-03 株式会社日立製作所 対話システム
GB9105278D0 (en) * 1990-04-27 1991-04-24 Sun Microsystems Inc Method and apparatus for implementing object-oriented programming using unmodified c for a window-based computer system
US5309555A (en) * 1990-05-15 1994-05-03 International Business Machines Corporation Realtime communication of hand drawn images in a multiprogramming window environment
JP3161725B2 (ja) * 1990-11-21 2001-04-25 株式会社日立製作所 ワークステーションおよび共同情報処理システム
US5241625A (en) * 1990-11-27 1993-08-31 Farallon Computing, Inc. Screen image sharing among heterogeneous computers
TW198107B (de) * 1991-02-28 1993-01-11 Ibm
US5293619A (en) * 1991-05-30 1994-03-08 Sandia Corporation Method and apparatus for collaborative use of application program
JPH05189574A (ja) * 1991-07-23 1993-07-30 Internatl Business Mach Corp <Ibm> レンダリング構成要素における複数コマンド支援を行うための方法およびその装置
JPH0546568A (ja) * 1991-08-08 1993-02-26 Internatl Business Mach Corp <Ibm> 分散アプリケーシヨン実行装置および方法
US5321810A (en) * 1991-08-21 1994-06-14 Digital Equipment Corporation Address method for computer graphics system
JPH0590504A (ja) * 1991-09-26 1993-04-09 Mitsubishi Electric Corp 半導体保護装置
US5315711A (en) * 1991-11-01 1994-05-24 Unisys Corporation Method and apparatus for remotely and centrally controlling a plurality of host processors
US5337407A (en) * 1991-12-31 1994-08-09 International Business Machines Corporation Method and system for identifying users in a collaborative computer-based system
US5375068A (en) * 1992-06-03 1994-12-20 Digital Equipment Corporation Video teleconferencing for networked workstations
US5392400A (en) * 1992-07-02 1995-02-21 International Business Machines Corporation Collaborative computing system using pseudo server process to allow input from different server processes individually and sequence number map for maintaining received data sequence

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11106420B2 (en) 2018-06-11 2021-08-31 Alibaba Group Holding Limited Method, device, system and storage medium for information transmission and data processing

Also Published As

Publication number Publication date
EP0622929A2 (de) 1994-11-02
EP0622929B1 (de) 2003-10-01
US5835713A (en) 1998-11-10
US5889946A (en) 1999-03-30
EP0622929A3 (de) 1996-05-29
JPH0793251A (ja) 1995-04-07
DE69433189D1 (de) 2003-11-06

Similar Documents

Publication Publication Date Title
DE69433189T2 (de) Anzeigesteuerung für Rechneranordnung mit Zusammenarbeit
DE69433567T2 (de) Rechnerkonferenzverfahren
DE69022210T2 (de) Datenverarbeitungssystem.
US5944785A (en) Remote collaboration system performed by a host computer running an application program and remote computers running a program distinct from the application program
DE69817634T2 (de) Vorrichtung und Verfahren zur Anzeige von Fenstern
DE3851733T2 (de) Emulation einer Bedienungskonsole für ein graphisches Endgerät.
DE69817158T2 (de) Benutzerschnittstellen-Mechanismus zur Manipulierung von Kontexten in Computerverwaltungsapplikationen
US5920694A (en) Annotation of computer video displays
DE69127703T2 (de) Vorrichtung und verfahren zum erzeugen eines benutzerdefinierbaren, videodargestellten dokuments, das änderungen von echtzeitdaten anzeigt
DE69310214T2 (de) Dialogsystem
DE69032348T2 (de) Objektbasiertes System
DE69030862T2 (de) Automatisches Ikonerzeugungssystem
DE4446139A1 (de) Verfahren und Einrichtung zum Hervorheben von Objekten in einem Konferenzsystem
DE3689858T2 (de) Verfahren zur Manipulation von Unterobjekten in einem interaktiven Zeichnengraphiksystem.
EP0622931A2 (de) Aufzeichnungsanzeige für Rechneranordnung mit Zusammenarbeit
EP0645695A1 (de) Reproduktion von Anzeigen in einem Mehrfachrechnersystem
DE69727002T2 (de) Aufzeichnungsschnitt
DE10138336A1 (de) Verfahren und System zum Aufrechterhalten des Andauerns von graphischen Markierungen in einem kollaborativen Graphikbetrachtungssystem
DE4417588A1 (de) Verfahren und Vorrichtung zum Erfassen und Weiterleiten von Fensterereignissen zu einer Mehrzahl von bestehenden Anwendungen zur gleichzeitigen Ausführung
DE19842688A1 (de) Standard-Benutzerschnittstellen-Steuerung für einen Datenanbieter
DE4012910A1 (de) Verfahren und einrichtung zur uebertragung von rasterdatenbildern an ein graphisches wiedergabesystem
DE19636923A1 (de) Verfahren und Vorrichtung zur gemeinsamen Benutzung von Eingabevorrichtungen durch mehrere unabhängige Graphik-Anzeigevorrichtungen
EP0645726A2 (de) Aufzeichnung der Anzeigen eines Mehrrechnersystem
DE3534205C2 (de)
DE112016001140T5 (de) Interaktives Mehrbenutzer-Anzeigesystem und Verfahren

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)